specification: API Commons Rate Limits specificationVersion: '0.1' schema: https://raw.githubusercontent.com/api-evangelist/interface-research/main/schema/api-commons.yml#/$defs/RateLimits provider: Ably providerId: ably created: '2026-05-08' # Provenance stamped 2026-08-11: this artifact was written by the API Evangelist # bulk sweep dated 2026-05-08, not harvested from the provider. See roadmap#35. method: generated modified: '2026-05-08' reconciled: true tags: - Realtime - Rate Limiting description: >- Ably gates per-account concurrent connections, channels, and per-second message rates by plan tier. Free is 200 connections / 500 msg/sec; Standard 10K / 2.5K; Pro 50K / 10K; Enterprise unlimited. The Control API enforces a separate per-token limit on management calls (typically 60 rpm). HTTP 429 is returned when caps are exceeded. sources: - https://ably.com/pricing - https://ably.com/docs/api/rest-api responseCodes: throttled: 429 limits: - name: Free - connections scope: account metric: concurrent_connections limit: 200 - name: Free - message rate scope: account metric: messages_per_second limit: 500 - name: Standard - connections scope: account metric: concurrent_connections limit: 10000 - name: Standard - message rate scope: account metric: messages_per_second limit: 2500 - name: Pro - connections scope: account metric: concurrent_connections limit: 50000 - name: Pro - message rate scope: account metric: messages_per_second limit: 10000 - name: Enterprise scope: account metric: concurrent_connections limit: -1 notes: Unlimited per contract. - name: Control API scope: token metric: requests_per_minute limit: 60 policies: - name: Backoff Strategy description: Honor 429 Retry-After and apply exponential backoff with jitter. - name: Burst Control description: Use channel namespacing and shard fan-out across many channels to stay under per-channel caps. maintainers: - FN: Kin Lane email: kin@apievangelist.com