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.