SCIM provisioning
SCIM (System for Cross-domain Identity Management) is an standard
protocol used by Single Sign-On (SSO) services and identity providers
to provision/deprovision user accounts and groups. Zulip's SCIM
integration is currently beta and has a few limitations:
- Provisioning Groups is not yet implemented.
- It has only been fully tested and documented with Okta.
The instructions below explain how to configure SCIM in Okta for Zulip
Cloud customers. Like SAML, feature is currently only available in
Zulip Cloud with the Zulip Cloud Plus plan.
These instructions can also be used by self-hosters to set up the Okta
side of SCIM for their deployment.
- 
Before you begin, contact email support to receive
   the bearer token that Okta will use to authenticate to make its SCIM requests. 
- 
In your Okta Dashboard, go to Applicationsand chooseBrowse App Catalog.
 
- 
Search for SCIMand selectSCIM 2.0 Test App (Header Auth).
 
- 
Click Addand choose yourApplication label. For example, you can name itZulip SCIM.
 
- 
Continue to Sign-On Options. Leave theSAMLoptions, as this type of Okta application
   doesn't actually supportSAMLauthentication, and you'll need to set up a separate Okta app
   to activateSAMLfor your Zulip organization.
 
- 
In Credentials Details, setApplication username formattoEmailandUpdate application username ontoCreate and update.
 
- 
The Okta app has been added. Navigate to the Provisioningtab.
 
- 
Click Configure API Integrationand check theEnable API integrationbox.
   Okta will ask you for theBase URLandAPI token. TheBase URLshould beyourorganization.zulipchat.com/scim/v2and forAPI tokenyou'll set the value
   given to you by support. When you proceed to the next step, Okta will verify that
   these details are correct by making a SCIM request to the Zulip server.
 
- 
In the To Appsection of theProvisioningtab (which should be opened by default
   when you continue from the previous step), edit theProvisioning to Appsettings
   to enableCreate Users,Update User AttributesandDeactivate Users.
 
- 
In Attribute Mappings, remove all attributes exceptuserName,givenNameandfamilyName.
 
- 
Now the integration should be ready and you can Assignusers to
   the app to configure their Zulip accounts to be managed by
   SCIM. When you assign a user, Okta will check if the account exists
   in your Zulip organization and if it doesn't, the account will be
   created. Changes to the user's email or name in Okta will
   automatically cause the Zulip account to be updated accordingly.
   Unassigning a user from the app will deactivate their Zulip
   account.
 
If you want to also set up SAML authentication, head to our
SAML configuration instructions. It will require
adding a separate Okta application.