Skip to main content

Troubleshooting

Hit something unexpected? Walk this checklist before opening a ticket.

Decision tree

1. Can you reach the API at all?

curl -sS https://api.flowbeacon.ai/api/public/v1/governance/health
  • Empty / connection refused → DNS or egress firewall issue on your side. Try from a different network.
  • 200 OK → service is up. Move on.

2. Does your bearer token work?

Look at the first 12 characters: fb_live_xxxx. That prefix is safe to share with support.

  • 401 Missing or invalid Authorization header → no Authorization: Bearer ... header.
  • 401 Invalid API key format → key doesn't start with fb_live_.
  • 401 Invalid or expired API key → key was revoked, expired, or never existed. Recreate or rotate.

3. Is the signature correct?

  • 403 Missing request signature → add the X-FB-Signature header.
  • 403 Invalid request signature:
    • Clock skew? Sync time. The 300 s window is generous but not infinite.
    • Re-signing on retry? You must.
    • Re-serialised body? Use the same bytes for signing and for transport. See Authentication.
    • Query string in the signed path? Drop it; sign only path.
    • Behind a proxy that re-serialised the body? Bypass or fix the proxy.

4. Does the response surface make sense?

  • Always inspect error first, then detail, then message.
  • 200 with ok: false is not valid — if you see this, capture the raw response and email partners@flowbeacon.ai with the request/response pair.

5. Are you hitting rate limits?

  • 429 Rate limit exceeded → honor Retry-After. Add jitter. See Rate limits and retries.
  • X-RateLimit-Remaining close to zero on every response → you're tight on quota. Cache governance/policies, use webhooks instead of polling, or contact partners@flowbeacon.ai for a quota increase.

6. Are you scoped to the right organization?

  • 403 org_id does not match API key organization → check the org_id in the request body or path. The key's organization is shown in the console next to the key.

Persistent issues

If the issue persists after this checklist:

  1. Capture the request_id from any 500 response (it'll be in the JSON body).
  2. Capture the first 12 characters of the failing key.
  3. Capture the evaluation_id or scenario_id in question.
  4. Capture the UTC timestamp of the failing request.
  5. Open a ticket at partners@flowbeacon.ai.

See Contact for the right address per topic.