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

# Check Remaining Credits

> Check how many credits remain in your account.

Credits can be checked at any time using a dedicated endpoint, or by inspecting the `X-Credits-Left` header included in every API response.

**Endpoint:** `GET https://www.signalhire.com/api/v1/credits`

## Standard Credits

Returns the remaining balance of standard credits used by the Person API (with contacts).

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET \
  -H 'apikey: your_secret_api_key' \
  https://www.signalhire.com/api/v1/credits
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
  "https://www.signalhire.com/api/v1/credits",
  headers={"apikey": "your_secret_api_key"}
  )
  ```

  ```javascript Node.js theme={null}
  const axios = require('axios');

  const response = await axios.get(
  'https://www.signalhire.com/api/v1/credits',
  {
      headers: { apikey: 'your_secret_api_key' }
  }
  );
  ```

  ```java Java theme={null}
  import java.net.http.*;
  import java.net.URI;

  HttpClient client = HttpClient.newHttpClient();

  HttpRequest request = HttpRequest.newBuilder()
  .uri(URI.create("https://www.signalhire.com/api/v1/credits"))
  .header("apikey", "your_secret_api_key")
  .GET()
  .build();

  HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
  ```

  ```ruby Ruby theme={null}
  require 'net/http'

  uri = URI('https://www.signalhire.com/api/v1/credits')
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true

  request = Net::HTTP::Get.new(uri)
  request['apikey'] = 'your_secret_api_key'

  response = http.request(request)
  ```
</CodeGroup>

**Response (HTTP 200):**

```http theme={null}
HTTP/2 200
Content-Type: application/json
X-Credits-Left: 27

{
"credits": 27
}
```

## Without Contacts Credits

To check the remaining balance of without-contacts credits, add the `withoutContacts=true` query parameter. See [Profiles Without Contacts](/person-api/without-contacts) for details on this credit type.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET \
  -H 'apikey: your_secret_api_key' \
  'https://www.signalhire.com/api/v1/credits?withoutContacts=true'
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
  "https://www.signalhire.com/api/v1/credits",
  headers={"apikey": "your_secret_api_key"},
  params={"withoutContacts": "true"}
  )
  ```

  ```javascript Node.js theme={null}
  const axios = require('axios');

  const response = await axios.get(
  'https://www.signalhire.com/api/v1/credits',
  {
      headers: { apikey: 'your_secret_api_key' },
      params: { withoutContacts: true }
  }
  );
  ```

  ```java Java theme={null}
  import java.net.http.*;
  import java.net.URI;

  HttpClient client = HttpClient.newHttpClient();

  HttpRequest request = HttpRequest.newBuilder()
  .uri(URI.create("https://www.signalhire.com/api/v1/credits?withoutContacts=true"))
  .header("apikey", "your_secret_api_key")
  .GET()
  .build();

  HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
  ```

  ```ruby Ruby theme={null}
  require 'net/http'

  uri = URI('https://www.signalhire.com/api/v1/credits?withoutContacts=true')
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true

  request = Net::HTTP::Get.new(uri)
  request['apikey'] = 'your_secret_api_key'

  response = http.request(request)
  ```
</CodeGroup>

## X-Credits-Left Header

Every API response includes the `X-Credits-Left` header with the current credit balance. The value automatically reflects the credit type matching the request — without-contacts credits when `withoutContacts: true` is set, standard credits otherwise.
