userportal-public

Verify Sso Jwt Token

Verify a JWT-based SSO token for automatic roadmap authentication.

This endpoint validates JWT tokens generated by customers using their tenant's SSO secret. The token is passed via URL parameter: ?psst={jwt}

The product (and therefore the tenant) is resolved from the portal URL (subdomain or verified custom domain), so tenant_id in the token is optional. Legacy tokens that include tenant_id are accepted and cross-checked against the resolved product's tenant.

Token structure: { "email": "user@example.com", // required "tenant_id": "tenant_xxx", // optional (derived from portal URL) "firstName": "John", // optional "lastName": "Doe", // optional "avatarUrl": "https://...", // optional "account": "{...}" // optional, JSON string }

On success, returns a session token and authenticated user info. The user is created/updated as a CRM contact.

post/userportal/sso/verify

Request

  • Base URL: https://api.feedback1.ai/api/v1
  • URL: https://api.feedback1.ai/api/v1/userportal/sso/verify
  • Auth: none declared

Headers

F1-Productstring

Request body

tokenstring required

JWT token from URL parameter (?psst=...)

Example request

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}

Response

Successful Response

successboolean required

Whether SSO authentication succeeded

session_tokenstring nullable

Session token for authenticated access

expires_atstring date-time nullable

When the session expires

messagestring nullable

Error message if failed

Example response

{
  "expires_at": "2024-01-01T12:00:00Z",
  "session_token": "roadmap_sso_abc123...",
  "success": true,
  "user": {
    "email": "john.doe@example.com",
    "firstName": "John",
    "lastName": "Doe",
    "tenant_id": "tenant_2abc123xyz"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.