curl -X POST https://api.tracklysms.com/api/v1/voice/recipient-screenings \
-H "X-Api-Key: trk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"to": "+12025550123",
"recipientProvenance": {
"kind": "consent",
"date": "2025-01-01"
}
}'
{
"screening": {
"id": "67a7f71e12f9a6772257c10c1fd0b595413a7e589199485a05a4dc77162a342d",
"state": "resolved",
"reassignment": "no"
}
}
Voice Calls (v1)
Screen a Calling Recipient
Optionally check a US recipient against current reassignment data.
POST
/
v1
/
voice
/
recipient-screenings
curl -X POST https://api.tracklysms.com/api/v1/voice/recipient-screenings \
-H "X-Api-Key: trk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"to": "+12025550123",
"recipientProvenance": {
"kind": "consent",
"date": "2025-01-01"
}
}'
{
"screening": {
"id": "67a7f71e12f9a6772257c10c1fd0b595413a7e589199485a05a4dc77162a342d",
"state": "resolved",
"reassignment": "no"
}
}
Use this optional, date-qualified check when your business wants to screen a US recipient for reassignment. Normal Voice calling does not require a screening request, a date, or a source-record reference sent to Trackly.
For a screening request, submit a recipient your calling business is authorized to screen and attest to the actual qualifying consent or confirmed-contact date.
recipientProvenance.kind and recipientProvenance.date are required; evidenceReference is optional. Keep the underlying source record in your own system. Trackly validates the input’s format and date range but cannot verify the underlying consent or contact from this request. Trackly uses the calling business associated with your API-key account and requires its separate screening authorization. This operation does not create or admit a telephone call.
This screening is in a staged rollout. The endpoint returns 503 recipient_screening_not_enabled while the service is disabled; your calling business also needs authorization to use it. Account-specific automatic screening admission is off by default; it applies only if Trackly explicitly enrolls your business.
A yes result restricts outbound calling to that recipient for your calling business, even if a later call omits recipientProvenance. Keep the recipient suppressed in your own system; a later no or no_data result does not remove the Trackly restriction. Contact support with the screening ID and your source record if you believe the restriction needs review. A reviewed correction can release that restriction, but the exact positive result never qualifies a call, including after screening authorization is renewed. A no_data result does not establish a reassigned-number safe harbor. No result establishes consent or overrides other calling restrictions.
Requires the Voice Calls entitlement and voice_calls.write scope. The account’s normal API-key rate limit applies. Repeating the same request reuses a resolved result for the current data edition; a new edition, date, or business authorization requires another screening decision.
Body Parameters
string
required
US destination in E.164 format, such as
+12025550123.object
required
{ "kind": "consent", "date": "YYYY-MM-DD" }. kind may be consent or confirmed_contact. Use the actual consent or verified contact date. Do not substitute an import, list-creation, or dial date, default to today’s date because the true date is missing, or treat an answer by an unidentified person as confirmed contact. The date must already have begun in UTC for the screening service to query it. You may include an opaque evidenceReference from your own records; when supplied, it must be stable, printable, and at most 200 characters, without a phone number, email address, or message content.Response
200 returns screening.id, screening.state: "resolved", and screening.reassignment: yes, no, or no_data. Retain the ID with your source record. 202 with Retry-After: 2 means another request is screening the same context; retry the same body. Neither response is call admission. If the data edition is unchanged, repeating a resolved screening request reuses the existing recipient result without another recipient query. For businesses explicitly enrolled in automatic RND admission, Trackly confirms the current data edition for at most 60 seconds. After an idle minute, a call may return 503 recipient_screening_unavailable; repeat this screening request before retrying that call.
409 recipient_screening_authorization_required means the calling business has not been approved for this screening. 422 means the recipient, qualifying date, or supplied reference needs correction. A temporary screening or data-edition failure returns 503 recipient_screening_unavailable; honor Retry-After when present. A quota failure returns 503 recipient_screening_quota_unavailable without exposing provider details. 503 recipient_screening_busy with Retry-After: 2 means the bounded screening capacity is occupied; retry the same request. If your workflow uses this result before dialing, screen ahead of the salesperson’s Call click because a cold lookup may take longer than call admission.
curl -X POST https://api.tracklysms.com/api/v1/voice/recipient-screenings \
-H "X-Api-Key: trk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"to": "+12025550123",
"recipientProvenance": {
"kind": "consent",
"date": "2025-01-01"
}
}'
{
"screening": {
"id": "67a7f71e12f9a6772257c10c1fd0b595413a7e589199485a05a4dc77162a342d",
"state": "resolved",
"reassignment": "no"
}
}