PUT/v2/sso-connections/{uuid}

Update an SSO connection

Updates an OpenID Connect connection. Send only the fields to change: the others keep their value. SAML and Other providers connections are changed in the dashboard.

Request

Path Parameters
uuidstringrequired
The connection UUID
Example:"sso_kQwPzRtLmYbN4v"
Bodyapplication/json
namestringoptional
Name of the connection, shown in the dashboard. At most 255 characters.
allowed_domainsarray<string>optional
Replaces the list of email domains allowed to sign in. Send [] to let in any account the identity provider signs in. At most 100 domains.
issuerstringoptional
Issuer URL or domain of the identity provider, with the same rules as on create. Another spelling of the saved issuer (with or without https://, a trailing slash or the discovery path) is no change.
client_idstringoptional
Client ID of the application. A new client ID needs its client_secret in the same request.
client_secretstringoptional
New client secret, for example after a rotation in the identity provider. When omitted, the saved secret is kept. Never returned.

Identity provider changes

When issuer, client_id or client_secret changes, Hyperping checks the identity provider again, as on create, before saving anything. If the check fails, the request fails with 400 and the connection stays as it was, name and domains included. Values equal to the saved ones trigger no check.

Response

Returns the updated connection object.

Errors

Error responses
400invalid body
A value is not valid, such as an empty name or a malformed domain
400identity provider refused
The new settings failed the identity provider check. The body has error, code and checks, as on create. A new client_id sent without its secret fails with client_secret_missing
400managed in the dashboard
The connection is not an OpenID Connect connection
403read-only key
The API key has read-only permissions
404SSO connection not found
No connection with this UUID in the API key's project
RequestcURL
curl -X PUT https://api.hyperping.io/v2/sso-connections/sso_kQwPzRtLmYbN4v \
  -H "Authorization: Bearer ${API_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "client_secret": "YOUR_NEW_CLIENT_SECRET",
    "allowed_domains": ["acme.com", "acme.de"]
  }'
200 OKJSON
{
  "message": "SSO connection updated",
  "connection": {
    "uuid": "sso_kQwPzRtLmYbN4v",
    "name": "Acme employees",
    "provider": "oidc",
    "allowed_domains": ["acme.com", "acme.de"],
    "active": true,
    "configured": true,
    "issuer": "https://acme.eu.auth0.com/",
    "client_id": "x8Qm2LkP0vZr7TnY4bWc",
    "has_client_secret": true,
    "redirect_uri": "https://api.hyperping.io/v1/auth/sso/oidc/callback",
    "created_at": "2026-10-15T09:12:44.000Z",
    "updated_at": "2026-10-15T16:03:21.000Z"
  }
}
400 Bad RequestJSON
{
  "error": "This SSO connection is managed in the dashboard: only OpenID Connect connections can be changed through the API."
}