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

# Rate limits

> The sending limits that keep your X and LinkedIn accounts safe

ReachHunt limits what each connected account does, so it stays within what X and LinkedIn allow. The limits apply per account, not per API key. Campaigns, the app and the API all count toward the same limits.

## What counts

The limits cover actions that reach people, such as direct messages, message requests, InMails and connection requests.

| Network | Limits |
| - | - |
| LinkedIn | A weekly limit for each of connection requests, message requests, InMails and direct messages, spread over the week as a daily allowance |
| X | A daily limit on direct messages |

## Warm-up

A newly connected account starts with lower limits that rise step by step. The account's `warmup` shows how far it is: `day` of `totalDays`, and `progressPercent`. The warm-up `speed` is `fast`, `medium` or `slow`.

## Pauses

ReachHunt pauses an account when X or LinkedIn pushes back, for example when LinkedIn rate-limits it or shows a security challenge, or when X blocks sending. The account's `throttledUntil` shows when sending starts again. It is `null` when the account isn't paused.

On LinkedIn, the connection request limit also follows your acceptance rate. When few people accept, the limit shrinks. `acceptance.limitPercent` shows how much of the limit is in use, from 0 to 100.

## Check an account's limits

[Get account limits](https://docs.reachhunt.ai/api-reference/accounts/get-account-limits.md) returns an account's limits, what it used and what is left:

```bash theme={"system"}
curl "https://api.reachhunt.ai/api/v1/accounts/ACCOUNT_ID/limits" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

```json theme={"system"}
{
  "status": true,
  "data": {
    "accountId": "4f1c9a2e-6b7d-4c3a-9e51-0a8b7c6d5e4f",
    "handle": "jane-doe",
    "platform": "linkedin",
    "effective": {
      "connection_request": {
        "weekly": 80,
        "dailyAllowance": 16,
        "usedToday": 4,
        "usedWeek": 31,
        "remainingToday": 12,
        "remainingWeek": 49
      }
    },
    "throttle": null,
    "acceptance": {
      "invited": 120,
      "accepted": 42,
      "ratePercent": 35,
      "limitPercent": 100
    }
  },
  "error": null
}
```

The response is shortened here. LinkedIn and X accounts return different fields.

To see every account at once, with what they can send together, use [Get limits summary](https://docs.reachhunt.ai/api-reference/accounts/get-limits-summary.md).

## When an account reaches a limit

The request returns HTTP `429` with `status: false`. The message names the limit and the account:

```json theme={"system"}
{
  "status": false,
  "data": null,
  "error": "Weekly limit of 100 connection requests reached on @jane-doe"
}
```

A daily allowance reads the same way, for example `Today's allowance of 16 connection requests reached on @jane-doe`.

Wait until the limit resets, or send from another account. Campaigns don't need any action: they wait and carry on when the account has room again.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.