Support
Troubleshoot common integration issues in OCPPLAB Gateway
Most integration issues fall into one of four buckets: auth, tenant scoping, invalid request bodies, or wrong resource identifiers.
GET /health to verify the API is reachableAuthorization: Bearer <jwt> is set and the token has not expiredX-Organization-Id caseThe official SDKs retry automatically on 408, 429, and 5xx responses with exponential backoff (two attempts by default). Default request timeout is 60 seconds.
If you are calling the API with raw HTTP, you should retry the same status codes:
Long-running operations (bulk provisioning, CPO bundle creation) can take longer than the default SDK timeout. Raise the per-request timeout when you know the call will be slow:
GET /health checks API reachability without a token, run this first if nothing seems to workGET /catalog/brands checks basic authenticated readsGET /locations checks tenant-scoped list accessGET /chargers/{charger_id}/logs helps confirm whether a command reached the simulatorPOST /chargers/{charger_id}/proxy-message is useful for low-level protocol debugging when you need to inspect raw action handlingGET /chargersGET /chargers/{charger_id}/logs with an event filter such as Authorize or BootNotificationIf the rendered docs and the API behavior diverge, the source of truth is the checked-in OpenAPI in the SDK repository. Regenerate the OpenAPI contract first, then sync the docs repo if needed.