Geeksend.com API
电子邮箱验证器
用户账户
邮件营销
GEEKSEND API
用户可以通过 Geeksend API 来使用 Geeksend 功能。集成 Geeksend API 可同步潜在客户、查找邮箱地址以及管理潜在客户等。
Geeksend API 的速率限制为每分钟 60 个请求。
免费用户若要测试 API 功能,可直接通过在线客服或service@geeksend.com联系我们,无需升级套餐。
认证
您需要生成访问口令来确认之后的请求。发出请求时,请在“Authorization”字段中指定此访问口令
Authorization: Bearer QSlHffXmCAILIOHNGXToq4LsP2yX64VQhEBZ7Ei4
以上即为生成的口令示例。
POST https://open.geeksend.com/oauth/access_token
grant_type | 将始终是client_credentials |
client_id | 您的 ID 在帐户设置中可用 https://app.geeksend.com/account/api |
client_secret | 您的密钥在帐户设置中可用 https://app.geeksend.com/account/api |
def get_access_token():
params = {
'grant_type':'client_credentials',
'client_id':'client_id',#your client_id
'client_secret': 'client_secret' #your client_secret
}
res = requests.post('https://open.geeksend.com/oauth/access_token', data=params)
token = res.json()["data"]["access_token"]
return token
{
"code": 1,
"info": "success",
"data": {
"access_token": "your access token",
"expire_in": 1660
}
}
access_token | 您的新访问口令 |
token_type | 将始终是 Bearer |
expires_in | 口令到期时间(秒) |
电子邮箱查找器
POST域名搜索
每10个邮箱地址 1个积分;1个潜在客户 1个积分输入域名:geeksend.com, 将返回该域名上的所有邮箱地址。
如果数据库中存有关于邮箱所有者的任何其他信息,我们也会将其添加进来。
每次响应最多返回 100 个邮箱地址或100个潜在客户。
每10个邮箱地址,扣除1个积分(不满10按照10计算);每1个潜在客户,扣除1个积分。
如果没有返回邮箱地址或潜在客户,则不会向您收取该请求的费用。
POST https://open.geeksend.com/search/domain_emails_with_info
domain | 是您要从中查询电子邮箱地址的域名名称。例如:geeksend.com |
type | 它包含不同的值 - all 、personal 或 generic。通用的电子邮箱地址是基于职务的电子邮箱地址,例如 - contact@geeksend.com. 个人的电子邮箱地址是在公司工作的实际人员的电子邮箱地址。 |
limit | 设置返回的电子邮箱地址的数量限制。每次响应最多返回100个电子邮箱地址。 |
lastId | 若要收集的邮箱地址数量超过您在“limit”输入参数中设置的数量,请您在下一个请求中输入上一个请求中最后收集的邮箱地址 ID。这样,系统将跳过之前收集过的邮箱。 请注意,lastId 是必填参数。 默认值为 0。 |
positions | 使用此参数过滤潜在客户的职位,例如:“Software Developer”。如需过滤多个职务,请输入一些必要的职位名称 |
def get_domain_search():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'domain': 'geeksend.com',
'type': 'all',
'limit': 100,
'lastId': 0,
}
res = requests.post('https://open.geeksend.com/search/domain_emails_with_info',headers=headers,data=params)
print(res.json())
{
"success": true,
"domain": "huawei.com",
"result": 100,
"lastId": 17268170,
"limit": 100,
"companyName": "geeksend",
"emails": [
{
"email": "info@geeksend.com",
"type": "personal",
"status": "valid"
}
]
}
domain | API 已为其提供电子邮箱地址的域名。 |
limit | 指定要返回的电子邮箱地址的最大数量。 |
companyName | 用于查找电子邮箱地址的公司名称。 |
emails | 在搜索中检索到的域名电子邮箱的数组。 |
在搜索中检索到的特定电子邮箱地址。 | |
type | 包含prospect 或 email值。如果返回类型为 prospect,则Geeksend.com已找到有关邮箱地址所有者的其他信息。 |
status | 电子邮箱的验证状态。电子邮箱的状态可以是verified 或 notVerified. |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
position | 邮箱地址所有者的当前职位。 |
sourcePage | 检索到的个人数据的源页面。 |
lastId | 上一个回执中最后收集到的邮箱地址ID。 |
POST邮箱地址数量
免费通过API的方式,您可以在我们的数据库中查询到某个域名下的邮箱地址数量,此功能完全免费,无需支付积分。
POST https://open.geeksend.com/search/get_domain_emails_count
domain | 您想知道我们数据库中邮箱地址数量的域名名称。 |
def get_email_count():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'domain':'geeksend.com'
}
res = requests.post('https://open.geeksend.com/search/get_domain_emails_count',headers=headers, data=params)
print(json.dumps(res.json()))
{"success": true, "domain": "geeksend.com", "result": 417}
domain | 您想知道我们数据库中邮箱地址数量的域名的名称。 |
result | 我们已找到该域名下的电子邮箱地址的数量。如果我们无法提供该域名的结果,则该域的结果始终是0 . |
POST电子邮箱查找器
每个请求 1个积分通过API可按照名字和姓氏以及域名来查找邮箱地址。如果我们的数据库中不存在此电子邮箱地址,我们将无法立即为您提供结果。
POST https://open.geeksend.com/search/get_emails_from_names
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
domain | 邮箱地址中使用的公司的域名。 |
def get_email_finder():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'domain':'geeksend.com',
'firstName': 'Junn',
'lastName':'Dai'
}
res = requests.post('https://open.geeksend.com/search/get_emails_from_names',headers=headers,data=params)
print(json.dumps(res.json()))
{
"success": true,
"params": {
"firstName": "Junn",
"lastName": "Dai",
"domain": "geeksend.com"
},
"data": {
"firstName": "Junn",
"lastName": "Dai",
"emails": [
]
},
"status": {
"identifier": "not_found",
"description": "Emails search is completed"
}
}
status | 使用此对象中的值来检测流程的状态。 |
identifier | 可能包含以下值:complete ,in_progress , 或 not_found 。如果标识符为 not_found ,回执将包含一个没有邮箱地址的数组。 |
description | 在这里,您将看到有关邮箱地址查找状态的文字说明。 |
data | 包含搜索结果。 |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
emails | 邮箱地址及其状态的数组。值emailStatus可能包含:valid 或unknown . |
POST通过网址获取潜在客户
每个请求 1个积分通过您输入的潜在客户的社交网址,Geeksend会返回潜在客户的完整信息以及找到的邮箱地址。该方法的前提是您需要拥有潜在客户的社交网址,否则将不会显示结果。
POST https://open.geeksend.com/search/get_emails_from_url
url | 潜在客户社交媒体资料的链接。在(括号)中指定社交网络的名称(领英或X) 。 |
def get_emails_from_url():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'url':'https://www.linkedin.com/in/geeksend'
}
res = requests.post('https://open.geeksend.com/search/get_emails_from_url', headers=headers, data=params)
print(json.dumps(res.json()))
{
"success": true,
"data": [
{
"id": "DLAr4OjP",
"name": "geeksend",
"firstName": "geeksend",
"lastName": "geeksend",
"sourcePage": "https://linkedin.com/in/geeksend",
"source": "linkedin",
"industry": "research",
"country": "china",
"locality": "shenzhen, china,",
"lastUpdateDate": {
"date": "1970-01-01 08:00:00",
"timezone_type": 3,
"timezone": "UTC"
},
"currentJob": [
{
"companyName": "geeksend",
"position": "",
"socialLink": "https://linkedin.com/company/geeksend",
"site": "https://geeksend.com",
"locality": "shenzhen, china",
"state": "",
"city": "shenzhen",
"street": "",
"street2": "",
"postal": "",
"founded": "1856",
"startDate": "",
"endDate": null,
"size": "10001+",
"industry": "web",
"companyType": "",
"country": "china"
}
],
"previousJob": [],
"social": [
{
"type": "linkedin",
"link": "https://linkedin.com/in/geeksend"
}
],
"emails": [
{
"email": "info@geeksend.com",
"emailStatus": "valid"
}
]
}
]
}
success | 是 true如果已经找到潜在客户 |
id | 唯一的配置文件标识符 |
name | 潜在客户全名 |
firstName | 潜在客户名字 |
lastName | 潜在客户姓氏 |
industry | 潜在客户资料中显示的行业 |
country | 潜在客户所在国家 |
locality | 潜在客户所在地点 |
skills | 潜在客户技能 |
social | 潜在客户的社交资料链接 |
currentJobs | 数组包含有关潜在客户当前职务的信息 |
previousJobs | 数组包含有关潜在客户以前职务的信息 |
lastUpdateDate | 上次资料更新日期 |
emails | 潜在客户的邮箱地址(包含实际状态) |
POST获取含有邮箱地址的社交账户资料
每个请求 1个积分当您提供一个邮箱地址时,Geeksend 会从数据库中返回与该邮箱地址所有者相关的所有配置文件信息。若我们在数据库中未能找到有关该邮箱地址所有者的信息,那么此次请求将不会向您收取费用。
POST https://open.geeksend.com/search/get_profile_by_email
您想要查找其他信息的人的邮箱地址。 |
def get_profile_by_email():
token = get_access_token()
headers = {
"Authorization": f"Bearer {token}"
}
params = {
'email':'info@geeksend.com'
}
res = requests.post('https://open.geeksend.com/search/get_profile_by_email', headers=headers, data=params)
print(json.dumps(res.json()))
{
"success": true,
"id": "DyExGRgL",
"source": "linkedin",
"name": "geeksend",
"firstName": "geeksend",
"lastName": "geeksend",
"industry": null,
"country": "China",
"locality": "China, shenzhen",
"social": [
{
"type": "linkedin",
"link": "https://linkedin.com/in/geeksend"
}
],
"currentJobs": {
"companyName": "geeksend",
"position": "",
"socialLink": "https://linkedin.com/company/geeksend",
"site": "http://www.geeksend.com",
"locality": "China",
"state": "shenzhen",
"city": "shenzhen",
"street": "",
"street2": "",
"postal": "",
"founded": "1921",
"startDate": "",
"endDate": null,
"size": "10,001+",
"industry": "geeksend",
"companyType": "",
"country": "China"
},
"previousJobs": [],
"lastUpdateDate": "2024-09-25 14:56:25"
}
id | 唯一的配置文件标识符。 |
source | 检索到的个人数据的来源。 |
name | 邮箱地址所有者的全名。 |
firstName | 此人的名字。 |
lastName | 此人的姓氏。 |
logo | 此人的资料照片。 |
industry | 来源中显示的此人所在行业。 |
country | 来源中显示的此人所在国家/地区。 |
locality | 来源中显示的此人所在地点。 |
social | 到此人社交资料链接。 |
currentJobs | 包含有关此人当前工作职位信息的数组。 |
previousJobs | 一个包含有关此人以前工作职位信息的数组。 |
lastUpdateDate | 数据库中最后一份资料的更新日期。 |
电子邮箱验证器
POST电子邮箱验证器
免费该方法可以检查您所提供的邮箱地址是否有效。API 端点会返回邮箱地址的验证结果。若我们之前未曾验证过某个邮箱地址,那么结果将不会反馈给您。在此情况下,API 将返回 “not_verified” 标识符,并且不会向您收取积分。此时,您应使用 “添加邮箱地址用于验证” 方法推送此邮箱地址进行验证,之后您便能够使用此端点获取邮箱地址的验证结果。
POST https://open.geeksend.com/verify/get_emails_verification_status
emails | 您需要验证的邮箱地址。 |
def get_email_verifier():
token = get_access_token()
headers = {
"Authorization": f"Bearer {token}",
"Content-Type": "application/json"
}
params = {
'emails': ['info@geeksend.com','help@geeksend.com'],
}
res = requests.post('https://open.geeksend.com/verify/get_emails_verification_status',headers=headers, data=json.dumps(params))
print(res.json())
{
"success": true,
"results": [
{
"status": {
"identifier": "complete",
"description": "Verification completed"
},
"data": {
"email": "info@geeksend.com",
"sendStatus": "invalid",
"smtpStatus": "valid",
"isCatchall": false,
"isGreylist": false,
"isBannedError": true,
"isConnectionError": false,
"isBusinessEmail": false,
"isValidFormat": true,
"isWebmail": false,
"isDisposable": false,
"isCompanyEmail": false,
"isGibberish": false
}
}
]
}
status | 邮箱地址验证状态。包含标识符和描述。 |
identifier | 可以包含以下值:complete ,in_progress , 或 not_verified . 如果标识符为 not_verified ,data 将为空。 |
我们只对验证结果为有效和无效的邮箱地址进行扣费,验证结果为无法验证的则不收取您的费用。
POST添加邮箱地址用于验证
每验证 1 个邮箱地址消耗 1 个积分如果您以前从未验证过某个邮箱地址,则应使用此 API 方法将其推送以进行验证。执行此操作后,您可以使用“电子邮箱验证器”获得验证结果。
POST https://open.geeksend.com/verify/add_emails_to_verification
emails | 您需要添加到验证队列的邮箱地址列表。每个请求最多可以包含 10 个邮箱地址。 |
def add_emails_for_verification():
token = get_access_token()
headers = {
"Authorization": f"Bearer {token}",
"Content-Type": "application/json"
}
params = {
'emails': ['info@geeksend.com'],
}
res = requests.post('https://open.geeksend.com/verify/add_emails_to_verification',headers=headers, data=json.dumps(params))
print(res.json())
{
"success": true,
"results": [
"info@geeksend.com"
]
}
如果将邮箱地址成功添加到队列中,则该方法返回 {"success":true}
用户账户
POST查看用户余额
免费用此方法查看您的积分余额。
POST http://open.geeksend.com/account/balance
def get_balance():
token = get_access_token()
headers = {
"Authorization": f"Bearer {token}"
}
res = requests.post('https://open.geeksend.com/account/balance',headers=headers)
print(json.dumps(res.json()
{
"success": true,
"data": {
"balance": 100,
"teamwork": true
}
}
balance | 用户当前的信用点数余额。 |
teamwork | 若您目前是团队成员或领导,则为“true”,若您不属于任何团队,则为“false”。 |
recipients_used | 本月已使用的唯一收件人数量。 |
邮件营销
POST发送邮件
每个邮箱收件人扣除1积分给指定邮箱发送邮件内容
POST https://open.geeksend.com/send/send
emails | 收件人邮箱,可以传递多个,一次最多10个邮箱 |
prospect_id | 潜在客户id,通过系统潜在客户列表获取 |
template_id | 邮件模版id,通过邮件模版接口获取相应的邮件模版id数据,如果模版id提供,subject和content可以不传(template_id和【subject,content】二选一) |
subject | 邮件主题 |
content | 邮件内容 |
sender | 发件人邮箱地址【如果个人邮箱发信需要在电子邮箱账户配置邮箱信息,链接:https://app.geeksend.com/account/email-account】 |
def get_email_finder():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'emails':['info@geeksend.com'],
'prospect_id': 0,
'template_id': 100010,
'subject': '邮件主题',
'content':'邮件内容',
'sender': "sender@geeksend.com",
}
res = requests.post('https://open.geeksend.com/send/send',headers=headers,data=params)
print(json.dumps(res.json()))
{
"success": true,
"results": {
"task_id": 3
}
}
task_id | 任务id,用来通过【获取邮件发送结果】接口获取邮件发送状态 |
POST获取邮箱发送结果
返回值包含邮箱以及邮箱发送状态
POST https://open.geeksend.com/send/result
task_id | 任务id,通过发送邮箱api接口返回的task_id |
def get_email_finder():
token = get_access_token()
headers = {
"Authorization":f"Bearer {token}"
}
params = {
'task_id':1
}
res = requests.post('https://open.geeksend.com/send/result',headers=headers,data=params)
print(json.dumps(res.json()))
{
"success": true,
"results": {
"task_id": 1,
"data": {
"info@geeksend.com": "success"
}
}
}
task_id | 当前接口请求的任务id |
data | 对应的邮箱发送状态【邮箱地址:发送状态】 【发送状态:success 发送成功 unsend 未发送 failed 发送失败 sending 发送中】 |