Skip to main content

Public API – Authentication, Rate Limits & Error Responses

Updated 17 March 2026 · 1 min read

QHUB Public API – Authentication, Rate Limits & Error Responses

Authentication

QHUB uses API Key and API Secret for authentication.

  • You can generate a QHUB API key in the API keys section of your QHUB Dev Centre in the Admin Panel:

    Open link ↗

  • Every request to the QHUB API must include both headers:

x-api-key: <your-api-key>
x-api-secret: <your-api-secret>

401 Unauthorised (Authentication Errors)

If the API key or secret is:

  • Missing

  • Malformed

  • Invalid

…the API will respond with:

  • HTTP status: 401 Unauthorized

No rate-limit headers are guaranteed on failed authentication responses.


Rate and Usage Limits

Rate limits are applied per API key in a fixed time window.

  • Rate limit: 25 requests per 60 minutes per API key

  • Depending on your agreed support plan, you may also have separate usage limits (e.g. total requests per day/month)

If you exceed either the rate limit or your plan’s usage limit, the API will respond with:

  • HTTP status: 429 Too Many Requests

Rate Limit Headers

Each successful API response includes the following headers to help you track your usage:

Header

Description

RateLimit-Limit

Maximum number of requests allowed in the current window (per minute or defined unit).

RateLimit-Remaining

Number of requests remaining in the current window.

RateLimit-Reset

Time at which the current rate limit window resets, in UTC epoch seconds.

Example:

RateLimit-Limit: 25
RateLimit-Remaining: 3
RateLimit-Reset: 1741966500

503 Service Unavailable (Traffic Spike / Outage)

A 503 from our servers indicates an unexpected spike in API access traffic or a temporary service issue.

  • HTTP status: 503 Service Unavailable

  • Typical recovery: the service is usually operational again within ~5 minutes

  • If the outage persists or you are receiving other 5XX errors, please contact support:

    Open link ↗

Recommended client behaviour:

  • Implement retry with exponential backoff for 503 responses

  • Avoid tight retry loops to prevent worsening a spike


Explore the Q-Hub platform

Was this article helpful?

Ready to try it? Get started