SCIM Resource Type

This API is used to expose metadata about SCIM resource type. The APIs fetch their configuration details from a database collection named scimConfigcollection. This configuration is categorized and stored based on a "config type". A script named scimConfig_24_2_2 is responsible for storing (persisting) the SCIM configuration into the scimConfigcollection. When a request is made to one of these SCIM APIs (e.g., from a third-party tool like Omada), the system looks up the requested configuration type in the scimConfigcollection and returns the appropriate configuration data based on the request.

This API response lists the available SCIM resource types (User, Group), their endpoints, and schema details, using a standardized SCIM list format.

Request Structure

Endpoint: scim/v2/ResourceTypes
Type: GET
Sample URL: https://<IP/HostName/TenantName>:<GWPORT>/avxapi/scim/v2/ResourceTypes?gwsource=external

To understand the elements of the sample URL, click here.

Headers:
Content-Type: application/json
Table 1. Input Parameters
Name Description
sessionId

Header

(Mandatory) Use session ID retrieved from login API, if username and password are not provided.

Type: String

Example: "ce7f1a14-2bf9-4e4a-89a8-bc780a255813"

username

Header

(Mandatory) Username for authentication if sessionID is not provided.

Type: String

Example: "[email protected]"

password

Header

(Mandatory) Password for authentication if sessionID is not provided.

Type: String

Example: "4e4a89a8"

gwsource

Query

(Mandatory) Source from which the request is triggered. The values can be:
  • web
  • external

Type: String

Response Structure

  • Status Code: 200 OK
  • Message: NA
  • Headers:
    • Content-Type: application/json
Table 2. Response Parameters
Name Description
schemas Indicates the SCIM schema(s) used in the response. This tells us that the response follows the standard SCIM List Response format.

Type: Array

Example: "urn:ietf:params:scim:api:messages:2.0:ListResponse"

totalResults Specifies the total number of resources returned in the response.

Type: Integer

Example: "2"

Resources Contains the actual SCIM resource definitions. Each object describes a resource type.

Type: Array of Objects

id

Resources

Unique identifier for the resource type.

Type: String

Example: "User" or "Group"

name

Resources

Unique identifier for the resource type.

Type: String

Example: "4e4a89a8"

endpoint

Resources

The API endpoint associated with the resource type.

Type: String

Example: "/SCIM/V2/Users"

description

Resources

A brief description of the resource type.

Type: String

Example: "User Account" or "Group of Users"

schema

Resources

Defines the core SCIM schema used for the resource.

Type: String

Example: "urn:ietf:params:scim:schemas:core:2.0:User" OR "urn:ietf:params:scim:schemas:core:2.0:Group"

Status Codes

HTTP Code appStatusCode Response Message
200 OK null NA

Sample Request/Response

Use Case

To expose metadata about SCIM resource type.

Sample Request
https://<IP/HostName/TenantName>:<GWPORT>/avxapi/scim/v2/ResourceTypes?gwsource=external
Sample Response
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 2,
    "Resources": [
        {
            "id": "User",
            "name": "User",
            "endpoint": "/SCIM/V2/Users",
            "description": "User Account",
            "schema": "urn:ietf:params:scim:schemas:core:2.0:User"
        },
        {
            "id": "Group",
            "name": "Group",
            "endpoint": "/SCIM/V2/Groups",
            "description": "Group of Users",
            "schema": "urn:ietf:params:scim:schemas:core:2.0:Group"
        }
    ]
}

Reference

Understanding the sample URL:
  • IP/HostName/TenantName: Replace with the actual IP address, hostname, or tenant name based on the specific configuration in AppViewX.
    • IP: A unique identifier assigned to each device connected to a computer network that uses the Internet Protocol for communication

      The IP address will be included in the endpoint URL for an on-prem deployment.

    • HostName: A human-readable label assigned to a device (host) on a network

      The hostname will be included in the endpoint URL for an on-prem deployment.

    • TenantName: An identifier label for a tenant given to indicate which tenant's data the API request will access/modify

      The tenant name will be included in the endpoint URL for a SaaS deployment.

  • GWPORT: AppViewX gateway port

    A gateway port refers to a network port through which data is sent and received to communicate with a gateway in an on-prem deployment.

    Example: 31443

  • avxapi: Path parameter value (static) that is part of the endpoint's URL
  • Endpoint: Endpoint of the API, for example: execute-hook
  • gwsource: Source or origin of a gateway, for example: external.