用python编写的官方emailage api客户端

emailage-official的Python项目详细描述


alt texthttps://www.emailage.com

python language emailage™api客户端帮助公司与我们高效的欺诈风险和 评分系统。通过调用我们的api端点并简单地向我们传递一封电子邮件 和/或IP地址,将为公司提供实时风险评分 基于机器学习和专有算法的评估 随着新的欺诈趋势发展。

快速入门指南

要求

  • python 2.7+或3.3+

安装

可以使用pip安装emailage客户端:

$ pip install emailage-official

或者直接从源代码:

$ git clone https://github.com/emailage/Emailage_Python.git
$ cd Emailage_Python
$ python setup.py install

典型用法

实例化客户机

瞄准生产服务器
from emailage.client import EmailageClient
client = EmailageClient('My account SID', 'My auth token')

瞄准沙盒环境
from emailage.client import EmailageClient
client = EmailageClient('My account SID', 'My auth token', sandbox=True)

查询提供的电子邮件地址、IP地址或组合的风险评分信息


from emailage.client import EmailageClient
client = EmailageClient('My account SID', 'My auth token', sandbox=True)
# For an email address
client.query('test@example.com')
# For an IP address
client.query('127.0.0.1')
# For a combination. Please note the order
client.query(('test@example.com', '127.0.0.1'))
# Pass a User Defined Record ID (URID).
# Can be used when you want to add an identifier for a query.
# The identifier will be displayed in the result.
client.query('test@example.com', urid='My record ID for test@example.com')

显式方法在验证 传递的参数

from emailage.client import EmailageClient
client = EmailageClient('My account SID', 'My auth token', sandbox=True)
# For an email address
client.query_email('test@example.com')
# For an IP address
client.query_ip_address('127.0.0.1')
# For a combination. Please note the order
client.query_email_and_ip_address('test@example.com', '127.0.0.1')
# Pass a User Defined Record ID
client.query_email_and_ip_address('test@example.com', '127.0.0.1', urid='My record ID for test@example.com and 127.0.0.1')

将电子邮件地址标记为欺诈、良好或中性


你可以报告你发现一个电子邮件地址是好的,是 与欺诈有关,或两者都不是(中立的)。

将电子邮件地址标记为欺诈的调用必须伴有 欺诈原因列举如下:

  1. 卡不存在欺诈
  2. 客户纠纷(退单)
  3. 第一方欺诈
  4. 首次付款违约
  5. 识别盗窃(欺诈申请)
  6. 识别盗窃(账户接管)
  7. 涉嫌欺诈(未确认)
  8. 合成ID
  9. 其他
  10. < > >

    由于合成ID,将电子邮件地址标记为欺诈
    from emailage.client import EmailageClient
    client = EmailageClient('My account SID', 'My auth token', sandbox=True)
    client.flag('fraud', 'test@example.com', 8)
    client.flag_as_fraud('test@example.com', 8)
    # Mark an email address as good
    client.flag('good', 'test@example.com')
    client.flag_as_good('test@example.com')
    # Unflag an email address that was previously marked as good or fraud
    client.flag('neutral', 'test@example.com')
    client.remove_flag('test@example.com')
    

    例外情况

    此客户端可以在下列任何问题上引发异常:

    1. 当请求有问题时,例如无法从服务器连接到emailage api,
    2. 当接收到格式不正确的json时,
    3. 将格式错误的电子邮件或IP地址传递给标记或显式查询方法时。
    4. < > >

      客户端API参考

      客户端.tls版本

      emailage api支持的tls版本的枚举

      client.apidomains

      指定域的API URL

      client.emailageclientsecrettokensandbox=false, _ tls_version=<;sslmethod.protocol_tlsv1_2:5>;

      \uu initsecrettokensandbox=false, _ tls_version=<;sslmethod.protocol_tlsv1_2:5>;

      使用指定的凭据和 环境

      参数:

      • 机密str)用户机密,例如SID或API密钥。
      • 代币str)消费代币。
      • 沙箱bool)(可选)是否使用沙箱而不是生产服务器。默认情况下使用产品
      • TLS_版本(请参见TLS版本)(可选)默认使用TLS版本1.2(tlsversions.tlsv1_2 tlsversions.tlsv1_1)

      示例:

      >>> from emailage.client import EmailageClient
      >>> from emailage import protocols
      >>> client = EmailageClient('consumer_secret', 'consumer_token', sandbox=True, tls_version=protocols.TLSv1_1)
      >>> fraud_report = client.query(('useremail@example.co.uk', '192.168.1.1'), urid='some_unique_identifier')
      

      标记为欺诈查询欺诈代码

      将电子邮件地址标记为欺诈。

      参数:

      • 查询str)要标记的电子邮件
      • 欺诈代码int)电子邮件标记为欺诈的原因;必须是emailage.client.emailageclient.fraud代码中的ID之一

      返回:

      api生成的确认响应的json dict

      示例:

      >>> from emailage.client import EmailageClient
      >>> client = EmailageClient('My account SID', 'My auth token', sandbox=True)
      >>> response_json = client.flag_as_fraud('test@example.com', 8)
      

      标记为良好查询

      将电子邮件地址标记为"良好"。

      参数:

      查询str)要标记的电子邮件

      返回:

      api生成的确认响应的json dict

      示例:

      $ pip install emailage-official
      
      0

      查询查询**参数

      基本查询方法,支持电子邮件、IP地址和可选 其他参数

      参数:

      • 查询strstrstr)(uRFC2822兼容电子邮件,RFC791兼容IP,或两者兼有
      • paramskwargs)参数的关键字参数形式,如urid、名字、姓氏等。

      返回:

      api生成的响应的json dict

      示例:

      $ pip install emailage-official
      
      1

      查询电子邮件电子邮件**参数

      查询所提供电子邮件地址的风险评分信息。

      参数:

      • 电子邮件str)符合RFC2822的电子邮件
      • paramskwargs)(可选)参数的关键字参数形式,如urid、名字、姓氏等。

      返回:

      api生成的响应的json dict

      示例:

      $ pip install emailage-official
      
      2

      查询电子邮件和IP地址电子邮件IP**参数

      查询提供的电子邮件和IP组合的风险评分信息 地址

      参数:

      • 电子邮件str)符合RFC2822的电子邮件
      • IPstr)符合RFC791的IP
      • paramskwargs)(可选)参数的关键字参数形式,如urid、名字、姓氏等。

      返回:

      api生成的响应的json dict

      示例:

      $ pip install emailage-official
      
      3

      删除标志查询

      取消标记以前标记为良好或欺诈的电子邮件地址。

      参数:

      查询str)要标记的电子邮件

      返回:

      api生成的确认响应的json dict

      示例:

      $ pip install emailage-official
      
      4

      请求端点**参数

      生成对emailage验证器和标记api的请求的基本方法

      参数:

      • 端点str)发送请求的API端点(/flag)
      • paramskwargs)要随请求发送的参数的关键字参数列表

      返回:

      api生成的响应的json dict

      示例:

      $ pip install emailage-official
      
      5

      设置API域,\u TLS_version=<;sslmethod.protocol_TLSV1_2:5>;

      显式设置要用于客户端会话的api域,通常 用于测试场景

      参数:

      • 要用于会话的域(str请参阅:class:apidomains)api域
      • TLS_版本(请参见:类:TLS版本)(可选)默认使用TLS版本1.2(tlsversions.tlsv1_2 tlsversions.tlsv1_1)

      返回:

      <>

      示例:

      $ pip install emailage-official
      
      6

      示例:

      $ pip install emailage-official
      
      7

      设置凭据机密令牌

      显式设置生成 当前会话中的请求。当您要更改凭据时很有用 在最初创建客户机之后。

      参数:

      • 机密消费者机密,例如SID或API密钥
      • 代币消费代币

      返回:

      <>

      签名。将"oauth"条目添加到字段dict中(secretparamsnonce=无时间戳=无

      向用户params dict添加oauth1.0所需的dict条目 签名生成

      参数:

      • 机密str)API机密
      • paramsdict)将在查询中发送的值字典
      • noncestr)(可选)用于签名创建的随机字符串,如果未提供uuid4(),则使用uuid4
      • 时间戳int)(可选)整数格式时间戳,time.time()如果未提供则使用

      返回:

      包含参数和执行前所需的oauth1.0字段的dict 签名.创建

      示例:

      $ pip install emailage-official
      
      8

      签名。创建方法URL参数hmac_键

      生成用作查询字符串值的OAuth1.0签名 参数oauth_signature

      参数:

      • 方法str)用于发送请求的http方法(get post);emailageclient使用get
      • urlstr)API域和端点到?
      • paramsdict)用户提供的查询字符串参数和oauth1.0参数:方法add_oauth_entries_to_fields_dict:
      • hmac_keystr)对于emailage用户,这是您的消费令牌,末尾附加一个&;(和号)

      返回:

      用于OAuth_签名的str值

      示例:

      $ pip install emailage-official
      
      9

      2018年,emailage开发团队。|由Sphinx 1.7.7提供动力

      修订历史

      1.1.6(2018年12月14日)

      • 修复python 2.7用户url编码函数的选择

      1.1.4(2018年9月17日)

      • 已更正IPv4验证正则表达式,允许在八位字节2、3、4中使用0

      1.1.0(2018年8月30日)

      • 更正了空格url编码中的错误
      • 显著扩展的签名功能文档
      • 将所有OAuth签名生成逻辑从请求生成提取到签名模块中
      • api响应字节的显式解码消除了对响应运行regex的需要

      1.0.2(2017年10月30日)

      • 更正了IPv4和IPv6 IP地址的验证
      • 添加了一个可选参数,用于在初始化emailageclient时指定TLS 1.1或1.2

      欢迎加入QQ群-->: 979659372 Python中文网_新手群

      推荐PyPI第三方库


热门话题
hashmap Java如何以列表作为值组织映射   java二进制搜索树如何在“main”中调用我的inoder方法,并在输出中省略null?   java Subclipse如何覆盖更改的文件   java无法识别的VM选项“ExplicitGCInvokesConcurrentAndUnloadsClasses”   java需要从字符串中转义“| |”条件   JavaMVEL迭代列表   如果有对元素字段的引用,java会对元素进行垃圾收集吗?   java如何按索引删除行   java有没有简单的http服务来检查域名的可用性   java Spring@ContextConfiguration无法从不同的项目加载测试上下文   IntelliJ IDEA社区版中的java Webservice客户端   netbeans从java Main调用另一个java文件中的方法   java MySQL左连接和组连接返回重复和中断数据   Java\Hibernate\ManyTone\Ordering   java JPQL中的LIMIT子句是什么?   在Java中,预处理器将单词转换为基本形式   在核心java中创建GUI时的swing问题   java从javabean创建不可变对象   java线程是否可能在wait()循环中饿死?   java有spring用来从xml解析setter数据的助手类吗?