LinkedIn Lead Search
Advanced LinkedIn lead search with 20+ filters, inclusion/exclusion
criteria, and Sales Navigator URL support. Submit clean, human-readable
labels (e.g. "seniority": ["Director"]) and TexAu resolves them to
LinkedIn IDs server-side. Geo names are resolved automatically.
Use GET /search_reference_data to discover valid filter labels.
Pricing: 0.5 credit per result in the elements array.
curl -X POST "https://v3-api.texau.com/api/v1/lead_search" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"search": "machine learning",
"currentJobTitles": [
"VP Engineering",
"CTO"
],
"seniority": [
"Director",
"CXO"
],
"companySize": [
"51-200",
"201-500"
],
"geoIds": [
"San Francisco Bay Area"
],
"industries": [
"Software Development"
],
"functions": [
"Engineering"
],
"page": 1,
"exclude": {
"currentJobTitles": [
"Intern",
"Trainee"
],
"industries": [
"Education"
]
}
}'
import requests
import json
url = "https://v3-api.texau.com/api/v1/lead_search"
headers = {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY"
}
data = {
"search": "machine learning",
"currentJobTitles": [
"VP Engineering",
"CTO"
],
"seniority": [
"Director",
"CXO"
],
"companySize": [
"51-200",
"201-500"
],
"geoIds": [
"San Francisco Bay Area"
],
"industries": [
"Software Development"
],
"functions": [
"Engineering"
],
"page": 1,
"exclude": {
"currentJobTitles": [
"Intern",
"Trainee"
],
"industries": [
"Education"
]
}
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://v3-api.texau.com/api/v1/lead_search", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY"
},
body: JSON.stringify({
"search": "machine learning",
"currentJobTitles": [
"VP Engineering",
"CTO"
],
"seniority": [
"Director",
"CXO"
],
"companySize": [
"51-200",
"201-500"
],
"geoIds": [
"San Francisco Bay Area"
],
"industries": [
"Software Development"
],
"functions": [
"Engineering"
],
"page": 1,
"exclude": {
"currentJobTitles": [
"Intern",
"Trainee"
],
"industries": [
"Education"
]
}
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"search": "machine learning",
"currentJobTitles": [
"VP Engineering",
"CTO"
],
"seniority": [
"Director",
"CXO"
],
"companySize": [
"51-200",
"201-500"
],
"geoIds": [
"San Francisco Bay Area"
],
"industries": [
"Software Development"
],
"functions": [
"Engineering"
],
"page": 1,
"exclude": {
"currentJobTitles": [
"Intern",
"Trainee"
],
"industries": [
"Education"
]
}
}`)
req, err := http.NewRequest("POST", "https://v3-api.texau.com/api/v1/lead_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://v3-api.texau.com/api/v1/lead_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 = '{
"search": "machine learning",
"currentJobTitles": [
"VP Engineering",
"CTO"
],
"seniority": [
"Director",
"CXO"
],
"companySize": [
"51-200",
"201-500"
],
"geoIds": [
"San Francisco Bay Area"
],
"industries": [
"Software Development"
],
"functions": [
"Engineering"
],
"page": 1,
"exclude": {
"currentJobTitles": [
"Intern",
"Trainee"
],
"industries": [
"Education"
]
}
}'
response = http.request(request)
puts response.body
{
"elements": [
{
"id": "example_string",
"linkedinUrl": "example_string",
"firstName": "John Doe",
"lastName": "John Doe",
"summary": "example_string",
"openProfile": true,
"premium": true,
"currentPositions": [
{
"title": "example_string",
"companyName": "John Doe",
"companyId": "example_string",
"companyLinkedinUrl": "example_string",
"current": true,
"startedOn": {
"month": 42,
"year": 42
}
}
],
"pictureUrl": "example_string",
"location": {
"linkedinText": "example_string"
}
}
],
"pagination": {
"totalElements": 42,
"totalPages": 25,
"pageNumber": 25,
"previousElements": 42,
"pageSize": 25
},
"sessionId": "example_string"
}
{
"error": "Forbidden",
"message": "You don't have permission to access this resource",
"code": 403
}
{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Please try again later",
"code": 429,
"retryAfter": 3600
}
/lead_search
Your TexAu API key. Contact TexAu to obtain one.
The media type of the request body
Keyword search across profiles.
Current job titles to include.
Past job titles to include.
Current company names or LinkedIn URLs.
Past company names or LinkedIn URLs.
Seniority levels (resolved to IDs). Use /search_reference_data for valid labels.
Industry labels (resolved to IDs).
Job functions (resolved to IDs).
Company headcount ranges (resolved to IDs).
Location names (auto-resolved to geo IDs) or numeric geo IDs. Max 10.
Location text strings (passed directly).
Company HQ location strings.
Experience ranges (resolved to IDs).
Tenure ranges (resolved to IDs).
Profile language labels (resolved to IDs).
Filter to profiles that recently changed jobs.
Session ID from a previous response for consistent pagination.
Page number (1-based).
Exclusion filters (same fields as main filters).
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Your TexAu API key. Contact TexAu to obtain one.
Body
Keyword search across profiles.
Current job titles to include.
Past job titles to include.
Current company names or LinkedIn URLs.
Past company names or LinkedIn URLs.
Seniority levels (resolved to IDs). Use /search_reference_data for valid labels.
Industry labels (resolved to IDs).
Job functions (resolved to IDs).
Company headcount ranges (resolved to IDs).
Location names (auto-resolved to geo IDs) or numeric geo IDs. Max 10.
Location text strings (passed directly).
Company HQ location strings.
Experience ranges (resolved to IDs).
Tenure ranges (resolved to IDs).
Profile language labels (resolved to IDs).
Filter to profiles that recently changed jobs.
Session ID from a previous response for consistent pagination.
Page number (1-based).
Responses
LinkedIn internal profile ID.
Full LinkedIn profile URL.
Reuse in subsequent requests for consistent pagination.
Last updated 2 weeks ago
Built with Documentation.AI