> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dncscrub.com/llms.txt
> Use this file to discover all available pages before exploring further.

# tcpa_authority Tool

> Reassignment check using carrier deactivation data

The `tcpa_authority` tool provides phone number reassignment using carrier deactivation data.

## Parameters

<ParamField body="phoneNumbers" type="array" required>
  Array of objects containing phone numbers and consent dates.

  <Expandable title="phoneNumber object">
    <ParamField body="phoneNumber" type="string" required>
      10-digit North American phone number (e.g., `"5039367187"`).
    </ParamField>

    <ParamField body="consentDate" type="string" required>
      Date consent was given in `YYYYMMDD`, `MM/DD/YYYY`, or `YYYY-MM-DD` format.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="loginId" type="string">
  API key. Only required if not provided via the `x-dncscrub-api-key` HTTP
  header.
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  Whether the API call succeeded.
</ResponseField>

<ResponseField name="results" type="array">
  Array of results, one per phone number.

  <Expandable title="result object">
    <ResponseField name="phone" type="string">
      The phone number checked.
    </ResponseField>

    <ResponseField name="isReassigned" type="boolean | null">
      * `true` - Number has been reassigned (do not call)
      * `false` - Number has not been reassigned (safe to call)
      * `null` - Insufficient data to determine
    </ResponseField>

    <ResponseField name="isValid" type="boolean">
      Whether this is a valid, callable phone number.
    </ResponseField>

    <ResponseField name="isSafeToCall" type="boolean">
      `true` if valid and not reassigned.
    </ResponseField>

    <ResponseField name="lineType" type="string">
      `Wireless`, `VoIP`, `Landline`, `Paging`, or `Unknown`.
    </ResponseField>

    <ResponseField name="carrier" type="string">
      Original carrier the number was assigned to.
    </ResponseField>

    <ResponseField name="city" type="string">
      City based on original number assignment.
    </ResponseField>

    <ResponseField name="state" type="string">
      State/region code.
    </ResponseField>

    <ResponseField name="country" type="string">
      Two-letter ISO country code.
    </ResponseField>

    <ResponseField name="timezone" type="string">
      Timezone in IANA format (e.g., `America/Los_Angeles`).
    </ResponseField>

    <ResponseField name="utcOffset" type="number">
      UTC offset in minutes.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="errorCode" type="string">
  Machine-readable error code (when failed).
</ResponseField>

<ResponseField name="errorMessage" type="string">
  Human-readable error description (when failed).
</ResponseField>

## Examples

<Tabs>
  <Tab title="Request">
    ```json theme={null}
    {
      "phoneNumbers": [
        {
          "phoneNumber": "5039367187",
          "consentDate": "2023-06-15"
        }
      ]
    }
    ```
  </Tab>

  <Tab title="Response">
    ```json theme={null}
    {
      "success": true,
      "results": [
        {
          "phone": "5039367187",
          "isReassigned": false,
          "isValid": true,
          "isSafeToCall": true,
          "lineType": "Wireless",
          "carrier": "Verizon Wireless",
          "city": "Portland",
          "state": "OR",
          "country": "US",
          "timezone": "America/Los_Angeles",
          "utcOffset": -480
        }
      ]
    }
    ```
  </Tab>
</Tabs>

## Usage Notes

* Requires Reassigned Authority access on your DNCScrub account
