> ## 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.

# Get Spam Scores

> Retrieve current carrier spam scores for monitored phone numbers

Retrieve current carrier spam scores for specific phone numbers being monitored.

<Note>
  For checking scores of all monitored numbers at once, use the [Get All](/api-reference/trustcall/get-all) endpoint instead.
</Note>

## Request

### Headers

<ParamField header="loginId" type="string" required>
  Your API Key (LoginId from your DNCScrub account)
</ParamField>

### Query Parameters

<ParamField query="phoneList" type="string" required>
  Comma-separated list of 10-digit phone numbers (maximum 200 numbers)
</ParamField>

## Example Request

<CodeGroup>
  ```bash cURL theme={null}
  curl --location --request GET \
    'https://dataapi.dncscrub.com/v1.5/TrustCall/Get?phoneList=7867056421,3862847537' \
    --header 'loginId: YOUR_API_KEY'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://dataapi.dncscrub.com/v1.5/TrustCall/Get?phoneList=7867056421,3862847537',
    {
      method: 'GET',
      headers: { 'loginId': 'YOUR_API_KEY' }
    }
  );
  const data = await response.json();
  console.log(data);
  ```

  ```csharp C# theme={null}
  using (var client = new HttpClient())
  {
      client.DefaultRequestHeaders.Add("loginId", "YOUR_API_KEY");

      var url = "https://dataapi.dncscrub.com/v1.5/TrustCall/Get?phoneList=7867056421,3862847537";
      var response = await client.GetStringAsync(url);
      Console.WriteLine(response);
  }
  ```
</CodeGroup>

<ResponseExample>
  ```json Response theme={null}
  [
    {
      "Response": "Phone number current score",
      "Phone": "7867056421",
      "LegalEntityId": 123,
      "CurrScore": "High",
      "MaxScore": "High",
      "HistoricalScore": "5",
      "VerizonScore": "Flagged",
      "ATTScore": "Flagged",
      "TMobileScore": "Clean",
      "RoboKillerStatus": "Clean",
      "NomoroboStatus": "Flagged",
      "FTCComplaints": [
        {
          "FTCComplaintId": "79923e06b1c74d47e6ad5826b7554046",
          "Phone": "7867056421",
          "CreatedDate": "08/15/2022 22:22:39",
          "ViolationDate": "07/29/2022 12:04:00",
          "City": "Jackson",
          "State": "New Jersey",
          "AreaCode": "732",
          "Subject": "Dropped call or no message",
          "RecordedMessageOrRobocall": "Y"
        }
      ]
    },
    {
      "Response": "Phone number current score",
      "Phone": "3862847537",
      "LegalEntityId": 456,
      "CurrScore": "Clean",
      "MaxScore": "Clean",
      "HistoricalScore": "0",
      "VerizonScore": "Clean",
      "ATTScore": "Clean",
      "TMobileScore": "Clean",
      "RoboKillerStatus": "Clean",
      "NomoroboStatus": "Clean",
      "FTCComplaints": null
    }
  ]
  ```
</ResponseExample>

## Response Fields

<ResponseField name="Response" type="string">
  Status message
</ResponseField>

<ResponseField name="Phone" type="string">
  The phone number that was checked
</ResponseField>

<ResponseField name="LegalEntityId" type="integer">
  The legal entity identifier associated with the phone number
</ResponseField>

<ResponseField name="CurrScore" type="string">
  Current average carrier spam score:

  * `Clean` - No spam flags
  * `Medium` - Some carriers flagged
  * `High` - Multiple carriers flagged
  * `Processing` - Score check in progress
</ResponseField>

<ResponseField name="MaxScore" type="string">
  Maximum score recorded in the last 15 days
</ResponseField>

<ResponseField name="HistoricalScore" type="string">
  Historical score from 0-5:

  * `0-1` - No significant issues
  * `5` - 50%+ high spam history
</ResponseField>

<ResponseField name="VerizonScore" type="string">
  Verizon carrier status: `Clean`, `Flagged`, or `Processing`
</ResponseField>

<ResponseField name="ATTScore" type="string">
  AT\&T carrier status: `Clean`, `Flagged`, or `Processing`
</ResponseField>

<ResponseField name="TMobileScore" type="string">
  T-Mobile carrier status: `Clean`, `Flagged`, or `Processing`
</ResponseField>

<ResponseField name="RoboKillerStatus" type="string">
  RoboKiller app status: `Clean` or `Flagged`
</ResponseField>

<ResponseField name="NomoroboStatus" type="string">
  Nomorobo app status: `Clean` or `Flagged`
</ResponseField>

<ResponseField name="FTCComplaints" type="array | null">
  Array of FTC complaints, or `null` if none. See FTC Complaint Fields below.
</ResponseField>

## FTC Complaint Fields

<ResponseField name="FTCComplaintId" type="string">
  Unique complaint identifier
</ResponseField>

<ResponseField name="Phone" type="string">
  Phone number the complaint was filed against
</ResponseField>

<ResponseField name="CreatedDate" type="string">
  When the complaint was filed
</ResponseField>

<ResponseField name="ViolationDate" type="string">
  When the alleged violation occurred
</ResponseField>

<ResponseField name="City" type="string">
  Complainant's city
</ResponseField>

<ResponseField name="State" type="string">
  Complainant's state
</ResponseField>

<ResponseField name="AreaCode" type="string">
  Complainant's area code
</ResponseField>

<ResponseField name="Subject" type="string">
  Complaint category/subject
</ResponseField>

<ResponseField name="RecordedMessageOrRobocall" type="string">
  `Y` if this was a robocall complaint
</ResponseField>

## Error Responses

| Status           | Description                                       |
| ---------------- | ------------------------------------------------- |
| 400 Bad Request  | Invalid phone number format or missing parameters |
| 401 Unauthorized | Invalid or missing API key                        |

## Limits

* Maximum **200 phone numbers** per GET request
* For larger batches, use POST to `/v1.5/TrustCall/Get` with a JSON array body
