Common Room SCIM API

The SCIM API from Common Room — 2 operation(s) for scim.

Operations 4

GET /users Active contacts by role #
POST /users Creates the contact with specific role #
GET /users/{email} Retrieves a specific user account #
PATCH /users/{email} Updates an user account #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/common-room-scim-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

common-room-scim-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Common Room SCIM API
  version: 1.0.0
  description: 'Common Room SCIM REST APIs for accessing Community scoped resources.


    To use the Common Room API, or get started with the Common Room Zapier integration, you will need to create an API token.

    To create an API token:


    Navigate to Setting | API tokens


    Create a “New Token"


    # Authentication


    -->'
  x-logo:
    url: /common-room-api-logo.svg
servers:
- url: https://api.commonroom.io/scim/v2
  description: Common Room SCIM API v2
tags:
- name: SCIM
paths:
  /users:
    summary: Represents Common Room users
    description: 'Represents users with a valid login. Community owners are returned

      '
    parameters:
    - in: query
      name: startIndex
      schema:
        type: integer
        example: 1
    - in: query
      name: count
      schema:
        type: integer
        example: 15
    - in: query
      name: filter
      schema:
        type: string
        description: filter on the userName.
        example: userName eq 'test.user@domain.io'
    get:
      summary: Active contacts by role
      description: Returns the list of active owners, filtered based on the query parameters
      tags:
      - SCIM
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  schemas:
                    type: array
                    items:
                      type: string
                      example: urn:ietf:params:scim:api:messages:2.0:ListResponse
                  Resources:
                    type: array
                    items:
                      $ref: '#/components/schemas/User'
                  totalResults:
                    type: integer
                    description: Number of resources in the list
                  itemsPerPage:
                    type: integer
                    description: Constant number of items per page
                  startIndex:
                    type: integer
                    description: 1-based index for the returned list
      operationId: getUsers
      x-operation-id-source: derived
    post:
      summary: Creates the contact with specific role
      description: Creates the contact with owner role
      tags:
      - SCIM
      requestBody:
        required: true
        content:
          application/scim+json; charset=utf-8:
            schema:
              type: object
              properties:
                schemas:
                  type: array
                  items:
                    type: string
                    example: urn:ietf:params:scim:schemas:core:2.0:User
                userName:
                  type: string
                  example: test.user@domain.io
                name:
                  type: object
                  properties:
                    givenName:
                      type: string
                      example: John
                    familyName:
                      type: string
                      example: Doe
                emails:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                        example: user@domain.com
                      primary:
                        type: boolean
                        example: true
                      type:
                        type: string
                        example: work
                active:
                  type: boolean
                  example: true
                  description: Indicates whether the user has a login account in the community
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                $ref: '#/components/schemas/User'
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                type: object
                properties:
                  schemas:
                    type: array
                    items:
                      type: string
                      example: urn:ietf:params:scim:schemas:core:2.0:Error
                  detail:
                    type: string
                    example: Failed to create user
      operationId: postUsers
      x-operation-id-source: derived
  /users/{email}:
    summary: Represents a specific user
    description: Retrieves or updates the specific user
    parameters:
    - in: path
      name: email
      required: true
      schema:
        type: string
        example: User accounts' identifier. Typically the email address
    get:
      summary: Retrieves a specific user account
      tags:
      - SCIM
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                $ref: '#/components/schemas/User'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  schemas:
                    type: array
                    items:
                      type: string
                      example: urn:ietf:params:scim:schemas:core:2.0:Error
                  detail:
                    type: string
                    example: 'No user found for user: {userName}'
      operationId: getUsersByEmail
      x-operation-id-source: derived
    patch:
      summary: Updates an user account
      description: Updates the user account specified in the query
      tags:
      - SCIM
      requestBody:
        required: true
        content:
          application/scim+json; charset=utf-8:
            schema:
              type: object
              properties:
                schemas:
                  type: array
                  items:
                    type: string
                    example: urn:ietf:params:scim:schemas:core:2.0:PatchOp
                Operations:
                  type: array
                  items:
                    type: object
                    properties:
                      op:
                        type: string
                        example: replace
                      value:
                        type: object
                        properties:
                          active:
                            type: boolean
                            example: true
                            description: 'Will upgrade or downgrade user account''s role based on this property. When set to false

                              user account is downgraded

                              '
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                $ref: '#/components/schemas/User'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  schemas:
                    type: array
                    items:
                      type: string
                      example: urn:ietf:params:scim:schemas:core:2.0:Error
                  detail:
                    type: string
                    example: 'No user found for user: {userName}'
      operationId: patchUsersByEmail
      x-operation-id-source: derived
components:
  schemas:
    User:
      type: object
      description: 'Represents the user account in the Common Room community

        This account is used for identity mangement via SCIM

        Specification can be found at https://datatracker.ietf.org/doc/html/rfc7643#section-4.1

        '
      properties:
        id:
          type: string
          example: user@domain.com
        userName:
          type: string
          example: user@domain.com
        name:
          type: object
          properties:
            givenName:
              type: string
              example: John
            familyName:
              type: string
              example: Doe
        emails:
          type: array
          items:
            type: object
            properties:
              value:
                type: string
                example: user@domain.com
              primary:
                type: boolean
                example: true
              type:
                type: string
                example: work
        active:
          type: boolean
          example: true
          description: Indicates whether the user has a login account in the community
        schemas:
          type: array
          items:
            type: string
            example: urn:ietf:params:scim:api:messages:2.0:User
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: "Use a Core API JWT as a Bearer token in the Authentication header.\n\nTokens can be created by room Admins through https://app.commonroom.io/\n\nExample:\n\n```\ncurl -H \"Authorization: Bearer abcd123.xzy\" \\\n  https://api.commonroom.io/community/v1/api-token-status\n````\n"