This API exists to help your authorization server provide its own introspection API which complies with RFC 7662 (OAuth 2.0 Token Introspection).
Full description
action from
the response and take the following steps according to the value.
In general, a client application accesses a protected resource endpoint of a service with an access
token, and the implementation of the endpoint checks whether the presented access token has enough
privileges (= scopes) to access the protected resource before returning the protected resource to
the client application. To achieve this flow, the endpoint implementation has to know detailed
information about the access token. Authlete /auth/introspection API can be used to get such information.
The response from /auth/introspection API has some parameters. Among them, it is action parameter
that the authorization server implementation should check first because it denotes the next action
that the authorization server implementation should take. According to the value of action, the
authorization server implementation must take the steps described below.action is INTERNAL_SERVER_ERROR, it means that the request from the authorization
server implementation was wrong or that an error occurred in Authlete.
In either case, from the viewpoint of the client application, it is an error on the server side.
Therefore, the service implementation should generate a response to the client application with
HTTP status of “500 Internal Server Error”.
The value of responseContent is a JSON string which describes the error, so it can be used
as the entity body of the response if you want. Note that, however, RFC 7662 does not mention anything about the response
body of error responses.action is BAD_REQUEST, it means that the request from the client application
is invalid. This happens when the request from the client did not include the token request parameter.
See “2.1. Introspection Request” in
RFC 7662 for details about requirements for introspection requests.
The HTTP status of the response returned to the client application should be “400 Bad Request”.
The value of responseContent is a JSON string which describes the error, so it can be used
as the entity body of the response if you want. Note that, however, RFC 7662
does not mention anything about the response body of error responses.
The following illustrates an example response which the introspection endpoint of the authorization
server implementation generates and returns to the client application.action is OK, the request from the client application is valid.
The HTTP status of the response returned to the client application must be “200 OK” and its content
type must be application/json.
The value of responseContent is a JSON string which complies with the introspection response
defined in “2.2. Introspection Response” in RFC7662.Authenticate every request with a Service Access Token or Organization Token.
Set the token value in the Authorization: Bearer <token> header.
Service Access Token: Scoped to a single service. Use when automating service-level configuration or runtime flows.
Organization Token: Scoped to the organization; inherits permissions across services. Use for org-wide automation or when managing multiple services programmatically.
Both token types are issued by the Authlete console or provisioning APIs.
A service ID.
Request parameters which comply with the introspection request defined in "2.1. Introspection Request" in RFC 7662.
The implementation of the introspection endpoint of your authorization server will receive an
HTTP POST [RFC 7231] request with parameters
in the application/x-www-form-urlencoded format. It is the entity body of the request that
Authlete's /api/auth/introspection/standard API expects as the value of parameters.
Flag indicating whether to include hidden properties in the output.
Authlete has a mechanism whereby to associate arbitrary key-value pairs with an access token.
Each key-value pair has a hidden attribute. By default, key-value pairs whose hidden attribute
is set to true are not embedded in the standard introspection output.
If the withHiddenProperties request parameter is given and its value is true, `/api/auth/introspection/standard
API includes all the associated key-value pairs into the output regardless of the value of the
hidden attribute.
The URI of the resource server making the introspection request.
If the rsUri request parameter is given and the token has audience values, Authlete checks if
the value of the rsUri request parameter is contained in the audience values. If not contained,
Authlete generates an introspection response with the active property set to false.
The rsUri request parameter is required when the resource server requests a JWT introspection
response, i.e., when the value of the httpAcceptHeader request parameter is set to "application/token-introspection+jwt".
The value of the HTTP Accept header in the introspection request.
If the value of the httpAcceptHeader request parameter is "application/token-introspection+jwt",
Authlete generates a JWT introspection response. See "4. Requesting a JWT Response"
of "RFC 9701: JWT Response for OAuth Token Introspection"
for more details.
The JWS alg algorithm for signing the introspection response. This parameter corresponds to
introspection_signed_response_alg defined in "6. Client Metadata"
of "RFC 9701: JWT Response for OAuth Token Introspection".
The default value is RS256.
The JWE alg algorithm for encrypting the introspection response. This parameter corresponds
to introspection_encrypted_response_alg defined in "6. Client Metadata"
of "RFC 9701: JWT Response for OAuth Token Introspection".
If the introspectionEncryptionAlg request parameter is specified, Authlete generates a JWT
introspection response encrypted with the algorithm by this property and the algorithm specified by
the introspectionEncryptionEnc request parameter.
The JWE enc algorithm for encrypting the introspection response. This parameter corresponds
to introspection_encrypted_response_enc defined in "6. Client Metadata"
of "RFC 9701: JWT Response for OAuth Token Introspection".
The default value is A128CBC_HS256.
The shared key for signing the introspection response with a symmetric algorithm.
The sharedKeyForSign request parameter is required when the introspection response is requested
to be signed with a symmetric algorithm.
The shared key for encrypting the introspection response with a symmetric algorithm.
The sharedKeyForEncryption request parameter is required when the introspection response is
requested to be encrypted with a symmetric algorithm.
The public key for signing the introspection response with an asymmetric algorithm.
The publicKeyForEncryption request parameter is required when the introspection response is
requested to be encrypted with an asymmetric algorithm.
Token introspection completed successfully
The code which represents the result of the API call.
A short message which explains the result of the API call.
The next action that the authorization server implementation should take.
INTERNAL_SERVER_ERROR, BAD_REQUEST, OK, JWT The content that the authorization server implementation is to return to the client application.