Limits
Find the limits and constraints for Triggers configuration, webhooks, and execution.
Read time 2 minutesLast updated 3 hours ago
The following tables list the limits and constraints that apply to Triggers configuration, webhooks, the Scheduler, and the dead letter queue.
Triggers
The following limits apply to trigger configuration and event processing.Limit | Details |
|---|---|
| Triggers per event type | Maximum 32. |
| Event ordering | Processing of events in order is not guaranteed. |
| Delivery semantics | At-least-once. Events are guaranteed to be processed at least once but may occasionally be processed multiple times. |
| Return values | Triggers do not interact with the Cloud Code script or module return value. Execute game logic within the script or module. |
| Player context | Cloud Code scripts or modules that rely on client-side authentication do not work due to the lack of a player context. Refer to Set up Cloud Code: Context attributes. |
| Execution timeouts | Cloud Code script and module execution timeouts still apply. |
| Infinite loops | If your trigger interacts with the same service that emits the event, define a filter to avoid infinite loops. |
Scheduler
The following limits apply to Scheduler configuration and invocations.Limit | Details |
|---|---|
| Schedule type | Recurring schedules only support cron expressions. |
| Minimum frequency | Once per hour. |
| Maximum payload size | 1 KB. |
| Maximum active schedules | 900. |
| Monthly invocations | 25,000 invocations from set schedules per month (included in Cloud Code pricing). This covers approximately 30 hourly schedules. |
API rate limits
The following rate limits apply to the Triggers and Scheduler APIs.Limit | Details |
|---|---|
| Authentication | Only Service Account authentication is supported. |
| Triggers API | 600 requests per minute per Service Account. |
| Scheduler API | 600 requests per minute per Service Account. |
| Scheduler API List endpoint | 120 requests per minute per Service Account. |
Webhooks
The following limits apply to webhook delivery.Limit | Details |
|---|---|
| Supported HTTP methods | GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS. Default: POST when not specified. |
| Supported content types | |
| Request timeout | 30 seconds. |
| Application-level retries | Maximum 3 (exponential backoff, 1 s to 30 s). After exhaustion, events enter the dead letter queue. |
| Rate limit | 100 requests per second per project, 20 concurrent requests per project. |
| Webhook URL max length | 2,048 characters. |
| Maximum custom headers | 10 per webhook trigger. |
| Custom header name | At most 256 characters per name. Names must be ASCII. |
| Custom header value | At most 8,192 characters per value. Values must not be empty. |
| Payload template max length | 100,000 characters. |
| URL restrictions | Must be a publicly reachable HTTP or HTTPS endpoint. Localhost, private IP ranges, and link-local addresses are rejected at trigger creation time. |
Dead letter queue
The following limits apply to dead letter queue storage and retention.Limit | Details |
|---|---|
| Pending events capacity | 10,000 per project per environment. |
| Retention | 14 days. Entries are removed automatically after this period. |