Exchange an authorization code
API Docs with browser clientExchange an authorization code (from the redirect) plus the PKCE code verifier for the account JWT. Single-use; verifies the code is bound to the same client_id and redirect_uri.
In: header
Header Parameters
Optional delegated account address to authenticate as when the signer is an approved signer. Preferred header name.
Legacy alias for x-namefi-erc1271-account. When multiple delegated account headers are present, x-namefi-eip7702-account takes precedence, then x-namefi-erc1271-account.
Optional delegated account address to authenticate as when the signer is an approved signer. Preferred ERC-1271 header name.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.namefi.dev/v-next/auth/oauth/token" \ -H "Content-Type: application/json" \ -d '{ "code": "string", "codeVerifier": "string", "clientId": "string", "redirectUri": "http://example.com" }'{
"token": "string",
"tokenType": "Bearer",
"expiresAt": "2019-08-24T14:15:22Z",
"user": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"primaryEmail": "string",
"walletAddress": "string"
}
}{
"defined": true,
"code": "BAD_REQUEST",
"status": 400,
"message": "Bad Request",
"data": null
}{
"defined": true,
"code": "UNAUTHORIZED",
"status": 401,
"message": "Unauthorized",
"data": null
}{
"defined": true,
"code": "PAYMENT_REQUIRED",
"status": 402,
"message": "Payment Required",
"data": null
}{
"defined": true,
"code": "FORBIDDEN",
"status": 403,
"message": "Forbidden",
"data": null
}{
"defined": true,
"code": "NOT_FOUND",
"status": 404,
"message": "Not Found",
"data": null
}{
"defined": true,
"code": "NOT_ACCEPTABLE",
"status": 406,
"message": "Not Acceptable",
"data": null
}{
"defined": true,
"code": "TIMEOUT",
"status": 408,
"message": "Request Timeout",
"data": null
}{
"defined": true,
"code": "CONFLICT",
"status": 409,
"message": "Conflict",
"data": null
}{
"defined": true,
"code": "PRECONDITION_FAILED",
"status": 412,
"message": "Precondition Failed",
"data": null
}{
"defined": true,
"code": "TOO_MANY_REQUESTS",
"status": 429,
"message": "Too Many Requests",
"data": null
}{
"defined": true,
"code": "INTERNAL_SERVER_ERROR",
"status": 500,
"message": "Internal Server Error",
"data": null
}