char.gy OCPI CPO Roaming API

char.gy's commercial Open Charge Point Interface implementation in the Charge Point Operator role, used so that another network's drivers can authorise, charge and be settled on char.gy infrastructure. char.gy publishes no documentation for it at all — its existence was established by two independent signals. First, https://char.gy/robots.txt explicitly disallows /ocpi/, /api/, /webhooks/, /account/ and /users/. Second, anonymous probes on 2026-07-27 returned HTTP 401 with the response header `www-authenticate: Token realm="OCPI"` and the body {"error":"HTTP Token: Access denied."} on GET /ocpi/cpo/versions, /ocpi/cpo/2.1.1/locations, /ocpi/cpo/2.2.1/locations, /ocpi/cpo/2.2.1 /tariffs, /ocpi/cpo/2.2.1/sessions, /ocpi/cpo/2.2.1/cdrs and /ocpi/cpo/2.2.1/credentials, while control paths /ocpi/, /ocpi/cpo/ nonsense-xyz and /ocpi/xyz/versions returned 404 from the same host in the same sweep — so the 401s are real routes, not a blanket wall. Version support is directly observable: /ocpi/cpo/2.2/credentials returned HTTP 200 with the OCPI error envelope {"status_code":3002,"status_message": "Unsupported version"}, whereas the 2.2.1 and 2.1.1 paths returned 401, which means char.gy speaks OCPI 2.2.1 and 2.1.1 in the CPO role and explicitly rejects 2.2. No eMSP-role surface was found (/ocpi/emsp/versions → 404). Access is partner-only: an OCPI credentials handshake following a commercial roaming agreement. There is no signup, no sandbox, no published price and no developer registration — the only published contact route anywhere near the API surface is support@char.gy.

API entry from apis.yml

apis.yml Raw ↑
aid: chargy:chargy-ocpi-cpo-api
name: char.gy OCPI CPO Roaming API
description: 'char.gy''s commercial Open Charge Point Interface implementation in the Charge Point Operator
  role, used so that another network''s drivers can authorise, charge and be settled on char.gy infrastructure.
  char.gy publishes no documentation for it at all — its existence was established by two independent
  signals. First, https://char.gy/robots.txt explicitly disallows /ocpi/, /api/, /webhooks/, /account/
  and /users/. Second, anonymous probes on 2026-07-27 returned HTTP 401 with the response header `www-authenticate:
  Token realm="OCPI"` and the body {"error":"HTTP Token: Access denied."} on GET /ocpi/cpo/versions, /ocpi/cpo/2.1.1/locations,
  /ocpi/cpo/2.2.1/locations, /ocpi/cpo/2.2.1 /tariffs, /ocpi/cpo/2.2.1/sessions, /ocpi/cpo/2.2.1/cdrs
  and /ocpi/cpo/2.2.1/credentials, while control paths /ocpi/, /ocpi/cpo/ nonsense-xyz and /ocpi/xyz/versions
  returned 404 from the same host in the same sweep — so the 401s are real routes, not a blanket wall.
  Version support is directly observable: /ocpi/cpo/2.2/credentials returned HTTP 200 with the OCPI error
  envelope {"status_code":3002,"status_message": "Unsupported version"}, whereas the 2.2.1 and 2.1.1 paths
  returned 401, which means char.gy speaks OCPI 2.2.1 and 2.1.1 in the CPO role and explicitly rejects
  2.2. No eMSP-role surface was found (/ocpi/emsp/versions → 404). Access is partner-only: an OCPI credentials
  handshake following a commercial roaming agreement. There is no signup, no sandbox, no published price
  and no developer registration — the only published contact route anywhere near the API surface is support@char.gy.'
humanURL: https://char.gy/us/partners
baseURL: https://char.gy/ocpi/cpo
tags:
- EV Charging
- OCPI
- Roaming
- Charge Point Operator
- Sessions
- CDRs
- United Kingdom
properties:
- type: Authentication
  url: authentication/chargy-authentication.yml
- type: ErrorCatalog
  url: errors/chargy-error-codes.yml
- type: Specification
  url: https://github.com/ocpi/ocpi
- type: Partners
  url: https://char.gy/us/partners
- type: Support
  url: https://help.char.gy/
- type: TermsOfService
  url: https://char.gy/us/terms-of-use