{ "opencollection": "1.0.0", "info": { "name": "FusionAuth Api Key Jwt API", "version": "1.66.0" }, "request": { "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "items": [ { "info": { "name": "Jwt", "type": "folder" }, "items": [ { "info": { "name": "issueJWTWithId", "type": "http" }, "http": { "method": "GET", "url": "http://localhost:9011/api/jwt/issue", "params": [ { "name": "applicationId", "value": "", "type": "query", "description": "The Application Id for which you are requesting a new access token be issued." }, { "name": "refreshToken", "value": "", "type": "query", "description": "An existing refresh token used to request a refresh token in addition to a JWT in the response.

The target application represented by the applicationId request parameter must have refresh tokens enabled in order to receive a refresh token in the response.

" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Issue a new access token (JWT) for the requested Application after ensuring the provided JWT is valid. A valid access token is properly signed and not expired.

This API may be used in an SSO configuration to issue new tokens for another application after the user has obtained a valid token from authentication." }, { "info": { "name": "retrieveJwtPublicKey", "type": "http" }, "http": { "method": "GET", "url": "http://localhost:9011/api/jwt/public-key", "params": [ { "name": "applicationId", "value": "", "type": "query", "description": "The Id of the Application for which this key is used." }, { "name": "keyId", "value": "", "type": "query", "description": "The Id of the public key (kid)." } ] }, "docs": "Retrieves the Public Key configured for verifying the JSON Web Tokens (JWT) issued by the Login API by the Application Id. OR Retrieves the Public Key configured for verifying JSON Web Tokens (JWT) by the key Id (kid)." }, { "info": { "name": "reconcileJWTWithId", "type": "http" }, "http": { "method": "POST", "url": "http://localhost:9011/api/jwt/reconcile", "body": { "type": "json", "data": "{}" } }, "docs": "Reconcile a User to FusionAuth using JWT issued from another Identity Provider." }, { "info": { "name": "retrieveRefreshTokensWithId", "type": "http" }, "http": { "method": "GET", "url": "http://localhost:9011/api/jwt/refresh", "params": [ { "name": "userId", "value": "", "type": "query", "description": "The Id of the user." } ] }, "docs": "Retrieves the refresh tokens that belong to the user with the given Id." }, { "info": { "name": "exchangeRefreshTokenForJWTWithId", "type": "http" }, "http": { "method": "POST", "url": "http://localhost:9011/api/jwt/refresh", "body": { "type": "json", "data": "{}" } }, "docs": "Exchange a refresh token for a new JWT." }, { "info": { "name": "deleteJwtRefresh", "type": "http" }, "http": { "method": "DELETE", "url": "http://localhost:9011/api/jwt/refresh", "params": [ { "name": "userId", "value": "", "type": "query", "description": "The unique Id of the user that you want to delete all refresh tokens for." }, { "name": "applicationId", "value": "", "type": "query", "description": "The unique Id of the application that you want to delete refresh tokens for." }, { "name": "token", "value": "", "type": "query", "description": "The refresh token to delete." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Revokes refresh tokens using the information in the JSON body. The handling for this method is the same as the revokeRefreshToken method and is based on the information you provide in the RefreshDeleteRequest object. See that method for additional information. OR Revoke all refresh tokens that belong to a user by user Id for a specific application by applicationId. OR Revoke all refresh tokens that belong to a user by user Id. OR Revoke all refresh tokens that belong to an application by applica" }, { "info": { "name": "retrieveRefreshTokenByIdWithId", "type": "http" }, "http": { "method": "GET", "url": "http://localhost:9011/api/jwt/refresh/:tokenId", "params": [ { "name": "tokenId", "value": "", "type": "path", "description": "The Id of the token." } ] }, "docs": "Retrieves a single refresh token by unique Id. This is not the same thing as the string value of the refresh token. If you have that, you already have what you need." }, { "info": { "name": "revokeRefreshTokenByIdWithId", "type": "http" }, "http": { "method": "DELETE", "url": "http://localhost:9011/api/jwt/refresh/:tokenId", "params": [ { "name": "tokenId", "value": "", "type": "path", "description": "The unique Id of the token to delete." } ] }, "docs": "Revokes a single refresh token by the unique Id. The unique Id is not sensitive as it cannot be used to obtain another JWT." }, { "info": { "name": "validateJWTWithId", "type": "http" }, "http": { "method": "GET", "url": "http://localhost:9011/api/jwt/validate", "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Validates the provided JWT (encoded JWT string) to ensure the token is valid. A valid access token is properly signed and not expired.

This API may be used to verify the JWT as well as decode the encoded JWT into human readable identity claims." }, { "info": { "name": "vendJWTWithId", "type": "http" }, "http": { "method": "POST", "url": "http://localhost:9011/api/jwt/vend", "body": { "type": "json", "data": "{}" } }, "docs": "It's a JWT vending machine! Issue a new access token (JWT) with the provided claims in the request. This JWT is not scoped to a tenant or user, it is a free form token that will contain what claims you provide.

The iat, exp and jti claims will be added by FusionAuth, all other claims must be provided by the caller. If a TTL is not provided in the request, the TTL will be retrieved from the default Tenant or the Tenant specified on the request either by way of the X-FusionAuth-TenantId re" } ] } ], "bundled": true }