Verify External User
Auth Endpoints
Verify External User
Verify or create a user from an external auth system JWT
POST
Verify External User
Accepts a JWT signed by your own auth system and returns Replyke tokens. If the user does not exist in the project, they are created. If they do exist, their profile is updated with any changed fields from the JWT payload. The JWT must be signed with the RSA private key corresponding to the public key configured in your Replyke project settings.Documentation Index
Fetch the complete documentation index at: https://docs.replyke.com/llms.txt
Use this file to discover all available pages before exploring further.
Body Parameters
A JWT signed with your project’s RSA private key (RS256 algorithm). The
payload must include
sub (external user ID) and iss (your Replyke project
ID). The userData claim may contain optional profile fields.JWT Payload Structure
TheuserJwt must contain:
| Claim | Required | Description |
|---|---|---|
sub | Yes | External user ID. Stored as foreignId on the Replyke user. |
iss | Yes | Your Replyke project ID. Must match the request project. |
userData | No | Object with optional profile fields (see below). |
userData fields
| Field | Type | Description |
|---|---|---|
email | string | Email address |
name | string | Display name |
username | string | Username |
avatar | string | Avatar URL |
bio | string | Bio text |
location | object | { latitude, longitude } |
birthdate | string | ISO 8601 date |
metadata | object | Public custom data |
secureMetadata | object | Private custom data |
Response
true on success.Short-lived JWT access token. Expires in 30 minutes.
Long-lived JWT refresh token. Expires in 30 days.
The verified or created user’s profile.
Error Responses
Missing JWT Keys — 403
Missing JWT Keys — 403
Invalid Token — 403
Invalid Token — 403
Project ID Mismatch — 403
Project ID Mismatch — 403
iss claim in the JWT does not match the request project ID.Username Already Taken — 409
Username Already Taken — 409

