Check if a phone number has been reassigned since a given consent date using the TCPA Authority API. This API uses authoritative data provided directly from carriers.
The date input should be the consent date the customer gave the calling party consent to be called. If IsReassigned returns true, do not call the number.
Request
Your API Key (LoginId from your DNCScrub account)
Query Parameters
10-digit North American phone number (without leading 1 or +)
Consent date to check reassignment against. Supported formats: MM/DD/YYYY, YYYY-MM-DD, MM/DD/YY, or YYYYMMDD
Set to true to use sandbox mode for testing (returns random results)
Example Request
curl --location --request GET \
'https://dataapi.dncscrub.com/v1.5/Data/TCPAAuthority?phoneNumber=7075276405&date=20210209' \
--header 'loginId: YOUR_API_KEY'
{
"PhoneNumber": "7075276405",
"IsReassigned": false,
"IsValid": true,
"LineType": "Landline",
"Carrier": "AT&T California",
"Locale": "Santa Rosa",
"Region": "CA",
"Country": "US",
"TZ": "America/Los_Angeles",
"UTCOffset": "-420"
}
Response Fields
The phone number that was checked
Indicates if the phone was reassigned after the consent date:
true - Reassigned after the date. Do not call.
false - Not reassigned. Safe to call.
null - Insufficient information to determine reassignment status.
true if the phone number is valid and callable, false if not valid
Type of phone line: Wireless, VoIP, Landline, Paging, or Unknown
Original carrier the phone number was assigned to
City based on original phone number assignment
State/region based on original phone number assignment
Two-digit ISO country code
Timezone in ISO IANA format (e.g., America/Los_Angeles)
UTC offset in minutes. Use this to calculate the local time at the phone number.
Error Responses
Invalid phone number format, invalid date format, or missing required parameters
Invalid or missing API key
Account not authorized for this API or insufficient credits
Rate Limits
- 100 requests per minute
- Up to 1,000 numbers per request (when using POST)
- Average response time: ~569ms
Processing the Response
const result = await response.json();
if (result.IsReassigned === true) {
console.log('DO NOT CALL - Number has been reassigned');
} else if (result.IsReassigned === false) {
console.log('Safe to call - Number has not been reassigned');
console.log(`Line type: ${result.LineType}`);
console.log(`Carrier: ${result.Carrier}`);
} else {
console.log('Insufficient data to determine reassignment status');
}