OpenTV ENTera & OpenTV Platform Documentation
25.52_Q4 25.26_Q2 25.12_Q1 24.50_Q4 24.38_Q3 24.26_Q2 23.50_Q4 23.24_Q2 23.12_Q1 22.50_Q4 22.38_Q3 22.24_Q2
25.52_Q4 25.26_Q2 25.12_Q1 24.50_Q4 24.38_Q3 24.26_Q2 23.50_Q4 23.24_Q2 23.12_Q1 22.50_Q4 22.38_Q3 22.24_Q2

Using a refresh token

Request

The CRM should use the refresh token obtained in Getting an access token to request new access and refresh tokens.

To request new access and refresh tokens, send a POST request to:

https://<host>:<port>/keycloak/auth/realms/nagra/protocol/openid-connect/token

Headers

  • Content-Type – application/x-www-form-urlencoded 

Mandatory arguments

  • grant_type – must be refresh_token

  • client_id – the client ID as defined by NAGRA

  • refresh_token – the refresh token itself

Other arguments

None

Example

This is an example of the request body:

grant_type:refresh_token
client_id:crm_client
refresh_token:eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3YjM5ZWM0Ny1hNDgyLTRhMmUtODMwMS0xOTQxNWZmNmQ3MDgifQ.eyJqdGkiOiJhOTEzYTU5OS1hOWNhLTQ3ZTctODRiMC1jZTY1ZDdjZjViYmUiLCJleHAiOjE1Nzc5Nzc3MjMsIm5iZiI6MCwiaWF0IjoxNTc3OTc1OTIzLCJpc3MiOiJodHRwczovL29wZXJhdG9yLnNhbGVzLm90dnNlLmNvbS9rZXljbG9hay9hdXRoL3JlYWxtcy9uYWdyYSIsImF1ZCI6Imh0dHBzOi8vb3BlcmF0b3Iuc2FsZXMub3R2c2UuY29tL2tleWNsb2FrL2F1dGgvcmVhbG1zL25hZ3JhIiwic3ViIjoiMTc0YmMxZmItMTgyYy00NjkxLWI3OGEtMmJkY2NmMGM3YzY3IiwidHlwIjoiUmVmcmVzaCIsImF6cCI6Im1hcnRpbl9jbGllbnQiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiI0YTZkZTc4YS1mNTYyLTRiNmEtYTk3Yi03YTdjYTE1NGZhY2YiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsib3BlcmF0b3JSb2xlIl19LCJzY29wZSI6InByb2ZpbGUgZW1haWwifQ.l6b4dJSB7hdnoa9NpJyyczt0ZXFavWT6pO0ERtYW1uE

Response

The response body contains the new access and refresh tokens.

Example

{
    "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJ3aGVOd25SZWMyVF81RFVLcFlCNll5VUgtOEpIb0IxUHVvb1J4VHV6QzUwIn0.eyJqdGkiOiIxMzk4MjIwNC01NmUzLTQ2ZmQtYWE4Yy1lNTg0ZDQ4NTg4NTMiLCJleHAiOjE1Nzc5NzcyMjIsIm5iZiI6MCwiaWF0IjoxNTc3OTc2OTIyLCJpc3MiOiJodHRwczovL29wZXJhdG9yLnNhbGVzLm90dnNlLmNvbS9rZXljbG9hay9hdXRoL3JlYWxtcy9uYWdyYSIsInN1YiI6IjE3NGJjMWZiLTE4MmMtNDY5MS1iNzhhLTJiZGNjZjBjN2M2NyIsInR5cCI6IkJlYXJlciIsImF6cCI6Im1hcnRpbl9jbGllbnQiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJmMjM0ODgzNS0zNmIyLTRiNmItYWVmZi0wOGQ2OWRjNmRjMDEiLCJhY3IiOiIxIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9wZXJhdG9yUm9sZSJdfSwic2NvcGUiOiJwcm9maWxlIGVtYWlsIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJtYXJ0aW4ifQ.ZwWfgaf1V4f3bY72zHf4QUT3PvoLJ0ZFkS6N1GanOKaYLhakNfSEXlNO4gY2oVWFsCFliDXBu2UMIr64bHnAhCBsH3AQDbsCmp-7GjS6sTRzpzFPyHQEjpm9ZehOvL5_s3gTtsRpdW9gm6XCHOpTos0kiGArOkiy-GLhQbFHi2hdhoe7FYyIn3oXygYO1uic1LtBwaJihAjW_iSsNIN8CLWpBKx9_zsMqyU5jWATOCC8MgpalYetTKlEA2vlfKxhB2ObBM8n-gfjbtHjfVteJK5yEsM-XH1oxnkDoZYltLz5cx92JxP1S-8oCWm9cAC5A3qg45I9fPOtspTMGRpSlQ",
    "expires_in": 300,
    "refresh_expires_in": 1800,
    "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3YjM5ZWM0Ny1hNDgyLTRhMmUtODMwMS0xOTQxNWZmNmQ3MDgifQ.eyJqdGkiOiI0YzU3MDEwMC1hNmYyLTQzOWQtOTQwNS00Y2FmNzFmMTYwMWMiLCJleHAiOjE1Nzc5Nzg3MjIsIm5iZiI6MCwiaWF0IjoxNTc3OTc2OTIyLCJpc3MiOiJodHRwczovL29wZXJhdG9yLnNhbGVzLm90dnNlLmNvbS9rZXljbG9hay9hdXRoL3JlYWxtcy9uYWdyYSIsImF1ZCI6Imh0dHBzOi8vb3BlcmF0b3Iuc2FsZXMub3R2c2UuY29tL2tleWNsb2FrL2F1dGgvcmVhbG1zL25hZ3JhIiwic3ViIjoiMTc0YmMxZmItMTgyYy00NjkxLWI3OGEtMmJkY2NmMGM3YzY3IiwidHlwIjoiUmVmcmVzaCIsImF6cCI6Im1hcnRpbl9jbGllbnQiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJmMjM0ODgzNS0zNmIyLTRiNmItYWVmZi0wOGQ2OWRjNmRjMDEiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsib3BlcmF0b3JSb2xlIl19LCJzY29wZSI6InByb2ZpbGUgZW1haWwifQ.Nrlm5E14fyewxRN2K7fLb_NXb8075BO8E3KjcpRAG40",
    "token_type": "bearer",
    "not-before-policy": 0,
    "session_state": "f2348835-36b2-4b6b-aeff-08d69dc6dc01",
    "scope": "profile email"
}