> For the complete documentation index, see [llms.txt](https://legacy-docs.usesmileid.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://legacy-docs.usesmileid.com/integration-options/rest-api/rate-limits.md).

# Rate Limits

SmileID will track how many requests come in from a customer for a specific ID Number (within an ID Type for a particular Country). Excessive requests for the same ID Number over a period of time will cause us to block requests for this Number until the rate limit resets. Typically we see excessive requests for the same ID Number due to fraud or mis-configured integrations so we deny those excessive requests on behalf of our customers.

Our current rate limits per unique ID number are: a total of 30 requests, where each request comes within 3 days of each other. 3 days after a request comes in, the limit for that unique ID number will be reset. SmileID reserves the right to alter these limits as required at any time.

Blocked requests will receive a `429` response with the `2222` error code included in the body and `This ID number has been blocked due to multiple submissions. Please use the designated endpoint to reactivate it.` as the error message.

If you find genuine requests are being blocked then you can make a request to the `id_number_rate_limit_reset` endpoint to clear the rate limit and immediately allow requests for that ID Number to be processed normally.

## ID Number Rate Limit Reset

<mark style="color:green;">`POST`</mark> `https://testapi.smileidentity.com/v1/id_number_rate_limit_reset`

#### Request Body

| Name        | Type   | Description                                                                                                              |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------ |
| timestamp   | number | The timestamp used to create the signature                                                                               |
| signature   | string | The signature for the request                                                                                            |
| country     | string | <p>The</p><p><code>country</code></p><p>code for the ID Type/Number that you are wanting to reset the rate limit for</p> |
| id\_type    | string | <p>The</p><p><code>id\_type</code></p><p>for the ID Number that you are wanting to reset the rate limit for</p>          |
| id\_number  | string | <p>The</p><p><code>id\_number</code></p><p>that you are wanting to reset the rate limit for</p>                          |
| partner\_id | string | <p>Your 3 character</p><p><code>partner\_id</code></p><p>which can be found in the portal</p>                            |

{% tabs %}
{% tab title="200 " %}

```json
{
  "message": "Rate limit reset successful",
  "success": "true"
}
```

{% endtab %}
{% endtabs %}

#### Example request

```json
{
    "signature": "<Put calculated signature here>",
    "timestamp": "<Put timestamp here>",
    "partner_id": "<Put your partner_id here>",
    "country": "<Put the Country code here>",
    "id_type": "<ID type of the request>",
    "id_number": "<ID Number of the request>"
}
```

#### Response body fields

| Name    | Description                                                               |
| ------- | ------------------------------------------------------------------------- |
| message | Will return as `Rate limit reset successful` if the rate limit was reset. |
| success | Will return as `true` if the rate limit was reset.                        |

Possible Error Codes:

| Code | Description  |
| ---- | ------------ |
| 2401 | System error |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://legacy-docs.usesmileid.com/integration-options/rest-api/rate-limits.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
