Test your SCIM implementation

Thomas Poignant
2 min readJun 12, 2020

System for Cross-domain Identity Management better known as SCIM is designed to make managing user identities in cloud-based applications and services easier.

If you are building an application you may want to get your identities from an identity provider like Okta, Onelogin or Azure.
When building your SCIM implementation you will have to test that it works.

Now let’s see how to test your SCIM API using api-scenario.

Install api-scenario

Install api-scenario this is a command-line tool to run the scenario of API calls.
If you are using homebrew just run the following command.

brew tap thomaspoignant/homebrew-tap
brew install api-scenario

For other OS follow installation instructions on GitHub.

Download and run the tests

Now that api-scenario is installed, you can download the scenario file.

This scenario tests that all the required API and asserts the responses of your implementation to checks if this works as attended.

curl -L -o scim-scenario.json https://gist.github.com/thomaspoignant/b4177130fe961f30e8bc20b328066d62/raw/

Now you can run your scenario by using the command line bellow:

Run the scenario

Don’t forget to change the variables values, the most important ones are :

  • auth: you should replace token by the authentication token you used to identify to the client of your API.
  • SCIMBaseUrl: You should replace http://localhost:3000 by the entry point of your SCIM API.

Your scenario will output results like bellow and if everything is green your API is ready, you are ready to ask IDP to provided you identities.

Want to go further?

If you want to go further, one advice is to add this to your Continuous Integration, it will prevent from future bugs by running it everytime you commit something.

--

--

Thomas Poignant

Engineering Manager! I build apps and deploy them in the ☁️. #GO #AWS #CICD. https://thomaspoignant.medium.com/subscribe