用python编写的官方emailage api客户端
emailage-official的Python项目详细描述
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')
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')
将电子邮件地址标记为欺诈、良好或中性
你可以报告你发现一个电子邮件地址是好的,是 与欺诈有关,或两者都不是(中立的)。
将电子邮件地址标记为欺诈的调用必须伴有 欺诈原因列举如下:
- 卡不存在欺诈
- 客户纠纷(退单)
- 第一方欺诈
- 首次付款违约
- 识别盗窃(欺诈申请)
- 识别盗窃(账户接管)
- 涉嫌欺诈(未确认)
- 合成ID
- 其他 < > >
- 当请求有问题时,例如无法从服务器连接到emailage api,
- 当接收到格式不正确的json时,
- 将格式错误的电子邮件或IP地址传递给标记或显式查询方法时。 < > >
- 机密(str)用户机密,例如SID或API密钥。
- 代币(str)消费代币。
- 沙箱(bool)(可选)是否使用沙箱而不是生产服务器。默认情况下使用产品
- TLS_版本(请参见
TLS版本
)(可选)默认使用TLS版本1.2(tlsversions.tlsv1_2 tlsversions.tlsv1_1) - 查询(str)要标记的电子邮件
- 欺诈代码(int)电子邮件标记为欺诈的原因;必须是emailage.client.emailageclient.fraud代码中的ID之一
- 查询(str(str,str)(uRFC2822兼容电子邮件,RFC791兼容IP,或两者兼有
- params(kwargs)参数的关键字参数形式,如urid、名字、姓氏等。
- 电子邮件(str)符合RFC2822的电子邮件
- params(kwargs)(可选)参数的关键字参数形式,如urid、名字、姓氏等。
- 电子邮件(str)符合RFC2822的电子邮件
- IP(str)符合RFC791的IP
- params(kwargs)(可选)参数的关键字参数形式,如urid、名字、姓氏等。
- 端点(str)发送请求的API端点(/flag)
- params(kwargs)要随请求发送的参数的关键字参数列表
- 要用于会话的域(str请参阅:class:apidomains)api域
- TLS_版本(请参见:类:TLS版本)(可选)默认使用TLS版本1.2(tlsversions.tlsv1_2 tlsversions.tlsv1_1)
- 机密消费者机密,例如SID或API密钥
- 代币消费代币
- 机密(str)API机密
- params(dict)将在查询中发送的值字典
- nonce(str)(可选)用于签名创建的随机字符串,如果未提供uuid4(),则使用uuid4
- 时间戳(int)(可选)整数格式时间戳,time.time()如果未提供则使用
- 方法(str)用于发送请求的http方法(get post);emailageclient使用get
- url(str)API域和端点到?
- params(dict)用户提供的查询字符串参数和oauth1.0参数:方法add_oauth_entries_to_fields_dict:
- hmac_key(str)对于emailage用户,这是您的消费令牌,末尾附加一个&;(和号)
- 修复python 2.7用户url编码函数的选择
- 已更正IPv4验证正则表达式,允许在八位字节2、3、4中使用0
- 更正了空格url编码中的错误
- 显著扩展的签名功能文档
- 将所有OAuth签名生成逻辑从请求生成提取到签名模块中
- api响应字节的显式解码消除了对响应运行regex的需要
- 更正了IPv4和IPv6 IP地址的验证
- 添加了一个可选参数,用于在初始化emailageclient时指定TLS 1.1或1.2
由于合成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')
例外情况
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')
此客户端可以在下列任何问题上引发异常:
客户端API参考
类客户端.tls版本
emailage api支持的tls版本的枚举
类client.apidomains
指定域的API URL
类client.emailageclient
(secret,token,sandbox=false,
_ tls_version=<;sslmethod.protocol_tlsv1_2:5>;)
\uu init
(secret,token,sandbox=false,
_ tls_version=<;sslmethod.protocol_tlsv1_2:5>;)
使用指定的凭据和 环境
参数:
示例:
>>> 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')
标记为欺诈
(查询,欺诈代码)
将电子邮件地址标记为欺诈。
参数:
返回:
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地址和可选 其他参数
参数:
返回:
api生成的响应的json dict
示例:
$ pip install emailage-official
1
查询电子邮件
(电子邮件,**参数)
查询所提供电子邮件地址的风险评分信息。
参数:
返回:
api生成的响应的json dict
示例:
$ pip install emailage-official
2
查询电子邮件和IP地址
(电子邮件,IP,**参数)
查询提供的电子邮件和IP组合的风险评分信息 地址
参数:
返回:
api生成的响应的json dict
示例:
$ pip install emailage-official
3
删除标志
(查询)
取消标记以前标记为良好或欺诈的电子邮件地址。
参数:
查询(str)要标记的电子邮件
返回:
api生成的确认响应的json dict
示例:
$ pip install emailage-official
4
请求
(端点,**参数)
生成对emailage验证器和标记api的请求的基本方法
参数:
返回:
api生成的响应的json dict
示例:
$ pip install emailage-official
5
设置API域
(域,\u TLS_version=<;sslmethod.protocol_TLSV1_2:5>;)
显式设置要用于客户端会话的api域,通常 用于测试场景
参数:
返回:
<>示例:
$ pip install emailage-official
6
示例:
$ pip install emailage-official
7
设置凭据
(机密,令牌)
显式设置生成 当前会话中的请求。当您要更改凭据时很有用 在最初创建客户机之后。
参数:
返回:
<>签名。将"oauth"条目添加到字段dict中(secret,params,
nonce=无,时间戳=无)
向用户params dict添加oauth1.0所需的dict条目 签名生成
参数:
返回:
包含参数和执行前所需的oauth1.0字段的dict 签名.创建
示例:
$ pip install emailage-official
8
签名。创建
(方法,URL,参数,hmac_键)
生成用作查询字符串值的OAuth1.0签名 参数oauth_signature
参数:
返回:
用于OAuth_签名的str值
示例:
$ pip install emailage-official
9
2018年,emailage开发团队。|由Sphinx 1.7.7提供动力