Reference#

scim#

SCIM application development CLI.

Usage

scim [OPTIONS] COMMAND [ARGS]...

Options

-u, --url <url>#

The SCIM server endpoint.

-h, --header <header>#

Headers to pass in the HTTP requests. Can be passed multiple times. Other users of the machine can see the command line arguments, so pass the secrets with the SCIM_CLI_HEADERS environment variable.

--no-verify#

Don’t perform https certificate verifications.

-s, --schemas <schemas>#

Path to a JSON file containing a list of SCIM Schemas. Those schemas will be assumed to be available on the server. If unset, they will be downloaded.

-r, --resource-types <resource_types>#

Path to a JSON file containing a list of SCIM ResourceType. Those resource types will be assumed to be available on the server. If unset, they will be downloaded.

-c, --service-provider-config <service_provider_config>#

Path to a JSON file containing the ServiceProviderConfig content of the server. Will be downloaded otherwise.

Environment variables

SCIM_CLI_URL

Provide a default for -u

SCIM_CLI_HEADERS

Provide a default for -h

SCIM_CLI_SCHEMAS

Provide a default for -s

SCIM_CLI_RESOURCE_TYPES

Provide a default for -r

SCIM_CLI_SERVICE_PROVIDER_CONFIG

Provide a default for -c

create#

Perform a SCIM POST request on resources endpoint.

There are subcommands for all the available models, with dynamic attributes. See the attributes for user with:

create user --help

If no subcommand is executed, input data is expected to be passed in JSON format to stdin:

echo '{"userName": "bjensen@example.com", "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"]}' |  create

Usage

scim create [OPTIONS] [COMMAND] [ARGS]...

Options

--indent, --no-indent#

Indent JSON response payloads.

delete#

Perform a SCIM DELETE query request.

delete user 1234

Usage

scim delete [OPTIONS] RESOURCE_TYPE ID

Options

--indent, --no-indent#

Indent JSON response payloads.

Arguments

RESOURCE_TYPE#

Required argument

ID#

Required argument

query#

Perform a SCIM GET request on the RESOURCE_TYPE endpoint.

  • If RESOURCE_TYPE is user and id is 1234, then the request will made on the /Users/1234 endpoint.

  • If RESOURCE_TYPE is user and id is not set, then the request will made on the /Users endpoint.

  • If RESOURCE_TYPE is not set, then the request will made on the / endpoint.

When a single resource is queried, only --attribute and --excluded-attribute are available, as defined in RFC7644 §3.4.1.

Data passed in JSON format to stdin is sent as request arguments and all the other query arguments are ignored:

echo '{"startIndex": 50, "count": 10}' |  query user

Usage

scim query [OPTIONS] [RESOURCE_TYPE] [ID]

Options

--attribute <attribute>#

A multi-valued list of strings indicating the names of resource attributes to return in the response, overriding the set of attributes that would be returned by default.

--excluded-attribute <excluded_attribute>#

A multi-valued list of strings indicating the names of resource attributes to be removed from the default set of attributes to return.

--start-index <start_index>#

An integer indicating the 1-based index of the first query result.

--count <count>#

An integer indicating the desired maximum number of query results per page.

--filter <filter>#

The filter string used to request a subset of resources.

--sort-by <sort_by>#

A string indicating the attribute whose value SHALL be used to order the returned responses.

--sort-order <sort_order>#

A string indicating the order in which the “sortBy” parameter is applied.

--indent, --no-indent#

Indent JSON response payloads.

Arguments

RESOURCE_TYPE#

Optional argument

ID#

Optional argument

replace#

Perform a SCIM PUT request on the resources endpoint.

There are subcommands for all the available models, with dynamic attributes. See the attributes for user with:

replace user --help

If no subcommand is executed, input data is expected to be passed in JSON format to stdin:

echo '{"userName": "bjensen@example.com", "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "id": "1234"}' |  replace user

Usage

scim replace [OPTIONS] [COMMAND] [ARGS]...

Options

--indent, --no-indent#

Indent JSON response payloads.

test#

Perform a server SCIM compliance check using scim2-tester.

test

Usage

scim test [OPTIONS]

Options

-v, --verbose#

Enables verbose mode

--check-status-code, --dont-check-status-code#

Fail on unexpected return codes.

--check-content-type, --dont-check-content-type#

Fail on unexpected content types.