Share feedback
Answers are generated based on the documentation.

List users

GET/v2/scim/2.0/Users

Returns paginated users for an organization. Use startIndex and count query parameters to receive paginated results.

Sorting:

Sorting allows you to specify the order in which resources are returned by specifying a combination of sortBy and sortOrder query parameters.

The sortBy parameter specifies the attribute whose value will be used to order the returned responses. The sortOrder parameter defines the order in which the sortBy parameter is applied. Allowed values are "ascending" and "descending".

Filtering:

You can request a subset of resources by specifying the filter query parameter containing a filter expression. Attribute names and attribute operators used in filters are case insensitive. The filter parameter must contain at least one valid expression. Each expression must contain an attribute name followed by an attribute operator and an optional value.

Supported operators are listed below.

  • eq equal
  • ne not equal
  • co contains
  • sw starts with
  • and Logical "and"
  • or Logical "or"
  • not "Not" function
  • () Precedence grouping

Connection and access

API connection and authentication guidance

https://hub.docker.com — Docker HUB API

Use one of these alternatives. Requirements within an alternative apply together.

  • scimToken

Parameters

startIndex query

One-based index of the first result to return.

Type: integer

All schema constraints and annotations
{
  "minimum": 1,
  "type": "integer"
}

count query

Maximum number of results to return.

Type: integer

All schema constraints and annotations
{
  "maximum": 200,
  "minimum": 1,
  "type": "integer"
}

filter query

SCIM filter expression used to select users.

Type: string

All schema constraints and annotations
{
  "type": "string"
}

attributes query

Comma delimited list of attributes to limit to in the response.

Type: string

All schema constraints and annotations
{
  "type": "string"
}

sortOrder query

Sort direction applied to the attribute specified by sortBy.

Type: string

All schema constraints and annotations
{
  "enum": [
    "ascending",
    "descending"
  ],
  "type": "string"
}

sortBy query

User attribute to sort by.

Type: string

All schema constraints and annotations
{
  "type": "string"
}

Request and responses

Response 200

application/scim+json

Type: object

Resources

Type: array

Array item

Schema: scim_user

All schema constraints and annotations
{
  "items": {
    "$ref": "#/components/schemas/scim_user"
  },
  "type": "array"
}
itemsPerPage

Type: integer

All schema constraints and annotations
{
  "example": 10,
  "type": "integer"
}
schemas

Type: array

Array item

Type: string

All schema constraints and annotations
{
  "type": "string"
}
All schema constraints and annotations
{
  "example": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
  ],
  "items": {
    "type": "string"
  },
  "type": "array"
}
startIndex

Type: integer

All schema constraints and annotations
{
  "example": 1,
  "type": "integer"
}
totalResults

Type: integer

All schema constraints and annotations
{
  "example": 1,
  "type": "integer"
}
All schema constraints and annotations
{
  "examples": [
    {
      "Resources": [
        {
          "active": true,
          "displayName": "jonsnow",
          "emails": [
            {
              "display": "jon.snow@docker.com",
              "primary": true,
              "value": "jon.snow@docker.com"
            }
          ],
          "groups": [
            {
              "display": "nightswatch",
              "value": "nightswatch"
            }
          ],
          "id": "d80f7c79-7730-49d8-9a41-7c42fb622d9c",
          "meta": {
            "created": "2022-05-20T00:54:18Z",
            "lastModified": "2022-05-20T00:54:18Z",
            "location": "https://hub.docker.com/v2/scim/2.0/Users/d80f7c79-7730-49d8-9a41-7c42fb622d9c",
            "resourceType": "User"
          },
          "name": {
            "familyName": "Snow",
            "givenName": "Jon"
          },
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "userName": "jon.snow@docker.com"
        }
      ],
      "itemsPerPage": 1,
      "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ],
      "startIndex": 1,
      "totalResults": 1
    }
  ],
  "properties": {
    "Resources": {
      "items": {
        "$ref": "#/components/schemas/scim_user"
      },
      "type": "array"
    },
    "itemsPerPage": {
      "example": 10,
      "type": "integer"
    },
    "schemas": {
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ],
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "startIndex": {
      "example": 1,
      "type": "integer"
    },
    "totalResults": {
      "example": 1,
      "type": "integer"
    }
  },
  "type": "object"
}

Schema example

{
  "Resources": [
    {
      "active": true,
      "displayName": "jonsnow",
      "emails": [
        {
          "display": "jon.snow@docker.com",
          "primary": true,
          "value": "jon.snow@docker.com"
        }
      ],
      "groups": [
        {
          "display": "nightswatch",
          "value": "nightswatch"
        }
      ],
      "id": "d80f7c79-7730-49d8-9a41-7c42fb622d9c",
      "meta": {
        "created": "2022-05-20T00:54:18Z",
        "lastModified": "2022-05-20T00:54:18Z",
        "location": "https://hub.docker.com/v2/scim/2.0/Users/d80f7c79-7730-49d8-9a41-7c42fb622d9c",
        "resourceType": "User"
      },
      "name": {
        "familyName": "Snow",
        "givenName": "Jon"
      },
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
      "userName": "jon.snow@docker.com"
    }
  ],
  "itemsPerPage": 1,
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
  ],
  "startIndex": 1,
  "totalResults": 1
}

Response 400

Bad Request

application/scim+json

All constraints apply

Schema: scim_error

scimType

Type: string

Some types of errors will return this per the specification.
All schema constraints and annotations
{
  "description": "Some types of errors will return this per the specification.",
  "type": "string"
}
status
All schema constraints and annotations
{
  "example": "400"
}
All schema constraints and annotations
{
  "properties": {
    "scimType": {
      "description": "Some types of errors will return this per the specification.",
      "type": "string"
    },
    "status": {
      "example": "400"
    }
  }
}
All schema constraints and annotations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/scim_error"
    },
    {
      "properties": {
        "scimType": {
          "description": "Some types of errors will return this per the specification.",
          "type": "string"
        },
        "status": {
          "example": "400"
        }
      }
    }
  ]
}

error

{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:Error"
  ],
  "status": "400"
}

Response 401

Unauthorized

application/scim+json

All constraints apply

Schema: scim_error

status
All schema constraints and annotations
{
  "example": "401"
}
All schema constraints and annotations
{
  "properties": {
    "status": {
      "example": "401"
    }
  }
}
All schema constraints and annotations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/scim_error"
    },
    {
      "properties": {
        "status": {
          "example": "401"
        }
      }
    }
  ]
}

error

{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:Error"
  ],
  "status": "401"
}

Response 403

Forbidden

application/scim+json

All constraints apply

Schema: scim_error

status
All schema constraints and annotations
{
  "example": "403"
}
All schema constraints and annotations
{
  "properties": {
    "status": {
      "example": "403"
    }
  }
}
All schema constraints and annotations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/scim_error"
    },
    {
      "properties": {
        "status": {
          "example": "403"
        }
      }
    }
  ]
}

error

{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:Error"
  ],
  "status": "403"
}

Response 404

Not Found

application/scim+json

All constraints apply

Schema: scim_error

status
All schema constraints and annotations
{
  "example": "404"
}
All schema constraints and annotations
{
  "properties": {
    "status": {
      "example": "404"
    }
  }
}
All schema constraints and annotations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/scim_error"
    },
    {
      "properties": {
        "status": {
          "example": "404"
        }
      }
    }
  ]
}

error

{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:Error"
  ],
  "status": "404"
}

Response 500

Internal Error

application/scim+json

All constraints apply

Schema: scim_error

status
All schema constraints and annotations
{
  "example": "500"
}
All schema constraints and annotations
{
  "properties": {
    "status": {
      "example": "500"
    }
  }
}
All schema constraints and annotations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/scim_error"
    },
    {
      "properties": {
        "status": {
          "example": "500"
        }
      }
    }
  ]
}

error

{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:Error"
  ],
  "status": "500"
}

Referenced schemas

Complete operation contract
{
  "description": "Returns paginated users for an organization. Use `startIndex` and `count` query parameters to receive paginated results.\n\n**Sorting:**\n\nSorting allows you to specify the order in which resources are returned by specifying a combination of `sortBy` and `sortOrder` query parameters.\n\nThe `sortBy` parameter specifies the attribute whose value will be used to order the returned responses. The `sortOrder` parameter defines the order in which the `sortBy` parameter is applied. Allowed values are \"ascending\" and \"descending\".\n\n**Filtering:**\n\nYou can request a subset of resources by specifying the `filter` query parameter containing a filter expression. Attribute names and attribute operators used in filters are case insensitive. The filter parameter must contain at least one valid expression. Each expression must contain an attribute name followed by an attribute operator and an optional value.\n\nSupported operators are listed below.\n\n- `eq` equal\n- `ne` not equal\n- `co` contains\n- `sw` starts with\n- `and` Logical \"and\"\n- `or` Logical \"or\"\n- `not` \"Not\" function\n- `()` Precedence grouping\n",
  "operationId": "getV2Scim20Users",
  "parameters": [
    {
      "description": "One-based index of the first result to return.",
      "example": 1,
      "in": "query",
      "name": "startIndex",
      "schema": {
        "minimum": 1,
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of results to return.",
      "example": 10,
      "in": "query",
      "name": "count",
      "schema": {
        "maximum": 200,
        "minimum": 1,
        "type": "integer"
      }
    },
    {
      "description": "SCIM filter expression used to select users.",
      "example": "userName eq \"jon.snow@docker.com\"",
      "in": "query",
      "name": "filter",
      "schema": {
        "type": "string"
      }
    },
    {
      "$ref": "#/components/parameters/scim_attributes"
    },
    {
      "description": "Sort direction applied to the attribute specified by sortBy.",
      "in": "query",
      "name": "sortOrder",
      "schema": {
        "enum": [
          "ascending",
          "descending"
        ],
        "type": "string"
      }
    },
    {
      "description": "User attribute to sort by.",
      "example": "userName",
      "in": "query",
      "name": "sortBy",
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "$ref": "#/components/responses/scim_get_users_resp"
    },
    "400": {
      "$ref": "#/components/responses/scim_bad_request"
    },
    "401": {
      "$ref": "#/components/responses/scim_unauthorized"
    },
    "403": {
      "$ref": "#/components/responses/scim_forbidden"
    },
    "404": {
      "$ref": "#/components/responses/scim_not_found"
    },
    "500": {
      "$ref": "#/components/responses/scim_error"
    }
  },
  "security": [
    {
      "scimToken": []
    }
  ],
  "summary": "List users",
  "tags": [
    "scim"
  ]
}