> ## 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.

# Update SCIM Connection

> Update a SCIM connection using the Stytch Vanilla JS SDK

export const action_0 = "update";

export const resource_0 = "stytch.scim";

`scim.updateConnection` wraps the [Update SCIM Connection](/api-reference/b2b/api/scim/connection-management/update-scim-connection) API endpoint.

<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="connection_id" type="string" required>
  The ID of the SCIM connection.
</ParamField>

<ParamField path="identity_provider" type="string">
  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>

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

<ParamField path="scim_group_implicit_role_assignments" type="array" required>
  An array of SCIM group implicit role assignments. Each object in the array must contain a `group_id` and a `role_id`.

  <Expandable title="properties">
    <ParamField path="group_id" type="string" required>
      The ID of the group.
    </ParamField>

    <ParamField path="role_id" type="string" required>
      The ID of the role.
    </ParamField>
  </Expandable>

  <Note>
    If attempting to modify the `scim_group_implicit_role_assignments` the caller must have the `update.settings.implicit-roles` permission on the `stytch.organization` resource.
  </Note>
</ParamField>

## Response

<ResponseField name="connection" type="object">
  The [SCIM Connection object](/api-reference/b2b/api/scim/scim-connection-object) updated 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');

    // Update SCIM connection
    const updateConnection = async (displayName) => {
      const response = await stytch.scim.updateConnection({
        connection_id: 'scim-connection-test-d6a0eaa4-ebf3-4982-bd1f-217f8a04a233',
        display_name: displayName,
      });
      console.log('SCIM connection updated:', response);
    };

    updateConnection('Updated Okta SCIM');
    ```
  </RequestExample>
</Panel>
