For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dashboard
DocsAPI Reference
DocsAPI Reference
  • Docs
    • Welcome
    • Quickstart
    • Concepts
    • Common workflows
  • SDKs
    • Python
    • TypeScript
  • Authentication
    • Overview
  • Reference
    • API reference
    • Support
Dashboard
LogoLogo
On this page
  • Domains
  • Authentication
  • First endpoints to try
  • Tips
  • Next step
Reference

API reference

The contract for the OCPPLAB Gateway REST API
||View as Markdown|
Was this page helpful?
Edit this page
Previous

Authentication

Next

Support

Built with

This reference documents every endpoint on the OCPPLAB Gateway API: request/response schemas, shared errors, and per-endpoint code samples in shell, Python, and Node.js.

Domains

SectionPurpose
CatalogRead-only discovery of supported charger brands and models
LocationsTenant-scoped CRUD for charging hubs, depots, and sites
ChargersRegister chargers and control deployment lifecycle
CommandsDrive simulator behavior on a single charger
Location chargersBulk provisioning and commands across all chargers in a location
OCPICPOs, locations, and templates for roaming test beds
HealthService liveness and readiness checks

Authentication

Authorization: Bearer <jwt> is the only header most requests need. User tokens are pre-scoped to a single tenant. Internal admin integrators have a separate flow — see Authentication.

If a request fails with 403, check the token role before assuming the endpoint or payload is wrong.

First endpoints to try

In order, these are the useful routes to smoke-test a new integration:

  1. GET /catalog/brands
  2. GET /catalog/brands/{brand_slug}/models
  3. POST /locations
  4. POST /chargers
  5. POST /chargers/{charger_id}/start-transaction
  6. GET /chargers/{charger_id}/logs

This matches the real-world flow: discover a charger, create a site, provision it, send a command, inspect logs.

Tips

  • Start with GET routes to validate access before moving to create or command routes
  • For location-scoped command routes, omit charger_ids to target the full location
  • Treat ids returned by list and create responses as the source of truth for follow-up requests
  • Use GET /chargers/{charger_id}/logs after command execution to verify emitted OCPP actions

Next step

Hands-on path: Quickstart. End-to-end flows: Common workflows.