openapi: 3.2.0 info: title: AppOmni SCIM 2.0 SCIM User Management API description: 'SCIM 2.0 user and group provisioning endpoints used to connect an identity provider to AppOmni. Derived faithfully from the AppOmni public Postman collection published by AppOmni at https://api.appomni.com/ — every path, method, parameter, request body and example response below is taken verbatim from that collection. No operation was invented.' version: 1.0.0 contact: name: AppOmni url: https://appomni.com/support/ license: name: Proprietary url: https://appomni.com/terms-of-service/ x-generated-from: AppOmni public Postman collection (publishedId 2sBXc7Mjib, published 2026-02-04) x-generated-source: https://api.appomni.com/api/collections/45135595/2sBXc7Mjib?segregateAuth=true&versionTag=latest x-generated-method: derived x-generated-date: '2026-09-04' servers: - url: https://{instance}.appomni.com description: AppOmni tenant. Replace {instance} with your AppOmni subdomain — e.g. `acme` if you log in at acme.appomni.com. variables: instance: default: example description: Your AppOmni tenant subdomain security: - bearerAuth: [] tags: - name: SCIM User Management description: 'Use SCIM to connect your identity provider to AppOmni, and utilize this API to: - Get all users in a company - Activate or deactivate users - Update a user’s name, password, user name, email address - To update a user’s role, AppOmni SCIM Mappings must be enabled Note : Patch operations are not supported. See AppOmni’s documentation for creating SCIM mappings. The first step is enabling SC' paths: /scim/v2/Users/{user_id}: put: operationId: updateUsers summary: Update users tags: - SCIM User Management description: 'Updates all of the user fields for a user by user id. If the user ID is not known, you can run a GET Request such as {{url}}/scim/v2/Users This will return a list of users with their user information such as IDs, usernames, groups, etc, which you can use in the body of the PUT request to ensure you are not changing additional settings. For this reason PUT operations are considered a best SCIM practice for updates. Request Body Field Data Type Required Description Example schemas Array[String] Yes SCIM schema identifiers Array of schema URIs userName String Yes The username for the user user@example.com password String No The password of the user mySecurePassword123 name.givenName String No The first name of the user John name.familyName String No The last name of the user Doe externalId String No External identifier from SAML provider ext123456 locale String No User location/locale en-US active Boolean No Whether the identity is active true emails Array[Object] No List of user email objects Array of email objects Response Fields Field Data Type Description Example id String Unique identifier generated by SCIM endpoint 12345 schemas Array[String] SCIM schema identifiers Array of schema URIs userName String The username for the user user@example.com name Object User name object Object with givenName, familyName, formatted displayName String Display name of the user John Doe emails Array[Object] List of user email objects Array of email objects active Boolean Whether the identity is active true groups Array[Object] List of groups the user belongs to Array of group objects externalId String External identifier from SAML provider ext123456 meta Object Metadata about the resource Object with resourceType, created, lastModified, location' parameters: - name: user_id in: path required: true description: Path parameter user_id schema: type: string requestBody: required: true content: application/json: schema: type: object example: schemas: - urn:ietf:params:scim:schemas:core:2.0:User userName: '{{username}}' password: '{{password}}' name: givenName: '{{first_name}}' familyName: '{{last_name}}' externalId: '{{external_id}}' locale: en-US active: true emails: - value: '{{email}}' primary: true responses: '200': description: Successful response '401': description: Unauthorized — missing or invalid AppOmni API token content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden — the token lacks permission for this resource content: application/json: schema: $ref: '#/components/schemas/Error' get: operationId: user summary: User tags: - SCIM User Management description: 'Returns a specified user by ID. Response Fields Field Data Type Description Example id String Unique identifier generated by SCIM endpoint 891 externalId String or null External identifier from SAML provider null schemas Array[String] SCIM schema identifiers Array of schema URIs userName String The username for the user user@example.com name Object User''s name object Object with givenName, familyName, formatted displayName String Display name of the user John Doe emails Array[Object] List of user email objects Array of email objects active Boolean Whether the identity is active true groups Array[Object] List of groups the user belongs to Array of group objects meta Object Metadata about the resource Object with resourceType, created, lastModified, location' parameters: - name: user_id in: path required: true description: Path parameter user_id schema: type: string responses: '200': description: User '401': description: Unauthorized — missing or invalid AppOmni API token content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden — the token lacks permission for this resource content: application/json: schema: $ref: '#/components/schemas/Error' /scim/v2/Users: get: operationId: allUsers summary: All users tags: - SCIM User Management description: 'Returns all users. Response Fields Field Data Type Description Example schemas Array[String] SCIM schema identifiers Array of schema URIs totalResults Integer Total number of users 1 itemsPerPage Integer Number of items per page 50 startIndex Integer Starting index for pagination 1 Resources Array[Object] Array of user objects Array of user objects User Object Schema Field Data Type Description Example id String Unique identifier generated by SCIM endpoint 891 externalId String or null External identifier from SAML provider null schemas Array[String] SCIM schema identifiers Array of schema URIs userName String The username for the user user@example.com name Object User''s name object Object with givenName, familyName, formatted displayName String Display name of the user John Doe emails Array[Object] List of user email objects Array of email objects active Boolean Whether the identity is active true groups Array[Object] List of groups the user belongs to Array of group objects meta Object Metadata about the resource Object with resourceType, created, lastModified, location' responses: '200': description: List Users content: text/plain: schema: type: string example: "{\n \"schemas\": [\n \"urn:ietf:params:scim:api:messages:2.0:ListResponse\"\n ],\n \"totalResults\": 1,\n \"itemsPerPage\": 50,\n \"startIndex\": 1,\n \"Resources\": [\n {\n \"id\": \"891\",\n \"externalId\": null,\n \"schemas\": [\n \"urn:ietf:params:scim:schemas:core:2.0:User\"\n ],\n \"userName\": \"user@example.com\",\n \"name\": {\n \"givenName\": \"John\",\n \"familyName\": \"Doe\",\n \"formatted\": \"John Doe\"\n },\n \"displayName\": \"John Doe\",\n \"emails\": [\n {\n \"value\": \"user@example.com\",\n \"primary\": true\n }\n ],\n \"active\": true,\n \"groups\": [\n {\n \"value\": \"315\",\n \"$ref\": \"https://example.appomni.com/scim/v2/Groups/315\",\n \"display\": \"Administrators\"\n }\n ],\n \"meta\": {\n \"resourceType\": \"User\",\n \"created\": \"2021-07-06T15:17:44.031973+00:00\",\n \"lastModified\": \"2025-04-08T21:00:45.291578+00:00\",\n \"location\": \"https://example.appomni.com/scim/v2/Users/891\"\n }\n }\n}\n" '401': description: Unauthorized — missing or invalid AppOmni API token content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden — the token lacks permission for this resource content: application/json: schema: $ref: '#/components/schemas/Error' /scim/v2/Users/: get: operationId: userWithFilter summary: User with filter tags: - SCIM User Management description: 'Returns a specified user with filtered results. Response Fields Field Data Type Description Example schemas Array[String] SCIM schema identifiers Array of schema URIs totalResults Integer Total number of matching users 2 itemsPerPage Integer Number of items per page 50 startIndex Integer Starting index for pagination 1 Resources Array[Object] Array of matching user objects Array of user objects User Object Schema Field Data Type Description Example id String Unique identifier generated by SCIM endpoint 891 externalId String or null External identifier from SAML provider null schemas Array[String] SCIM schema identifiers Array of schema URIs userName String The username for the user user@example.com name Object User''s name object Object with givenName, familyName, formatted displayName String Display name of the user John Doe emails Array[Object] List of user email objects Array of email objects active Boolean Whether the identity is active true groups Array[Object] List of groups the user belongs to Array of group objects meta Object Metadata about the resource Object with resourceType, created, lastModified, location' parameters: - name: filter in: query required: false description: Query parameter filter schema: type: string responses: '200': description: User with filter content: application/json: schema: type: object examples: Userwithfilter: summary: User with filter value: schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse totalResults: 2 itemsPerPage: 50 startIndex: 1 Resources: - id: '891' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:User userName: user@example.com name: givenName: John familyName: Doe formatted: John Doe displayName: John Doe emails: - value: user@example.com primary: true active: true groups: - value: '315' $ref: https://example.appomni.com/scim/v2/Groups/315 display: Administrators meta: resourceType: User created: '2021-07-06T15:17:44.031973+00:00' lastModified: '2025-04-08T21:00:45.291578+00:00' location: https://example.appomni.com/scim/v2/Users/891 - id: '32078' externalId: user1 schemas: - urn:ietf:params:scim:schemas:core:2.0:User userName: user@example.onmicrosoft.com name: givenName: John familyName: Doe formatted: John Doe displayName: John Doe emails: - value: user@example.onmicrosoft.com primary: true active: true groups: - value: '315' $ref: https://example.appomni.com/scim/v2/Groups/315 display: Administrators meta: resourceType: User created: '2024-09-17T19:31:33.590464+00:00' lastModified: '2024-09-17T19:31:33.927287+00:00' location: https://example.appomni.com/scim/v2/Users/32078 '401': description: Unauthorized — missing or invalid AppOmni API token content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden — the token lacks permission for this resource content: application/json: schema: $ref: '#/components/schemas/Error' /scim/v2/Groups: get: operationId: listGroups summary: List groups tags: - SCIM User Management description: 'Returns a list of all groups. Note : Only Get operations are available for groups. Response Fields Field Data Type Description Example schemas Array[String] SCIM schema identifiers Array of schema URIs totalResults Integer Total number of groups 13 itemsPerPage Integer Number of items per page 50 startIndex Integer Starting index for pagination 1 Resources Array[Object] Array of group objects Array of group objects Group Object Schema Field Data Type Description Example id String Unique identifier for the group 315 externalId String or null External identifier from SAML provider null schemas Array[String] SCIM schema identifiers Array of schema URIs displayName String Display name of the group Administrators members Array[Object] List of group members Array of member objects meta Object Metadata about the resource Object with resourceType and location' responses: '200': description: List Groups content: application/json: schema: type: object examples: ListGroups: summary: List Groups value: schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse totalResults: 13 itemsPerPage: 50 startIndex: 1 Resources: - id: '315' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Administrators members: - value: '32078' $ref: https://example.appomni.com/scim/v2/Users/32078 display: John Doe - value: '891' $ref: https://example.appomni.com/scim/v2/Users/891 display: John Doe meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/315 - id: '317' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Readonly members: - value: '32360' $ref: https://example.appomni.com/scim/v2/Users/32360 display: Jane Smith - value: '36521' $ref: https://example.appomni.com/scim/v2/Users/36521 display: Read Only - value: '34763' $ref: https://example.appomni.com/scim/v2/Users/34763 display: Bob Johnson meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/317 - id: '611' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Service Onboarder members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/611 - id: '816' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Insights Manager members: - value: '32360' $ref: https://example.appomni.com/scim/v2/Users/32360 display: Jane Smith meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/816 - id: '817' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Issues Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/817 - id: '818' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Users Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/818 - id: '819' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Monitored Service Role Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/819 - id: '1566' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Policies Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/1566 - id: '1695' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Service Admin members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/1695 - id: '1979' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Threat Detection Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/1979 - id: '2805' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role External Ticketing Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/2805 - id: '2806' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role External Ticketing User members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/2806 - id: '4087' externalId: null schemas: - urn:ietf:params:scim:schemas:core:2.0:Group displayName: Role Findings Manager members: [] meta: resourceType: Group location: https://example.appomni.com/scim/v2/Groups/4087 '401': description: Unauthorized — missing or invalid AppOmni API token content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Forbidden — the token lacks permission for this resource content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: Error: type: object title: Error description: Standard Django REST Framework error envelope returned by the AppOmni API. properties: detail: type: string description: Human readable error message securitySchemes: bearerAuth: type: http scheme: bearer description: 'AppOmni API access token, created and managed in the AppOmni platform under Settings > API Settings. Sent as `Authorization: Bearer `.'