In addition to the bulk loading API features, Pure CallerID also provides a simple mechanism for uploading single lead record. The API is secured by using an API token that can be created and managed within your workspace.
Single Lead loading is typically reserved for real time lead generation workflows often referred to Web To Call, Form To Phone, Web To Lead, etc. Leads loaded using the single lead API are processed synchronously and provide response codes confirm the lead was successfully Accepted or Rejected based on the campaign configurations.
URL: https://core.purecallerid.app/api/public/lead/load
Method: POST
Content-Type: application/json
Security: A custom HTTP header must be included in the POST request. The Header name is "X-API-KEY" and the value passed within this header is one of the encrypted API keys associated with your workspace.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"dialerListId": "demoList001",
"listName": "Real Time Leads - Jan 2024",
"fields": [
{
"value": "55555551212",
"dialerField": "number1",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "zip",
"type": "Zip"
},
{
"value": "John",
"dialerField": "first_name"
},
{
"value": "Doe",
"dialerField": "last_name"
},
{
"value": "123 Any Street",
"dialerField": "street"
},
{
"value": "New York",
"dialerField": "city"
},
{
"value": "NY",
"dialerField": "state"
},
{
"value": "you@email.com",
"dialerField": "email"
}
]
}
- campaignId - Unique Id of the Pure CallerID campaign the lead will be loaded against. This value can be found when editing a campaign.
- dialerListId - Must match the Identifier of the list within your dialer instance associated with the campaign.
- listName - The organizational list name in Pure CallerID that the leads will be loaded into. Note, that this is internal to Pure CallerID and is not related to the dialer list.
-
fields: An array of Field objects that define the lead data
- field.value - the value of the field. Typically this is the actual name, phone number, zip code, address, etc of the lead.
- field.dialerField - The dialer column that the field value is to be mapped to
- field.type: Possible values are "Phone", "Zip", "City", "State", "VeriskLeadId", "TrustedFormCert". A valid Phone is required on all leads. Zip is optional, but recommended and allows the Community CallerID module to map a geographically relevant phone number to the lead. In the event that Zip is not provided, City and State will be used instead. Verisk LeadID or Trusted Form Cert can be used to define a lead generation marketing token that can be verified and validated with the corresponding third party platform(s). If the data is not a Phone, Zip, City, State, or Token, the type value can be left out of the field element.
A synchronous response will be returned to inform the calling party of the outcome of the list load process.
{
"status": "Accepted",
"reason": null,
"message": "OK",
"lead": {
"orgId": 1,
"workspaceId": 14,
"campaignId": "66b4d9abf64c1d56322",
"listId": "681b2fb449ecf659d4a",
"phone": "+17206666402",
"zip": "12345",
"city": "New York",
"state": "NY",
"callerId": "+19706329562",
"status": "LOADED",
"validationResult": {
"phone_number": "+17206666402",
"is_valid": true,
"activity_score": 60,
"line_type": "NonFixedVOIP",
"carrier": "Twilio - SMS/MMS-SVR",
"is_prepaid": false,
"active": true,
"mobile": false
},
"doNotCallResult": {
"blocked": false,
"sanCoverage": true,
"reason": "OK"
},
"stateDoNotCallResult": {
"blocked": false,
"reason": "OK"
},
"knownLitigatorCheck": {
"ttl": "2025-05-07T10:19:16.840Z",
"Phone": "7206006402",
"Found": false,
"NumHits": 0,
"results": [],
"Elapsed": 0.04192,
"description": "",
"actions": ""
},
"loaded": "2025-05-07T10:21:28.562Z",
"fields": [
"7206666402",
"12866",
"John",
"Doe",
"123 Any Street",
"New York",
"NY",
"you@email.com"
],
"mapping": [
{
"columnIndex": 0,
"columnId": "phone"
},
{
"columnIndex": 1,
"columnId": "zip"
},
{
"columnIndex": 2,
"columnId": "first_name"
},
{
"columnIndex": 3,
"columnId": "last_name"
},
{
"columnIndex": 4,
"columnId": "street"
},
{
"columnIndex": 5,
"columnId": "city"
},
{
"columnIndex": 6,
"columnId": "state"
},
{
"columnIndex": 7,
"columnId": "email"
}
]
}
}
-
status - The overall result of the list‐load request. "Accepted" means the records were loaded successfully; other values (e.g. "Rejected") indicate failure.
-
reason - An optional machine‐readable error code or explanation when the request is not accepted; null when no error occurred.
-
message - A human‐friendly status message, usually "OK" on success or an error description on failure.
-
lead - The primary payload object for the individual list record, containing:
-
orgId - Internal identifier for the organization that owns the record.
-
workspaceId - Identifier for the workspace or account area where the campaign lives.
-
campaignId - Unique ID of the dialing campaign into which this lead is being loaded.
-
listId - Unique ID of the list the lead was loaded into.
-
phone - The lead’s phone number in E.164 format.
-
zip, city, state - Lead address fields (postal code, city name, state code); null if not provided.
-
callerId - The outbound caller ID to display when dialing this number.
-
status - The record’s internal load status (e.g. "LOADED").
-
validationResult (Databoost) - Data‑quality checks powered by the DataBoost product:
-
phone_number: echoed input number
-
is_valid: whether the number is structurally valid
-
activity_score: numeric score (0–100) of recent call/SMS activity
-
line_type: classification (e.g. "NonFixedVOIP")
-
carrier: network operator (e.g. "Twilio - SMS/MMS-SVR")
-
is_prepaid, active, mobile: booleans indicating prepaid status, current service status, and mobile handset type
-
-
doNotCallResult (Federal DNC list) - Checks against the national Do‑Not‑Call registry:
-
blocked: true if the number appears on the Federal DNC list or the SAN did not have coverage for the area code
-
sanCoverage: whether the SAN provided had coverage for the area code being checked
-
reason: "OK" on success or an error code
-
-
stateDoNotCallResult (State DNC lists) - Aggregated checks against all relevant state do‑not‑call registries:
-
blocked: true if any state registry flags the number
-
reason: "OK" or an error description
-
-
knownLitigatorCheck (Lawsuit screening) - Returns any civil‐litigation records tied to the phone number:
-
ttl: timestamp until which this check remains valid
-
Phone: stripped number used for the lookup
-
Found: true if any matches were located
-
NumHits: total number of matching case records
-
results: array of detail objects (empty if none found)
-
Elapsed: query duration in seconds
-
description, actions: optional notes or recommended next steps
-
-
loaded - ISO 8601 timestamp when the platform completed loading this lead.
-
fields - The raw, ordered array of column values imported from the source (e.g. CSV row).
-
mapping - An array of objects mapping each columnIndex to its corresponding columnId (field name) in the system.
-
Known Litigator Result Detail:
When a positive result is returned on a known litigator check, the following detailed case information will be provided
"knownLitigatorCheck": {
"ttl": "2025-05-07T10:02:47.998Z",
"Phone": "5555551212",
"Found": true,
"NumHits": 1,
"results": [
{
"Phone": "5555551212",
"Name": "JOHN DOE",
"ParticipantType": "Plaintiff",
"LastFour": 1375,
"Actions": [
"FDCPA",
"STATE_MO",
"TCPA"
],
"Court": "MISSOURI EASTERN DISTRICT COURT - ST. LOUIS",
"CaseTitle": "GATTISON V. CREDIT CONTROL, LLC",
"CaseNumber": "4:23-CV",
"FilingDate": "2023-02-10",
"Judges": [
"JANE DOE"
],
"Defendants": [
"SOME COMPANY, LLC"
],
"Plaintiffs": [
"JOHN DOE"
],
"Attorneys": [
"BOB LEGAL PANTS"
],
"Lawfirms": [
"SCARY LAW FIRM"
],
"CAFA": ""
}
],
"Elapsed": 0.04305,
"description": "Participant Name: NORVELL B GATTISON (Phone: 4059330987, Last Four Digits: 1375)\nParticipant Type: Plaintiff.\nActions: FDCPA, STATE_MO.\nCase Title: \"GATTISON V. CREDIT CONTROL, LLC\" (Case Number: 4:23-CV-00157-AGF) was filed on 2023-02-10 in MISSOURI EASTERN DISTRICT COURT - ST. LOUIS.\nJudges: AUDREY G FLEISSIG.\nDefendants: CREDIT CONTROL LLC.\nPlaintiffs: NORVELL B GATTISON.\nAttorneys: NATHAN CHARLES VOLHEIM.\nLaw Firms: SULAIMAN LAW GROUP LTD.\nCAFA Status: .",
"actions": "FDCPA, STATE_MO, TCPA"
}
-
knownLitigatorCheck (positive result) - Container for any matched litigation records tied to the phone number:
-
ttl - ISO 8601 timestamp until which this lookup result is considered fresh (e.g. "2025-05-07T10:02:47.998Z").
-
Phone - Digits‐only phone number used for the lookup (e.g. "5555551212").
-
Found - true indicates at least one matching case was located.
-
NumHits - Total number of case records returned (e.g. 1).
-
results - Array of detailed case objects; each entry includes:
-
Phone: phone number in the case record (e.g. "5555551212").
-
Name: litigant’s full name (e.g. "JOHN DOE").
-
ParticipantType: role in the case (e.g. "Plaintiff").
-
LastFour: last four digits of the phone number on record (e.g. 1375).
-
Actions: array of applicable statutes or regulations (e.g. ["FDCPA","STATE_MO","TCPA"]).
-
Court: full court name and jurisdiction (e.g. "MISSOURI EASTERN DISTRICT COURT - ST. LOUIS").
-
CaseTitle: official case caption (e.g. "GATTISON V. CREDIT CONTROL, LLC").
-
CaseNumber: docket or file number (e.g. "4:23-CV").
-
FilingDate: date the suit was filed (e.g. "2023-02-10").
-
Judges: array of presiding judge names (e.g. ["JANE DOE"]).
-
Defendants: array of defendant names or entities (e.g. ["SOME COMPANY, LLC"]).
-
Plaintiffs: array of plaintiff names (e.g. ["JOHN DOE"]).
-
Attorneys: array of attorney names listed (e.g. ["BOB LEGAL PANTS"]).
-
Lawfirms: array of law firm names (e.g. ["SCARY LAW FIRM"]).
-
CAFA: indicates any Class Action Fairness Act status (empty string if none).
-
-
Elapsed - Time in seconds that the lookup took (e.g. 0.04305).
-
description - Human‐readable narrative summarizing the matched case(s), including participant info, case title, filing date, court, judges, and counsel.
-
actions - Comma‐delimited list of action codes across all results (e.g. "FDCPA, STATE_MO, TCPA").
-
Dialer Specific Required Fields
The dialer field value supplied in the request body must match the dialer's expected values. Below are specific examples along with the required fields.
APN
Required: Phone
Dialer fields security_phrase and vendor_lead_code are reserved for this integration and cannot be mapped to supplied values.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"dialerListId": "demoList001",
"listName": "Real Time Leads - Jan 2024",
"fields": [
{
"value": "55555551212",
"dialerField": "phone_number",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "postal_code",
"type": "Zip"
},
{
"value": "New York",
"dialerField": "city",
"type": "City"
},
{
"value": "NY",
"dialerField": "state",
"type": "State"
}
]
}
Five9
Required: Phone and all Lead Key fields
Optional: leadKeyFields, crmUpdateMode, crmAddMode, listAddMode, and callNowMode are optional fields that may be included in the request body. If these fields are not included the request will be processed with the default values.
-
Lead Key Fields: default values are set on the Workspace
- If a value has not been set on the Workspace, a default of "number1" will be used to match leads based on phone number
- One or more alternative dialer fields may by supplied instead, and all lead keys specified will be required to have mapped field values included in the request
-
CRM Update Mode: UPDATE_FIRST
- Alternative options: UPDATE_ALL, UPDATE_SOLE_MATCHES, DONT_UPDATE
-
CRM Add Mode: ADD_NEW
- Alternative option: DONT_ADD
-
List Add Mode: ADD_FIRST
- Alternative options: ADD_ALL, ADD_IF_SOLE_CRM_MATCH
-
Call Now Mode: ANY
- Alternative options: NONE, NEW_CRM_ONLY, NEW_LIST_ONLY
Dialer fields configured for the Workspace as Reserved Caller ID Field and Reserved Unique ID Field are required for this integration and cannot be mapped to supplied values.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"dialerListId": "demoList001",
"listName": "Real Time Leads - Jan 2024",
"leadKeyFields": [
"number1",
"zip"
],
"fields": [
{
"value": "55555551212",
"dialerField": "number1",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "zip",
"type": "Zip"
},
{
"value": "New York",
"dialerField": "city",
"type": "City"
},
{
"value": "NY",
"dialerField": "state",
"type": "State"
}
]
}
Note: Please refer to Five9 documentation for more information on fieldEntry keys and modes referenced to ensure intended functionality. All records added via this API will be inserted into the Five9 dialer platform without duplicate checking.
NICE CXOne
Required: Phone
Dialer field values must match the Calling List Data Definitions. The following definitions are required for this integration:
- Phone Number: Phone Number
- Zip: Zip
- External ID: PCID_ID
- Caller ID: callerId
Dialer fields PCID_ID and callerId are required for this integration and cannot be mapped to supplied values.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"dialerListId": "demoList001",
"listName": "Real Time Leads - Jan 2024",
"fields": [
{
"value": "55555551212",
"dialerField": "Phone Number",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "Zip",
"type": "Zip"
},
{
"value": "New York",
"dialerField": "City",
"type": "City"
},
{
"value": "NY",
"dialerField": "State",
"type": "State"
}
]
}
RingCX
Required: Dedupe, externId, and phone
Dedupe is a list level setting and may be supplied one of the following values:
- RING_REMOVE_ALL_EXISTING
- RING_REMOVE_FROM_LIST
- RING_RETAIN_ALL
Dialer fields callerId and auxData1 are reserved for this integration and cannot be mapped to supplied values.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"dialerListId": "10000013",
"listName": "Real Time Leads - Jan 2024",
"dedupe": "RING_RETAIN_ALL",
"fields": [
{
"value": "55555551212",
"dialerField": "leadPhone",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "zip",
"type": "Zip"
},
{
"value": "New York",
"dialerField": "city",
"type": "City"
},
{
"value": "NY",
"dialerField": "state",
"type": "State"
},
{
"value": "55555551212",
"dialerField": "externId"
}
]
}
Amazon Pinpoint
Required: Phone, Zip
- dialerListId is not required for this integration
Dialer field values must match the Attributes configured for the Workspace. Dialer fields configured for the Workspace as Reserved Caller ID Field is required for this integration and cannot be mapped to supplied values.
{
"campaignId": "65ae6e4b6bf35b2344b109e5",
"listName": "Real Time Leads - Jan 2024",
"fields": [
{
"value": "55555551212",
"dialerField": "number1",
"type": "Phone"
},
{
"value": "12345",
"dialerField": "zip",
"type": "Zip"
},
{
"value": "New York",
"dialerField": "City",
"type": "City"
},
{
"value": "NY",
"dialerField": "State",
"type": "State"
}
]
}