The purpose of this APi is to enable the hand over of an end-user from the portal of a communication operator to the portal of a service provider. The communication provider identifies the port that the request originated at, and adds accessId and mac-address to a link that is either given to the customer or used by a HTTP redirect.
The API doesnt specify what the portals are used for. It could for example be to activate an subscription, to buy a subscription or to do some kind of control.
The Web-portal URL has the following format
https://<service-provider>/<path>?ko=<co-id>&accessId=<accessID>&mac=<mac-address>&tid=<timestamp>&hash=<hash>
https://sp.example.com/some-path?ko=example_net&accessId=ABCD1234&mac=01:23:45:67:89:AB&tid=2017-08-15T06:58:26.628Z&hash=16eec7df7085f2de0a8d351ac4c75a0c02fb775c5eb823f96e6fb19bedaf65ed
sp.example.com
is a server at the Service provider.
Host name and path are set by the service provider and are used by the communication operator when creating the URL.
Query parameter | Description |
---|---|
ko
|
Identification of the communication operator. See coID in dataformats |
accessId
|
The accessID identified by the communication operator. See accessID in dataformats |
mac
|
The MAC-address of the end users equippment. To be used in fault localization and activation. See mac-address in dataformats for data format |
tid
|
Time stamp when the URL was created. Depending on the use case and the sensitivty of the data, the service provider can choose to only trust the information in a certain time intervall. See dateTime in dataformats for data format |
hash
|
Cryptographic hash (Message Authentication Code) of the other query parameters in hex format. See below for details. |
To authenticate the query parameters in the URL, a HMAC-SHA256 should be calculated on the other query parameters. A pre shared key is used between the communication operator and the service provider.
The hash must be calculated on the following parameters and in the following order:
ko
accessId
mac
tid
The values should be UTF-8 encoded.
Note 1: Any URL-encoding of the of the query parameters should not affect the hash
-value.
The hash should be calculated before any URL-encoding occurs.