• In progress
  • Accessing the Usage Engine CE APIs

    This page describes the high-level steps of how an external application communicates with the Usage Engine APIs using Client Credentials. You need an authorization token to access the Usage Engine API. See the following example of an authorization token:

    Example:

    {"access_token":{{Encoded token}}, "scope":"create:meter_types create:meters", "expires_in":3600, "token_type":"Bearer"}

    By design, the Client Credentials flows do not have a refresh flow so a new access token needs to be requested every time the token expires. The tokens are valid for one hour. As part of the authorization token, you will receive the lifetime (expires_in) of the token in seconds.

    image-20240522-125947.png

     

    Example - Getting an OAuth 2 Token Using curl

    This works in bash and zsh. To avoid exposing the credentials we are storing them in variables. For information about how to define variables in any other environment, see the respective documentation. The Client Secret is sensitive information and it is important not to expose it unnecessarily. The audience is the API address you are going to send requests to. Read more at Getting started with APIs using Curl

    client_id={{your client ID}} client_secret={{your client secret}} audience={{your api environment}} curl --location --request POST 'https://api.digitalroute.io/authentication/v1/oauth/token' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data client_id=${client_id} \ --data client_secret=${client_secret} \ --data grant_type='client_credentials' \ --data audience=${audience}

    .

    Parameter

    Description

    Parameter

    Description

    access_token

    The access token string that is issued by the authorization server.

    scope

    Scopes defined for the token

    expires_in

    Validity of the token in seconds

    token_type

    The type of token this is, just the string “Bearer”.

    See examples in Getting started with APIs calls using Postman and Getting started with APIs using Curl for more information about how to use the generated access token to access the APIs.