> ## Documentation Index
> Fetch the complete documentation index at: https://stytch.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Create SAML Connection

> Create a SAML SSO connection using the Stytch Vanilla JS SDK

export const action_0 = "create";

export const resource_0 = "stytch.sso";

export const organization = "Represents an instance or tenant in your application, typically mapping to each of your top-level customers.";

export const member = "Represents an individual end user's account within a given Organization, uniquely identified within that Organization by their email address.";

`sso.saml.createConnection` wraps the [Create SAML Connection](/api-reference/b2b/api/sso/saml/create-saml-connection) API endpoint. The `organization_id` will be automatically inferred from the logged-in <Tooltip tip={member}>Member's</Tooltip> session. This method cannot be used to create SAML connections in other <Tooltip tip={organization}>Organizations</Tooltip>.

<Note>
  **RBAC Enforced Method**

  This method requires a valid Session for a member with permission to perform the **{action_0} Action** on the **{resource_0} Resource**.

  Before using this method, enable **Member actions & organization modifications** in the [Frontend SDK page](https://stytch.com/dashboard/sdk-configuration). To learn more, see our [RBAC guide](/multi-tenant-auth/enterprise-ready/rbac/create-rbac-policy).
</Note>

### Parameters

<ParamField path="display_name" type="string" required>
  A human-readable display name for the connection.
</ParamField>

<ParamField path="identity_provider" type="string" required>
  Name of the IdP. Enum with possible values: `classlink`, `cyberark`, `duo`, `google-workspace`, `jumpcloud`, `keycloak`, `miniorange`, `microsoft-entra`, `okta`, `onelogin`, `pingfederate`, `rippling`, `salesforce`, `shibboleth`, or `generic`.

  Specifying a known provider allows Stytch to handle any provider-specific logic.
</ParamField>

### Response

<ResponseField name="connection" type="object">
  The [SAML Connection object](/api-reference/b2b/api/sso/saml-connection-object) created by this API call.
</ResponseField>

<ResponseField name="request_id" type="string">
  Globally unique UUID that is returned with every API call. This value is important to log for debugging purposes; we
  may ask for this value to help identify a specific API call when helping you debug an issue.
</ResponseField>

<ResponseField name="status_code" type="number">
  The HTTP status code of the response. Stytch follows standard HTTP response status code patterns, e.g. 2XX values
  equate to success, 3XX values are redirects, 4XX are client errors, and 5XX are server errors.
</ResponseField>

<Panel>
  <RequestExample>
    ```javascript theme={null}
    import { StytchB2BClient } from '@stytch/vanilla-js/b2b';

    const stytch = new StytchB2BClient('public-token-test-b8c84de4-7d58-4ffc-9341-432b56596862');

    // Create SAML connection
    const createConnection = async () => {
      const response = await stytch.sso.saml.createConnection({
        display_name: 'Acme Corp SAML',
        identity_provider: 'okta',
      });
      console.log('Created connection:', response.connection);
    };

    createConnection();
    ```
  </RequestExample>
</Panel>
