---
title: "Setup SSO with SAML for the workspace"
method: PATCH
path: "/api/sso/saml"
tags: ["SSO"]
---

# Setup SSO with SAML for the workspace

`PATCH /api/sso/saml`

## Request

- Base URL: `https://api.atono.io`
- URL: `https://api.atono.io/api/sso/saml`
- Auth: API key in header `X-API-KEY`

Configure a third-party SAML identity provider for SSO authentication. Requires admin privileges.

## Request body

- RequestSsoSamlConfigurationUpdateResource
  - `data` SsoSamlConfigurationUpdateResource, required: The configuration for the SSO provider.
    - `type` string, required: Identifies the type of resource.
    - `id` 'SAML', required: Protocol for SSO configuration: - `SAML`: Supports SAML 2.0.
    - `attributes` SsoSamlConfigurationUpdateResourceAttributes: Contains the structured data fields that describe the resource, such as properties, settings, and timestamps.
      - `providerMetadataUrl` string, uri, required: The metadata URL from the IdP for SSO configuration
      - `mode` 'INACTIVE' | 'TEST' | 'ACTIVE': SSO configuration mode. A value between 'INACTIVE', 'TEST', or 'ACTIVE'.

## Response `200`

SSO provider configured successfully

- SingleResourceBodySsoSamlConfigurationResource
  - `data` SsoSamlConfigurationResource: The configuration for the SSO provider.
    - `type` string: Identifies the type of resource.
    - `id` 'SAML', required: Protocol for SSO configuration: - `SAML`: Supports SAML 2.0.
    - `attributes` SsoSamlConfigurationResourceAttributes: Contains the structured data fields that describe the resource, such as properties, settings, and timestamps.
      - `loginUrl` string, uri: URL to use for SSO login
      - `providerMetadataUrl` string, uri: The metadata URL from the IdP for SSO configuration
      - `mode` 'INACTIVE' | 'TEST' | 'ACTIVE': SSO configuration mode. A value between 'INACTIVE', 'TEST', or 'ACTIVE'.
    - `meta` SsoSamlConfigurationResourceMetadata: Extra information about the resource, including calculated values or non-standard fields.
      - `setupCompleted` boolean, required
      - `samlResponseUrl` string, uri: URL where the IdP must send the SAML auth response
      - `samlAudience` string: Audience for the SAML auth response validation
  - `errors` ProblemDetail[]: A list of errors returned with the response, if the request could not be completed. Each object includes details about a specific issue.
    - `id` string: A unique identifier for this specific error occurrence. Useful for debugging and support.
    - `links` object, nullable: Links related to the error. May include a URL to relevant documentation or support resources.
    - `status` integer: The HTTP status code associated with the error (e.g., 400, 404, 422).
    - `code` string: An internal code that identifies the type or category of the error.
    - `title` string: A short summary of the problem.
    - `source` ProblemSource: Identifies the part of the request that caused the error. Only one source is present per error.
      - `pointer` string, nullable: Specifies the path to the field in the request body that caused the error.
      - `parameter` string, nullable: Identifies a query parameter in the request URL that caused the error.
      - `header` string, nullable: Identifies the request header that caused the error.
    - `detail` string: Additional information about the error, intended to provide more context than the title.
    - `meta` unknown
  - `meta` unknown
  - `included` unknown[]: A list of related resources included in the response, either automatically by the API or in response to an include parameter in the request. Each item contains a full resource object (e.g., users, teams, acceptance criteria).
    - unknown
  - `links` unknown

## Other responses

- `400`: Invalid request - provider metadata URL not accessible
- `401`: Authentication required
- `403`: Admin privileges required
- `500`: Failed to configure SSO provider

---

[API](https://skmtc.dev/atono/apis/backend-api.md) · [All operations](https://skmtc.dev/atono/apis/backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/atono/apis/backend-api/revisions/78a57b1d8c3d?raw)
