Skip to main content

Exchange Assertion for Access Token

Send your signed JWT assertion to the RynoPay token endpoint to receive a platform access token.

Request​

POST https://prod.rynopay.io/auth/partner/v1/token
Content-Type: application/json

{
"grantType": "urn:ietf:params:oauth:grant-type:jwt-bearer",
"assertion": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjEyMzQ1...",
"scope": "partner.read partner.write"
}
FieldRequiredDescription
grantTypeYesMust be exactly urn:ietf:params:oauth:grant-type:jwt-bearer
assertionYesYour signed JWT from the previous step
scopeNoSpace-separated scopes to request. Defaults to all scopes granted to your account

Successful response (200 OK)​

{
"accessToken": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9...",
"tokenType": "Bearer",
"expiresIn": 3600,
"scope": "partner.read partner.write"
}
FieldDescription
accessTokenYour platform access token
tokenTypeAlways Bearer
expiresInToken lifetime in seconds (3600 = 1 hour)
scopeThe scopes granted for this token

Using the access token​

Include the access token in the Authorization header for all API requests:

GET https://prod.rynopay.io/api/partner/some-endpoint
Authorization: Bearer eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9...
Content-Type: application/json

The access token is validated at the gateway without any external calls, so authentication adds minimal latency to your requests.

Error responses​

If the token exchange fails, you will receive a 400 Bad Request with an error code. See the Error Reference for all possible error codes.