Advanced lead search
Advanced search with structured filters via POST body. Supports filtering by email, name, company, job title, tags, email verification status, location, and creation date range. Results are paginated.
curl -X POST "https://api.sendkit.ai/v1/leads/search" \
-H "Content-Type: application/json" \
-H "X-Api-Key: YOUR_API_KEY" \
-d '{
"filters": {
"companyName": "Acme",
"tags": [
"enterprise"
],
"emailVerified": true,
"createdAfter": "2025-01-01T00:00:00.000Z"
},
"limit": 50
}'
import requests
import json
url = "https://api.sendkit.ai/v1/leads/search"
headers = {
"Content-Type": "application/json",
"X-Api-Key": "YOUR_API_KEY"
}
data = {
"filters": {
"companyName": "Acme",
"tags": [
"enterprise"
],
"emailVerified": true,
"createdAfter": "2025-01-01T00:00:00.000Z"
},
"limit": 50
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.sendkit.ai/v1/leads/search", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-Api-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"filters": {
"companyName": "Acme",
"tags": [
"enterprise"
],
"emailVerified": true,
"createdAfter": "2025-01-01T00:00:00.000Z"
},
"limit": 50
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"filters": {
"companyName": "Acme",
"tags": [
"enterprise"
],
"emailVerified": true,
"createdAfter": "2025-01-01T00:00:00.000Z"
},
"limit": 50
}`)
req, err := http.NewRequest("POST", "https://api.sendkit.ai/v1/leads/search", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-Api-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.sendkit.ai/v1/leads/search')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['X-Api-Key'] = 'YOUR_API_KEY'
request.body = '{
"filters": {
"companyName": "Acme",
"tags": [
"enterprise"
],
"emailVerified": true,
"createdAfter": "2025-01-01T00:00:00.000Z"
},
"limit": 50
}'
response = http.request(request)
puts response.body
{
"success": true,
"data": [
{
"_id": "665d4e5f6a7b8c9d0e1f2a3b",
"email": "john@acme.com",
"firstName": "John",
"lastName": "Doe",
"companyName": "Acme Corp",
"jobTitle": "VP of Sales",
"tags": [
"enterprise"
],
"emailVerified": true,
"emailVerificationResult": "deliverable",
"segProtected": true,
"segProvider": "proofpoint",
"segProviderName": "Proofpoint",
"city": "San Francisco",
"state": "CA",
"country": "US",
"createdAt": "2025-06-10T10:30:00.000Z"
}
],
"pagination": {
"limit": 50,
"total": 1,
"hasMore": false,
"nextCursor": "665d4e5f6a7b8c9d0e1f2a3b"
}
}
/v1/leads/search
Platform API key (sk_user_...) or Workspace API key (sk_...)
The media type of the request body
Search filters (all optional, combined with AND)
Cursor for pagination - use the nextCursor value from the previous response to fetch the next page
Results per page (default 25, max 100)
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Platform API key (sk_user_...) or Workspace API key (sk_...)
Body
Search filters (all optional, combined with AND)
Partial email match (case-insensitive)
Search across firstName, lastName, fullName (case-insensitive)
Partial company name match (case-insensitive)
Partial job title match (case-insensitive)
Filter by email verification status
Exact country match
Partial city match (case-insensitive)
Only leads created after this date
Only leads created before this date
Cursor for pagination - use the nextCursor value from the previous response to fetch the next page
Results per page (default 25, max 100)
Responses
Whether the email has been verified via an enrichment provider
Result of the most recent email verification check
deliverableundeliverableriskyunknownWhether the recipient's email is protected by a Secure Email Gateway (SEG)
Short identifier for the detected SEG provider
proofpointmimecastbarracudaciscoforcepointsophostrendmicrosymantecmcafeemicrosoft_atpgoogle_postiniHuman-readable name of the detected SEG provider
ProofpointMimecastBarracudaCisco IronPortForcepointSophosTrend MicroSymantecMcAfeeMicrosoftGoogle PostiniLast updated 4 days ago
Built with Documentation.AI