Quota usage for one account
How much of each rate-limited action this account has spent in the current window. `used` counts every call made through the ConnectSafely API — your own API/MCP calls as well as anything ConnectSafely runs for you — so this is the way to spot an agent burning a quota you did not expect. A fast, database-only read: it makes no LinkedIn call and consumes none of the quotas it reports, so it is safe to poll. `limit` is the ceiling ConnectSafely enforces (calls are rejected with 429 at this value); `linkedinLimit` is LinkedIn's own higher ceiling, for context. `window` is `daily` (resets midnight UTC) or `weekly` (resets Monday midnight UTC).
/account/{accountId}/quotaCode Examples
curl -X GET 'https://api.connectsafely.ai/linkedin/account/<accountId>/quota' \ -H 'Authorization: Bearer <your_api_key>'How much of each rate-limited action this account has spent in the current window. used counts every call made through the ConnectSafely API — your own API/MCP calls as well as anything ConnectSafely runs for you — so this is the way to spot an agent burning a quota you did not expect.
A fast, database-only read: it makes no LinkedIn call and consumes none of the quotas it reports, so it is safe to poll.
limit is the ceiling ConnectSafely enforces (calls are rejected with 429 at this value); linkedinLimit is LinkedIn's own higher ceiling, for context. window is daily (resets midnight UTC) or weekly (resets Monday midnight UTC).
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
accountId | path | Yes | string | LinkedIn account id (24-character Mongo ObjectId). Must be an account you own or one shared with you through a workspace. |
Request Body
No request body.
Responses
| Status | Description |
|---|---|
| 200 | Current rate-limit usage for the account |
| 401 | Unauthorized - Invalid or missing API key |
| 403 | No active API seat for this account. The path accountId is seat-checked by the shared auth middleware before the handler runs, exactly as on every other account-scoped endpoint. |
| 404 | Account not found, deleted, or not visible to the caller |
| 500 | Internal server error |
200 Response Parameters
| Name | Type | Description |
|---|---|---|
accountId | string | |
quotas | array |
200 Example
{
"accountId": "60d21b4667d0d8992e610c85",
"quotas": [
{
"feature": "PROFILE_VIEW",
"window": "daily",
"used": 118,
"limit": 120,
"linkedinLimit": 150,
"remaining": 2,
"limitReached": false,
"limitReachedAt": null,
"resetAt": "2026-08-28T00:00:00.000Z"
},
{
"feature": "CONNECT",
"window": "weekly",
"used": 12,
"limit": 90,
"linkedinLimit": 100,
"remaining": 78,
"limitReached": false,
"limitReachedAt": null,
"resetAt": "2026-09-01T00:00:00.000Z"
}
]
}401 Response Parameters
| Name | Type | Description |
|---|---|---|
error | string |
401 Example
{
"error": "Unauthorized"
}403 Response Parameters
| Name | Type | Description |
|---|---|---|
error | string |
403 Example
{
"error": "No API seat allocated for this LinkedIn account.",
"code": "NO_API_SEAT_FOR_ACCOUNT"
}404 Response Parameters
| Name | Type | Description |
|---|---|---|
error | string |
404 Example
{
"error": "Account not found"
}500 Response Parameters
| Name | Type | Description |
|---|---|---|
error | string |
500 Example
{
"error": "Internal Server Error"
}