Locations

Location push and pull endpoints on ChargeIndia Hub.

Endpoints

MethodPathCallerDescription
PUT/ocpi/2.2.1/locations/{cc}/{pid}/{location_id}CPOCreate or replace location
PATCH/ocpi/2.2.1/locations/{cc}/{pid}/{location_id}CPOPartial location update
PUT.../{location_id}/{evse_uid}CPOCreate or replace EVSE
PATCH.../{location_id}/{evse_uid}CPOPartial EVSE update
PUT.../{evse_uid}/{connector_id}CPOCreate or replace connector
PATCH.../{evse_uid}/{connector_id}CPOPartial connector update
GET/ocpi/2.2.1/locationseMSPList locations (paginated)
GET/ocpi/2.2.1/locations/{cc}/{pid}/{location_id}eMSP / owner CPOLocation detail

Hub role: RECEIVER (CPO push) + SENDER (eMSP pull)

CPO push example

PUT /ocpi/2.2.1/locations/IN/ABC/LOC001
Authorization: Token {cpo-token}
Content-Type: application/json

{
  "country_code": "IN",
  "party_id": "ABC",
  "id": "LOC001",
  "publish": true,
  "name": "Station Alpha",
  "address": "123 Main Road",
  "city": "Bengaluru",
  "country": "IND",
  "coordinates": { "latitude": "12.9716", "longitude": "77.5946" },
  "evses": [ ... ],
  "last_updated": "2025-06-23T10:00:00.000Z"
}

eMSP pull example

GET /ocpi/2.2.1/locations?offset=0&limit=50
Authorization: Token {emsp-token}

Results filtered by routing rules. See Pagination.

Rate limit

Location list: 200 requests/minute per party.

OCPI spec

See OCPI 2.2.1 Locations module for full Location, EVSE, and Connector objects.