The pushed authorization request endpoint (/par) promotes OAuth security by allowing the authorization server to authenticate the client before any user interaction happens. The increased confidence in the client's identity during the authorization process means the authorization server can refuse illegitimate requests much earlier in the process. This process prevents attempts to spoof clients or otherwise tamper with or misuse an authorization request and provides a simple way to make a confidential and integrity-protected request.
The /par endpoint allows an OAuth 2.0 client to push the payload of an authorization request directly to the authorization server. The authorization server provides a request URI value in the response. The request URI is a reference to the authorization request payload data in a subsequent call to the /authorize endpoint through a user agent.
Obtained during either manual client registration or through the Dynamic Client Registration API
A challenge for PKCE. The challenge is verified in the access token request.
Method used to derive the code challenge for PKCE
The display parameter to be passed to the external identity provider when performing social login
An Okta extension to the OpenID specification. The ID of the identity provider to use if there's no Okta session.
An Okta extension to the OpenID specification. A space-delimited list of scopes to be provided to the external identity provider when performing social login. These scopes are used in addition to the scopes already configured for the identity provider.
Allowable elapsed time, in seconds, since the last time the end user was actively authenticated by Okta
A value that's returned in the ID token. It's used to mitigate replay attacks. The value is required for implicit and hybrid flows, but optional for auth code flows. See OIDC Specs.
If you don't specify the prompt parameter, the standard behavior occurs:
- If an Okta session already exists and meets the assurance requirements of the app, the user is silently authenticated. Otherwise, Okta prompts the user to authenticate.
- If scopes are requested that require consent and consent isn't yet given by the authenticated user, Okta prompts the user to give consent.
Callback location where you want the authorization code or tokens sent to. It must match the value preregistered in Okta during client registration.
Used to push a Request Object JWT to the authorization server
How Okta should return the authorization response. If id_token or token is specified in the response_type, then query isn't allowed as a response mode. Defaults to fragment in implicit and hybrid flows.
The Referrer-Policy header is automatically included in the response when either the fragment or query parameter values are used. The header is set to Referrer-Policy: no-referrer.
Any combination of code, token, and id_token. The combination determines the flow.
Okta one-time session token. This is an Okta extension to the OpenID specification. The sessionToken allows an API-based user sign-in flow.
curl -i -X POST \
https://okta-subdomain.pixtulate.com/oauth2/v1/par \
-H 'Content-Type: application/json' \
-d '{
"client_id": "string",
"code_challenge": "string",
"code_challenge_method": "string",
"display": "string",
"idp": "string",
"idp_scope": "string",
"login_hint": "string",
"max_age": 0,
"nonce": "string",
"prompt": "string",
"redirect_uri": "string",
"request": "string",
"response_mode": "string",
"response_type": "string",
"scope": "string",
"sessionToken": "string",
"state": "string"
}'{ "request_uri": "urn:okta:Y1hIQ3ZqYjFodEZMOVJ3TUF4ZHRPZjJuNFZRV2ZWQ044MmFoX2VIT2oyNDo", "expires_in": 3600 }