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

# Plan & API Rate Limits

> How many API requests your workspace may make per minute, by plan tier and by endpoint, and how many async runs execute at once.

These are the limits on **your integration's traffic** — how many requests your API key may make per minute, and how many async runs Edges processes at once. They are counted per workspace and they are separate from the per-identity [action limits](/v1/linkedin/limits) that protect LinkedIn accounts.

<Note>
  Not sure which limit stopped you? [How Limits Work](/v1/limits/how-limits-work) maps all five systems and tells you which ones you have to plan around.
</Note>

## Plan Tiers

Your rate limits are determined by your plan tier, which is based on your monthly credit allocation. You can see your current tier in your [Workspace Settings](https://app.edges.run/settings/plans/credits).

| Plan Tier | Monthly Credits | Description |
| - | - | - |
| Trial | 1,000 | Free trial with basic limits |
| Bronze | 2,500 - 10,000 | Starter plans for small teams |
| Silver | 10,001 - 100,000 | Growth plans for scaling teams |
| Gold | 100,001 - 500,000 | Business plans for expanding operations |
| Platinum | 500,001 - 2,000,000 | Scale plans for high-volume operations |
| Diamond | 2,000,001 - 20,000,000 | Advanced plans for large organizations |
| Titanium | 20,000,001 - 50,000,000 | Enterprise plans for maximum scale |

## API Rate Limits

### Real-time Actions

The most important rate limits apply to real-time action execution via `/v1/actions/{action-name}/run/live`.
These limits determine how many requests you can make per minute:

| Plan Tier | Max Requests/Second | Max Requests/Minute |
| - | - | - |
| Trial | 1 | 60 |
| Bronze | 2 | 120 |
| Silver / Gold | 10 | 600 |
| Platinum / Diamond | 20 | 1,200 |
| Titanium | 40 | 1,200 |

<Note>For async actions, different concurrent execution limits apply (see [Concurrent Execution](#concurrent-execution) below).</Note>

#### What the rate alone allows

The figures below are **throughput ceilings** — what the per-minute rate permits if you sustained it around the clock and credits were not the binding constraint. In practice your [credit balance](/v1/api/credit-costs) is what bounds real volume; these numbers tell you only that the rate limit will not be what stops you.

| Plan Tier | Estimated Daily Capacity | Example Use Case |
| - | - | - |
| Trial | \~86,400 requests/day | Small-scale testing |
| Bronze | \~172,800 requests/day | Individual prospecting |
| Silver / Gold | \~864,000 requests/day | Team sales operations |
| Platinum / Diamond | \~1,728,000 requests/day | Large-scale enrichment |
| Titanium | \~3,456,000 requests/day | Enterprise automation |

**Example**: a Silver or Gold plan permits 600 requests per minute, so roughly 36,000 per hour. Whether you can use that depends on your credits and, for LinkedIn work, on the per-identity action limits.

### Identity Management

Rate limits for identity-related operations via `/v1/identities` (create, update, delete, retrieve):

| Plan Tier | Max Operations/Second | Max Operations/Minute |
| - | - | - |
| Trial | 2 | 100 |
| Bronze | 2 | 100 |
| Silver / Gold | 4 | 250 |
| Platinum / Diamond | 5 | 300 |
| Titanium | 8 | 500 |

#### What the rate alone allows

For identity operations (create, update, delete), sustained around the clock:

| Plan Tier | Daily Capacity | Use Case |
| - | - | - |
| Trial | \~144,000 operations/day | Basic account management |
| Bronze | \~144,000 operations/day | Small team setup |
| Silver / Gold | \~360,000 operations/day | Growing organization |
| Platinum / Diamond | \~432,000 operations/day | Large team management |
| Titanium | \~720,000 operations/day | Enterprise identity management |

### Workspace Info

Rate limits for workspace data retrieval via `/v1/workspaces`:

| Plan Tier | Max Requests/Second | Max Requests/Minute |
| - | - | - |
| Trial | \< 1 | 5 |
| Bronze | \< 1 | 10 |
| Silver / Gold | 1 | 50 |
| Platinum / Diamond | 1 | 75 |
| Titanium | 2 | 100 |

### Run's Routes Limits

<Info>
  All `/runs/*` routes share a single limit — `status`, `outputs`, `inputs` and the rest draw on the same per-minute budget, so polling several of them counts against one allowance.
</Info>

| Plan Tier | Max Requests/Second | Max Requests/Minute | Rationale |
| - | - | - | - |
| Trial | \< 1 | 30 | Supports 2 concurrent runs @ 10s polling interval |
| Bronze | 1 | 60 | Supports 2 concurrent runs with more aggressive polling |
| Silver / Gold | 2.5 | 150 | Supports 5 concurrent runs @ 10s polling interval |
| Platinum / Diamond | 5 | 300 | Supports 10 concurrent runs @ 10s polling interval |
| Titanium | 10 | 600 | Supports 15 concurrent runs @ 10s polling interval |

Rate limits for polling run results via `/v1/runs/{run_uid}/outputs`. These limits support realistic polling patterns if you prefer polling over callbacks.

<Tip>These limits are aligned with concurrent execution limits. For example, with a Silver/Gold plan (5 concurrent runs), you can poll all active runs every 10 seconds with comfortable headroom.</Tip>

#### Capacity Examples

| Plan Tier | Polling Capacity | Use Case |
| - | - | - |
| Trial | Poll 2 runs every 10s | Basic polling during development |
| Bronze | Poll 2 runs every 10s with headroom | Small-scale polling |
| Silver / Gold | Poll 5 runs every 10s, or 1 run every 4s | Team polling operations |
| Platinum / Diamond | Poll 10 runs every 10s | Multi-workspace polling |
| Titanium | Poll 15 runs every 10s | Enterprise-scale polling |

<Note>
  **Implementation Details:**

  * Rate limit type: Per-workspace, per-minute
  * Error response: Standard 429 with `X-RateLimit-Type: /v1/runs/outputs`
  * Headers include `X-RateLimit-Remaining` for visibility
</Note>

## Concurrent Execution

For async runs via `/v1/actions/{action-name}/run/async`, we limit the number of concurrent runs and batch processing:

| Plan Tier | Max Concurrent Runs | Max Batches per Run |
| - | - | - |
| Trial / Bronze | 2 | 2 |
| Silver / Gold | 5 | 3 |
| Platinum / Diamond | 10 | 5 |
| Titanium | 15 | 8 |

**What this limits:** Concurrent Runs cap how many runs Edges *processes at once*, not how many you can submit. You can submit as many runs as you need; extra runs are queued and start automatically when a slot is freed up.

**Batching:** A batch holds up to **15 inputs** for most actions. Batches within a run execute in parallel (up to "Max Batches per Run"), and multiple runs execute concurrently up to your plan's "Max Concurrent Runs".

<Note>
  Sensitive actions use much smaller batches on purpose. Connection requests, messages, InMail, profile visits and the searches are batched **one or two inputs at a time, with a delay between batches**, whatever your plan allows — pacing them protects the account, and no plan tier removes that.
</Note>

For example: one run of 35 inputs → 3 batches (2×15 + 1x5) in parallel for that run.

**Example — \~1,800 inputs:**

| Plan Tier | Approximate duration |
| - | - |
| Silver / Gold | \~10–15 min |
| Platinum / Diamond | \~5–8 min |
| Titanium | \~4–5 min |

#### What concurrency alone allows

Throughput ceilings for async runs, before credits and per-identity action limits are taken into account:

| Plan Tier | Estimated Daily Capacity | Use Case |
| - | - | - |
| Trial / Bronze | \~50,000-100,000 records/day | Basic automation |
| Silver / Gold | \~200,000-500,000 records/day | Team automations |
| Platinum / Diamond | \~500,000-1,000,000 records/day | Large-scale automation |
| Titanium | 1,000,000+ records/day | Enterprise automations |

**Example**: a Platinum or Diamond plan runs 10 runs at once with 5 batches each, which is what determines how quickly a large job drains — not whether it is allowed to run.

## Engagement Mode Rate Limits

For identities configured in **engagement mode**, a separate rate-limiting system applies. These limits are based on the number of **active** engagement identities in your workspace, not your credit-based plan tier.

<Note>Engagement mode identities are designed for LinkedIn automation workflows that don't consume credits. Because of this, dedicated rate limits ensure fair usage across all users.</Note>

More about what's an active engagement identity [here](/v1/identities/engagement#when-is-an-engagement-identity-active-or-inactive)

### Rate Limits by Identity Count

| Identities | `/v1/actions` (calls/min) | `/v1/actions` (calls/sec) | `/v1/identities` | `/v1/workspaces` | Max Concurrent Runs | Daily API Limit | Batches per Run |
| - | - | - | - | - | - | - | - |
| **1–50** | 25 | 0.4 | 100 | 10 | 2 | 720,000 | 2 |
| **51–200** | 50 | 0.8 | 300 | 30 | 6 | 3,600,000 | 6 |
| **201–1,000** | 250 | 4.2 | 600 | 60 | 12 | 14,400,000 | 12 |
| **1,001–5,000** | 1,250 | 20.8 | 1,000 | 100 | 20 | 72,000,000 | 20 |
| **5,001–10,000** | 2,400 (cap) | 40 | 1,000 | 100 | 20 | 72,000,000 | 20 |

<Tip>As your engagement identity count grows, your rate limits automatically scale up to support higher volumes.</Tip>

### Understanding Engagement Limits

* **`/v1/actions`**: Controls how many action requests you can make per minute/second
* **`/v1/identities`**: Maximum operations per minute for identity management
* **`/v1/workspaces`**: Maximum workspace info requests per minute
* **Max Concurrent Runs**: Number of async runs that can execute in parallel
* **Daily API Limit**: Total API calls allowed per day across all endpoints
* **Batches per Run**: Maximum batches allowed per async run

<Info>If you have both engagement identities and a credit-based plan, the higher limit between the two systems applies for each endpoint.</Info>

## Best Practices

### Optimizing for Rate Limits

1. **Use Async Mode for High Volume**: When processing large datasets, use async mode to benefit from concurrent execution limits rather than hitting real-time rate limits.

2. **Batch Your Requests**: Group related operations together to minimize API calls.

3. **Implement Exponential Backoff**: When you hit rate limits, wait before retrying with increasing delays.

4. **Monitor Your Usage**: Track your API consumption to stay within limits.

### Handling Rate Limit Errors

When you exceed rate limits, you'll receive a `429 Too Many Requests` response.

```json theme={null}
{
  "error": {
    "code": 429,
    "status": "Too Many Requests",
    "details": {
      "Retry-After": "60",
      "X-RateLimit-Limit": "2",
      "X-RateLimit-Reset": "1754402101",
      "X-RateLimit-Type": "/v1/actions"
    },
    "message": "Rate limit exceeded (/v1/actions)"
  }
}
```

<Note>
  **`Retry-After` is expressed in seconds.** In the example above, `"60"` means wait 60 seconds before retrying. `X-RateLimit-Reset` is a Unix timestamp in seconds.
</Note>

### Limits that come from LinkedIn

A `429` can also originate from LinkedIn rather than from Edges. Those carry their own labels, and the wait is different for each.

<Card title="Which limit was hit" icon="circle-exclamation" href="/v1/error-reference#which-limit-was-hit" horizontal>
  Every label, its origin, and the right retry for each.
</Card>

## Plan-Specific Considerations

### Trial and Bronze

* Focus on development and testing
* Use async mode for production workloads
* Monitor usage closely to avoid interruptions

### Silver, Gold, Platinum, and Diamond

* Suitable for production workloads
* Balance between real-time and async execution
* Consider upgrading for higher volume needs

### Titanium

* Designed for enterprise-scale operations
* Maximum concurrent execution capabilities
* Contact support for custom limits if needed

## Monitoring

Every response carries the rate limit headers described above — `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` and `X-RateLimit-Type`. Reading `X-RateLimit-Remaining` as you go is cheaper than discovering the ceiling with a `429`.

If you consistently hit these limits, the fix is usually async mode rather than a bigger plan — it queues work for you instead of asking you to pace it. If it isn't, talk to us about your volume.

## Related

<CardGroup cols={3}>
  <Card title="How Limits Work" icon="layer-group" href="/v1/limits/how-limits-work">
    The five systems, and which ones apply to you.
  </Card>

  <Card title="Smart Limits" icon="shield" href="/v1/linkedin/limits">
    Per-identity quotas on LinkedIn actions.
  </Card>

  <Card title="Credit costs" icon="coins" href="/v1/api/credit-costs">
    What a run costs, as opposed to what it is allowed to do.
  </Card>
</CardGroup>


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