Rate limits and constraints
If you need higher limits for bulk imports or high-throughput pipelines, contact us at support@revbridge.ai.
HTTP status codes
Error response formats
Validation errors (400 / 202 with rejected users)
When users fail validation, the response includes anerrors array with the index of the failed user and a message describing the issue.
userIndex corresponds to the zero-based position in the users array of your request.
Full-rejection errors (400)
When all users in the request fail validation, the response uses the error format:Authentication errors (401)
Service errors (503)
Troubleshooting
400 — 'invalid JSON body'
400 — 'invalid JSON body'
Possible causes:
- Malformed JSON (missing commas, unclosed brackets, etc.)
- Body is empty or not valid JSON
- Content-Type header is not
application/json
- Validate your JSON with a linter before sending
- Ensure the
Content-Type: application/jsonheader is set - Check that the request body is not empty
400 — 'users array is required and must not be empty'
400 — 'users array is required and must not be empty'
Possible causes:
- The
usersfield is missing from the JSON body - The
usersarray is empty ([])
users array.400 — 'at least one identifier is required'
400 — 'at least one identifier is required'
Possible causes:
- The
identifiersobject is missing or empty - None of the four primary identifiers (
user_id,email,phone_number,anon_id) are present
identifiers object.400 — 'events array is required and must not be empty'
400 — 'events array is required and must not be empty'
Possible causes:
- The
eventsfield is missing from a user object - The
eventsarray is empty
400 — 'event_name is required'
400 — 'event_name is required'
Possible causes:
- An event object is missing the
event_namefield - The
event_namevalue is an empty string
event_name string.400 — 'revenue must be a number'
400 — 'revenue must be a number'
Possible causes:
- The
revenuefield is a string instead of a number - The value is not a valid number
revenue as a numeric value: "revenue": 49.99, not "revenue": "49.99".400 — 'timestamp must be valid ISO 8601'
400 — 'timestamp must be valid ISO 8601'
Possible causes:
- The timestamp is in a non-standard format
- Invalid date values
2026-01-15T14:30:00Z or 2026-01-15T14:30:00.413 — Payload Too Large
413 — Payload Too Large
Possible causes:
- The request body exceeds 10 MB
Retry strategy
For503 responses and network errors, implement exponential backoff:
