These developer resources explain the sequence and details of the operations that are required to interact within the Coelition ecosystem.

The SDK download provides code samples for .NET, Java, Python, iOS and Android that cover the key systems interactions. The rest of this page describes these interactions and example embodiments can be found in the case studies. Hash tags are used to link the description below with the code in the SDK.


To receive a zip file of the Coelition SDK please read the licence terms, enter your email address and click 'Accept'.

The Coelition SDK is provided ‘as is’ without warranty of any kind. The SDK is free of charge but restricted to use within the Coelition ecosystem with limited rights of redistribution. The full licence agreement can be seen here and by clicking 'Accept' you agree to these terms.

  • Your personal data will be used to process your form submission, in accordance with our Privacy Policy.

  • This field is for validation purposes and should be left unchanged.

Key System Interactions


Service Provider sign-up

Service Provider sign-up

When a new Service Provider joins the ecosystem they will select a Data Engine. Coelition will register the Service Provider with the IDA (Identity Authority) and then the Data Engine. The Service Provider will then receive its ServiceProviderID {#sdk-credentials}.

Operator sign-up

Operator sign-up

Once registered, Service Providers can sign-up the Operators that will be responsible for managing the interaction with the Consumer and holding directly identifying personal information.

The Service Provider uses their ServiceProviderID to create each new OperatorID with the IDA and then registers this with the Data Engine {#sdk-create-operator}. The credentials are then supplied to the Operator {#sdk-credentials}.

Consumer sign-up

Consumer sign-up

Operators sign-up Consumers individually with the IDA {#sdk-generate} and register them with the Data Engine {#sdk-create-consumer}. The Operator holds the ConsumerID and uses this to manage all data transactions in the ecosystem on behalf of the Consumer.

Only the ConsumerID code, gender, age, timezone and approximate latitude are registered with the Data Engine {#sdk-segment}. IoT devices can also be registered to the Consumer by a similar method to give a DeviceID {#sdk-create-device}.

Sending atoms

Sending atoms

Behavioural information is sent directly to the Data Engine in the form of discrete events each containing the ConsumerID. These data packets are known as ‘Atoms’ {#sdk-create-atom}.

The Data Engine will accept correctly formatted Atoms with a valid ConsumerID or DeviceID from any source {#sdk-post-atom}.

Consumer report request

Consumer report request

To deliver services to the Consumer, the Operator can request data from the Data Engine via the Service Provider.

The Operator makes a report request to the Service Provider for a specific Consumer{#sdk-report-request}. The Service Provider checks that the Operator has the right to make the request on behalf of the Consumer and then queries the Data Engine{#sdk-query}. A report can then be generated for the Operator to deliver.

COEL Standard

Coelition has driven the creation of the COEL Standard to provide interoperability, transparency and open access.

Visualising Life

Explore the visualisation of the Classisifcation of Everyday living that sits at the heart of the COEL standard.

Data to Life

This book describes the background to Coelition; it provided impetus for the early stages of Coelition.

Policy Repository

Coelition provides an open repository for members to post privacy policies for their services.

MyData Ecosystem

MyData defines a human-centric approach to data access and control that makes the individual the point of integration.