Skip to content
Start free in Cloud

Start SSO login REST API

POST
/api/auth/sso/start
curl --request POST \
--url http://127.0.0.1:25737/api/auth/sso/start \
--header 'Content-Type: application/json' \
--data '{ "email": "hello@example.com", "invite_token": "example", "remember_me": true, "return_url": "example" }'

Resolves an enabled team OIDC provider from the submitted email or invitation, requires an existing membership, a pending invitation, or enabled trusted-domain auto-provisioning, and creates a short-lived state, nonce, and PKCE-protected authorization request. Existing password login remains available.

Media typeapplication/json
One of:
object
email
required
string format: email
invite_token

Invitation token used instead of email when starting SSO from invitation acceptance.

string
remember_me
boolean
return_url

Optional same-origin application path. Unsafe or authentication paths fall back to /.

string
Examplegenerated
{
"email": "hello@example.com",
"invite_token": "example",
"remember_me": true,
"return_url": "example"
}

OIDC authorization URL

Media typeapplication/json
object
auth_url
required
string format: uri
Examplegenerated
{
"auth_url": "https://example.com"
}

Invalid email or no enabled SSO provider for the email domain

Media typeapplication/json
object
message
string
Examplegenerated
{
"message": "example"
}

The account has no team membership, pending invitation, or permitted JIT access, or a managed-cloud limit was reached

Media typeapplication/json
object
message
string
Examplegenerated
{
"message": "example"
}

Configured SSO provider is unavailable

Media typeapplication/json
object
message
string
Examplegenerated
{
"message": "example"
}