Step 2: Receive the code

After the user approves or denies your app in Step 1, their browser returns to your redirect_uri with the result in the query string. This request arrives at your server; there is no Shout About Us endpoint to call in this step. Check that state matches the value you stored, then pass the code to Step 3 straight away. The code works once and expires after 10 minutes.

Prerequisites: Step 1: Send the user to sign in, with the state you sent kept in the user's session.

Authentication: Public (no token). No token is involved. Check state to confirm the request belongs to a sign-in you started; if it doesn't match, stop and discard the code.

Rate limit: not applicable; this request is to your server.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string

On approval: the one-time authorization code. Exchange it within 10 minutes in Step 3.

string
Defaults to RANDOM_STRING

The state you sent in Step 1, unchanged. Sent on approval and on an error, when you sent one.

string
enum
Defaults to access_denied

On an error: access_denied (the user declined), invalid_scope, login_required or consent_required (with prompt=none).

Allowed:
string
Defaults to The resource owner or authorization server denied the request.

On an error: a readable description.

string
Defaults to The user denied the request

On an error, sometimes: extra detail, for example The user denied the request.

Response
200

Your app decides what to return.

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here!