# Overview

Global Id Generator API exposes three different methods, each with its own authentication/authorization mechanism and intended for different identity creation scenarios.

# Getting an Id

# GET /api/ids/{id}

To check if an identity exists one can call a simple GET endpoint. This endpoint is exposed without any authentication or authorization.

Example:

curl -X GET \
  'https://xxxxx.abilityplatform.abb/api/ids/{id}' \
  -H 'Content-Type: application/json' \

# Generating Ids

# POST /api/ids

This functionality is intended for internal platform applications. Each of such applications should be registered within ABB Azure Active Directory, thus having a unique AppId.

Example:

curl -X POST \
  https://xxxxx.abilityplatform.abb/api/ids \
  -H 'Authorization: Bearer {access_token}' \
  -H 'Content-Type: application/json' \  
  -d '{
                "count": 1
   }'

An access_token can be obtained with the following call:

curl -X POST \
  https://login.microsoftonline.com/372ee9e0-9ce0-4033-a64a-c07073a91ecd/oauth2/token \
    -d 'grant_type=client_credentials&client_id={AAD AppId}&client_secret={client_secret}&resource=cdeacb74-176f-4ebd-9b5b-a3456c5ee249'

Whenever a new platform application would like to be authorized to use this service, its AppId has to be added to Global Id Service whitelist.

# Registering Pre-generated Id

# POST /api/ids/{Id}

This functionality is intended for new device provisioning process and is supposed to be invoked from device only.

Example:

curl -X POST \
  https://xxxxx.abilityplatform.abb/api/ids/{Id} \
  -H 'Content-Type: application/json'

In addition to that, the caller has to provide a valid certificate and that certificate has to have its CN set to objectId of the device (same objected as the {id} in the URL).

Last updated: 2/3/2022, 12:56:12 PM
Feedback