Setting up an API connection

This article contains information on requesting API access and the necessary steps required.

The scope is for CPO Data, EMSP and Smart Charging APIs. Charge Assist APIs has a slightly different setup.

Platform subscription

Internally we call an API connection a 'Platform subscription', they are used by CPOs to get a copy of the data of 'their' charge stations.

The core structure (CDRs, Locations, Sessions) as well as authentication method is based on OCPI 2.1.1. We have custom APIs, e.g Smart Charging, but they use the same authenticaton method and follow similar naming conventions.

Requesting a Platform subscription

Please contact your Customer Success or Account Manager to start this process.
Note: There may be one-off setup fees involved.

High level Process

  1. Initiate process via Customer Success Manager
  2. Meeting with both parties to align on scope and discuss requirements
  3. Setup of Test/Acceptance environment & exchange of tokens. See Environments
  4. Testing & validation
  5. Setup of Production environment & exchange of tokens
  6. Testing & validation


CPOs can have multiple sub-CPOs (CPSOs). GreenFlux can create subscriptions that will share any number of these CPSOs.

Upon requesting a Platform subscription, please specify whether all or a specific number of CPOs are in scope.


Requests are typically handled within several working days.

Setting the endpoints and underlying DB or data-lake capabilities as well as testing is the key determining factor for timelines. We see that this can take several weeks.

Transport & Format

GreenFlux supports both Pull and Push (WebHook) models.

  • Pull: Receiver request a (full) list of objects every X times.
  • Push: Changes in objects and new objects are sent (semi) real-time to the receiver.


There is a separate article on Push, see here Webhooks / Push API .


Requesting access

Setting up a Pull endpoint is relatively straightforward. GreenFlux needs to know:

  • which modules to enable
  • which CPOSs to include


The authentication is similar to OCPI in that we share use an Authorization header to include the API key with the 'Token' keyword. Unlike OCPI we don't need a Handshake, but send token via alternative secure ways.

Authorization: Token IpbJOXxkxOAuKR92z0nEcmVF3Qw09VG7I7d/WCg0koM=

Setup and Integration

GreenFlux provides two environments for Customers:

  • Acceptance (test environment)
  • Production (the live environment)

Both environments are code-identical, with some new features available on Acceptance before on Production.
We strongly recommend testing in Acceptance before moving onto Production.

Testing Charge Stations

Testing with real charge stations

It is possible to test real charging stations in the Acceptance environment. In fact, we strongly encourage testing only on the Acceptance environment and not in the Production environment.

To move a charging station between environments means only to change the Web Socket Server URL.

Virtual Charge Station

GreenFlux has internal tools to simulate a charging session.
In the absence of a real charging station, we can simulate sessions to produce Meter Values, Sessions, CDRs, Location changes etc.

API connections options

GreenFlux creates an API connection based on 'sub-CPOs' (aka CPSOs). A customer (CPO Network) can have multiple CPOs as can be seen in the EV Portal.


In principle, GreenFlux can create a number of API connections with configuration variations per CPO and per enabled module.


A Customer has three sub-CPOs (CPSOs)

  • They want one subscription from all for all analytics --> Subscription #1
  • CPO #2 is for one specific city and the city wants data for research purposes --> Subscription #2
  • Smart Charging is enabled only for CPO #3. The Customer wants a separate subscription --> Subscription #3

Note: We encourage customers of a certain size to create data solutions on their side to partition and distribute the data to partners.