Skip to main content
The Fire API allows your system to inject orders into Fire and manage related operations. All endpoints are REST, accept and return JSON, and require authentication via Bearer token.

Inject order

Send an order from any aggregator or source into Fire for processing.

Environments

EnvironmentBase URL
Staginghttps://stg.api.fire.rest
Productionhttps://api.fire.rest
Start your integration against staging — it mirrors production but is isolated from live data. The API playground in this reference defaults to staging. Switch to production only when you are ready to go live.

Authentication

Every request requires a Bearer token obtained from the Login endpoint, plus three identification headers:
x-api-key: <your_api_key>
x-client-channel: integration
account: <your_account_id>
Authorization: Bearer <accessToken>
See Authentication for full details on obtaining and refreshing tokens.

Request and response format

  • All request bodies must be JSON with Content-Type: application/json
  • All responses are JSON
  • Dates and timestamps use ISO 8601 format (2024-11-15T14:30:00Z)

Errors

Fire uses standard HTTP status codes. All error responses include a JSON body with a machine-readable code and a human-readable message.
{
  "error": {
    "code": "validation_error",
    "message": "channel_id is required"
  }
}
StatusMeaning
200Success
400Bad request — invalid or missing fields in the payload
401Unauthorized — missing or invalid API key
404Resource not found
409Conflict — duplicate external_order_id
429Rate limit exceeded — back off and retry
5xxFire-side error — retry with exponential backoff

Rate limits

Requests are rate-limited per API key. If you exceed the limit, Fire returns 429 Too Many Requests. Implement exponential backoff starting at 1 second.