Introduction
We are maintaining a Public API. This service allows any developers to retrieve and manage TOmba data with HTTP requests.
This documentation will show you how to query.
The main calls are available:
- The Account information
- The Domain Search
- The Email Finder
- The Email Enrichment
- The Author Finder
- The Linkedin Finder
- The Email Verifier
- The Email Sources
- The Phone Finder
- The Leads
- The Leads Lists
- The Lead Attributes
- The Usage
- The Account Logs
- The Keys
- The Email Count
- The Domain autocomplete
API endpoint
https://api.tomba.io/v1/
API endpoint
Authentication
Authentication is made with a key
and secret
you will have to add to every call you make to our API.
This parameter is always required.
We'll return an error if the key is either missing or invalid.
Your API key
and secret
is what identifies your account, so make sure to keep it secret! You can at anytime generate or delete API keys and rest secret on Secret Key.
Api | Authorization | Location |
---|---|---|
key |
X-Tomba-Key |
header |
secret |
X-Tomba-Secret |
header |
Errors
Tomba API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Unauthorized -- Your API key is wrong. |
402 | The Email Verification failed because of an unexpected response from the remote SMTP server. This failure is outside of our control. We advise you to retry later. |
403 | Forbidden -- The kitten requested is hidden for administrators only. |
404 | Not Found -- The specified kitten could not be found. |
405 | Method Not Allowed -- You tried to access a kitten with an invalid method. |
406 | Not Acceptable -- You requested a format that isn't json. |
410 | Gone -- The kitten requested has been removed from our servers. |
418 | I'm a teapot. |
429 | Too Many Requests -- You're requesting too many kittens! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |
Rate Limits
If you exceed that limit we'll return a 429 HTTP status code to you.
Paid plans come with higher monthly limits
HTTPS / SSL
Our API is available over a secure HTTPS connection for all users, even on the free plan. Simply add https://
to the request URLs to make the requests secure.
Data
When you use Tomba , you access data from one unique source: the public web. Every day, we analyze millions of websites to index the most up to date business data.
Data at scale
We are the largest professional email database of companies and domains in the world. We have 160+m email from 55 millions domains, all bought together into a standardized global schema.
Direct from source
We only collect data from the official source itself, we do not use third party data providers to access this data, and we provide direct line of sight to the original source.
Libraries
Language Libraries
Official libraries for common programming languages, like PHP, Python etc.
Language | Status | Link | Package Manager |
---|---|---|---|
Javascript | Released | tomba-io/node | NPM package |
Ruby | Released | tomba-io/ruby | Ruby Gems |
R | Released | tomba-io/r | CRAN |
Dart | Released | tomba-io/dart | Pub |
Python | Released | tomba-io/python | PyPi |
PHP | Released | tomba-io/php | Packagist |
Deno | Released | tomba-io/deno | Deno land |
C# | Released | tomba-io/csharp | Nuget |
Rust | Released | tomba-io/rust | crates.io |
Lua | Released | tomba-io/lua | luarocks |
Elixir | Released | tomba-io/elixir | hex.pm |
Go | Released | tomba-io/go | GitHub |
Java | In progress | tomba-io/java | Maven Central |
Perl | Released | tomba-io/perl | GitHub |
Framework Libraries
Official libraries for common frameworks. These libraries should use the official language library as a dependency, so for example the Django library should use the Python library.
In the framework libraries we can assume more about the developer's use case, and we probably have access to more information, such as a HTTP request object. We can therefore implement additional functionality that doesn't make sense in the core language library. This includes bot filtering (not sending requests to our API if the user agent belongs to a "bot").
Account Information
Returns information about the current account.
curl --request GET \
--url 'https://api.tomba.io/v1/me' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
use Tomba\Client;
use Tomba\Services\Account;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$account = new Account($client);
$result = $account->getAccount();
from tomba.client import Client
from tomba.services.account import Account
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
account = Account(client)
result = account.get_account()
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let account = new tomba.Account(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = account.getAccount();
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
account = Tomba::Account.new(client);
response = account.get_account();
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- account(client)
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Account account = Account(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = account.getAccount();
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /me
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
key |
Required | Your API key |
secret |
Required | Your API secret |
Response Objects details
Full Response
{
"data": {
"user_id": 283,
"secret_token": "ts_d611fc23-504c-4c13-8943-a48d98db38bf",
"role": 2,
"confirmed": true,
"blocked": false,
"first_name": "******",
"last_name": "****",
"email": "******@tomba.io",
"phone": "+3550556254142",
"image": "https://lh3.googleusercontent.com/a/xxxxxx=s96-c",
"deleted": false,
"provider": "google",
"timezone": "XXX/XXXX",
"newsletter": false,
"activity": false,
"title": null,
"country": "***",
"created_at": "2021-03-08T14:39:52+01:00",
"ip": "105.98.231.150",
"issued": "2023-10-12T12:34:10+02:00",
"expired": "2023-11-11T11:34:10+01:00",
"expired_subscription": "2024-06-23T21:58:07+02:00",
"pricing": {
"name": "Enterprise",
"pricing_id": 5,
"available_searches": 50000,
"available_verifications": 100000,
"available_phones": 5000,
"available_leads": 50000,
"available_list": 500,
"available_attr": 29,
"available_keys": 50,
"available_teams": 20,
"available_b2b": 25,
"available_sources": 500,
"available_email_count": 80000,
"frequency": "monthly",
"price_monthly": "389",
"price_yearly": "3501",
"update_url": null,
"cancel_url": null
},
"teams": {
"team_id": null,
"role": null,
"workspace": null,
"export": null,
"bulks": null,
"limit": {
"search": null,
"verifier": null
},
"owner": null
},
"requests": {
"domains": {
"available": 50000,
"used": 51
},
"verifications": {
"available": 100000,
"used": 1
},
"phones": {
"available": 5000,
"used": 0
},
"b2b": {
"available": 25,
"used": 0
}
}
}
}
Domain Search
Search emails are based on the website You give one domain name and it returns all the email addresses found on the internet.
curl --request GET \
--url 'https://api.tomba.io/v1/domain-search?domain=stripe.com' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
use Tomba\Client;
use Tomba\Services\Domain;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$domain = new Domain($client);
$result = $domain->domainSearch('stripe.com');
from tomba.client import Client
from tomba.services.domain import Domain
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
domain = Domain(client)
result = domain.domain_search('stripe.com')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let domain = new tomba.Domain(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = domain.domainSearch("stripe.com");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
domain = Tomba::Domain.new(client);
response = domain.domain_search(domain: 'stripe.com');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- domain_search(client, domain="tomba.io")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Domain domain = Domain(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = domain.domainSearch(
domain: 'stripe.com',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /domain-search/?domain=:domain
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
domain |
Required | Domain name from which you want to find the email addresses. For example, "stripe.com". |
page |
optional | Specifies the number of email addresses to skip. The default is 1 . |
limit |
optional | Specifies the max number of email addresses to return. The default is 10. valid number(10 ,20 ,50 ) |
department |
optional | Get only email addresses for people working in the selected department(s). |
type |
optional | Get only personal or generic email addresses. |
Response Objects details
Full Response
{
"data": {
"organization": {
"location": {
"country": "US",
"city": "San Francisco",
"state": "California",
"street_address": "-122.41",
"postal_code": "94107"
},
"social_links": {
"twitter_url": "https://twitter.com/stripe",
"facebook_url": "https://www.facebook.com/StripeHQ",
"linkedin_url": "https://www.linkedin.com/company/2135371"
},
"disposable": false,
"webmail": false,
"website_url": "stripe.com",
"phone_number": "",
"industries": "internet",
"founded": "2010",
"company_size": "1001-5000",
"last_updated": "2023-10-14T15:02:33+02:00",
"accept_all": true,
"description": "Stripe is a financial infrastructure platform for businesses. Millions of companies—from the world’s largest enterprises to the most ambitious startups—use Stripe to accept payments, grow their revenue, and accelerate new business opportunities. Headquartered in San Francisco and Dublin, the company aims to increase the GDP of the internet.",
"pattern": "{first}",
"organization": "stripe",
"whois": {
"registrar_name": "SafeNames Ltd.",
"created_date": "1995-09-12T06:00:00+02:00",
"referral_url": "http://www.safenames.net"
}
},
"emails": [
{
"email": "**@stripe.com",
"first_name": "***",
"last_name": "**",
"full_name": "*** ***",
"gender": "female",
"phone_number": false,
"type": "generic",
"country": "US",
"position": "Financial Crimes Analyst",
"department": "finance",
"seniority": "senior",
"twitter": null,
"linkedin": "https://www.linkedin.com/in/*****",
"score": 55,
"verification": {
"date": null,
"status": null
},
"sources": [
{
"uri": "https://stripe.com/docs/cli",
"website_url": "stripe.com",
"extracted_on": "2022-03-08T01:23:16+01:00",
"last_seen_on": "2022-08-04T09:42:10+02:00",
"still_on_page": true
}
]
}
...
...
]
},
"meta": {
"total": 2079,
"pageSize": 10,
"current": 1,
"total_pages": 207,
"params": {
"domain": "stripe.com",
"page": 1,
"limit": 10,
"department": "",
"type": "all"
}
}
}
Attribute | Type | Description |
---|---|---|
organization > location.country |
string | The country of company |
organization > social_links.twitter_url |
string | The Twitter screen name |
organization > social_links.facebook_url |
string | The Facebook screen name |
organization > social_links.linkedin_url |
string | The Linkedin screen name |
organization > disposable |
bool | is disposable email service |
organization > webmail |
bool | is webmail email |
organization > website_url |
string | The Domain of company’s website |
organization > state |
string | The company state |
organization > accept_all |
bool | The SMTP checks |
organization > industries |
string | The company industries info |
organization > last_updated |
date | The time at which we update this data |
organization > organization |
string | The Name of company |
organization > pattern |
string | The Name of company |
emails |
array | The list of Emails |
Email Finder
This API endpoint generates or retrieves the most likely email address from a domain name, a first name and a last name.
curl --request GET \
--url 'https://api.tomba.io/v1/email-finder?domain=asana.com&first_name=Moskoz&last_name=Dustin' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
use Tomba\Client;
use Tomba\Services\Finder;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$finder = new Finder($client);
$result = $finder->emailFinder('stripe.com', 'fname', 'lname');.
from tomba.client import Client
from tomba.services.finder import Finder
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
finder = Finder(client)
result = finder.email_finder('stripe.com', 'Moskoz', 'Dustin')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let finder = new tomba.Finder(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = finder.emailFinder("stripe.com", "fname", "lname");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
finder = Tomba::Finder.new(client);
response = finder.email_finder(domain: 'stripe.com', first_name: 'Moskoz', last_name: 'Dustin');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- email_finder(client, domain="tomba.io",fname="FNAME",lname="LNAME")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Finder finder = Finder(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = finder.emailFinder(
domain: 'stripe.com',
firstName: 'Fname',
lastName: 'Lname',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /email-finder?domain=:domain&full_name=:full_name
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
domain | Required | The domain name of the company, used for emails. For example, "asana.com". |
full_name | Required | The person's full name |
first_name | Required | The person's first name. It doesn't need to be in lowercase.. |
last_name | Required | The person's last name. It doesn't need to be in lowercase.. |
Response Objects details
Full Response
{
"data": {
"website_url": "tomba.io",
"accept_all": null,
"email": "b.mohamed@tomba.io",
"first_name": "mohamed",
"last_name": "ben rebia",
"full_name": "mohamed ben rebia",
"country": null,
"gender": "male",
"phone_number": false,
"position": "CEO",
"twitter": null,
"linkedin": "https://www.linkedin.com/in/mohamed-ben-rebia",
"company": "Tomba technology web service LLC ",
"score": 99,
"verification": {
"date": "2021-05-25T00:00:00+02:00",
"status": "valid"
},
"sources": [
{
"uri": "https://github.com/tomba-io/generic-emails/blob/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9/src/lib/validation/hash.ts",
"website_url": "github.com",
"extracted_on": "2021-02-08T20:09:54+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true
},
...
...
]
}
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address |
type |
string | Get the count of only personal or generic email addresses. |
website_url |
string | Company domain |
first_name |
string | First name of person (if found) |
last_name |
string | Last name of person (if found) |
full_name |
string | Full formatted name of person. Sometimes this will be present even if the last_name or first_name aren’t available |
country |
string | Two letter country code based on location |
accept_all |
bool | is true if the SMTP server accepts all the email addresses. It means you can have have false positives on SMTP checks. |
position |
string | The job title of person (if found) |
department |
string | The person working in the selected department(s). |
twitter |
string | Twitter handle for the person (if found). |
linkedin_url |
string | LinkedIn URL for the person (if found). |
phone_number |
bool | true if found |
company |
string | The company of person (if found) |
last_updated |
string | The time at which we update this data |
Enrichment
The Enrichment API lets you look up person and company data based on an email, For example, you could retrieve a person’s name, location and social handles from an email
curl --request GET \
--url 'https://api.tomba.io/v1/enrich?email=b.mohamed@tomba.io' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
HTTP Request
GET /enrich/?email=b.mohamed@tomba.io
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
email |
Required | The email address to find data . |
Response Objects details
Full Response
{
"data": {
"website_url": "tomba.io",
"accept_all": null,
"email": "b.mohamed@tomba.io",
"first_name": "Mohamed",
"last_name": "Ben rebia",
"country": "DZ",
"gender": "male",
"phone_number": null,
"position": "CEO",
"twitter": null,
"linkedin": "https:\/\/www.linkedin.com\/in\/mohamed-ben-rebia-4337061ba",
"disposable": false,
"webmail": false,
"full_name": "Mohamed Ben rebia",
"company": "Tomba technology web service LLC ",
"score": 99,
"verification": {
"date": "2021-05-25",
"status": "valid"
},
"sources": [{
"uri": "https:\/\/github.com\/tomba-io\/generic-emails\/blob\/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9\/src\/lib\/validation\/hash.ts",
"website_url": "github.com",
"extracted_on": "2021-02-08T20:09:54+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true
}, {
"uri": "https:\/\/github.com\/tomba-io\/generic-emails\/blame\/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9\/src\/lib\/validation\/hash.ts",
"website_url": "github.com",
"extracted_on": "2021-02-08T20:09:59+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true
}
....
....
....
]
}
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address |
website_url |
string | Company domain |
first_name |
string | First name of person |
last_name |
string | Last name of person |
full_name |
string | Full formatted name of person. Sometimes this will be present even if the last_name or first_name aren’t available |
country |
string | Two letter country code based on location |
accept_all |
bool | is true if the SMTP server accepts all the email addresses. It means you can have have false positives on SMTP checks. |
position |
string | The job title of person (if found) |
twitter |
string | Twitter handle for the person (if found). |
linkedin_url |
string | LinkedIn URL for the person (if found). |
phone_number |
bool | true (if found) |
company |
string | The company of person (if found) |
Author finder
This API endpoint generates or retrieves the most likely email address from a blog post url.
curl --request GET \
--url 'https://api.tomba.io/v1/author-finder?url=https://clearbit.com/blog/company-name-to-domain-api' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
HTTP Request
GET /author-finder?url=:url
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
url | Required | The URL of the article. For example, "https://clearbit.com/blog/company-name-to-domain-api". |
Response Objects details
Full Response
{
"data": {
"website_url": "clearbit.com",
"accept_all": true,
"email": "alex@clearbit.com",
"first_name": "Alex",
"last_name": "Maccaw",
"country": "US",
"gender": "male",
"phone_number": null,
"position": "founder",
"twitter": "https://twitter.com/maccman",
"linkedin": "https://www.linkedin.com/in/alex-maccaw-ab592978",
"disposable": false,
"webmail": false,
"full_name": "Alex Maccaw",
"company": "Clearbit",
"score": 90,
"verification": {
"date": null,
"status": null
},
"sources": [
{
"uri": "https://pypi.org/project/clearbit/",
"website_url": "pypi.org",
"extracted_on": "2021-01-29T20:32:08+01:00",
"last_seen_on": "2021-02-05T02:15:43+01:00",
"still_on_page": true
},
{
"uri": "https://growjo.com/company/Clearbit",
"website_url": "growjo.com",
"extracted_on": "2021-07-23T09:11:15+01:00",
"last_seen_on": "2021-07-23T20:19:38+01:00",
"still_on_page": true
},
{
"uri": "https://pdfcookie.com/documents/book1xlsx-025ekom5x721",
"website_url": "pdfcookie.com",
"extracted_on": "2021-10-01T14:53:49+01:00",
"last_seen_on": "2021-10-03T00:55:58+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/clearbit/clearbit-ruby/blob/master/clearbit.gemspec",
"website_url": "github.com",
"extracted_on": "2021-12-22T15:54:30+01:00",
"last_seen_on": "2021-12-23T00:12:25+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/clearbit/clearbit-python",
"website_url": "github.com",
"extracted_on": "2021-12-22T15:54:33+01:00",
"last_seen_on": "2021-12-23T00:12:25+01:00",
"still_on_page": true
},
...
...
...
]
}
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address |
website_url |
string | Company domain |
first_name |
string | First name of person |
last_name |
string | Last name of person |
full_name |
string | Full formatted name of person. Sometimes this will be present even if the last_name or first_name aren’t available |
country |
string | Two letter country code based on location |
accept_all |
bool | is true if the SMTP server accepts all the email addresses. It means you can have have false positives on SMTP checks. |
department |
string | The person working in the selected department(s). |
twitter |
string | Twitter handle for the person (if found). |
linkedin_url |
string | LinkedIn URL for the person (if found). |
phone_number |
bool | true if found |
company |
string | The company of person (if found) |
last_updated |
string | The time at which we update this data |
Linkedin Finder
This API endpoint generates or retrieves the most likely email address from a Linkedin URL.
curl --request GET \
--url 'https://api.tomba.io/v1/linkedin?url=https://www.linkedin.com/in/alex-maccaw-ab592978' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
HTTP Request
GET /linkedin?url=:url
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
url | Required | The URL of the Linkedin. For example, "https://clearbit.com/blog/company-name-to-domain-api". |
Response Objects details
Full Response
{
"data": {
"website_url": "clearbit.com",
"accept_all": true,
"email": "alex@clearbit.com",
"first_name": "Alex",
"last_name": "Maccaw",
"country": "US",
"gender": "male",
"phone_number": null,
"position": "founder",
"twitter": "https://twitter.com/maccman",
"linkedin": "https://www.linkedin.com/in/alex-maccaw-ab592978",
"disposable": false,
"webmail": false,
"full_name": "Alex Maccaw",
"company": "Clearbit",
"score": 90,
"verification": {
"date": null,
"status": null
},
"sources": [
{
"uri": "https://pypi.org/project/clearbit/",
"website_url": "pypi.org",
"extracted_on": "2021-01-29T20:32:08+01:00",
"last_seen_on": "2021-02-05T02:15:43+01:00",
"still_on_page": true
},
{
"uri": "https://growjo.com/company/Clearbit",
"website_url": "growjo.com",
"extracted_on": "2021-07-23T09:11:15+01:00",
"last_seen_on": "2021-07-23T20:19:38+01:00",
"still_on_page": true
},
{
"uri": "https://pdfcookie.com/documents/book1xlsx-025ekom5x721",
"website_url": "pdfcookie.com",
"extracted_on": "2021-10-01T14:53:49+01:00",
"last_seen_on": "2021-10-03T00:55:58+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/clearbit/clearbit-ruby/blob/master/clearbit.gemspec",
"website_url": "github.com",
"extracted_on": "2021-12-22T15:54:30+01:00",
"last_seen_on": "2021-12-23T00:12:25+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/clearbit/clearbit-python",
"website_url": "github.com",
"extracted_on": "2021-12-22T15:54:33+01:00",
"last_seen_on": "2021-12-23T00:12:25+01:00",
"still_on_page": true
},
...
...
...
]
}
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address |
website_url |
string | Company domain |
first_name |
string | First name of person |
last_name |
string | Last name of person |
full_name |
string | Full formatted name of person. Sometimes this will be present even if the last_name or first_name aren’t available |
country |
string | Two letter country code based on location |
accept_all |
bool | is true if the SMTP server accepts all the email addresses. It means you can have have false positives on SMTP checks. |
department |
string | The person working in the selected department(s). |
twitter |
string | Twitter handle for the person (if found). |
linkedin_url |
string | LinkedIn URL for the person (if found). |
phone_number |
bool | true if found |
company |
string | The company of person (if found) |
last_updated |
string | The time at which we update this data |
Email Verifier
This API endpoint allows you to verify the deliverability of an email address.
Tomba focuses on B2B. Therefore, Webmail are not verified. We'll run every check but won't reach the remote SMTP server.
curl --request GET \
--url 'https://api.tomba.io/v1/email-verifier/b.mohamed@tomba.io' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
use Tomba\Client;
use Tomba\Services\Verifier;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$verifier = new Verifier($client);
$result = $verifier->emailVerifier('b.mohamed@tomba.io');
from tomba.client import Client
from tomba.services.verifier import Verifier
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
verifier = Verifier(client)
result = verifier.email_verifier('b.mohamed@tomba.io')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let verifier = new tomba.Verifier(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = verifier.emailVerifier("b.mohamed@tomba.io");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
verifier = Tomba::Verifier.new(client);
response = verifier.email_verifier(email: 'b.mohamed@tomba.io');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- email_verifier(client, email="b.mohamed@tomba.io")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Verifier verifier = Verifier(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = verifier.emailVerifier(
email: 'b.mohamed@tomba.io',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /email-verifier/:email
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
email |
Required | The email address you want to verify. |
Response Objects details
Full Response
{
"data": {
"email": {
"mx_records": true,
"smtp_server": true,
"smtp_check": true,
"accept_all": false,
"block": false,
"email": "b.mohamed@tomba.io",
"gibberish": false,
"disposable": false,
"webmail": false,
"regex": true,
"whois": {
"registrar_name": "NameCheap, Inc.",
"created_date": "2020-07-07 20:54:07",
"referral_url": "https://www.namecheap.com/"
},
"status": "valid",
"result": "deliverable",
"score": 100
},
"sources": [
{
"uri": "https://github.com/tomba-io/generic-emails/blob/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9/src/lib/validation/hash.ts",
"website_url": "github.com",
"extracted_on": "2021-02-08T20:09:54+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/tomba-io/generic-emails/blame/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9/src/lib/validation/hash.ts",
"website_url": "github.com",
"extracted_on": "2021-02-08T20:09:59+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true
},
{
"uri": "https://katta.co/tomba-review/",
"website_url": "katta.co",
"extracted_on": "2021-06-02T13:41:50+02:00",
"last_seen_on": "2021-06-02T18:26:12+02:00",
"still_on_page": true
},
{
"uri": "https://shards.info/github/benemohamed/",
"website_url": "shards.info",
"extracted_on": "2021-10-26T15:36:04+02:00",
"last_seen_on": "2021-12-22T23:57:50+01:00",
"still_on_page": true
},
{
"uri": "https://githubmemory.com/repo/tomba-io/python",
"website_url": "githubmemory.com",
"extracted_on": "2021-10-26T15:36:37+02:00",
"last_seen_on": "2021-12-22T23:57:49+01:00",
"still_on_page": true
},
{
"uri": "https://pypi.org/project/tomba-io/",
"website_url": "pypi.org",
"extracted_on": "2021-10-26T15:37:41+02:00",
"last_seen_on": "2021-10-26T15:37:46+02:00",
"still_on_page": true
},
{
"uri": "https://www.npmjs.com/package/tomba",
"website_url": "www.npmjs.com",
"extracted_on": "2021-10-26T15:39:28+02:00",
"last_seen_on": "2021-10-26T15:39:36+02:00",
"still_on_page": true
},
{
"uri": "https://cnpmjs.org/package/tomba",
"website_url": "cnpmjs.org",
"extracted_on": "2021-10-26T18:58:53+02:00",
"last_seen_on": "2021-12-22T23:58:49+01:00",
"still_on_page": true
},
{
"uri": "https://packosphere.com/tombaio/tomba-meteor",
"website_url": "packosphere.com",
"extracted_on": "2021-10-28T00:52:33+02:00",
"last_seen_on": "2021-12-23T00:02:43+01:00",
"still_on_page": true
},
{
"uri": "https://www.pkgstats.com/pkg:tomba",
"website_url": "www.pkgstats.com",
"extracted_on": "2021-10-28T00:53:39+02:00",
"last_seen_on": "2021-10-28T00:53:44+02:00",
"still_on_page": true
},
{
"uri": "https://pub.dev/packages/tomba",
"website_url": "pub.dev",
"extracted_on": "2021-10-30T15:28:18+02:00",
"last_seen_on": "2021-10-30T15:28:45+02:00",
"still_on_page": true
},
{
"uri": "https://pub.dev/packages/tomba/license",
"website_url": "pub.dev",
"extracted_on": "2021-10-30T15:28:19+02:00",
"last_seen_on": "2021-10-30T15:28:45+02:00",
"still_on_page": true
},
{
"uri": "https://pub.dev/packages/tomba/versions/1.0.0",
"website_url": "pub.dev",
"extracted_on": "2021-10-30T15:28:25+02:00",
"last_seen_on": "2021-10-30T15:28:47+02:00",
"still_on_page": true
},
{
"uri": "https://cnpmjs.org/package/tomba/v/1.0.0",
"website_url": "cnpmjs.org",
"extracted_on": "2021-12-22T14:21:30+01:00",
"last_seen_on": "2021-12-22T23:58:49+01:00",
"still_on_page": true
},
{
"uri": "https://r.cnpmjs.org/tomba",
"website_url": "r.cnpmjs.org",
"extracted_on": "2021-12-22T14:23:16+01:00",
"last_seen_on": "2021-12-22T23:58:51+01:00",
"still_on_page": true
},
{
"uri": "https://github.com/tomba-io/r",
"website_url": "github.com",
"extracted_on": "2021-12-22T14:41:25+01:00",
"last_seen_on": "2021-12-23T00:02:09+01:00",
"still_on_page": true
},
{
"uri": "https://rdrr.io/cran/tomba/f/README.md",
"website_url": "rdrr.io",
"extracted_on": "2021-12-22T14:41:37+01:00",
"last_seen_on": "2021-12-23T00:02:18+01:00",
"still_on_page": true
},
{
"uri": "https://packosphere.com/tombaio/tomba-meteor/1.0.0",
"website_url": "packosphere.com",
"extracted_on": "2021-12-22T14:42:21+01:00",
"last_seen_on": "2021-12-23T00:02:43+01:00",
"still_on_page": true
},
{
"uri": "https://githubmemory.com/repo/tomba-io/node",
"website_url": "githubmemory.com",
"extracted_on": "2021-12-22T15:44:03+01:00",
"last_seen_on": "2021-12-23T00:10:51+01:00",
"still_on_page": true
},
{
"uri": "https://www.nuget.org/packages/Tomba/1.0.0",
"website_url": "www.nuget.org",
"extracted_on": "2021-12-22T15:44:25+01:00",
"last_seen_on": "2021-12-23T00:10:52+01:00",
"still_on_page": true
}
]
}
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address to look up. |
mx_records |
bool | is true if we find MX records exist on the domain of the given email address. |
smtp_server |
bool | is true if we connect to the SMTP server successfully. |
smtp_check |
bool | is true if the email address doesn't bounce. |
accept_all |
bool | is true if the SMTP server accepts all the email addresses. It means you can have have false positives on SMTP checks. |
block |
bool | is true if the SMTP server prevented us to perform the SMTP check. |
score |
int | The deliverability score we give to the email address. |
regex |
bool | The email address passes our regular expression. |
full_name |
string | The person's full name. |
status |
string | returns the status of the email address. It takes 1 out of 6 possible values:valid ,invalid ,accept_all ,webmail ,disposable ,unknown |
result |
string | returns the main status of the verification. It takes 1 out of 3 possible values: deliverable ,undeliverable ,risky |
score |
int | is the deliverability score we give to the email address. For webmail and disposable emails, we provide an arbitrary score of 50. |
source |
array | The given email address somewhere on the web |
Email Sources
Find email address source somewhere on the web
curl --request GET \
--url 'https://api.tomba.io/v1/email-sources/b.mohamed@tomba.io' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ts_xxxx'
use Tomba\Client;
use Tomba\Services\Sources;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$sources = new Sources($client);
$result = $sources->emailSources('b.mohamed@tomba.io');
from tomba.client import Client
from tomba.services.sources import Sources
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
sources = Sources(client)
result = sources.email_sources('b.mohamed@tomba.io')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let sources = new tomba.Sources(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = sources.emailSources("b.mohamed@tomba.io");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
sources = Tomba::Sources.new(client);
response = sources.email_sources(email: 'b.mohamed@tomba.io');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- email_sources(client, email="b.mohamed@tomba.io")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Sources sources = Sources(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = sources.emailSources(
email: 'b.mohamed@tomba.io',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /email-sources/:email
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
email |
Required | The email address you want to find sources. |
Response Objects details
Full Response
{
"email": "b.mohamed@tomba.io",
"data": [
{
"uri": "https://github.com/tomba-io/generic-emails/blob/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9/src/lib/validation/hash.ts",
"extracted_on": "2021-02-08T20:09:54+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true,
"website_url": "github.com"
},
{
"uri": "https://github.com/tomba-io/generic-emails/blame/084fc1a63d3cdaf9a34f255bedc2baea49a8e8b9/src/lib/validation/hash.ts",
"extracted_on": "2021-02-08T20:09:59+01:00",
"last_seen_on": "2021-02-08T22:43:40+01:00",
"still_on_page": true,
"website_url": "github.com"
}
]
}
Attribute | Type | Description |
---|---|---|
email |
string | The email address to look up. |
source |
array | The given email address somewhere on the web |
Phone Finder
Search phone are based on the email You give one email and it returns phone data
curl --request GET \
--url 'https://api.tomba.io/v1/phone/******@zapier.com' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--header 'X-Tomba-Secret: ts_xxxx'
HTTP Request
GET /phone/:email
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
email |
Required | The email address you want to find phone |
Response Objects details
Full Response
{
"data": {
"email": "******@zapier.com",
"valid": true,
"local_format": "(877) 381-8743",
"intl_format": "+1 877-381-8743",
"e164_format": "+18773818743",
"rfc3966_format": "tel:+1-877-381-8743",
"country_code": "US",
"line_type": "TOLL_FREE",
"carrier": null,
"timezones": "America/Adak"
}
}
Attribute | Type | Description |
---|---|---|
email |
string | returns The email address to look up. |
valid |
bool | returns the status of the phone. |
local_format |
string | returns the local format |
intl_format |
string | returns the international format |
e164_format |
string | returns the e164 format |
rfc3966_format |
string | returns the rfc3966 format |
country_code |
string | returns the phone country code |
line_type |
string | returns the phone type line |
carrier |
string | returns the phone carrier |
timezones |
string | returns the phone timezones |
Leads
List all your leads
Returns a list of leads.
curl --request GET \
--url 'https://api.tomba.io/v1/leads/' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /leads/
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
page |
optional | Specifies the number of leads to skip. The default is 1. |
list |
optional | lead list ID default is null |
limit |
optional | Specifies the max number of email addresses to return. The default is 10. |
sortby |
optional | Filter lead by email ,first_name ,last_name ,country ,website_url ... |
direction |
optional | Filter lead by desc ,asc |
Response Objects details
Attribute | Type | Description |
---|---|---|
id |
int | Lead ID |
email |
string | The email address |
first_name |
string | First name of lead |
last_name |
string | Last name of lead |
country |
string | Two letter country code based on location |
website_url |
string | Company domain |
position |
string | The job title of lead |
twitter |
string | Twitter handle for the lead |
linkedin |
string | LinkedIn URL for the lead |
phone_number |
string | The phone number of lead |
company |
string | The company of lead |
lead_source |
string | The lead source default is null or one of the following values: domain , finder , verify , browser . |
sync_status |
string | The lead synchronization status default is null or one of the following values: success , pending , error . |
sync |
object | sync CRM integrations status |
leads_list |
object | List info |
attributes |
object | attributes value |
Full Response
{
"data": {
"leads": [
{
"id": 84,
"user_id": 1,
"email": "xxx@mozilla.com",
"first_name": "ed",
"last_name": "lim",
"country": "US",
"website_url": "mozilla.com",
"position": "senior system administrator",
"twitter": null,
"linkedin": "https://www.linkedin.com/in/edwardlim",
"phone_number": null,
"company": "Mozilla Toronto",
"notes": "Notes",
"score": 95,
"lead_source": "domain",
"sync_status": null,
"sync": {
"sync_airtable": null,
"sync_hubspot": null,
"sync_mailchimp": null,
"sync_pipedrive": null
},
"leads_list": {
"list_id": 10,
"name": "test2"
},
"attributes": [],
"created_at": "2021-02-02T23:04:43+01:00",
"updated_at": "2021-02-09T23:57:41+01:00"
},
{
"id": 83,
"user_id": 1,
"email": "xxxx@mozilla.com",
"first_name": "nick",
"last_name": "nguyen",
"country": "US",
"website_url": "mozilla.com",
"position": "vp firefox product",
"twitter": null,
"linkedin": "https://www.linkedin.com/in/osunick",
"phone_number": null,
"company": "Mozilla Toronto",
"notes": null,
"score": 95,
"lead_source": "domain",
"sync_status": null,
"sync": {
"sync_airtable": null,
"sync_hubspot": null,
"sync_mailchimp": null,
"sync_pipedrive": null
},
"leads_list": {
"list_id": 10,
"name": "test2"
},
"attributes": [],
"created_at": "2021-02-02T23:04:43+01:00",
"updated_at": "2021-02-09T23:57:41+01:00"
}
],
"meta": {
"total": 2,
"pageSize": 50,
"current": 1,
"total_pages": 1
}
}
}
Get a lead
Returns a lead.
curl --request GET \
--url 'https://api.tomba.io/v1/leads/2' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /leads/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | lead ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
id |
int | Lead ID |
email |
string | The email address |
first_name |
string | First name of lead |
last_name |
string | Last name of lead |
country |
string | Two letter country code based on location |
website_url |
string | Company domain |
position |
string | The job title of lead |
twitter |
string | Twitter handle for the lead |
linkedin |
string | LinkedIn URL for the lead |
phone_number |
string | The phone number of lead |
company |
string | The company of lead |
lead_source |
string | The lead source default is null or one of the following values: domain , finder , verify , browser . |
sync_status |
string | The lead synchronization status default is null or one of the following values: success , pending , error . |
sync |
object | sync CRM integrations status |
leads_list |
object | List info |
attributes |
object | attributes value |
Full Response
{
"data": {
"leads": [
{
"id": 8420,
"user_id": 1,
"email": "b.mohamed@tomba.io",
"first_name": "Mohamed",
"last_name": "Ben rebia",
"country": "DZ",
"website_url": "tomba.io",
"position": "ceo",
"twitter": null,
"linkedin": "https://www.linkedin.com/in/mohamed-ben-rebia-4337061ba",
"phone_number": null,
"company": "Tomba technology web service LLC ",
"notes": null,
"score": 95,
"lead_source": "browser",
"sync_status": true,
"sync_airtable": true,
"sync_hubspot": true,
"sync_mailchimp": true,
"sync_pipedrive": true,
"leads_list": { "list_id": 117, "name": "CEO" },
"attributes": [],
"created_at": "2021-06-07T20:31:20+01:00",
"updated_at": "2022-07-03T14:31:30+01:00"
}
]
}
}
Create a lead
Create a new lead . If the email already exists, fails with 422
status code.
curl --request POST \
--url 'https://api.tomba.io/v1/leads' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--data '{
"list_id": 22,
"email": "Grover12@hotmail.com",
"first_name": "Jefferey Hoppe",
"last_name": "Romaguera",
"position": "Customer Data Executive",
"company": "Branding",
"score": 95,
"website_url": "asana.com",
"phone_number": "506-993-3955",
"twitter": "moskov",
"country": "UA",
"linkedin": "ASD",
"notes": "ASDDDDDDDDDDDD"
}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
POST /leads
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
email |
Required | The email address |
list |
optional | List ID |
first_name |
optional | First name of lead |
last_name |
optional | Last name of lead |
country |
optional | Two letter country code based on location |
website_url |
optional | Company domain |
position |
optional | The job title of lead |
twitter |
optional | Twitter handle for the lead |
linkedin |
optional | LinkedIn URL for the lead |
phone_number |
optional | The phone number of lead |
company |
optional | The company of lead |
attributes |
optional | attributes value |
Response Objects details
Attribute | Type | Description |
---|---|---|
data -> id |
int | Lead ID |
Full Response
{
"data": {
"id": 117
}
}
Update a lead
Update the fields of a lead using id
.
curl --request PUT \
--url 'https://api.tomba.io/v1/leads/278' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--data '{
"email": "mohamed@xasdasd.io",
"first_name": "Mohamed",
"last_name": "Mohamed",
"country": null,
"website_url": "google.com",
"position": "CEO",
"twitter": "moskov",
"linkedin_url": "dmoskov",
"phone_number": "",
"company": "Asana",
"attributes" :{
"updatesdsad" : "mo",
"wee" : "mo",
"s": "6"
}
}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
PUT /leads/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | list ID . |
email |
optional | The email address |
list |
optional | List ID |
first_name |
optional | First name of lead |
last_name |
optional | Last name of lead |
country |
optional | Two letter country code based on location |
website_url |
optional | Company domain |
position |
optional | The job title of lead |
twitter |
optional | Twitter handle for the lead |
linkedin |
optional | LinkedIn URL for the lead |
phone_number |
optional | The phone number of lead |
company |
optional | The company of lead |
attributes |
optional | attributes value |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if updated |
message |
string | note message |
Full Response
{
"status": true,
"message": "The lead has been updated successfully."
}
Delete a lead
Delete a specific lead by passing id
.
curl --request DELETE \
--url 'https://api.tomba.io/v1/leads/275' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
DELETE //v1/leads/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | list ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if deleted |
message |
string | note message |
Full Response
{
"status": true,
"message": "The lead has been delete successfully."
}
Lead Attributes
List all your lead attributes
Returns a list of Lead Attributes.
curl --request GET \
--url https://api.tomba.io/v1/attributes \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /attributes/
The parameters are defined as follows
Response Objects details
Attribute | Type | Description |
---|---|---|
attributes -> id |
int | attribute ID |
attributes -> name |
string | Name of the custom attribute |
attributes -> identifier |
string | identifier of attribute read only It can't be edited |
attributes -> type |
string | type attributes string , date , number only. |
attributes -> date_created |
string | The date of creation |
attributes -> date_modified |
string | the date when the attr was updated |
Full Response
{
"data": {
"attributes": [
{
"id": 48,
"name": "ALLO",
"identifier": "allo",
"type": "string",
"date_created": "2020-12-11T08:18:37+01:00",
"date_modified": "2020-12-13T08:47:22+01:00"
},
{
"id": 47,
"name": "ASD ASD",
"identifier": "asd_asd",
"type": "date",
"date_created": "2020-12-11T08:16:22+01:00",
"date_modified": "2020-12-11T08:16:22+01:00"
},
{
"id": 46,
"name": "AS ASD",
"identifier": "as-asd",
"type": "number",
"date_created": "2020-12-11T08:15:47+01:00",
"date_modified": "2020-12-11T08:15:47+01:00"
},
{
"id": 6,
"name": "s",
"identifier": "s",
"type": "number",
"date_created": "2020-12-09T03:35:41+01:00",
"date_modified": "2020-12-09T03:35:55+01:00"
},
{
"id": 5,
"name": "swe",
"identifier": "swe",
"type": "date",
"date_created": "2020-12-09T03:35:15+01:00",
"date_modified": "2020-12-09T03:35:15+01:00"
},
{
"id": 4,
"name": "wee",
"identifier": "wee",
"type": "string",
"date_created": "2020-12-09T03:34:24+01:00",
"date_modified": "2020-12-09T03:34:24+01:00"
},
{
"id": 3,
"name": "xxx",
"identifier": "xxx",
"type": "string",
"date_created": "2020-12-09T03:03:17+01:00",
"date_modified": "2020-12-09T03:33:18+01:00"
},
{
"id": 2,
"name": "updatesdsad",
"identifier": "updatesdsad",
"type": "string",
"date_created": "2020-12-09T03:02:55+01:00",
"date_modified": "2020-12-12T09:20:19+01:00"
},
{
"id": 1,
"name": "ssssss",
"identifier": "ssssss",
"type": "date",
"date_created": "2020-12-07T05:37:53+01:00",
"date_modified": "2020-12-09T03:33:31+01:00"
}
],
"meta": {
"total": 9,
"pageSize": 50,
"current": 1,
"total_pages": 1
}
}
}
Get a attributes
Returns a Lead Attributes.
curl --request GET \
--url 'https://api.tomba.io/v1/attributes/38' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /attributes/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | attribute ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
attributes -> id |
int | attribute ID |
attributes -> name |
string | Name of the custom attribute |
attributes -> identifier |
string | identifier of attribute read only It can't be edited |
attributes -> type |
string | type attributes string , date , number only. |
attributes -> date_created |
string | The date of creation |
attributes -> date_modified |
string | the date when the attr was updated |
Full Response
{
"data": {
"attributes": [
{
"id": 38,
"name": "salary",
"type": "number",
"date_created": "2020-12-07T05:37:53+01:00",
"date_modified": "2020-12-07T05:37:53+01:00"
}
]
}
}
Create a Lead Attributes
Create a new Attributes with the name
and type
request parameter. If the Attributes name already exists, fails with 422
status code.
curl --request POST \
--url 'https://api.tomba.io/v1/attributes' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--data '{"name": "Millie","type": "date"}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
POST /attributes
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
name |
Required | Name of the custom attribute |
type |
Required | type attributes string , date , number only. |
Response Objects details
Attribute | Type | Description |
---|---|---|
data -> id |
int | attribute ID |
Full Response
{
"data": {
"id": 51
}
}
Update a Lead Attributes
Update the fields of a Attributes using id
.
curl --request PUT \
--url 'https://api.tomba.io/v1/attributes/41' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx' \
--data '{"name": "total ","type": "string"}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
PUT /attributes/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | attribute ID . |
name |
Required | Name of the custom attribute |
type |
Required | type attributes string , date , number only. |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if updated |
message |
string | note message |
Full Response
{
"status": true,
"message": "The leads lists info has been updated successfully."
}
Delete a Lead Attributes
Delete a specific Attributes by passing id
.
curl --request DELETE \
--url 'https://api.tomba.io/v1/attributes' \
--header 'Content-Type: application/json' \
--header 'X-Tomba-Key: ta_xxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
DELETE /attributes/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | attribute ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if deleted |
message |
string | note message |
Full Response
{
"status": true,
"message": "The attributes has been delete successfully."
}
Leads Lists
List all your leads lists
Returns a list of leads lists.
curl --request GET \
--url 'https://api.tomba.io/v1/leads_lists/' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /leads_lists
Response Objects details
Attribute | Type | Description |
---|---|---|
list_leads -> id |
int | List ID |
list_leads -> name |
string | Name of the List |
list_leads -> favorite |
bool | is the List favorite true or false |
list_leads -> type |
string | The type is campaigns by default ,Soon we will add more Type |
list_leads -> size |
int | Total lead on this list |
list_leads -> created_at |
string | The date of creation |
list_leads -> updated_at |
string | the date when the list was updated |
Full Response
{
"data": {
"list_leads": [
{
"id": 2,
"name": "html",
"favorite": false,
"type": "campaigns",
"size": 105,
"created_at": "2020-12-13T07:59:36+01:00",
"updated_at": "2020-12-13T07:59:36+01:00"
},
{
"id": 3,
"name": "tgevrt",
"favorite": false,
"type": "campaigns",
"size": 34,
"created_at": "2020-12-13T08:01:45+01:00",
"updated_at": "2020-12-13T08:01:45+01:00"
},
{
"id": 436,
"name": "ce",
"favorite": false,
"type": "campaigns",
"size": 4,
"created_at": "2020-12-14T10:36:56+01:00",
"updated_at": "2020-12-14T10:36:56+01:00"
},
{
"id": 462,
"name": "we",
"favorite": false,
"type": "campaigns",
"size": 0,
"created_at": "2020-12-14T10:29:17+01:00",
"updated_at": "2020-12-14T10:29:17+01:00"
}
]
}
}
Get a leads list
Returns a leads list.
curl --request GET \
--url 'https://api.tomba.io/v1/leads_lists/1' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
GET /leads_lists/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | attribute ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
list_leads -> id |
int | List ID |
list_leads -> name |
string | Name of the List |
list_leads -> favorite |
bool | is the List favorite true or false |
list_leads -> type |
string | The type is campaigns by default ,Soon we will add more Type |
list_leads -> size |
int | Total lead on this list |
list_leads -> created_at |
string | The date of creation |
list_leads -> updated_at |
string | the date when the list was updated |
Full Response
{
"data": [
{
"id": 1,
"name": "html",
"favorite": false,
"type": "campaigns",
"size": 109,
"created_at": "2020-12-13T07:59:36+01:00",
"updated_at": "2020-12-21T12:46:35+01:00"
}
]
}
Create a leads list
Create a new leads list with the name
request parameter. If the list name already exists, fails with 422
status code.
curl --request POST \
--url 'https://api.tomba.io/v1/leads_lists/' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--data '{
"name": "Mario Monahan"
}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
POST /leads_lists
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
name |
Required | Name of the list |
Response Objects details
Attribute | Type | Description |
---|---|---|
data -> list_id |
int | List ID |
data -> name |
string | list name |
Full Response
{
"data": {
"list_id": 22,
"name": "Nya Dicki"
}
}
Update a leads list
Update the fields of a list using id
.
curl --request PUT \
--url 'https://api.tomba.io/v1/leads_lists/17' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
--data '{
"name": "update listsssssssssss"
}'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
PUT /leads_lists/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | list ID . |
name |
Required | new name for the list |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if updated |
message |
string | note message |
Full Response
{
"status": true,
"message": "The leads list info has been updated successfully."
}
Delete a leads list
Delete a specific list by passing id
.
curl --request DELETE \
--url 'https://api.tomba.io/v1/leads_lists/5' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx' \
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
require(tomba)
import 'package:tomba/tomba.dart';
HTTP Request
DELETE /leads_lists/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id |
Required | list ID . |
Response Objects details
Attribute | Type | Description |
---|---|---|
status |
bool | true if deleted |
message |
string | note message |
Full Response
{
"status": true,
"message": "The leads list info has been delete successfully."
}
keys
List all your keys
Returns a list of your keys.
curl --request GET \
--url https://api.tomba.io/v1/keys \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Keys;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$keys = new Keys($client);
$result = $keys->getKeys();
from tomba.client import Client
from tomba.services.keys import Keys
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
keys = Keys(client)
result = keys.get_keys()
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let keys = new tomba.Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = keys.getKeys();
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
keys = Tomba::Keys.new(client);
response = keys.get_keys();
puts response
import io.tomba.api.Tomba;
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Keys keys = Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = keys.getKeys();
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /keys/
Response Objects details
Attribute | Type | Description |
---|---|---|
keys ->id |
string | the key ID |
keys ->key |
string | your hash key always start with ta_ |
keys ->ip_addresses |
string | IP address |
keys ->creation_date |
string | the date of creation of this key |
Full Response
{
"data": {
"keys": [
{
"id": 432,
"key": "ta_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"ip_addresses": "127.0.0.1",
"creation_date": "2021-01-13T01:00:41+01:00"
},
...
...
...
...
]
}
}
Get a key
Returns a key.
curl --request GET \
--url 'https://api.tomba.io/v1/keys/241' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
<?php
use tomba\Tomba;
import tomba
const Tomba = require("tomba");
require 'tomba'
import io.tomba.api.Tomba;
import 'package:tomba/tomba.dart';
HTTP Request
GET /keys/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id | Required | Key ID. |
Response Objects details
Attribute | Type | Description |
---|---|---|
keys ->id |
string | the key ID |
keys ->key |
string | your hash key |
keys ->ip_addresses |
string | IP address |
keys ->creation_date |
string | the date of creation of this key |
Full Response
{
"data": {
"keys": [
{
"id": 241,
"key": "ta_xxxxxxxxxxxxxxxxx",
"ip_addresses": "1.0.0.1",
"creation_date": "2021-01-13T00:45:05+01:00"
}
]
}
}
Create a key
curl --request POST \
--url 'https://api.tomba.io/v1/keys' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Keys;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$keys = new Keys($client);
$result = $keys->createKey();
from tomba.client import Client
from tomba.services.keys import Keys
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
keys = Keys(client)
result = keys.create_key()
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let keys = new tomba.Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = keys.createKey();
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
keys = Tomba::Keys.new(client);
response = keys.create_key();
puts response
import io.tomba.api.Tomba;
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Keys keys = Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = keys.createKey();
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
POST /keys
Response Objects details
Attribute | Type | Description |
---|---|---|
id |
string | the key ID |
key |
string | your hash key |
Full Response
{
"data": {
"id": 399,
"key": "ta_xxxxxx"
}
}
Rest a key
curl --request PUT \
--url 'https://api.tomba.io/v1/keys/2' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Keys;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$keys = new Keys($client);
$result = $keys->resetKey('2');
from tomba.client import Client
from tomba.services.keys import Keys
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
keys = Keys(client)
result = keys.reset_key('')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let keys = new tomba.Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = keys.resetKey("");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
keys = Tomba::Keys.new(client);
response = keys.reset_key(id: '');
puts response
import io.tomba.api.Tomba;
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Keys keys = Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = keys.resetKey(
id: '',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
PUT /keys/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id | Required | Key ID. |
Response Objects details
Attribute | Type |
---|---|
status |
bool |
message |
string |
Full Response
{
"status": true,
"message": "The keys has been Rest."
}
Delete a key
curl --request DELETE \
--url 'https://api.tomba.io/v1/keys/259' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Keys;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$keys = new Keys($client);
$result = $keys->deleteKey('259');
from tomba.client import Client
from tomba.services.keys import Keys
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
keys = Keys(client)
result = keys.delete_key('')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let keys = new tomba.Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = keys.deleteKey("12");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
keys = Tomba::Keys.new(client);
response = keys.delete_key(id: '');
puts response
import io.tomba.api.Tomba;
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Keys keys = Keys(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = keys.deleteKey(
id: '',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
DELETE /keys/:id
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
id | Required | Key ID. |
Response Objects details
Attribute | Type |
---|---|
status |
bool |
message |
string |
Full Response
{
"status": true,
"message": "The keys has been delete successfully."
}
Usage
Returns a your monthly requests
curl --request GET \
--url https://api.tomba.io/v1/usage \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Usage;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$usage = new Usage($client);
$result = $usage->getUsage();
from tomba.client import Client
from tomba.services.usage import Usage
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
usage = Usage(client)
result = usage.get_usage()
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let usage = new tomba.Usage(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = usage.getUsage();
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
usage = Tomba::Usage.new(client);
response = usage.get_usage();
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- usage(client)
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Usage usage = Usage(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = usage.getUsage();
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /usage/
Response Objects details
Attribute | Type | Description |
---|---|---|
data ->usage |
int | total usage on date |
data ->created_at |
int | usage date |
data ->name |
int | total usage on the name |
Full Response
{
"data": [
{
"usage": 2,
"created_at": "2021-01-17",
"domain": 0,
"finder": 0,
"verifier": 2,
"technologies": 0,
"ip": 0,
"website": 0,
"bulk": 0,
"extension": 0,
"api": 0,
"mobile": 0,
"desktop": 0,
"sheets": 0
},
{
"usage": 0,
"created_at": "2021-01-19",
"domain": 0,
"finder": 0,
"verifier": 0,
"technologies": 0,
"ip": 0,
"website": 0,
"bulk": 0,
"extension": 0,
"api": 0,
"mobile": 0,
"desktop": 0,
"sheets": 0
},
...
...
...
...
],
"total": {
"usage": 227,
"domain": 0,
"finder": 158,
"verifier": 35,
"technologies": 0,
"website": 0,
"bulk": 0,
"extension": 0,
"api": 0,
"mobile": 0,
"desktop": 0,
"sheets": 0
}
}
Logs
Returns a your last 1,000 requests you made during the last 3 months.
curl --request GET \
--url https://api.tomba.io/v1/logs \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Logs;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$logs = new Logs($client);
$result = $logs->getLogs();
from tomba.client import Client
from tomba.services.logs import Logs
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
logs = Logs(client)
result = logs.get_logs()
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let logs = new tomba.Logs(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = logs.getLogs();
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
logs = Tomba::Logs.new(client);
response = logs.get_logs();
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- logs(client)
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Logs logs = Logs(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = logs.getLogs();
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /logs/
Response Objects details
Attribute | Type | Description |
---|---|---|
data -> uri |
string | The url associated with the Request |
data -> user_agent |
string | The User Agent associated with the Request |
data -> cost |
bool | The cost false Free true 1 request |
data -> ip_address |
string | The IP address associated with the Request |
data -> created_at |
string | The date of creation |
data -> country |
string | The ISO 3166-1 alpha-2 country code |
Full Response
{
"data": [
{
"type": "Email Finder",
"uri": "https:\/\/api.tomba\/v1\/email-finder\/asdasd.fr",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-14T13:26:58+11:00",
"id": 1809,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Social Search",
"uri": "https:\/\/api.tomba\/v1\/social\/sadasd",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-14T13:26:35+11:00",
"id": 1799,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Email Finder",
"uri": "https:\/\/api.tomba\/v1\/email-finder\/alacra.com",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-14T00:22:13+11:00",
"id": 1724,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Email Finder",
"uri": "https:\/\/api.tomba\/v1\/email-finder\/alacra.com",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-14T00:22:01+11:00",
"id": 1723,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Email Verification",
"uri": "https:\/\/api.tomba\/v1\/email-verifier\/sdsad@asdsad.fr",
"cost": true,
"ip_address": "1.0.0.0",
"created_at": "2020-10-12T22:07:03+11:00",
"id": 1633,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Geolocation API",
"uri": "https:\/\/api.tomba\/v1\/ip\/1.0.0.0",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-12T14:44:57+11:00",
"id": 1290,
"user_agent": "tomba api",
"source": "API",
"http_method": "GET",
"country" : "TN"
},
{
"type": "Email Verification",
"uri": "https:\/\/api.tomba\/v1\/email-verifier\/asdasd@asdasd.fr",
"cost": false,
"ip_address": "1.0.0.0",
"created_at": "2020-10-11T00:06:57+11:00",
"id": 767,
"user_agent": "Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.4183.121 Safari\/537.36",
"source": "Website",
"http_method": "GET",
"country" : "TN"
},
...
...
...
...
...
...
]
}
Email Count
Returns total email addresses we have for one domain.
curl --request GET \
--url 'https://api.tomba.io/v1/email-count?domain=google.com' \
--header 'content-type: application/json' \
--header 'X-Tomba-Key: xxxxxxxxxxxxx'
use Tomba\Client;
use Tomba\Services\Count;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$count = new Count($client);
$result = $count->emailCount('tomba.io');
from tomba.client import Client
from tomba.services.count import Count
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
count = Count(client)
result = count.email_count('tomba.io')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let count = new tomba.Count(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = count.emailCount("tomba.io");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
count = Tomba::Count.new(client);
response = count.email_count(domain: 'tomba.io');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- count(client, domain="tomba.io")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Count count = Count(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = count.emailCount(
domain: 'tomba.io',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /email-count/?domain=:domain
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
domain |
Required | Domain name from which you want to find the email addresses. For example, "stripe.com". |
Response Objects details
Attribute | Type | Description |
---|---|---|
total |
int | Total email |
personal_emails |
int | Total personal email |
generic_emails |
int | Total generic email |
department > _key_name_ |
int | Total email on department _key_name_ |
seniority > _key_name_ |
int | Total email on seniority _key_name_ |
Full Response
{
"data": {
"total": 129283,
"personal_emails": 129283,
"generic_emails": 295,
"department": {
"engineering": 871,
"finance": 692,
"hr": 505,
"it": 1040,
"marketing": 4996,
"operations": 2369,
"management": 4208,
"sales": 1455,
"legal": 208,
"support": 1414,
"communication": 226
},
"seniority": {
"junior": 3265,
"senior": 20948,
"executive": 4712
}
}
}
Domain status
Returns domain status if is webmail or disposable.
It's free and doesn't require authentication.
curl --request GET \
--url 'https://api.tomba.io/v1/domain-status?domain=gmail.com' \
--header 'content-type: application/json' \
use Tomba\Client;
use Tomba\Services\Status;
$client = new Client();
$client
->setKey('ta_xxxx') // Your API Key
->setSecret('ts_xxxx') // Your Secret
;
$status = new Status($client);
$result = $status->domainStatus('gmail.com');
from tomba.client import Client
from tomba.services.status import Status
client = Client()
(client
.set_key('ta_xxxx') # Your Key
.set_secret('') # Your Secret
)
status = Status(client)
result = status.domain_status('gmail.com')
const tomba = require("tomba");
// Init Tomba
let client = new tomba.Client();
let status = new tomba.Status(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
let result = status.domainStatus("gmail.com");
result
.then((response) => {
console.log(response);
})
.catch((err) => {
console.log(err);
});
require 'tomba'
client = Tomba::Client.new()
client
.set_key('ta_xxxx') # Your Key
.set_secret('ts_xxxx') # Your Secret
;
status = Tomba::Status.new(client);
response = status.domain_status(domain: 'gmail.com');
puts response
import io.tomba.api.Tomba;
client <- Tomba(key="ta_xxxx",secret="ts_xxxx")
data <- status(client, domain="gmail.com")
data
import 'package:tomba/tomba.dart';
void main() {
// Init SDK
Client client = Client();
Status status = Status(client);
client
.setKey("ta_xxxx") // Your Key
.setSecret("ts_xxxx"); // Your Secret
;
Future result = status.domainStatus(
domain: 'gmail.com',
);
result
.then((response) {
print(response);
}).catchError((error) {
print(error.response);
});
}
HTTP Request
GET /domain-status/?domain=:domain
The parameters are defined as follows
Parameter | Default | Description |
---|---|---|
domain |
Required | Domain name from which you want to check. For example, "gmail.com". |
email |
Required | Email address from which you want to check. For example, "me@gmail.com". |
Response Objects details
Full Response
{
"domain": "gmail.com",
"webmail": true,
"disposable": false
}
Attribute | Type | Description |
---|---|---|
webmail |
int | is webmail email service |
disposable |
int | is disposable email service |