curl --request POST \
--url https://api.parallellabs.app/api/v0/leads/people-search/export \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"companyId": "<string>",
"includeEmail": true,
"includePhone": false,
"rows": [
{}
],
"filters": {},
"count": 123,
"importAll": true,
"audienceName": "<string>",
"importId": "<string>"
}
'import requests
url = "https://api.parallellabs.app/api/v0/leads/people-search/export"
payload = {
"companyId": "<string>",
"includeEmail": True,
"includePhone": False,
"rows": [{}],
"filters": {},
"count": 123,
"importAll": True,
"audienceName": "<string>",
"importId": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
companyId: '<string>',
includeEmail: true,
includePhone: false,
rows: [{}],
filters: {},
count: 123,
importAll: true,
audienceName: '<string>',
importId: '<string>'
})
};
fetch('https://api.parallellabs.app/api/v0/leads/people-search/export', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.parallellabs.app/api/v0/leads/people-search/export",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'companyId' => '<string>',
'includeEmail' => true,
'includePhone' => false,
'rows' => [
[
]
],
'filters' => [
],
'count' => 123,
'importAll' => true,
'audienceName' => '<string>',
'importId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.parallellabs.app/api/v0/leads/people-search/export"
payload := strings.NewReader("{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.parallellabs.app/api/v0/leads/people-search/export")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.parallellabs.app/api/v0/leads/people-search/export")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"taskId": "<string>",
"listId": "<string>",
"status": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Export people-search results to a CSV file.
Takes the same rows or filters/count, includeEmail/includePhone and importId options as leads_importPeopleDatabaseResults, at the same data credit cost, but writes a CSV instead of a smart list. Returns a taskId: poll lists_getTaskStatus until status is completed, then read result.downloadUrl (valid for 24 hours). The link is also emailed to the caller.
curl --request POST \
--url https://api.parallellabs.app/api/v0/leads/people-search/export \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"companyId": "<string>",
"includeEmail": true,
"includePhone": false,
"rows": [
{}
],
"filters": {},
"count": 123,
"importAll": true,
"audienceName": "<string>",
"importId": "<string>"
}
'import requests
url = "https://api.parallellabs.app/api/v0/leads/people-search/export"
payload = {
"companyId": "<string>",
"includeEmail": True,
"includePhone": False,
"rows": [{}],
"filters": {},
"count": 123,
"importAll": True,
"audienceName": "<string>",
"importId": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
companyId: '<string>',
includeEmail: true,
includePhone: false,
rows: [{}],
filters: {},
count: 123,
importAll: true,
audienceName: '<string>',
importId: '<string>'
})
};
fetch('https://api.parallellabs.app/api/v0/leads/people-search/export', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.parallellabs.app/api/v0/leads/people-search/export",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'companyId' => '<string>',
'includeEmail' => true,
'includePhone' => false,
'rows' => [
[
]
],
'filters' => [
],
'count' => 123,
'importAll' => true,
'audienceName' => '<string>',
'importId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.parallellabs.app/api/v0/leads/people-search/export"
payload := strings.NewReader("{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.parallellabs.app/api/v0/leads/people-search/export")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.parallellabs.app/api/v0/leads/people-search/export")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"companyId\": \"<string>\",\n \"includeEmail\": true,\n \"includePhone\": false,\n \"rows\": [\n {}\n ],\n \"filters\": {},\n \"count\": 123,\n \"importAll\": true,\n \"audienceName\": \"<string>\",\n \"importId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"taskId": "<string>",
"listId": "<string>",
"status": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Company API key - scoped to a specific company. Generate from the Integrations page in your dashboard.
Body
Company ID for access and any applicable data-credit charges
Enrich email for 1 data credit per person.
Enrich mobile/direct phone for 2 data credits per returned number.
Selected results, up to 50. Omit to export a filtered search.
Search filters; required when rows are omitted.
Maximum people to export, from 1 to 50000.
Export matching results, capped at 50000.
Optional label for the job.
Optional UUID identifying this job. Reuse it to retrieve the same job when retrying an unchanged request.
Response
Queued export; poll lists_getTaskStatus for result.downloadUrl
The queued background people job

