Snov.io API
用户可以通过我们简单的 REST API 使用 Snov.io 功能。 与 Snov.io API 集成以同步您的潜在客户、查找邮箱地址、管理潜在客户等。 API 速率限制为每分钟 60 个请求。
免费注册的 Snov.io 用户可以通过 help@snov.io 联系我们来测试 API 功能,无需升级套餐。
认证
您需要生成访问口令以认证未来的请求。发出请求时,请在“授权”字段中指定此访问口令。
Authorization: Bearer QSlHffXmCAILIOHNGXToq4LsP2yX64VQhEBZ7Ei4 |
这是口令生成的示例。
POST | https://api.snov.io/v1/oauth/access_token |
grant_type | 将始终是 client_credentials |
client_id | 您的 ID 在帐户设置中可用https://app.snov.io/account#/api |
client_secret | 您的密钥在帐户设置中可用https://app.snov.io/account#/api |
<?php function getAccessToken() { $params = [ 'grant_type' => 'client_credentials', 'client_id' => 'c57a0459f6t141659ea75cccb393c5111', 'client_secret' => '77cbf92b71553e85ce3bfd505214f40b' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/oauth/access_token', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res['access_token']; } ?>
def get_access_token(): params = { 'grant_type':'client_credentials', 'client_id':'c57a0459f6t141659ea75cccb393c111', 'client_secret': '77cbf92b71553e85ce3bfd505214f40b' } res = requests.post('https://api.snov.io/v1/oauth/access_token', data=params) resText = res.text.encode('ascii','ignore') return json.loads(resText)['access_token']
{ | |||
| |||
} |
access_token | 您的新访问口令 |
token_type | 将始终是 Bearer |
expires_in | 口令到期时间(秒) |
API 方法
GET域名搜索 V.2
每 10 个邮箱地址/潜在客户 1 个信用点数输入域名,Snov.io 将返回该域名上的所有邮箱地址。
如果数据库中有关于邮箱所有者的任何其他信息,我们也将添加该信息。
每次响应最多返回 100 个邮箱地址。如果没有至少返回一个邮箱地址,则不会向您收取该请求的费用。
GET | https://api.snov.io/v2/domain-emails-with-info |
domain | 您要从中查找电子邮箱地址的域名的名称。例如,“ snov.io”。 |
type | 它包含不同的值 - all
,personal 或 generic 。通用电子邮箱地址是基于职务的电子邮箱地址,例如 - contact@snov.io.个人电子邮箱地址是在公司工作的实际人员的电子邮箱。 |
limit | 设置限制以指定要返回的电子邮箱地址的数量。每次响应最多返回 100 个电子邮箱地址。 |
lastId | 如果要收集的邮箱地址数量超过您在“限制”输入参数中设置的数量,请在您的下一个请求中输入上一个请求中最后收集的邮箱地址 ID。这样,系统将跳过之前收集的邮箱。 请注意,lastId 是必填参数。 默认值为 0
. |
positions | 使用此参数过滤潜在用户的职位,例如:“软件开发”。如需过滤多个职务,请输入一些必要的职位名称。 |
<?php function getDomainSearch() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'domain' => 'octagon.com', 'type' => 'all', 'limit' => 100, 'lastId' => 0, 'positions' => ['Software Developer','QA'] ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v2/domain-emails-with-info?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_domain_search(): token = get_access_token() params = { 'access_token': token, 'domain': 'octagon.com', 'type': 'all', 'limit': 100, 'lastId': 0, 'positions[]': ['Software Developer','QA'] } res = requests.get('https://api.snov.io/v2/domain-emails-with-info', params=params) return json.loads(res.text)
{ "success": true, "domain": "octagon.com", "webmail": false, "result": 84, "lastId": 1823487525, "limit": 100, "companyName": "Octagon", "emails": [ { "email": "ben.gillespie@octagon.com", "firstName": "Ben", "lastName": "Gillespie", "position": "Senior Account Executive", "sourcePage": "https://www.linkedin.com/pub/ben-gillespie/7/73/809", "companyName": "Octagon", "type": "prospect", "status": "verified" } ] }
domain | API 已为其提供电子邮箱地址的域名。 |
webmail | 是 true 如果您正在搜索的域名是Webmail。 |
result | 我们已找到该域名的电子邮箱地址数量。我们无法提供Webmail域名的结果,因此Webmail的结果始终是 0
. |
limit | 指定要返回的电子邮箱地址的最大数量。 |
companyName | 用于查找电子邮箱地址的公司名称。 |
emails | 在搜索中检索到的域名电子邮箱的数组。 |
email | 在搜索中检索到的特定电子邮箱地址。 |
type | 包含 prospect 或 email 值。如果返回类型为 prospect ,Snov.io 已找到有关邮箱地址所有者的其他信息。 |
status | 电子邮箱的验证状态。电子邮箱的状态可以是 verified 或 notVerified . |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
position | 邮箱地址所有者的当前职位。 |
sourcePage | 检索到的个人数据的源页面。 |
lastId | 上一个回执中最后收集到的邮箱地址ID。 |
POST邮箱地址数量
免费使用此 API 方法,您可以在我们的数据库中了解来自某个域名的邮箱地址数量。它完全免费,因此您不需要任何信用点数!
POST | https://api.snov.io/v1/get-domain-emails-count |
domain | 您想知道我们数据库中邮箱地址数量的域名的名称。 |
<?php function getEmailCount() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'domain' => 'octagon.com', ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-domain-emails-count', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_email_count(): token = get_access_token() params = {'access_token':token, 'domain':'octagon.com' } res = requests.post('https://api.snov.io/v1/get-domain-emails-count', data=params) return json.loads(res.text)
{ | ||||
| ||||
} |
domain | 您想知道我们数据库中邮箱地址数量的域名的名称。 |
webmail | 是 true 如果您正在搜索的域名是webmail。 |
result | 我们已找到该域的电子邮箱地址总数。我们无法提供网络邮件域的结果,因此网络邮件的结果将始终是 0
. |
POST电子邮箱查找器
免费该 API 方法使用此人的名字和姓氏以及域名来查找邮箱地址。如果我们的数据库中没有此电子邮箱地址,我们将无法立即向您提供结果。为了加快这一过程,您可以使用添加名称以查找电子邮箱方法以推送此邮箱地址地址进行搜索。之后,再次尝试使用电子邮箱地址查找方法。
Обмеження: Якщо ви надсилаєте значну кількість запитів протягом години, ви можете побачити таке повідомлення про помилку: «There are too many prospects processing. Please try later»
Кількість допустимих запитів на годину визначає ваш тарифний план:
- Starter - 200个请求/小时
- Pro 5K - 400个请求/小时
- Pro 20K - 600个请求/小时
- Pro 50K - 800个请求/小时
- Pro 100K - 1,000个请求/小时
POST | https://api.snov.io/v1/get-emails-from-names |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
domain | 邮箱地址中使用的公司的域名。 |
<?php function getEmailFinder() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'domain' => 'octagon.com', 'firstName' => 'gavin', 'lastName' => 'vanrooyen' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-from-names', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_email_finder(): token = get_access_token() params = {'access_token':token, 'domain':'octagon.com', 'firstName': 'gavin', 'lastName':'vanrooyen' } res = requests.post('https://api.snov.io/v1/get-emails-from-names', data=params) return json.loads(res.text)
{ | |||||||||||||
| |||||||||||||
| |||||||||||||
| |||||||||||||
} |
status | 使用此对象中的值来检测流程的状态。 |
identifier | 可能包含以下值: complete
,in_progress
, 或 not_found 。如果标识符为 not_found ,回执将包含一个没有邮箱地址的数组。 |
description | 在这里,您将看到有关邮箱地址查找状态的文字说明。 |
data | 包含搜索结果。 |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
emails | 邮箱地址址及其状态的数组。值 emailStatus 可能包含: valid 或 unknown
. |
POST添加名称以查找邮箱地址
每个请求 1 个信用点数如果 Snov.io 在数据库中没有您要查找的邮箱地址,并且无法提供这些电子邮箱地址(通过电子邮箱查找器),您可以尝试使用此方法推送邮箱地址搜索请求。如果找到邮箱地址,则可以通过电子邮箱查找器再次免费请求进行收集。
Обмеження: Якщо ви надсилаєте значну кількість запитів протягом години, ви можете побачити таке повідомлення про помилку: «There are too many prospects processing. Please try later»
Кількість допустимих запитів на годину визначає ваш тарифний план:
- Starter - 200个请求/小时
- Pro 5K - 400个请求/小时
- Pro 20K - 600个请求/小时
- Pro 50K - 800个请求/小时
- Pro 100K - 1,000个请求/小时
POST | https://api.snov.io/v1/add-names-to-find-emails |
firstName | 邮箱地址所有者的名字。 |
lastName | 邮箱地址所有者的姓氏。 |
domain | 邮箱地址中使用的公司的域名。 |
<?php function getAddNamesToFindEmails() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'domain' => 'octagon.com', 'firstName' => 'gavin', 'lastName' => 'vanrooyen' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/add-names-to-find-emails', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def add_names_to_find_emails(): token = get_access_token() params = {'access_token':token, 'domain':'octagon.com', 'firstName': 'gavin', 'lastName':'vanrooyen' } res = requests.post('https://api.snov.io/v1/add-names-to-find-emails', data=params) return json.loads(res.text)
{ | ||||||
| ||||||
} |
如果将邮箱地址请求成功添加到队列中,则该方法返回"sent":true.
POST添加网址以搜索潜在客户
每个请求 1 个信用点数通过社交网址查找潜在客户。如需得到结果,请使用“通过网址获取潜在客户”方法。
POST | https://api.snov.io/v1/add-url-for-search |
url | 潜在客户社交媒体资料的链接。 在 [括号] 中指定社交网络的名称 (领英 或 X) 。 |
<?php function addUrlForSearch() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'url' => 'https://www.linkedin.com/in/johndoe/&social' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/add-url-for-search', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def add_url_for_search(): token = get_access_token() params = {'access_token':token, 'url':'https://www.linkedin.com/in/elie-ohayon-aaab7341' } res = requests.post('https://api.snov.io/v1/add-url-for-search', data=params) return json.loads(res.text)
{ "success": true }
success | 是 true 如果潜在客户已成功添加到查找列表中。 |
message | 将潜在客户添加到列表中时出错。 |
POST通过网址获取潜在客户
免费提供潜在客户的社交网址,Snov.io 将返回潜在客户的完整信息与找到的邮箱地址。您之前应该使用“添加网址以搜索潜在客户”方法,否则不会显示结果。
POST | https://api.snov.io/v1/get-emails-from-url |
url | 潜在客户社交媒体资料的链接。 在 [括号] 中指定社交网络的名称 (领英 或 X) 。 |
<?php function getEmailsFromUrl() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'url' => 'https://www.linkedin.com/in/john-doe-123456/' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-from-url', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_emails_from_url(): token = get_access_token() params = {'access_token':token, 'url':'https://www.linkedin.com/in/elie-ohayon-aaab7341' } res = requests.post('https://api.snov.io/v1/get-emails-from-url', data=params) return json.loads(res.text)
{ "success": true, "data": [ { "id": "xusD3-T_K5IktGoaa8Jc8A==", "name": "Gavin Vanrooyen", "firstName": "John", "lastName": "Doe", "sourcePage": "https://www.linkedin.com/in/john-doe-123456/", "source": "linkedIn", "industry": "Entertainment", "country": "United States", "locality": "Greater Atlanta Area", "lastUpdateDate": { "date": "2019-09-11 12:37:58.000000", "timezone_type": 3, "timezone": "UTC" }, "currentJob": [ { "companyName": "Octagon", "position": "Senior Brand Director", "socialLink": "https:\/\/www.linkedin.com\/company\/659333", "site": "http:\/\/octagon.com", "locality": "United States", "state": null, "city": null, "street": null, "street2": null, "postal": null, "founded": null, "startDate": "2018-07-31", "endDate": null, "size": "1-10", "industry": "Entertainment", "companyType": "Public Company", "country": "United States" } ], "previousJob": [ { "companyName": "UPS", "position": "Manager, Sponsorships and Events", "socialLink": "https:\/\/www.linkedin.com\/company\/1523574", "site": "http:\/\/www.ups.com\/", "locality": "United States", "state": "GA", "city": "Atlanta", "street": "55 Glenlake Parkway, NE", "street2": null, "postal": "30328", "founded": "1907", "startDate": null, "endDate": null, "size": "10001+", "industry": "Logistics and Supply Chain", "companyType": "Public Company", "country": "United States" } ], "social": [], "emails": [ { "email": "johndoe@octagon.com", "status": "valid" } ] } ] }
success | 是 true 如果已经找到潜在客户 |
id | 唯一的配置文件标识符 |
name | 潜在客户全名 |
firstName | 潜在客户名字 |
lastName | 潜在客户姓氏 |
industry | 潜在客户资料中显示的行业 |
country | 潜在客户所在国家 |
locality | 潜在客户所在地点 |
skills | 潜在客户技能 |
social | 潜在客户的社交资料链接 |
currentJobs | 数组包含有关潜在客户当前职务的信息 |
previousJobs | 数组包含有关潜在客户以前职务的信息 |
lastUpdateDate | 上次资料更新日期 |
emails | 潜在客户的邮箱地址(包含实际状态) |
POST获取含有邮箱地址的社交账户资料
每个请求 1 个信用点数提供一个邮箱地址,Snov.io 将从数据库中返回连接到提供的邮箱地址所有者的所有配置文件信息。
如果我们在数据库中找不到有关邮箱地址所有者的信息,则不会向您收取该请求的费用。
POST | https://api.snov.io/v1/get-profile-by-email |
email | 您想要查找其他信息的人的邮箱地址。 |
<?php function getProfileByEmail() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'email' => 'gavin.vanrooyen@octagon.com' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-profile-by-email', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_profile_by_email(): token = get_access_token() params = {'access_token':token, 'email':'gavin.vanrooyen@octagon.com' } res = requests.post('https://api.snov.io/v1/get-profile-by-email', data=params) return json.loads(res.text)
{ "success": true, "id": 301592, "source": "linkedIn", "name": "Lizi Hamer", "firstName": "Lizi", "lastName": "Hamer", "logo": "https://app.snov.io/img/peoples/010fcf23c70dfa68d880545ec89a9215.jpg", "industry": null, "country": "Singapore", "locality": "Singapore", "social": [ { "link": "https://www.linkedin.com/in/lizihamer/", "type": "linkedIn" }, { "link": "https://twitter.com/LiziHamer", "type": "twitter" } ], "currentJobs": [ { "companyName": "Octagon", "position": "Regional Creative Director", "socialLink": "https://www.linkedin.com/company/165282", "site": "www.octagon.com", "locality": "Greater New York City Area", "state": "Connecticut", "city": "Stamford", "street": "290 Harbor Dr", "street2": "2nd Floor", "postal": "06902", "founded": "1983", "startDate": "2016-01-31", "endDate": null, "size": "1-10", "industry": "Marketing and Advertising", "companyType": "Public Company", "country": "United States" }, { "companyName": "SisuGirls", "position": "Co Founder", "socialLink": "https://www.linkedin.com/company/3841118", "site": "http://www.sisugirls.org", "locality": null, "state": "SG", "city": "Singapore", "street": "33-03 Hong Leong Building", "street2": null, "postal": null, "founded": "2014", "startDate": "2015-07-31", "endDate": null, "size": "1-10", "industry": "Health, Wellness and Fitness", "companyType": null, "country": "Singapore" } ], "previousJobs": [ { "companyName": "Fusion Co-innovation Labs", "position": "Creative Entrepreneur", "socialLink": null, "site": null, "locality": null, "state": null, "city": null, "street": null, "street2": null, "postal": null, "founded": null, "startDate": "2013-05-31", "endDate": "2013-10-31", "size": null, "industry": null, "companyType": null, "country": null }, { "companyName": "Russell Commission", "position": "Youth Advisory Board Member", "socialLink": null, "site": null, "locality": null, "state": null, "city": null, "street": null, "street2": null, "postal": null, "founded": null, "startDate": "2004-06-30", "endDate": "2006-06-30", "size": null, "industry": null, "companyType": null, "country": null } ], "lastUpdateDate": "2018-02-07 10:12:28" }
id | 唯一的配置文件标识符。 |
source | 检索到的个人数据的来源。 |
name | 邮箱地址所有者的全名。 |
firstName | 此人的名字。 |
lastName | 此人的姓氏。 |
logo | 此人的资料照片。 |
industry | 来源中显示的此人所在行业。 |
country | 来源中显示的此人所在国家/地区。 |
locality | 来源中显示的此人所在地点。 |
social | 到此人社交资料链接。 |
currentJobs | 包含有关此人当前工作职位信息的数组。 |
previousJobs | 一个包含有关此人以前工作职位信息的数组。 |
lastUpdateDate | 数据库中最后一份资料的更新日期。 |
POST电子邮箱验证器
免费检查提供的邮箱地址是否有效且可送达。 API 端点将返回邮箱地址验证结果。 如果我们之前没有验证过某个邮箱地址,则结果将不会返回给您。 在这种情况下,API 将返回 “not_verified” 标识符,并且不会向您收取验证此邮箱地址的点数。 您应该使用 添加邮箱地址用于验证方法推送此邮箱地址地址进行验证,之后您将能够使用此端点获取邮箱地址验证结果。
Обмеження: Якщо ви надсилаєте значну кількість запитів протягом години, ви можете побачити таке повідомлення про помилку: «There are too many prospects processing. Please try later»
Кількість допустимих запитів на годину визначає ваш тарифний план:
- Starter - 500个邮箱/小时
- Pro 5K - 1,000个邮箱/小时
- Pro 20K - 1,400个邮箱/小时
- Pro 50K - 2,000个邮箱/小时
- Pro 100K - 4,000个邮箱/小时
POST | https://api.snov.io/v1/get-emails-verification-status |
emails | 您需要验证的邮箱地址。 |
<?php function getEmailVerifier() { $token = getAccessToken(); $emails = ['gavin.vanrooyen@octagon.com', 'lizi.hamer@octagon.com']; $emailsQuery = http_build_query( [ 'emails' => $emails ] ); $params = ['access_token' => $token]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-verification-status?' . $emailsQuery, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_email_verifier(): token = get_access_token() params = {'access_token':token, } res = requests.post('https://api.snov.io/v1/get-emails-verification-status?emails[]=gavin.vanrooyen@octagon.com&emails[]=lizi.hamer@octagon.com', data=params) return json.loads(res.text)
{ | |||||||||||||||||||||
| |||||||||||||||||||||
| |||||||||||||||||||||
} |
此方法将返回每个请求的邮箱地址的数据。该响应包含邮箱地址验证状态和验证结果。
status | 邮箱地址验证状态。包含标识符和描述。 |
identifier | 可以包含以下值: complete
,in_progress
, 或 not_verified
. 如果标识符为 not_verified
,data 将为空。 |
description | 在这里,您会看到验证状态的文字说明。 |
data | 包含进一步的验证结果 - email
,isValidFormat
,isWebmail
,isGibberish
,isCatchall
,isGreylist
,isBannedError
,isConnectionError
. |
email | 已验证的邮箱地址。 |
isValidFormat | 是 true 如果邮箱地址格式正确,即包含正确顺序的有效符号。 |
isDisposable | 是 true 如果我们发现此邮箱地址来自一次性邮箱地址服务商。 |
isWebmail | 是 true 如果此邮箱地址来自Webmail。 |
isGibberish | 是 true 如果此邮箱地址是自动生成的。 |
smtpStatus | 可以返回 valid
,not_valid
,greylisted 或 unknown (aka 不可验证)。您可以在此处了解关于电子邮件状态的更多内容。 |
isCatchall | 是 true 如果邮箱属于具有捕获所有配置的邮箱服务器,这意味着即使收件人不活动或不存在,它也会接受邮件。 |
isGreylist | 是 true 如果域名服务器采用了灰名单技术,即使我们使用绕过方法也会阻止我们验证邮箱地址的尝试。 |
isBannedError | 是 true 当我们无法从服务器获得对我们的连接请求的响应时。 |
isConnectionError | 是 true 当我们尝试建立连接时,客户端服务器端出现错误。 |
如果您收到 灰名单 smtpStatus,这意味着我们暂时无法验证这个电子邮件,并将继续尝试验证它。您可以在短暂的休息后(通常为 15 分钟到 1 小时)重新提交此 API 请求以获得正确的结果。 请注意,在我们完成验证并收到明确的 SMTP 状态 - 有效 或无效 之前,我们不会对灰名单 状态的电子邮件收费。 |
POST添加邮箱地址用于验证
每验证 1 个邮箱地址消耗 1 个点数如果您以前从未验证过某个邮箱地址,则应使用此 API 方法将其推送以进行验证。执行此操作后,您可以使用电子邮箱验证器.
Обмеження: Якщо ви надсилаєте значну кількість запитів протягом години, ви можете побачити таке повідомлення про помилку: «There are too many prospects processing. Please try later»
Кількість допустимих запитів на годину визначає ваш тарифний план:
- Starter - 500个邮箱/小时
- Pro 5K - 1,000个邮箱/小时
- Pro 20K - 1,400个邮箱/小时
- Pro 50K - 2,000个邮箱/小时
- Pro 100K - 4,000个邮箱/小时
POST | https://api.snov.io/v1/add-emails-to-verification |
emails | 您需要添加到验证队列的邮箱地址列表。每个请求最多可以包含 10 个邮箱地址。 |
<?php function addEmailsForVerification() { $token = getAccessToken(); $emails = ['gavin.vanrooyen@octagon.com', 'lizi.hamer@octagon.com']; $emailsQuery = http_build_query( [ 'emails' => $emails ] ); $params = ['access_token' => $token]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/add-emails-to-verification?' . $emailsQuery, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def add_emails_for_verification(): token = get_access_token() params = {'access_token': token } res = requests.post('https://api.snov.io/v1/add-emails-to-verification?emails[]=gavin.vanrooyen@octagon.com&emails[]=lizi.hamer@octagon.com', data=params) return json.loads(res.text)
{ | |||||
| |||||
| |||||
} |
如果将邮箱地址成功添加到队列中,则该方法返回 "sent":true.
POST更改收件人状态
免费更改特定营销邮件中收件人的状态。
POST | https://api.snov.io/v1/change-recipient-status |
email *必需 | 潜在客户邮箱地址。 |
campaign_id *必需 | 营销邮件 id。查看营销信息时可以在网址里找到(显示一个示例). |
status *必需 | 可以包含“活动”、“已暂停”或“已取消订阅”。如果收件人的状态为“已完成”或“已移除”,则您无法更改其状态。 |
<?php function changeRecipientStatus() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'email' => 'gavin.vanrooyen@octagon.com', 'campaign_id' => '179025', 'status' => 'Paused' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/change-recipient-status', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def change_recipient_status(): token = get_access_token() params = {'access_token':token, 'email':'gavin.vanrooyen@octagon.com', 'campaign_id': '179025', 'status':'Paused' } res = requests.post('https://api.snov.io/v1/change-recipient-status', data=params) return json.loads(res.text)
{ "success": true }
方法返回 success: true如果潜在客户的状态已成功更改。如果发生任何错误,方法将返回success: false连同一个错误描述。
GET查看已完成潜在客户列表
免费此方法返回已完成营销的潜在客户。
GET | https://api.snov.io/v1/prospect-finished |
campaignId *必需 | 用于检索潜在客户列表的营销的唯一标识符。 |
<?php function finishedProspects() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'campaignId' => 1234567 ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/prospect-finished?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token, 'campaignId':1234567 } res = requests.get('https://api.snov.io/v1/prospect-finished', data=params) return json.loads(res.text)
[ { "id": "88c268d404797d1001b4d72806207625", "prospectId": "9c2eb5b46bb5873e408684dd577d002354e4f7026f47bf8a592d659bba3d2dd0ff186b90dc7a5", "userName": "zach Jones", "userEmail": "zach@entselect.us", "campaign": "Zipari - Salesforce Developer", "hash": "f3967971cbab6e769b5f7e3457d00159" } ]
id | 请求的唯一标识符。 |
prospectId | 潜在客户的唯一标识符。 |
userName | 潜在客户全名。 |
userEmail | 潜在客户邮箱地址。 |
campaign | 营销名称。 |
GET查看营销邮件回复数
免费此方法返回营销邮件的回复数以及所有信息,包括潜在客户姓名、ID、营销邮件等。
GET | https://api.snov.io/v1/get-emails-replies |
campaignId *必需 | 您想要查看邮件回复情况的营销的唯一标识符。 |
offset | 每次请求最多可收集 10,000 条回复。如果您的营销有更多回复,请使用偏移量来表示您要跳过的先前回复的数量。 例如,如果您的营销有 20,000 条回复,而您希望请求第 10,001 条到第 20,000 条回复,则将偏移量设为 10,000。 如果未指定偏移量,您将获得最近收到的 10,000 条回复。 |
<?php function campaignReplies() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'campaignId' => 1234567 ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-replies?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token, 'campaignId':1234567 } res = requests.get('https://api.snov.io/v1/get-emails-replies', data=params) return json.loads(res.text)
[ { "visitedAt": { "date": "2020-07-14 13:10:46.000000", "timezone_type": 3, "timezone": "UTC" }, "campaignId": 1234567, "campaign": "My top campaign", "prospectId": "7a941739b09f1187532d52a684df545f3a223e432c7f53662264db8d33db80ee5fc19e573416a", "prospectFirstName": "John", "prospectLastName": "Doe", "prospectName": "John Doe", "sourcePage": null, "source": "copy", "locality": null, "industry": "Airlines/Aviation", "country": null, "prospectEmail": "Johndoe@snov.io", "hash": "6745f8162ecadbe325693345d1a53976", "emailSubject": "\"Special content for you\"", "emailBody": "\"<\p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<\/p>\"", "skills": "", "links": null, "customFields": null, "id": "f676edc5de58f341dc7bf4e75c0c8580", "customField_fdfd": "", "customField_рпа": "" } ]
campaignId | 营销的唯一标识符。 |
campaign | 营销名称。 |
prospectName | 潜在客户全名。 |
emailSubject | 收到回复的电子邮件的标题。 |
emailBody | 收到回复的电子邮件的内容。 |
GET获取营销邮件打开数信息
免费此方法显示有关营销中已打开电子邮件的信息。
GET | https://api.snov.io/v1/get-emails-opened |
campaignId *必需 | 您想要查看邮件打开信息的营销的唯一标识符。 |
offset | 每次请求最多可收集 10,000 次打开。 如果您的营销有更多的邮件打开次数,请使用偏移量来表示您要跳过的先前打开的次数。 例如,如果您的营销有 20,000 次打开,而您希望请求第 10,001 次到第 20,000 次打开,请将偏移量设置为 10,000。 如果未指定偏移量,您将获得最近 10,000 封被打开的邮件。 |
<?php function emailsOpen() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'campaignId' => 1234567 ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-opened?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token, 'campaignId':1234567 } res = requests.get('https://api.snov.io/v1/get-emails-opened', data=params) return json.loads(res.text)
[ { "visitedAt": { "date": "2020-01-08 21:48:14.000000", "timezone_type": 3, "timezone": "UTC" }, "campaignId": 1234567 "campaign": "My top campaign", "prospectId": "a9e58c3eecff94e617815a90ca412c4c305045102be1312b41fd0073c9c9f3eee30e090bbc3e3", "prospectFirstName": "John", "prospectLastName": "Doe", "prospectName": "John Doe", "sourcePage": null, "source": "copy", "locality": null, "industry": null, "country": null, "prospectEmail": "Johndoe@snov.io", "hash": "20b1aeb0e2949fdf7e58363f84b7aff1", "emailSubject": "\"Special content for you\"", "emailBody": "\"<\p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<\/p>\"", "skills": "", "links": null, "customFields": null, "id": "c2a67a47d59745f548ea7b0213c3a81d", "customField_Phone": "" } ]
campaignId | 营销的唯一标识符。 |
campaign | 营销名称。 |
prospectName | 打开电子邮件的潜在客户的全名。 |
emailSubject | 被打开的电子邮件的邮件标题。 |
visitedAt | 潜在客户打开电子邮件的确切时间。 |
GET检查链接点击数
免费此方法返回所有点击过营销邮件中链接的营销收件人的信息。
GET | https://api.snov.io/v1/get-emails-clicked |
campaignId *必需 | 您要查看其链接点击情况的营销的唯一标识符。 |
offset | 每次请求最多可收集 10,000 次点击。 如果您的营销有更多点击次数,请使用偏移量来表示您要跳过的先前点击的次数。 例如,如果您的营销有 20,000 次点击,而您希望请求第10,001次到第 20,000 次点击,请将偏移量设置为 10,000。 如果未指定偏移量,您将获得营销中的点击链接的最后 10,000 封邮件。 |
<?php function emailsClicked() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'campaignId' => 1234567 ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-emails-clicked?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token, 'campaignId':1234567 } res = requests.get('https://api.snov.io/v1/get-emails-clicked', data=params) return json.loads(res.text)
[ { "visitedAt": { "date": "2020-01-08 21:48:14.000000", "timezone_type": 3, "timezone": "UTC" }, "campaignId": 1234567 "campaign": "My top campaign", "prospectId": "a9e58c3eecff94e617815a90ca412c4c305045102be1312b41fd0073c9c9f3eee30e090bbc3e3", "prospectFirstName": "John", "prospectLastName": "Doe", "prospectName": "John Doe", "sourcePage": null, "source": "copy", "locality": null, "industry": null, "country": null, "prospectEmail": "Johndoe@snov.io", "hash": "20b1aeb0e2949fdf7e58363f84b7aff1", "emailSubject": "\"Special content for you\"", "emailBody": "\"<\p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<\/p>\"", "skills": "", "links": null, "customFields": null, "id": "c2a67a47d59745f548ea7b0213c3a81d", "customField_Phone": "" } ]
campaignId | 营销的唯一标识符。 |
campaign | 营销名称。 |
prospectName | 在营销中点击电子邮件链接的潜在客户的全名。 |
prospectEmail | 潜在客户邮箱地址。 |
emailSubject | 包含被点击链接的邮件的邮件标题。 |
emailBody | 邮件内容。 |
visitedAt | 潜在客户点击电子邮件中链接的确切时间。 |
GET查看已发送电子邮件
免费此方法显示有关营销中已发送电子邮件的信息。
GET | https://api.snov.io/v1/emails-sent |
campaignId *必需 | 您要查看其已发送电子邮件的营销的唯一标识符。 |
offset | 每次请求最多可收集 10,000 封已发送的邮件。 如果您的营销发送了更多邮件,请使用偏移量来表示您要跳过的先前邮件的数量。 例如,如果您的营销已发送 20,000 封邮件,而您希望请求第 10,001封到第 20,000 封邮件,请将偏移量设置为 10,000。 如果未指定偏移量,您将获得营销中发送的最后 10,000 封邮件。 |
<?php function emailsSended() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'campaignId' => 1234567 ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/emails-sent?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token, 'campaignId':1234567 } res = requests.get('https://api.snov.io/v1/emails-sent', data=params) return json.loads(res.text)
[ { "sentDate": { "date": "2020-07-06 06:58:10.000000", "timezone_type": 3, "timezone": "UTC" }, "userName": "John Doe", "userEmail": "johndoe@snov.io", "campaign": "Test", "hash": "be8fd412b793c15ccab9f1a6573d6595", "id": "010f091d81860753a19867ba1dd805d1" }, { "sentDate": { "date": "2020-07-06 06:56:44.000000", "timezone_type": 3, "timezone": "UTC" }, "userName": "Mister Smith", "userEmail": "mistersmith@snov.io", "campaign": "Test", "hash": "55bb20def471e630c539935cb0efcbf8", "id": "00e3df8427477a21d64bbe959ff95471" } ]
sentDate | 电子邮件发送的确切时间。 |
userName | 向其发送邮件的潜在客户的全名。 |
userEmail | 潜在客户邮箱地址。 |
campaign | 营销名称。 |
GET查看所有营销
免费此方法显示所有用户营销列表。
GET | https://api.snov.io/v1/get-user-campaigns |
这个方法没有输入参数 |
<?php function userCampaigns() { $token = getAccessToken(); $params = [ 'access_token' => $token ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-user-campaigns?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() headers = {'Authorization': token} url = 'https://api.snov.io/v1/get-user-campaigns' response = requests.request('GET', url, headers=headers) return json.loads(res.text)
[ { "id": 237945, "campaign": "New Campaign", "list_id": 8512947, "status": "Paused", "created_at": 1639469976, "updated_at": 1639470026, "started_at": 1639470021, "hash": "e272be8f9a6894f5b5894fe2ef77095e" }, { "id": 237956, "campaign": "Test campaign", "list_id": 7654321, "status": "Draft", "created_at": 1638808262, "updated_at": 1638808262, "started_at": null, "hash": "f97fce248b77e9a1ae770b21c7bd783d" } ]
id | 用户营销的唯一标识符。 |
campaign | 营销名称。 |
list_id | 营销中使用的潜在客户列表唯一标识符。 |
status | 营销状态。 |
created_at | Unix 时间戳格式的营销创建日期和时间。 |
updated_at | Unix 时间戳格式的最近营销更新日期和时间。 |
started_at | Unix 时间戳格式的营销启动日期和时间。 |
POST添加到免发送邮箱列表
免费使用该方法,您可将邮箱地址或域名,添加到免发送邮箱列表中。在列表中添加此邮箱地址/域名后,您将无法向其发送邮件。
POST | https://api.snov.io/v1/do-not-email-list |
items | 您想要添加到免发送邮箱列表中的邮箱地址或域名。 |
listId *必需 | 邮箱和域名归属的免发送邮件列表标识符。 |
<?php function addToBlackList() { $token = getAccessToken(); $params = [ 'access_token' => $token ]; $data = http_build_query([ 'items' => [ 'gavin.vanrooyen@octagon.com', 'octagon.com' ] ]); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/do-not-email-list?'. $data, CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); } ?>
def do_not_email_list(): token = get_access_token() params = { 'access_token':token, 'items[]':['gavin.vanrooyen@octagon.com','octagon.com'] } res = requests.post('https://api.snov.io/v1/do-not-email-list', data=params) return json.loads(res.text)
[ { "success": true, "data": { "duplicates": [] } } ]
duplicates | 该参数显示了之前被添加到免发送邮箱列表中的邮箱地址/域名。 |
POST将潜在客户添加到列表
免费将潜在客户添加到特定列表。对于希望将潜在客户自动添加到列表中以进行邮件自动化营销的人士,这种方法非常实用。在将潜在客户自动添加到所选列表之后,便会自动开始邮件自动化营销。
POST | https://api.snov.io/v1/add-prospect-to-list |
email *必需 | 潜在客户邮箱地址。 |
fullName | 潜在客户全名。 |
firstName | 潜在客户名字。 |
lastName | 潜在客户姓氏。 |
phones | 包含潜在客户电话号码的数组。 |
country | 潜在客户国家。国家名称定义此处。请仅使用此列表中的国家 |
locality | 潜在客户所在地点。 |
position | 潜在客户职务。 |
companyName | 潜在客户公司名称。 |
companySite | 潜在客户公司网站。请使用 http://example.com 格式。 |
updateContact | 更新现有的潜在客户。可能包含 true
, 或 false
. 如果 true 并且其中一个列表中已经存在具有此邮箱地址的潜在客户,系统将更新现有的配置文件。如果 false ,系统将不会更新现有的配置文件。 |
customFields[specialization] | 您可以在先前创建的自定义字段中添加自定义值。 为此,请在[brackets]中指定自定义字段的名称。 |
socialLinks[linkedIn] | 潜在客户社交媒体资料的链接。 在 [括号] 中指定社交网络的名称 (领英、Facebook 或 X) 。 |
listId *必需 | 潜在客户所属列表的标识符。 |
<?php function addProspectToList() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'email' => 'john.doe@example.com', 'fullName' => 'John Doe', 'firstName' => 'John', 'lastName' => 'Doe', 'phones' => ['+18882073333', '+18882074444'], 'country' => 'United States', 'locality' => 'Woodbridge, New Jersey', 'socialLinks[linkedIn]' => 'https://www.linkedin.com/in/johndoe/&social', 'social[twiiter]' => 'https://twitter.com/johndoe&social', 'customFields[specialization]'=> 'Software Engineering', 'position' => 'Vice President of Sales', 'companyName' => 'GoldenRule', 'companySite' => 'https://goldenrule.com', 'updateContact' => true, 'listId' => '12345', ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/add-prospect-to-list', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def add_prospect_to_list(): token = get_access_token() params = {'access_token':token, 'email':'john.doe@example.com', 'fullName': 'John Doe', 'firstName':'John', 'lastName':'Doe', 'phones':['+18882073333', '+18882074444'], 'country':'United States', 'locality':'Woodbridge, New Jersey', 'socialLinks[linkedIn]':'https://www.linkedin.com/in/johndoe/&social', 'social[twiiter]':'https://twitter.com/johndoe&social', 'customFields[specialization]':'Software Engineering', 'position':'Vice President of Sales', 'companyName':'GoldenRule', 'companySite':'https://goldenrule.com', 'updateContact':1, 'listId':'12345' } res = requests.post('https://api.snov.io/v1/add-prospect-to-list', data=params) return json.loads(res.text)
{ "success": true, "id": "0Y2QzowWL1rHpIptwaRp0Q==", "added": true, "updated": false }
success | 是 true 如果潜在客户已成功添加到列表中。 |
id | 添加潜在客户标识符。 |
added | 是 true 如果潜在客户已添加到列表中。 |
updated | 是 true 如果现有潜在客户的数据已更新。 |
errors | 将潜在客户添加到列表中时出错。 |
POST通过 ID 查找潜在客户
免费根据 ID 从您的列表中找到潜在客户。了解特定潜在客户的 ID 之后,您可以获得有关该潜在客户的完整信息,包括已添加到这些潜在客户的列表和营销邮件。
POST | https://api.snov.io/v1/get-prospect-by-id |
id *必需 | 潜在客户的 ID。您可以在回执中看到它当您添加一个潜在客户通过将潜在客户添加到列表API 方法或网址当您查看潜在客户页面时(参见一个示例). |
<?php function getProspectById() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'id' => 'xusD3-T_K5IktGoaa8Jc8A==' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-prospect-by-id', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def getProspectById(): token = get_access_token() params = {'access_token':token, 'id':'xusD3-T_K5IktGoaa8Jc8A==' } res = requests.post('https://api.snov.io/v1/get-prospect-by-id', data=params) return json.loads(res.text)
{ "success": true, "data": { "id": "xusD3-T_K5IktGoaa8Jc8A==", "name": "Gavin Vanrooyen", "firstName": "Gavin", "lastName": "Vanrooyen", "industry": "Entertainment", "country": "United States", "locality": "Greater Atlanta Area", "social": [ { "link": "https:\/\/www.linkedin.com\/in\/gavin-vanrooyen-8090738\/", "type": "linkedIn" } ], "lastUpdateDate": { "date": "2019-09-11 12:37:58.000000", "timezone_type": 3, "timezone": "UTC" }, "currentJob": [ { "companyName": "Octagon", "position": "Senior Brand Director", "socialLink": "https:\/\/www.linkedin.com\/company\/659312", "site": "http:\/\/octagon.com", "locality": "United States", "state": null, "city": null, "street": null, "street2": null, "postal": null, "founded": null, "startDate": "2018-07-31", "endDate": null, "size": "1-10", "industry": "Entertainment", "companyType": "Public Company", "country": "United States" } ], "previousJob": [ { "companyName": "UPS", "position": "Manager, Sponsorships and Events", "socialLink": "https:\/\/www.linkedin.com\/company\/152322", "site": "http:\/\/www.ups.com\/", "locality": "United States", "state": "GA", "city": "Atlanta", "street": "55 Glenlake Parkway, NE", "street2": null, "postal": "30328", "founded": "1907", "startDate": null, "endDate": null, "size": "10001+", "industry": "Logistics and Supply Chain", "companyType": "Public Company", "country": "United States" } ], "lists": [ { "id": 1250344, "name": "People List" } ], "campaigns": [] } }
success | 是 true 如果已经找到潜在客户 |
id | 唯一的配置文件标识符 |
name | 潜在客户全名 |
firstName | 潜在客户名字 |
lastName | 潜在客户姓氏 |
industry | 潜在客户资料中显示的行业 |
country | 潜在客户所在国家 |
locality | 潜在客户所在地点 |
social | 潜在客户的社交资料链接 |
currentJobs | 数组包含有关潜在客户当前职务的信息 |
previousJobs | 数组包含有关潜在客户以前职务的信息 |
lastUpdateDate | 上次资料更新日期 |
lists | 已添加潜在客户的列表 |
campaigns | 此潜在客户已作为收件人添加到的营销列表。包含简短的统计信息,如状态、发出的邮件数量、打开数和回复数。 |
POST通过邮箱地址查找潜在客户
免费通过邮箱地址从您的列表中查找潜在客户。当您通过邮箱地址搜索时,您会收到与此邮箱地址关联的所有潜在客户列表。列表中的每个元素都包含潜在客户的完整信息,包括他们添加到的列表和营销邮件。
POST | https://api.snov.io/v1/get-prospects-by-email |
email *必需 | 潜在客户邮箱地址。 |
<?php function getProspectsByEmail() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'email' => 'gavin.vanrooyen@octagon.com' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-prospects-by-email', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def getProspectsByEmail(): token = get_access_token() params = {'access_token':token, 'email':'gavin.vanrooyen@octagon.com' } res = requests.post('https://api.snov.io/v1/get-prospects-by-email', data=params) return json.loads(res.text)
{ "success": true, "data": [ { "id": "xusD3-T_K5IktGoaa8Jc8A==", "name": "Gavin Vanrooyen", "firstName": "Gavin", "lastName": "Vanrooyen", "industry": "Entertainment", "country": "United States", "locality": "Greater Atlanta Area", "social": [ { "link": "https:\/\/www.linkedin.com\/in\/gavin-vanrooyen-809073755\/", "type": "linkedIn" } ], "lastUpdateDate": { "date": "2019-09-11 12:37:58.000000", "timezone_type": 3, "timezone": "UTC" }, "currentJob": [ { "companyName": "Octagon", "position": "Senior Brand Director", "socialLink": "https:\/\/www.linkedin.com\/company\/659333", "site": "http:\/\/octagon.com", "locality": "United States", "state": null, "city": null, "street": null, "street2": null, "postal": null, "founded": null, "startDate": "2018-07-31", "endDate": null, "size": "1-10", "industry": "Entertainment", "companyType": "Public Company", "country": "United States" } ], "previousJob": [ { "companyName": "UPS", "position": "Manager, Sponsorships and Events", "socialLink": "https:\/\/www.linkedin.com\/company\/1523574", "site": "http:\/\/www.ups.com\/", "locality": "United States", "state": "GA", "city": "Atlanta", "street": "55 Glenlake Parkway, NE", "street2": null, "postal": "30328", "founded": "1907", "startDate": null, "endDate": null, "size": "10001+", "industry": "Logistics and Supply Chain", "companyType": "Public Company", "country": "United States" } ], "lists": [ { "id": 1250344, "name": "People List" } ], "campaigns": [] } ] }
success | 是 true 如果已经找到潜在客户 |
id | 唯一的配置文件标识符 |
name | 潜在客户全名 |
firstName | 潜在客户名字 |
lastName | 潜在客户姓氏 |
industry | 潜在客户资料中显示的行业 |
country | 潜在客户所在国家 |
locality | 潜在客户所在地点 |
social | 潜在客户的社交资料链接 |
currentJobs | 数组包含有关潜在客户当前职务的信息 |
previousJobs | 数组包含有关潜在客户以前职务的信息 |
lastUpdateDate | 上次资料更新日期 |
lists | 已添加潜在客户的列表 |
campaigns | 此潜在客户已作为收件人添加到的营销邮件列表。包含简短的统计信息,如状态、发出的邮件数量、打开数和回复数。 |
GET查找潜在客户的自定义字段
免费此方法返回用户创建的所有自定义字段的列表,包括字段的名称、字段为可选或必填,以及字段的数据类型。
GET | https://api.snov.io/v1/prospect-custom-fields |
这个方法没有输入参数 |
<?php function customFields() { $token = getAccessToken(); $params = [ 'access_token' => $token, ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/prospect-custom-fields?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def custom_fields(): token = get_access_token() params = {'access_token':token } res = requests.get('https://api.snov.io/v1/prospect-custom-fields', data=params) return json.loads(res.text)
[ { "key": "customFields['company']", "label": "company", "required": false, "type": "string" }, { "key": "customFields['Project name']", "label": "Project name", "required": false, "type": "string" }, { "key": "customFields['SEO']", "label": "SEO", "required": false, "type": "string" } ]
key | customFields 数组中的字段关键字。 |
label | 字段名称。 |
required | 是 true 如果自定义字段为必填项。 |
type | 自定义字段的数据类型(字符串、数字或日期)。 |
GET查看用户列表
免费此方法返回用户创建的所有列表。您可以使用此方法来查看可用于邮件自动化营销的列表。
GET | https://api.snov.io/v1/get-user-lists |
这个方法没有输入参数 |
<?php function getUserLists() { $token = getAccessToken(); $params = [ 'access_token' => $token, ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-user-lists?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def user_lists(): token = get_access_token() params = {'access_token':token } res = requests.get('https://api.snov.io/v1/get-user-lists', data=params) return json.loads(res.text)
[ { "id": 1818597, "name": "FirstSend", "contacts": 1, "isDeleted": false, "creationDate": { "date": "2020-04-07 08:25:44.000000", "timezone_type": 3, "timezone": "UTC" }, "deletionDate": null }, { "id": 1505383, "name": "All prospects", "contacts": 10, "isDeleted": true, "creationDate": { "date": "2019-12-17 15:07:30.000000", "timezone_type": 3, "timezone": "UTC" }, "deletionDate": { "date": "2020-02-17 14:05:44.000000", "timezone_type": 3, "timezone": "UTC" } }, { "id": 1479070, "name": "EMAIL", "contacts": 13, "isDeleted": true, "creationDate": { "date": "2019-12-06 10:51:01.000000", "timezone_type": 3, "timezone": "UTC" }, "deletionDate": { "date": "2020-02-17 14:05:48.000000", "timezone_type": 3, "timezone": "UTC" } } ]
id | 用户列表的唯一标识符。 |
name | 列表名称 |
contacts | 列表中的潜在客户数目。 |
isDeleted | 列表状态。为 true 如果列表已被删除。 |
creationDate | 列表创建的日期和时间(包括日期、时间和时区信息)。 |
deleteDate | 如果列表已被删除,则包含列表删除的日期和时间(包括日期、时间和时区信息)。 |
POST在列表中查看潜在客户
免费此方法返回特定列表中的潜在客户的所有数据,包括潜在客户的电子邮件地址和状态等数据。
POST | https://api.snov.io/v1/prospect-list |
listId *必需 | 列表的唯一标识符。 |
page | 您可以选择在列表中的哪一页开始搜索。该字段为可选项。 |
perPage | 您可以选择在列表中的哪一页结束搜索。最大值为 100。 |
<?php function prospectsInList() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'listId' => '1234567', 'page' => '1', 'perPage' => '2' ]; $options = [ CURLOPT_URL => ' https://api.snov.io/v1/prospect-list', CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def prospect_in_list(): token = get_access_token() params = {'access_token':token, 'listId':'1234567', 'page':'1', 'perPage':'2' } res = requests.post('https://api.snov.io/v1/prospect-list', params=params) return json.loads(res.text)
请注意,潜在客户结果是按照从最后一位到第一位的倒序显示。
{ "success": true, "list": { "name": "Lead LIST", "contacts": 3, "creationDate": { "date": "2020-05-19 17:34:39.000000", "timezone_type": 3, "timezone": "UTC" }, "emailsCount": [] }, "prospects": [ { "id": "226db935fc93422496fda5d5209e8cbf77cc77ec685891706028009b86608f7ce5877a3faf", "name": "Andrew Garfiled", "firstName": "Andrew", "lastName": "Garfiled", "emails": [ { "email": "andrewexp@exp.com", "probability": 99, "isVerified": null, "jobStatus": "any", "domainType": "linkedin_email", "isValidFormat": null, "isDisposable": null, "isWebmail": null, "isGibberish": null, "smtpStatus": null } ] }, { "id": "f20d30219b039d1408d837a748a1e2ab843c97e65080f6cf8fa7d948477d9093d87413f05f", "name": "John Doe", "firstName": "John", "lastName": "Doe", "emails": [ { "email": "johndoe@gmail.com", "probability": 99, "isVerified": null, "jobStatus": "any", "domainType": "linkedin_email", "isValidFormat": true, "isDisposable": false, "isWebmail": true, "isGibberish": false, "smtpStatus": 3 } ] } ] }
list | 一个包含有关列表及潜在客户信息的数组。 |
name | 列表名称。 |
contacts | 列表中的潜在客户数目。 |
creation_date | 列表创建的日期(包括日期、时间和时区信息)。 |
emailsCount | 列表中的电子邮件数目。 |
prospects | 列表中的潜在客户列表。 |
id | 一个潜在客户的唯一标识符。 |
name | 一个潜在客户的全名。 |
emails | 一个属于潜在客户的电子邮件列表。 |
POST创建新的潜在用户列表
免费使用该方法,在您的账户中创建新的潜在用户列表。
POST | https://api.snov.io/v1/lists |
name | 新潜在用户列表名称。 |
<?php function createNewList() { $token = getAccessToken(); $params = [ 'access_token' => $token, 'name' => 'New list' ]; $options = [ CURLOPT_URL => 'https://api.snov.io/v1/lists', CURLOPT_POST => true, CURLOPT_POSTFIELDS => $params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); } ?>
def add_prospect_list(): token = get_access_token() params = { 'access_token':token, 'name':'New list' } res = requests.post('https://api.snov.io/v1/lists', data=params) return json.loads(res.text)
[ { "success": true, "data": { "id": 1234567 } } ]
id | 已创建的潜在用户列表ID。 |
GET查看用户余额
免费用此方法查看您的信用点数余额。
GET | https://api.snov.io/v1/get-balance |
这个方法没有输入参数 |
<?php function getBalance() { $token = getAccessToken(); $params = [ 'access_token' => $token, ]; $params = http_build_query($params); $options = [ CURLOPT_URL => 'https://api.snov.io/v1/get-balance?'.$params, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true ]; $ch = curl_init(); curl_setopt_array($ch, $options); $res = json_decode(curl_exec($ch), true); curl_close($ch); return $res; } ?>
def get_balance(): token = get_access_token() headers = {'authorization':token } res = requests.get('https://api.snov.io/v1/get-balance', headers=headers) return json.loads(res.text)
{ "success": true, "data": { "balance": "25000.00", "teamwork": false, "unique_recipients_used": 0, "limit_resets_in": 29, "expires_in": 359 } }
balance | 用户当前的信用点数余额。 |
teamwork | 若您目前是团队成员或领导,则为“true”,若您不属于任何团队,则为“false”。 |
recipients_used | 本月已使用的唯一收件人数量。 |
limit_resets_in | 距离限额重置的天数。 |
expires_in | 距离订阅结束的天数。 |
Webhook
Webhook 可让您收到 Snov.io 账户中的事件通知。
每当 Snov.io 中有新的订阅事件时,您都可以使用 webhook 调用服务器上的端点 (URL),并将实时数据发送到您的应用程序。
事件发生时,Snov.io 会向指定的 URL 端点发送一个带有 JSON 内容的 HTTP 请求。
您可以通过一组 API 调用来订阅和管理 webhook。
目前支持的 webhook 对象和操作如下:
Webhook 对象 | 操作 | 触发后 |
---|---|---|
campaign_email | sent | 在任何自动化营销中向收件人发送任何邮件时 |
first_sent | 在任何自动化营销中向收件人发送第一封邮件时 | |
opened | 当收件人打开任何自动化营销中的任何邮件时 | |
campaign_reply | received | 当收件人回复任何营销中的任何邮件时 |
first_received | 当收件人在任何营销中首次回复邮件时 |
限制: 高级套餐用户最多可以创建 50 个 webhook。
重试策略:如果系统在 3 秒内收到 200-299 范围内的 HTTP 状态 作为响应,则 webhook 成功。
如果出现了任何其他的HTTP状态或者超时错误,我们将在事件触发了webhook之后尝试7次,每次间隔高达38小时:
如果所有重试均不成功,webhook 将会停用。
- 第 1 次:事件发生后第一时间
- 第 2 次:最近一次尝试后 20 分钟(事件发生后 20 分钟)
- 第 3 次:最近一次尝试后 40 分钟(事件发生后 1 小时)
- 第 4 次:最近一次尝试后 60 分钟(事件发生后 2 小时)
- 第 5 次:最近一次尝试后 4 小时(事件发生后 6 小时)
- 第 6 次:最近一次尝试后 8 分钟(事件发生后 14 小时)
- 第 7 次:最近一次尝试后 24 分钟(事件发生后 38 小时)
GET列出所有 webhook
GET | https://api.snov.io/v2/webhooks |
内容- 类型:application/json |
此方法没有输入参数。 |
{ "data": [ { "data": { "id": 8, "end_point": "https://hooks.yourdomain.com/hooks/catch/1237321/awwwcz/", "event_object": "campaign_email", "event_action": "sent", "status": "active", "created_at": 1655847444 } }, { "data": { "id": 14, "end_point": "https://hooks.yourdomain.com/hooks/catch/1237321/abqqqpcz/", "event_object": "campaign_email", "event_action": "sent", "status": "deactivated", "created_at": 1655890563 } }, { "data": { "id": 17, "end_point": "https://hooks.yourdomain.com/hooks/catch/1237321/abwfpcz/", "event_object": "campaign_email", "event_action": "sent", "status": "active", "created_at": 1656057947 } } ], "meta": { "webhooks_count": 3, "user_id": 1313777 } }
参数 | 数据类型 | 数据类型 |
---|---|---|
data | array | webhook 模型集合 |
id | int | Webhook ID |
end_point | string | 您在添加 webhook 时提供的实际 URL 地址及其发送位置 |
event_object | string | 执行操作的对象 |
event_action | string | 对象的操作 |
created_at | int | Unix Timestamp 格式的 Webhook 创建日期 |
status | string | Webhook 状态:启用、停用 |
meta | object | 相关数据 |
webhooks_count | int | 您的账户中的 webhook 总数(最多 50 个) |
user_id | int | 用户 ID |
POST添加 webhook
POST | https://api.snov.io/v2/webhooks |
内容- 类型:application/json |
event_object | 执行操作的对象(支持的对象列表) |
event_action | 对对象执行的操作(支持的操作列表) |
endpoint_url | 发送 Webhook 的 URL 地址 |
{ "event_object": "campaign_email", "event_action": "sent", "endpoint_url": "https://hooks.yourdomain.com/hooks/catch/1237321/abwfpcz/" }
{ "data": { "id": 17, "end_point": "https://hooks.yourdomain.com/hooks/catch/1237321/abwfpcz/", "event_object": "campaign_email", "event_action": "sent", "created_at": 1656057947, "status": "active" }, "meta": { "user_id": 1313777 } }
参数 | 数据类型 | 数据类型 |
---|---|---|
data | object | Webhook 数据 |
id | int | Webhook ID |
end_point | string | 您在添加 webhook 时提供的实际 URL 地址及其发送位置 |
event_object | string | 执行操作的对象 |
event_action | string | 对象的操作 |
created_at | int | Unix Timestamp 格式的 Webhook 创建日期 |
status | string | Webhook 状态:启用、停用 |
meta | object | 相关数据 |
user_id | int | 用户 ID |
PUT更改 webhook 状态
在请求 URL 地址的末尾包含所选 webhook 的唯一“id”值。
使用“列出所有 webhooks”的方法获取 webhooks 的 id 值。
PUT | https://api.snov.io/v2/webhooks/webhook_id |
内容- 类型:application/json |
status | 启用或停用 |
{ https://api.snov.io/v2/webhooks/14 "status": "deactivated" }
{ "data": { "id": 14, "end_point": "https://hooks.yourdomain.com/hooks/catch/1237321/abqqqpcz/", "event_object": "campaign_email", "event_action": "sent", "created_at": 1655890563, "status": "deactivated" }, "meta": { "user_id": 1313777 } }
参数 | 数据类型 | 数据类型 |
---|---|---|
data | object | Webhook 数据 |
id | int | Webhook ID |
end_point | string | 您在添加 webhook 时提供的实际 URL 地址及其发送位置 |
event_object | string | 执行操作的对象 |
event_action | string | 对象的操作 |
created_at | int | Unix Timestamp 格式的 Webhook 创建日期 |
status | string | Webhook 状态:启用、停用 |
meta | object | 相关数据 |
user_id | int | 用户 ID |
DELETE删除一个 webhook
在请求 URL 地址的末尾包含所选 webhook 的唯一“id”值。
使用“列出所有 webhooks”的方法获取 webhooks 的 id 值。
DELETE | https://api.snov.io/v2/webhooks/webhook_id |
内容- 类型:application/json |
{ https://api.snov.io/v2/webhooks/8 }
{ "data": { "success": true } }
参数 | 数据类型 | 数据类型 |
---|---|---|
success | boolean | 显示是否删除了 webhook |