Gridlink API
website·Indexed 30 days ago
https://gridlink.devAPI for managing EV charging infrastructure, including digital twins for chargers and vehicles, load balancing groups, charging profiles, and system notifications. Features capabilities for simulating CSMS connections, executing control actions, and managing diagnostics history.
What's inside Gridlink
- The GridLink technical documentation provides resources for managing EV fleet charging, including a REST API for chargers, transactions, and locations, as well as guides on system architecture, Charging Station Management System (CSMS) fundamentals, and the OCPP 1.6 protocol for charge point communication.
Overview of OCPP 1.6 (Edition 2) Protocol
The Open Charge Point Protocol (OCPP) version 1.6 is a standard open protocol used for communication between Charge Points and a Central System. The specification defines the operations, messages, data types, and configuration keys required for interoperability in electric vehicle charging infrastructure.Retrieve a specific system issue subscription
Use the GET/notifications/issue-subscriptions/system/:idendpoint to retrieve information about a specific system issue subscription. When implementing webhook endpoints for templates and deliveries associated with these subscriptions, ensure they are idempotent and support JWT verification if configured, as deliveries may be retried.GET /notifications/issue-subscriptions/system/:idUse the Message Queue for resilient asynchronous communication
GridLink employs a message queue to decouple services, buffer load spikes, provide automatic retry logic, and guarantee message delivery. This infrastructure is used for key workflows such as charging schedule optimization requests, bulk charger commands, webhook delivery, and report generation.StopTransaction.conf PDU definition
The
StopTransaction.confPDU is sent by the Central System to the Charge Point in response to aStopTransaction.req. It includes:idTagInfo(IdTagInfo, Optional): Information about authorization status, expiry, and parent ID. Optional because transactions may stop without an identifier.
Retrieve a single location by ID
Use theGET /locations/:idendpoint to retrieve detailed information about a specific location where charging stations are installed. The response includes information about assigned chargers. Note that live status information is not included by default; check for expand parameters in future versions to include it.GET /locations/:idRetrieve a load balancing group by ID
Use theGET /load-balancing/:idendpoint to retrieve detailed information about a specific load balancing group. This endpoint returns data regarding the group that manages power distribution among chargers, including its hierarchy (parent and child groups).GET /load-balancing/:idRetrieve a single charging transaction by ID
Use the
GET /transactions/:idendpoint to retrieve comprehensive details about a specific charging transaction. This includes real-time metrics, energy consumption, and session state.Key Data Specifications:
- Energy: Measured in Wh (watt-hours).
- Power: Measured in watts.
- Current: Measured in amperes.
- Voltage: Measured in volts.
- Timestamps: All timestamps are provided in UTC ISO 8601 format.
Usage Notes:
- Real-time metrics (latest, average, and peak values) are calculated from meter values and update as telemetry is received from the charger.
- To optimize response size, use this endpoint for general session details and fetch granular power/current/voltage data points via the separate meter values endpoint.
GET /transactions/{id}Retrieve a single charging profile by ID
Use theGET /charging-profiles/:idendpoint to retrieve detailed information about a specific charging profile, including its schedule and configuration. The:idpath parameter must be the unique identifier of the profile you wish to fetch.curl -X GET "https://gridlink.dev/api/charging-profiles/{id}"Understand GridLink API and Worker separation
GridLink separates synchronous API requests from asynchronous background work to ensure fast API response times regardless of background workload. The API Service handles client requests, input validation, and responses, scaling horizontally behind a load balancer. Worker Processes handle long-running tasks, optimization, and batch operations, scaling based on queue depth.Retrieve a specific system notification channel
Use the GET/notifications/notification-channels/system/:idendpoint to retrieve information about a specific system notification channel. When implementing webhook endpoints associated with these channels, ensure they are idempotent and support JWT verification if configured, as templates and deliveries may be retried.curl -X GET "https://<api-domain>/notifications/notification-channels/system/{id}"Understand Charging Station Management System (CSMS) responsibilities
A Charging Station Management System (CSMS), referred to in OCPP terminology as the Central System, acts as the backend that communicates with and controls EV chargers. Its core responsibilities include:
- Connection Management: Maintaining WebSocket connections from chargers.
- Authorization: Validating RFID tokens to permit charging.
- Transaction Tracking: Recording session data, meter readings, and start/stop events.
- Remote Control: Sending commands such as reset, configuration, or start/stop.
- Smart Charging: Managing load by setting schedules and power limits.
- Firmware & Diagnostics: Retrieving logs and pushing firmware updates.