SSO
Log in to Asqav through your identity provider via SAML 2.0. Enterprise tier. Works with Okta, Azure AD / Entra, Google Workspace, OneLogin, and any SAML 2.0 compliant IdP.
Service provider URLs
Every Enterprise organization has a dedicated SP endpoint. Replace {org_id} with your organization id (shown in Settings).
| Parameter | Value |
|---|---|
| SP Entity ID | https://www.asqav.com/saml/{org_id} |
| ACS URL | https://api.asqav.com/api/v1/saml/{org_id}/acs |
| SP Metadata | https://api.asqav.com/api/v1/saml/{org_id}/metadata |
| Login URL | https://api.asqav.com/api/v1/saml/{org_id}/login |
| Name ID format | emailAddress |
| Binding | HTTP-POST |
Identity provider setup
Create a SAML app in your IdP. Configure:
- Single Sign-On URL: the ACS URL above
- Audience / Entity ID: the SP Entity ID above
- Name ID format: EmailAddress
- Attribute mapping: send at minimum
email(mandatory) andname(optional). Common claim URIs likehttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddressare auto-detected.
Download the IdP metadata XML and extract the SSO URL, entity id, and X.509 certificate (PEM).
Register the config with Asqav
curl -X POST https://api.asqav.com/api/v1/saml \
-H "X-API-Key: sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"idp_entity_id": "https://idp.example.com/saml",
"idp_sso_url": "https://idp.example.com/sso",
"idp_x509_cert": "-----BEGIN CERTIFICATE-----\nMIID...\n-----END CERTIFICATE-----",
"attribute_mapping": {"email": "email", "name": "displayName"},
"require_encrypted_assertion": false
}'
To inspect or update the configuration later:
GET /api/v1/saml
PATCH /api/v1/saml
DELETE /api/v1/saml
Login flow
Send users to /api/v1/saml/{org_id}/login. Asqav redirects to your IdP. On success the IdP posts the assertion to the ACS URL, Asqav creates or links the user to your organization, and issues session cookies.
Off by default. Set allow_idp_initiated to true in the config if your IdP pushes assertions directly. SP-initiated flow is recommended for most deployments.
Verification
After configuring, open an incognito window and hit the login URL. A successful round trip lands you in the Asqav dashboard with a user provisioned from your IdP attributes. Errors are returned on the login page with query params like ?error=saml_failed or ?error=saml_no_email. Check your IdP attribute mapping if you see them.