Skip to content

Organizations

Save SSO provider

Create or update an organization identity provider’s configuration on a verified domain. Requires organization Admin access and SSO entitlement. Existing providers return 200; creation returns 201. Omission behavior is field-specific; OIDC’s redacted secret marker preserves the saved secret. Identity changes with linked accounts conflict. Workspace API keys return `403`; use a personal API key or scoped OAuth token. OAuth scope: `api:write`.

POST/api/v2/organizations/{organizationId}/sso/providers

Create or update an organization identity provider’s configuration on a verified domain. Requires organization Admin access and SSO entitlement. Existing providers return 200; creation returns 201. Omission behavior is field-specific; OIDC’s redacted secret marker preserves the saved secret. Identity changes with linked accounts conflict. Workspace API keys return 403; use a personal API key or scoped OAuth token.

OAuth scope: api:write.

Authentication

Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.

Send X-API-Key in the request header.

Alternatively

Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.

Authorization: Bearer YOUR_ACCESS_TOKEN

Required scopes: api:write

OAuth flows
json
{
  "authorizationCode": {
    "authorizationUrl": "https://www.sim.ai/api/auth/oauth2/authorize",
    "tokenUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "refreshUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "scopes": {
      "api:read": "Read your workspaces, workflows, files, tables, and logs",
      "api:write": "Read, create, change, run, and delete resources in your workspaces",
      "offline_access": "Stay signed in without asking again"
    }
  }
}

OAuth scope: api:write.

Path parameters

organizationIdstringRequired

Organization whose single sign-on settings and verified domains are managed.

minLength
1

Request body

Required

Provider protocol, verified domain, and identity-provider configuration. Omission behavior is field-specific.

SaveSsoProviderBody

Provider protocol, verified domain, and identity-provider configuration. Omission behavior is field-specific.

Schema details

Exactly one of

Option 1object
15 fields
providerTypestringRequired

Configure an OpenID Connect identity provider.

const
oidc
providerIdstringRequired

Globally unique provider ID; saving an existing provider replaces its supplied configuration.

minLength
1
maxLength
255
issuerstringRequired

Identity provider issuer URL.

format
uri
maxLength
2048
domainstringRequired

Email domain already verified by this organization.

minLength
1
maxLength
255
jitProvisioningEnabledboolean

Allow SSO sign-in to provision organization membership, subject to eligibility and available seats.

default
true
mappingobject

Identity-provider claims mapped to user fields.

default
{"id":"sub","email":"email","name":"name","image":"picture"}
4 fields
idstring

Claim holding the stable identity identifier.

default
sub
minLength
1
maxLength
255
emailstring

Claim holding the email address.

default
email
minLength
1
maxLength
255
namestring

Claim holding the display name.

default
name
minLength
1
maxLength
255
imagestring

Claim holding the avatar URL.

default
picture
minLength
1
maxLength
255

Additional properties are not allowed.

clientIdstringRequired

Identity provider client identifier.

minLength
1
maxLength
1024
clientSecretstringRequired

Write-only client secret; the redacted marker from Get SSO Provider preserves an existing secret.

minLength
1
maxLength
8192
writeOnly
true
scopesarray

OIDC scopes; offline_access is omitted.

default
["openid","profile","email"]
maxItems
50
Schema details
Array itemstring
minLength
1
maxLength
255
pkceboolean

Use PKCE for the authorization flow.

default
true
authorizationEndpointstring

Optional authorization endpoint; otherwise resolved through issuer discovery.

format
uri
maxLength
2048
tokenEndpointstring

Optional token endpoint; otherwise resolved through issuer discovery.

format
uri
maxLength
2048
userInfoEndpointstring

Optional UserInfo endpoint.

format
uri
maxLength
2048
skipUserInfoEndpointboolean

Read identity claims from the ID token instead of calling UserInfo.

default
false
jwksEndpointstring

Optional signing-key endpoint; otherwise resolved through issuer discovery.

format
uri
maxLength
2048

Additional properties are not allowed.

Option 2object
15 fields
providerTypestringRequired

Configure a SAML identity provider.

const
saml
providerIdstringRequired

Globally unique provider ID; saving an existing provider replaces its supplied configuration.

minLength
1
maxLength
255
issuerstringRequired

Identity provider issuer URL.

format
uri
maxLength
2048
domainstringRequired

Email domain already verified by this organization.

minLength
1
maxLength
255
jitProvisioningEnabledboolean

Allow SSO sign-in to provision organization membership, subject to eligibility and available seats.

default
true
mappingobject

Identity-provider claims mapped to user fields.

default
{"id":"sub","email":"email","name":"name","image":"picture"}
4 fields
idstring

Claim holding the stable identity identifier.

default
sub
minLength
1
maxLength
255
emailstring

Claim holding the email address.

default
email
minLength
1
maxLength
255
namestring

Claim holding the display name.

default
name
minLength
1
maxLength
255
imagestring

Claim holding the avatar URL.

default
picture
minLength
1
maxLength
255

Additional properties are not allowed.

entryPointstringRequired

Identity provider SAML sign-in endpoint.

format
uri
maxLength
2048
certstringRequired

Identity provider signing certificate.

minLength
1
maxLength
65536
callbackUrlstring

SAML callback URL; defaults to this provider’s Sim callback.

format
uri
maxLength
2048
audiencestring

SAML audience; omission preserves the saved value.

maxLength
2048
wantAssertionsSignedboolean

Require signed assertions; omission preserves the saved value.

signatureAlgorithmstring

Signature algorithm accepted by the SAML configuration validator; omission preserves the saved value.

maxLength
255
digestAlgorithmstring

Digest algorithm accepted by the SAML configuration validator; omission preserves the saved value.

maxLength
255
identifierFormatstring

SAML NameID format; omission clears the saved value.

maxLength
2048
idpMetadatastring

Identity provider metadata XML; omission clears the saved document.

maxLength
102400

Additional properties are not allowed.

Responses

200

The saved provider ID, protocol, and whether it was created.

object

The saved provider ID, protocol, and whether it was created.

1 field
dataobjectRequired

Response data.

3 fields
providerIdstringRequired

Saved provider identifier.

minLength
1
providerTypestringRequired

Saved identity provider protocol.

enum
["oidc","saml"]
createdbooleanRequired

Whether a new provider was created.

Additional properties are not allowed.

Additional properties are not allowed.

Response headers

X-RateLimit-Limitinteger

Maximum requests allowed in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Remaininginteger

Requests remaining in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Resetstring

ISO 8601 timestamp when the current rate-limit window resets.

format
date-time
pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Was this helpful?
Suggest an edit