Skip to main content

JWT Authentication (1.0)

Download OpenAPI specification:Download

JWTs (Json Web Tokens)

Access token

An Access JWT is used for authentication and authorization:

  • Authentication requires verifying the signature of the Access JWT. If the signature is valid, access to the requested API resource is granted.
  • Authorization is done by looking up privileges within the scope attribute of the Access JWT. For this, you must first obtain the Access JWT and then enter it into the Authorization header of each API call. The value of the Authorization looks like this: Bearer eyJhbGciOiJSUzI1NiIs.....

Refresh Token

A Refresh token is a long-lived token that you use to request new Access tokens. Its expiration time is longer than that of an Access token.

List of available APIs

Operation HTTP Request Resource Request Description
getUserToken POST /iam/tokens TokenRequest Get/refresh a token
invalidateToken DELETE /iam/tokens/invalidate Invalidate a token
resetUsingDELETE DELETE /iam/tokens/reset reset

How to

Nexway provides a POST getUserToken endpoint to get and refresh JWTs. You can get a token two different ways:

  • By using realm name, client secret, and by specifying the grant type in client_credentials, if using an application interface.
  • By using realm name, username, password, and by specifying the grant type in password, if you are a human user.

Grant type "client_credentials" sample request

{
  "clientSecret": "XXX-XXX-XXX-XXX",
  "realmName": "com2us",
  "grantType": "client_credentials"
}

Grant type "password" sample request

In this case, "grantType" is not mandatory, since the default value is "password".

{
  "username": "jdoe",
  "password": "987654321",
  "realmName": "com2us"
}

Sample response

{
  "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJzUlFuM0J4ZnRDakd0dTVBR0lEZkIyQ0pnQVprMnpwN1R2UGppc2JSN3NJIn0.eyJqdGkiOiI0NzU5NzIwZi04NWRmLTQ1MWYtOTY2MS1jMDc5MGI5OWVmY2UiLCJleHAiOjE1MDY1ODczMTUsIm5iZiI6MCwiaWF0IjoxNTA2NTg3MDE1LCJpc3MiOiJodHRwOi8va2V5Y2xvYWs6ODA4MC9hdXRoL3JlYWxtcy9jb20ydXMiLCJhdWQiOiJuZXh3YXktY2VudGVyIiwic3ViIjoiMjhlNDU4MjYtNDlhYy00N2FmLWFkMTMtZmI5NjUyNGRiYWE5IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoibmV4d2F5LWNlbnRlciIsImF1dGhfdGltZSI6MCwic2Vzc2lvbl9zdGF0ZSI6IjgyYjc3MTc5LTkwZWItNDEwYS1hMGY0LWFiMzg5NDQ1ZDRmYSIsImFjciI6IjEiLCJjbGllbnRfc2Vzc2lvbiI6IjI1MjBhOWRlLWRhN2MtNDg5OS05ODdhLTEyYTVjM2I4NzM4MiIsImFsbG93ZWQtb3JpZ2lucyI6WyIqIl0sInJlYWxtX2FjY2VzcyI6eyJyb2xlcyI6WyJhZG1pbiIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsiY2FydC1zZXJ2aWNlIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJkZWxldGUiLCJnZXRzIiwiZ2V0QWxsQ2FydHMiLCJwdXQiLCJkZWxldGVDYXJ0Il19LCJyZWFsbS1tYW5hZ2VtZW50Ijp7InJvbGVzIjpbIm1hbmFnZS11c2VycyJdfSwiY3VzdG9tZXItc2VydmljZSI6eyJyb2xlcyI6WyJnZXRDdXN0b21lckJ5TmFtZSIsImdldCIsImdldEN1c3RvbWVyQnlSZWFsbU5hbWUiLCJwdXQiLCJnZXRDdXN0b21lciJdfSwib3JkZXJ2aWV3LXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJEZXRhaWwiLCJwb3N0IiwiZ2V0IiwiZ2V0cyIsImRlbGV0ZSIsInB1dCJdfSwicHJvZHVjdC1zZXJ2aWNlIjp7InJvbGVzIjpbImdldFByb2R1Y3QiLCJkZWxldGVQcm9kdWN0QXNzZXQiLCJ1cGRhdGVQcm9kdWN0IiwiY3JlYXRlUHJvZHVjdCIsImdldEFsbFByb2R1Y3RBc3NldHMiLCJnZXRzIiwiZGVsZXRlIiwicHV0IiwiY3JlYXRlUHJvZHVjdEFzc2V0IiwiZ2V0QWxsUHJvZHVjdHMiLCJkZWxldGVQcm9kdWN0TG9jYWxlIiwiZ2V0UHJvZHVjdEFzc2V0IiwicG9zdCIsImdldCIsImRlbGV0ZVByb2R1Y3RDb3VudHJ5IiwiZGVsZXRlUHJvZHVjdCJdfSwiZW5kdXNlci1zZXJ2aWNlIjp7InJvbGVzIjpbInJlc2V0RW5kdXNlclBhc3N3b3JkIiwiZ2V0RW5kdXNlckJ5U3RvcmVBbmRFbWFpbCIsImNyZWF0ZUVuZHVzZXIiLCJwb3N0IiwidXBkYXRlRW5kdXNlciIsImdldCIsImdldEFsbEVuZHVzZXJzIiwiZGVsZXRlIiwiZ2V0cyIsInB1dCIsImdldEVuZHVzZXIiXX0sIm54LWZ1bGZpbGxtZW50Ijp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJnZXRzIiwicHV0Il19LCJlbWFpbC1idWlsZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCIsImdldCIsImRlbGV0ZSIsImdldHMiLCJwdXQiXX0sIm54LWN1c3RvbWVyLW5vdGlmaWVyIjp7InJvbGVzIjpbInVwZGF0ZU5vdGlmaWVyUnVsZXMiLCJnZXROb3RpZmllclJ1bGVzIiwiZGVsZXRlTm90aWZpZXJSdWxlcyIsImNyZWF0ZU5vdGlmaWVyUnVsZXMiXX0sImtleWNsb2FrLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0QWxsVXNlcnMiLCJwb3N0IiwiZ2V0VXNlciIsImdldCIsImRlbGV0ZVVzZXIiLCJ1cGRhdGVVc2VyIiwiY3JlYXRlVXNlciIsImdldHMiLCJkZWxldGUiLCJwdXQiXX0sIm54LWxpY2Vuc2Uta2V5LXByb3ZpZGVyIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiXX0sIm54LWNhbXBhaWduLWNvbmZpZ3VyYXRvciI6eyJyb2xlcyI6WyJwb3N0IiwiZ2V0IiwiZGVsZXRlIiwicHV0Il19LCJzdG9yZS1zZXJ2aWNlIjp7InJvbGVzIjpbInVwZGF0ZVN0b3JlIiwiZ2V0U3RvcmVCeU5hbWUiLCJwb3N0IiwiZ2V0IiwiZ2V0QWxsU3RvcmVzIiwiZ2V0cyIsImRlbGV0ZSIsImNyZWF0ZVN0b3JlIiwicHV0IiwiZGVsZXRlU3RvcmUiXX0sInB1cmNoYXNlLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCJdfSwicGVudGFobyI6eyJyb2xlcyI6WyJnZXQiXX0sIm9yZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJFbWFpbCIsImdldE9yZGVyIiwiZ2V0QWxsT3JkZXJzIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fSwibmFtZSI6ImpvaG4gZG9lIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiamRvZSIsImdpdmVuX25hbWUiOiJqb2huIiwiZmFtaWx5X25hbWUiOiJkb2UiLCJlbWFpbCI6Impkb2VAY29tMnVzLmNvbSJ9.nz1PPZqcWwCE5qFTnd9ee2R5u8Ky87i4c5Lyp4QOor6FAl-Tg2hD2zRe34QO--u62WfxINCF8poLAP6BPwYTzYkGpwMV-IJ7QyrPSq-aJghF-i2tHLlDQiYG28jN_wTIFzftxX14e9I3sAji594QV6X-wCsBpik4aFLQa6bsV7FY1G7TU2nS6ji1XMUNHTzUMWmUjN0pTPmtkaDbm6s34bXetWfYs4G1vXUFfKGwDyPO2H2kOKiJFzIx9g7C6lVyV1FX2MvVzGgGTE5W8ht-wK8bYaXs36Q2iMZOL2htNl8Y3GZUlyfsuaKus6JY8T1MMs9Ao0e2L2t773kqdr8ixw",
  "expires_in": 300,
  "refresh_expires_in": 1800,
  "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJzUlFuM0J4ZnRDakd0dTVBR0lEZkIyQ0pnQVprMnpwN1R2UGppc2JSN3NJIn0.eyJqdGkiOiI1ZTQ5OWM3OC0wYzc0LTQ5NWQtOGIxMy0zZGVkYTAxODg1OTMiLCJleHAiOjE1MDY1ODg4MTUsIm5iZiI6MCwiaWF0IjoxNTA2NTg3MDE1LCJpc3MiOiJodHRwOi8va2V5Y2xvYWs6ODA4MC9hdXRoL3JlYWxtcy9jb20ydXMiLCJhdWQiOiJuZXh3YXktY2VudGVyIiwic3ViIjoiMjhlNDU4MjYtNDlhYy00N2FmLWFkMTMtZmI5NjUyNGRiYWE5IiwidHlwIjoiUmVmcmVzaCIsImF6cCI6Im5leHdheS1jZW50ZXIiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiI4MmI3NzE3OS05MGViLTQxMGEtYTBmNC1hYjM4OTQ0NWQ0ZmEiLCJjbGllbnRfc2Vzc2lvbiI6IjI1MjBhOWRlLWRhN2MtNDg5OS05ODdhLTEyYTVjM2I4NzM4MiIsInJlYWxtX2FjY2VzcyI6eyJyb2xlcyI6WyJhZG1pbiIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsiY2FydC1zZXJ2aWNlIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJkZWxldGUiLCJnZXRzIiwiZ2V0QWxsQ2FydHMiLCJwdXQiLCJkZWxldGVDYXJ0Il19LCJyZWFsbS1tYW5hZ2VtZW50Ijp7InJvbGVzIjpbIm1hbmFnZS11c2VycyJdfSwiY3VzdG9tZXItc2VydmljZSI6eyJyb2xlcyI6WyJnZXRDdXN0b21lckJ5TmFtZSIsImdldCIsImdldEN1c3RvbWVyQnlSZWFsbU5hbWUiLCJwdXQiLCJnZXRDdXN0b21lciJdfSwib3JkZXJ2aWV3LXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJEZXRhaWwiLCJwb3N0IiwiZ2V0IiwiZ2V0cyIsImRlbGV0ZSIsInB1dCJdfSwicHJvZHVjdC1zZXJ2aWNlIjp7InJvbGVzIjpbImdldFByb2R1Y3QiLCJkZWxldGVQcm9kdWN0QXNzZXQiLCJ1cGRhdGVQcm9kdWN0IiwiY3JlYXRlUHJvZHVjdCIsImdldEFsbFByb2R1Y3RBc3NldHMiLCJnZXRzIiwiZGVsZXRlIiwicHV0IiwiY3JlYXRlUHJvZHVjdEFzc2V0IiwiZ2V0QWxsUHJvZHVjdHMiLCJkZWxldGVQcm9kdWN0TG9jYWxlIiwiZ2V0UHJvZHVjdEFzc2V0IiwicG9zdCIsImdldCIsImRlbGV0ZVByb2R1Y3RDb3VudHJ5IiwiZGVsZXRlUHJvZHVjdCJdfSwiZW5kdXNlci1zZXJ2aWNlIjp7InJvbGVzIjpbInJlc2V0RW5kdXNlclBhc3N3b3JkIiwiZ2V0RW5kdXNlckJ5U3RvcmVBbmRFbWFpbCIsImNyZWF0ZUVuZHVzZXIiLCJwb3N0IiwidXBkYXRlRW5kdXNlciIsImdldCIsImdldEFsbEVuZHVzZXJzIiwiZGVsZXRlIiwiZ2V0cyIsInB1dCIsImdldEVuZHVzZXIiXX0sIm54LWZ1bGZpbGxtZW50Ijp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJnZXRzIiwicHV0Il19LCJlbWFpbC1idWlsZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCIsImdldCIsImRlbGV0ZSIsImdldHMiLCJwdXQiXX0sIm54LWN1c3RvbWVyLW5vdGlmaWVyIjp7InJvbGVzIjpbInVwZGF0ZU5vdGlmaWVyUnVsZXMiLCJnZXROb3RpZmllclJ1bGVzIiwiZGVsZXRlTm90aWZpZXJSdWxlcyIsImNyZWF0ZU5vdGlmaWVyUnVsZXMiXX0sImtleWNsb2FrLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0QWxsVXNlcnMiLCJwb3N0IiwiZ2V0VXNlciIsImdldCIsImRlbGV0ZVVzZXIiLCJ1cGRhdGVVc2VyIiwiY3JlYXRlVXNlciIsImdldHMiLCJkZWxldGUiLCJwdXQiXX0sIm54LWxpY2Vuc2Uta2V5LXByb3ZpZGVyIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiXX0sIm54LWNhbXBhaWduLWNvbmZpZ3VyYXRvciI6eyJyb2xlcyI6WyJwb3N0IiwiZ2V0IiwiZGVsZXRlIiwicHV0Il19LCJzdG9yZS1zZXJ2aWNlIjp7InJvbGVzIjpbInVwZGF0ZVN0b3JlIiwiZ2V0U3RvcmVCeU5hbWUiLCJwb3N0IiwiZ2V0IiwiZ2V0QWxsU3RvcmVzIiwiZ2V0cyIsImRlbGV0ZSIsImNyZWF0ZVN0b3JlIiwicHV0IiwiZGVsZXRlU3RvcmUiXX0sInB1cmNoYXNlLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCJdfSwicGVudGFobyI6eyJyb2xlcyI6WyJnZXQiXX0sIm9yZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJFbWFpbCIsImdldE9yZGVyIiwiZ2V0QWxsT3JkZXJzIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fX0.jUPnkNyaElkyNeVtcv6qapTk06-VDy2ddR04btCJBUhhQyl1KZY5fsSlRJXh3PZQcyU4_mSIZiIXMaFKH8WMOWbW6stnLSZMdPMLpwHIIlL14FOMifsz3nkacIk3L8ZIfZcXXn-jGNHJ0N_Toh15JTp_jbDfiaX-n7vNfurggQ8kHUrMXUDfXmB-vJbKgvc7uwKOLsopkVPXehq_FYMdst_oAqBWQzAFH1726S1XKINcluAtp_7ItYkNTZMgKH44vuBsu4EewvJE6hQw_TrzTSEz1ozDKbPQIrbbR0GI3Dz4cmZuHfMVE7-_6PPzrXRzT1eh31NZO8hjh-_ghzp6Vw",
  "token_type": "bearer",
  "id_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJzUlFuM0J4ZnRDakd0dTVBR0lEZkIyQ0pnQVprMnpwN1R2UGppc2JSN3NJIn0.eyJqdGkiOiJlMmFkODljYy05MzU2LTQ5M2UtYTUwMC0wOTA2YmIzNzI0ZmYiLCJleHAiOjE1MDY1ODczMTUsIm5iZiI6MCwiaWF0IjoxNTA2NTg3MDE1LCJpc3MiOiJodHRwOi8va2V5Y2xvYWs6ODA4MC9hdXRoL3JlYWxtcy9jb20ydXMiLCJhdWQiOiJuZXh3YXktY2VudGVyIiwic3ViIjoiMjhlNDU4MjYtNDlhYy00N2FmLWFkMTMtZmI5NjUyNGRiYWE5IiwidHlwIjoiSUQiLCJhenAiOiJuZXh3YXktY2VudGVyIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiODJiNzcxNzktOTBlYi00MTBhLWEwZjQtYWIzODk0NDVkNGZhIiwiYWNyIjoiMSIsIm5hbWUiOiJqb2huIGRvZSIsInByZWZlcnJlZF91c2VybmFtZSI6Impkb2UiLCJnaXZlbl9uYW1lIjoiam9obiIsImZhbWlseV9uYW1lIjoiZG9lIiwiZW1haWwiOiJqZG9lQGNvbTJ1cy5jb20ifQ.KuDQT7Rawksp8XrQLIAwxr6kzM0jfGmV0pH2P2DOob9hXqeXmYzJlKD0OwuNsLLKocBcenCIar-pAbq-2qhOBaEaozUXGHj8nSOjERXVMx4C1XwjsXJYy7g5JQ8aCeCubfA2hoyYSzPPqubbywAZxC5S2Nmj49TKXpP_QmnvC6Od0cOX1OzXQOA4CvBCQ1cSTQQtGoLrQa6F9t8Um-qJbfhCIJf_6CbnTas48l7ipgOpk2y6QtMP9K_dd-sjJrH5YCW2R8CGVyeImldqVydyRZZ6urZbDrPkL1l0U0VtYv_a_NsrbeP-RLKFdmUMca5qIrhrZh-bbztrUyyq-aoUwQ",
  "not-before-policy": 0,
  "session_state": "371a7b3b-6a24-479b-89ee-048e7da736b5"
}

Going forward, use a Refresh token to extend your session instead of using client secret to get a new Access token (and thus creating a new session) each time. However, as a Refresh token also has an expiration time, you will need use client secret when you request a new Refresh token.

Sample refresh request

{
  "realmName": "com2us",
  "grantType": "refresh_token",
  "refreshToken": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJzUlFuM0J4ZnRDakd0dTVBR0lEZkIyQ0pnQVprMnpwN1R2UGppc2JSN3NJIn0.eyJqdGkiOiI1ZTQ5OWM3OC0wYzc0LTQ5NWQtOGIxMy0zZGVkYTAxODg1OTMiLCJleHAiOjE1MDY1ODg4MTUsIm5iZiI6MCwiaWF0IjoxNTA2NTg3MDE1LCJpc3MiOiJodHRwOi8va2V5Y2xvYWs6ODA4MC9hdXRoL3JlYWxtcy9jb20ydXMiLCJhdWQiOiJuZXh3YXktY2VudGVyIiwic3ViIjoiMjhlNDU4MjYtNDlhYy00N2FmLWFkMTMtZmI5NjUyNGRiYWE5IiwidHlwIjoiUmVmcmVzaCIsImF6cCI6Im5leHdheS1jZW50ZXIiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiI4MmI3NzE3OS05MGViLTQxMGEtYTBmNC1hYjM4OTQ0NWQ0ZmEiLCJjbGllbnRfc2Vzc2lvbiI6IjI1MjBhOWRlLWRhN2MtNDg5OS05ODdhLTEyYTVjM2I4NzM4MiIsInJlYWxtX2FjY2VzcyI6eyJyb2xlcyI6WyJhZG1pbiIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsiY2FydC1zZXJ2aWNlIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJkZWxldGUiLCJnZXRzIiwiZ2V0QWxsQ2FydHMiLCJwdXQiLCJkZWxldGVDYXJ0Il19LCJyZWFsbS1tYW5hZ2VtZW50Ijp7InJvbGVzIjpbIm1hbmFnZS11c2VycyJdfSwiY3VzdG9tZXItc2VydmljZSI6eyJyb2xlcyI6WyJnZXRDdXN0b21lckJ5TmFtZSIsImdldCIsImdldEN1c3RvbWVyQnlSZWFsbU5hbWUiLCJwdXQiLCJnZXRDdXN0b21lciJdfSwib3JkZXJ2aWV3LXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJEZXRhaWwiLCJwb3N0IiwiZ2V0IiwiZ2V0cyIsImRlbGV0ZSIsInB1dCJdfSwicHJvZHVjdC1zZXJ2aWNlIjp7InJvbGVzIjpbImdldFByb2R1Y3QiLCJkZWxldGVQcm9kdWN0QXNzZXQiLCJ1cGRhdGVQcm9kdWN0IiwiY3JlYXRlUHJvZHVjdCIsImdldEFsbFByb2R1Y3RBc3NldHMiLCJnZXRzIiwiZGVsZXRlIiwicHV0IiwiY3JlYXRlUHJvZHVjdEFzc2V0IiwiZ2V0QWxsUHJvZHVjdHMiLCJkZWxldGVQcm9kdWN0TG9jYWxlIiwiZ2V0UHJvZHVjdEFzc2V0IiwicG9zdCIsImdldCIsImRlbGV0ZVByb2R1Y3RDb3VudHJ5IiwiZGVsZXRlUHJvZHVjdCJdfSwiZW5kdXNlci1zZXJ2aWNlIjp7InJvbGVzIjpbInJlc2V0RW5kdXNlclBhc3N3b3JkIiwiZ2V0RW5kdXNlckJ5U3RvcmVBbmRFbWFpbCIsImNyZWF0ZUVuZHVzZXIiLCJwb3N0IiwidXBkYXRlRW5kdXNlciIsImdldCIsImdldEFsbEVuZHVzZXJzIiwiZGVsZXRlIiwiZ2V0cyIsInB1dCIsImdldEVuZHVzZXIiXX0sIm54LWZ1bGZpbGxtZW50Ijp7InJvbGVzIjpbInBvc3QiLCJnZXQiLCJnZXRzIiwicHV0Il19LCJlbWFpbC1idWlsZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCIsImdldCIsImRlbGV0ZSIsImdldHMiLCJwdXQiXX0sIm54LWN1c3RvbWVyLW5vdGlmaWVyIjp7InJvbGVzIjpbInVwZGF0ZU5vdGlmaWVyUnVsZXMiLCJnZXROb3RpZmllclJ1bGVzIiwiZGVsZXRlTm90aWZpZXJSdWxlcyIsImNyZWF0ZU5vdGlmaWVyUnVsZXMiXX0sImtleWNsb2FrLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0QWxsVXNlcnMiLCJwb3N0IiwiZ2V0VXNlciIsImdldCIsImRlbGV0ZVVzZXIiLCJ1cGRhdGVVc2VyIiwiY3JlYXRlVXNlciIsImdldHMiLCJkZWxldGUiLCJwdXQiXX0sIm54LWxpY2Vuc2Uta2V5LXByb3ZpZGVyIjp7InJvbGVzIjpbInBvc3QiLCJnZXQiXX0sIm54LWNhbXBhaWduLWNvbmZpZ3VyYXRvciI6eyJyb2xlcyI6WyJwb3N0IiwiZ2V0IiwiZGVsZXRlIiwicHV0Il19LCJzdG9yZS1zZXJ2aWNlIjp7InJvbGVzIjpbInVwZGF0ZVN0b3JlIiwiZ2V0U3RvcmVCeU5hbWUiLCJwb3N0IiwiZ2V0IiwiZ2V0QWxsU3RvcmVzIiwiZ2V0cyIsImRlbGV0ZSIsImNyZWF0ZVN0b3JlIiwicHV0IiwiZGVsZXRlU3RvcmUiXX0sInB1cmNoYXNlLXNlcnZpY2UiOnsicm9sZXMiOlsicG9zdCJdfSwicGVudGFobyI6eyJyb2xlcyI6WyJnZXQiXX0sIm9yZGVyLXNlcnZpY2UiOnsicm9sZXMiOlsiZ2V0T3JkZXJFbWFpbCIsImdldE9yZGVyIiwiZ2V0QWxsT3JkZXJzIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fX0.jUPnkNyaElkyNeVtcv6qapTk06-VDy2ddR04btCJBUhhQyl1KZY5fsSlRJXh3PZQcyU4_mSIZiIXMaFKH8WMOWbW6stnLSZMdPMLpwHIIlL14FOMifsz3nkacIk3L8ZIfZcXXn-jGNHJ0N_Toh15JTp_jbDfiaX-n7vNfurggQ8kHUrMXUDfXmB-vJbKgvc7uwKOLsopkVPXehq_FYMdst_oAqBWQzAFH1726S1XKINcluAtp_7ItYkNTZMgKH44vuBsu4EewvJE6hQw_TrzTSEz1ozDKbPQIrbbR0GI3Dz4cmZuHfMVE7-_6PPzrXRzT1eh31NZO8hjh-_ghzp6Vw"
}

GoogleToken

create/refresh a token

Create or refresh a JWT token.

Authorizations:
Bearer
header Parameters
X-Real-Ip
string
Request Body schema: application/json
scope
string
username
string
password
string
realmName
string
clientId
string
clientSecret
string
grantType
string
Enum: "password" "refresh_token" "client_credentials" "end_user_credentials" "google_login"
refreshToken
string
customerId
string
storeId
string
tokenId
string
firstName
string
lastName
string
email
string
object (TokenProvider)
refresh_token
string
realm
string
client_id
string
grant_type
string
client_secret
string

Responses

Request samples

Content type
application/json
{
  • "scope": "string",
  • "username": "string",
  • "password": "string",
  • "realmName": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "grantType": "password",
  • "refreshToken": "string",
  • "customerId": "string",
  • "storeId": "string",
  • "tokenId": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "email": "string",
  • "provider": {
    },
  • "refresh_token": "string",
  • "realm": "string",
  • "client_id": "string",
  • "grant_type": "string",
  • "client_secret": "string"
}

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "expires_in": 0,
  • "refresh_expires_in": 0,
  • "refresh_token": "string",
  • "token_type": "string",
  • "id_token": "string",
  • "not-before-policy": 0,
  • "session_state": "string"
}

Token

Invalidate a token

Invalidate a token from a user during a logout process

Authorizations:
None
header Parameters
Authorization
required
string

Responses

create/refresh a token

Create a JWT token or refresh a new one.

Authorizations:
None
query Parameters
client_id
string

Client id

client_secret
string

Client secret

username
string

User name

password
string

Password

refresh_token
string

Refresh token

grant_type
string

Request type. Possible values are: password, refresh_token, client_credentials

scope
string

Scope

realm
string

Realm name

header Parameters
X-Real-Ip
string
authorization
string
Authorization
string
Request Body schema: application/json
required
scope
string
username
string
password
string
realmName
string
clientId
string
clientSecret
string
grantType
string
Enum: "password" "refresh_token" "client_credentials" "end_user_credentials" "google_login"
refreshToken
string
customerId
string
storeId
string
refresh_token
string
realm
string
client_id
string
grant_type
string
client_secret
string

Responses

Request samples

Content type
application/json
{
  • "scope": "string",
  • "username": "string",
  • "password": "string",
  • "realmName": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "grantType": "password",
  • "refreshToken": "string",
  • "customerId": "string",
  • "storeId": "string",
  • "refresh_token": "string",
  • "realm": "string",
  • "client_id": "string",
  • "grant_type": "string",
  • "client_secret": "string"
}

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "expires_in": 0,
  • "refresh_expires_in": 0,
  • "refresh_token": "string",
  • "token_type": "string",
  • "id_token": "string",
  • "not-before-policy": 0,
  • "session_state": "string"
}