Get SSO Configuration
Read the full configuration of one SSO connection on your active account. Same shape as a single entry from /sso/config. The client_secret is never returned — it's encrypted at rest and only used internally for the OAuth code exchange. Requires the settings:read account permission.
Path parameters
id int64 Req
SSO config ID.
Response (200 OK)
Same fields as list entries. provider_type is one of google, github, oidc, or saml. The domain_verify_record_name and domain_verify_record_value fields are only present while an oidc/saml config is unverified (domain_verified is false) — publish that DNS TXT record, then call POST /v1/sso/config/{id}/verify-domain. google/github configs are auto-verified and omit these fields.
Errors
401 Unauthorized
Missing auth.
403 Forbidden
No active account, or the caller lacks the
settings:read permission on it.404 Not Found
Config doesn't exist or doesn't belong to the calling account.
Request
curl "https://api.ngris.com/v1/sso/config/1" \
-H "X-API-KEY: <your_api_key>"
Python
from ngris import Ngris
client = Ngris(api_key="<your_api_key>")
s = client.sso.get("1")
print(s.email_domain, s.provider_type)
Response — 200 OK
{
"id": 1,
"account_id": 42,
"email_domain": "acme.com",
"provider_type": "oidc",
"client_id": "0oa1234abc",
"auth_url": "https://acme.example-idp.com/oauth2/v1/authorize",
"token_url": "https://acme.example-idp.com/oauth2/v1/token",
"userinfo_url": "https://acme.example-idp.com/oauth2/v1/userinfo",
"scopes": "openid profile email",
"status": "active",
"enforced": true,
"domain_verified": false,
"domain_verify_record_name": "_ngris-sso-verify.acme.com",
"domain_verify_record_value": "ngris-sso-verify=3f9a0c21b7e4",
"last_error_message": "",
"last_tested_at": "2026-06-30T12:00:00Z",
"created_at": "2026-06-01T09:00:00Z",
"updated_at": "2026-06-30T12:00:00Z"
}