--- title: SCIMApi --- ## PureCloud::SCIMApi All URIs are relative to *https://api.mypurecloud.com* Method | Description ------------- | ------------- | ------------- [**delete_scim_group**](SCIMApi.html#delete_scim_group) | Delete a group. [**delete_scim_user**](SCIMApi.html#delete_scim_user) | Delete a user [**delete_scim_v2_group**](SCIMApi.html#delete_scim_v2_group) | Delete a group. [**delete_scim_v2_user**](SCIMApi.html#delete_scim_v2_user) | Delete a user [**get_scim_group**](SCIMApi.html#get_scim_group) | Get a group [**get_scim_groups**](SCIMApi.html#get_scim_groups) | Get a list of groups [**get_scim_resourcetype**](SCIMApi.html#get_scim_resourcetype) | Get a resource type [**get_scim_resourcetypes**](SCIMApi.html#get_scim_resourcetypes) | Get a list of resource types [**get_scim_schema**](SCIMApi.html#get_scim_schema) | Get the SCIM schema by id [**get_scim_schemas**](SCIMApi.html#get_scim_schemas) | Get the SCIM schemas [**get_scim_serviceproviderconfig**](SCIMApi.html#get_scim_serviceproviderconfig) | Get a service provider's configuration [**get_scim_user**](SCIMApi.html#get_scim_user) | Get a user [**get_scim_users**](SCIMApi.html#get_scim_users) | Get a list of users [**get_scim_v2_group**](SCIMApi.html#get_scim_v2_group) | Get a group [**get_scim_v2_groups**](SCIMApi.html#get_scim_v2_groups) | Get a list of groups [**get_scim_v2_resourcetype**](SCIMApi.html#get_scim_v2_resourcetype) | Get a resource type [**get_scim_v2_resourcetypes**](SCIMApi.html#get_scim_v2_resourcetypes) | Get a list of resource types [**get_scim_v2_schema**](SCIMApi.html#get_scim_v2_schema) | Get the SCIM schema by id [**get_scim_v2_schemas**](SCIMApi.html#get_scim_v2_schemas) | Get the SCIM schemas [**get_scim_v2_serviceproviderconfig**](SCIMApi.html#get_scim_v2_serviceproviderconfig) | Get a service provider's configuration [**get_scim_v2_user**](SCIMApi.html#get_scim_v2_user) | Get a user [**get_scim_v2_users**](SCIMApi.html#get_scim_v2_users) | Get a list of users [**patch_scim_group**](SCIMApi.html#patch_scim_group) | Modify a group [**patch_scim_user**](SCIMApi.html#patch_scim_user) | Modify a user [**patch_scim_v2_group**](SCIMApi.html#patch_scim_v2_group) | Modify a group [**patch_scim_v2_user**](SCIMApi.html#patch_scim_v2_user) | Modify a user [**post_scim_groups**](SCIMApi.html#post_scim_groups) | The information used to create a group. [**post_scim_users**](SCIMApi.html#post_scim_users) | Create a user [**post_scim_v2_groups**](SCIMApi.html#post_scim_v2_groups) | The information used to create a group. [**post_scim_v2_users**](SCIMApi.html#post_scim_v2_users) | Create a user [**put_scim_group**](SCIMApi.html#put_scim_group) | Replace a group [**put_scim_user**](SCIMApi.html#put_scim_user) | Replace a user [**put_scim_v2_group**](SCIMApi.html#put_scim_v2_group) | Replace a group [**put_scim_v2_user**](SCIMApi.html#put_scim_v2_user) | Replace a user {: class="table table-striped"} ## delete_scim_group(group_id, opts) Delete a group. Wraps DELETE /api/v2/scim/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/v2/groups. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Delete a group. api_instance.delete_scim_group(group_id, opts) rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->delete_scim_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/v2/groups. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type nil (empty response body) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**Empty**](Empty.html) delete_scim_user(user_id, opts) Delete a user Wraps DELETE /api/v2/scim/users/{userId} Requires ANY permissions: * directory:user:delete ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/users. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Delete a user result = api_instance.delete_scim_user(user_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->delete_scim_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/users. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**Empty**](Empty.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## delete_scim_v2_group(group_id, opts) Delete a group. Wraps DELETE /api/v2/scim/v2/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/v2/groups. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Delete a group. api_instance.delete_scim_v2_group(group_id, opts) rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->delete_scim_v2_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/v2/groups. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type nil (empty response body) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**Empty**](Empty.html) delete_scim_v2_user(user_id, opts) Delete a user Wraps DELETE /api/v2/scim/v2/users/{userId} Requires ANY permissions: * directory:user:delete ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/v2/users. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Delete a user result = api_instance.delete_scim_v2_user(user_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->delete_scim_v2_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/v2/users. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**Empty**](Empty.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) get_scim_group(group_id, opts) Get a group Wraps GET /api/v2/scim/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/groups. opts = { attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. if_none_match: "if_none_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a group result = api_instance.get_scim_group(group_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/groups. | | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **if_none_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimGroupListResponse**](ScimGroupListResponse.html) get_scim_groups(opts) Get a list of groups Wraps GET /api/v2/scim/groups Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { start_index: 1, # Integer | The 1-based index of the first query result. count: 25, # Integer | The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. filter: "displayName eq groupName" # String | Filters results. } begin #Get a list of groups result = api_instance.get_scim_groups(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_groups: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **start_index** | **Integer**| The 1-based index of the first query result. | [optional] [default to 1] | **count** | **Integer**| The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **filter** | **String**| Filters results. | [optional] | {: class="table table-striped"} ### Return type [**ScimGroupListResponse**](ScimGroupListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceType**](ScimConfigResourceType.html) get_scim_resourcetype(resource_type) Get a resource type Wraps GET /api/v2/scim/resourcetypes/{resourceType} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new resource_type = "resource_type_example" # String | The type of resource. Returned with GET /api/v2/scim/resourcetypes. begin #Get a resource type result = api_instance.get_scim_resourcetype(resource_type) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_resourcetype: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **resource_type** | **String**| The type of resource. Returned with GET /api/v2/scim/resourcetypes. |
**Values**: User, Group, ServiceProviderConfig, ResourceType, Schema | {: class="table table-striped"} ### Return type [**ScimConfigResourceType**](ScimConfigResourceType.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) get_scim_resourcetypes Get a list of resource types Wraps GET /api/v2/scim/resourcetypes Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new begin #Get a list of resource types result = api_instance.get_scim_resourcetypes p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_resourcetypes: #{e}" end ``` ### Parameters This endpoint does not need any parameter. {: class="table table-striped"} ### Return type [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceType**](ScimConfigResourceType.html) get_scim_schema(schema_id) Get the SCIM schema by id Wraps GET /api/v2/scim/schemas/{schemaId} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new schema_id = "schema_id_example" # String | The ID of a schema. begin #Get the SCIM schema by id result = api_instance.get_scim_schema(schema_id) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_schema: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **schema_id** | **String**| The ID of a schema. |
**Values**: urn:ietf:params:scim:schemas:core:2.0:User, urn:ietf:params:scim:schemas:core:2.0:Group, urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig, urn:ietf:params:scim:schemas:core:2.0:ResourceType, urn:ietf:params:scim:schemas:core:2.0:Schema, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User | {: class="table table-striped"} ### Return type [**ScimConfigResourceType**](ScimConfigResourceType.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) get_scim_schemas(opts) Get the SCIM schemas Wraps GET /api/v2/scim/schemas Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { filter: "displayName eq groupName" # String | Filtered results are invalid and will result in a 403 (Unauthorized) return. } begin #Get the SCIM schemas result = api_instance.get_scim_schemas(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_schemas: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **filter** | **String**| Filtered results are invalid and will result in a 403 (Unauthorized) return. | [optional] | {: class="table table-striped"} ### Return type [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimServiceProviderConfig**](ScimServiceProviderConfig.html) get_scim_serviceproviderconfig(opts) Get a service provider's configuration Wraps GET /api/v2/scim/serviceproviderconfig Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { if_none_match: "if_none_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/serviceproviderconfig. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a service provider's configuration result = api_instance.get_scim_serviceproviderconfig(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_serviceproviderconfig: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **if_none_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/serviceproviderconfig. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimServiceProviderConfig**](ScimServiceProviderConfig.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) get_scim_user(user_id, opts) Get a user Wraps GET /api/v2/scim/users/{userId} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/users. opts = { attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. if_none_match: "if_none_match_example" # String | TThe ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a user result = api_instance.get_scim_user(user_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/users. | | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **if_none_match** | **String**| TThe ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimUserListResponse**](ScimUserListResponse.html) get_scim_users(opts) Get a list of users To return all active users, do not use a filter parameter. To return inactive users, set \"filter\" to \"active eq false\". By default, returns SCIM attributes externalId, enterprise-user:manager, and roles. To exclude these attributes, set \"attributes\" to \"id,active\" or \"excludeAttributes\" to \"externalId,roles,urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division\". Wraps GET /api/v2/scim/users Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { start_index: 1, # Integer | The 1-based index of the first query result. count: 25, # Integer | The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. filter: "filter_example" # String | Filters results. If nothing is specified, returns all active users. Examples of valid values: \"id eq 857449b0-d9e7-4cd0-acbf-a6adfb9ef1e9\", \"userName eq search@sample.org\", \"manager eq 16e10e2f-1136-43fe-bb84-eac073168a49\", \"email eq search@sample.org\", \"division eq divisionName\", \"externalId eq 167844\", \"active eq false\". } begin #Get a list of users result = api_instance.get_scim_users(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_users: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **start_index** | **Integer**| The 1-based index of the first query result. | [optional] [default to 1] | **count** | **Integer**| The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **filter** | **String**| Filters results. If nothing is specified, returns all active users. Examples of valid values: \"id eq 857449b0-d9e7-4cd0-acbf-a6adfb9ef1e9\", \"userName eq search@sample.org\", \"manager eq 16e10e2f-1136-43fe-bb84-eac073168a49\", \"email eq search@sample.org\", \"division eq divisionName\", \"externalId eq 167844\", \"active eq false\". | [optional] | {: class="table table-striped"} ### Return type [**ScimUserListResponse**](ScimUserListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) get_scim_v2_group(group_id, opts) Get a group Wraps GET /api/v2/scim/v2/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/v2/groups. opts = { attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. if_none_match: "if_none_match_example" # String | TThe ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a group result = api_instance.get_scim_v2_group(group_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/v2/groups. | | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **if_none_match** | **String**| TThe ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimGroupListResponse**](ScimGroupListResponse.html) get_scim_v2_groups(filter, opts) Get a list of groups Wraps GET /api/v2/scim/v2/groups Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new filter = "displayName eq groupName" # String | Filters results. opts = { start_index: 1, # Integer | The 1-based index of the first query result. count: 25, # Integer | The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"] # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. } begin #Get a list of groups result = api_instance.get_scim_v2_groups(filter, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_groups: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **filter** | **String**| Filters results. | | **start_index** | **Integer**| The 1-based index of the first query result. | [optional] [default to 1] | **count** | **Integer**| The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'active', and 'meta attributes . Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The'id', 'active', and 'meta' attributes will always be present in the output. | [optional]
**Values**: id, displayName, members, externalId, urn:ietf:params:scim:schemas:core:2.0:Group:id, urn:ietf:params:scim:schemas:core:2.0:Group:displayName, urn:ietf:params:scim:schemas:core:2.0:Group:members, urn:ietf:params:scim:schemas:core:2.0:Group:externalId | {: class="table table-striped"} ### Return type [**ScimGroupListResponse**](ScimGroupListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceType**](ScimConfigResourceType.html) get_scim_v2_resourcetype(resource_type) Get a resource type Wraps GET /api/v2/scim/v2/resourcetypes/{resourceType} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new resource_type = "resource_type_example" # String | The type of resource. Returned with GET /api/v2/scim/v2/resourcetypes. begin #Get a resource type result = api_instance.get_scim_v2_resourcetype(resource_type) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_resourcetype: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **resource_type** | **String**| The type of resource. Returned with GET /api/v2/scim/v2/resourcetypes. |
**Values**: User, Group, ServiceProviderConfig, ResourceType, Schema | {: class="table table-striped"} ### Return type [**ScimConfigResourceType**](ScimConfigResourceType.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) get_scim_v2_resourcetypes Get a list of resource types Wraps GET /api/v2/scim/v2/resourcetypes Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new begin #Get a list of resource types result = api_instance.get_scim_v2_resourcetypes p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_resourcetypes: #{e}" end ``` ### Parameters This endpoint does not need any parameter. {: class="table table-striped"} ### Return type [**ScimConfigResourceTypesListResponse**](ScimConfigResourceTypesListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2SchemaDefinition**](ScimV2SchemaDefinition.html) get_scim_v2_schema(schema_id) Get the SCIM schema by id Wraps GET /api/v2/scim/v2/schemas/{schemaId} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new schema_id = "schema_id_example" # String | The ID of a schema. begin #Get the SCIM schema by id result = api_instance.get_scim_v2_schema(schema_id) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_schema: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **schema_id** | **String**| The ID of a schema. |
**Values**: urn:ietf:params:scim:schemas:core:2.0:User, urn:ietf:params:scim:schemas:core:2.0:Group, urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig, urn:ietf:params:scim:schemas:core:2.0:ResourceType, urn:ietf:params:scim:schemas:core:2.0:Schema, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User | {: class="table table-striped"} ### Return type [**ScimV2SchemaDefinition**](ScimV2SchemaDefinition.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2SchemaListResponse**](ScimV2SchemaListResponse.html) get_scim_v2_schemas(opts) Get the SCIM schemas Wraps GET /api/v2/scim/v2/schemas Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { filter: "displayName eq groupName" # String | Filtered results are invalid and will result in a 403 (Unauthorized) return. } begin #Get the SCIM schemas result = api_instance.get_scim_v2_schemas(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_schemas: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **filter** | **String**| Filtered results are invalid and will result in a 403 (Unauthorized) return. | [optional] | {: class="table table-striped"} ### Return type [**ScimV2SchemaListResponse**](ScimV2SchemaListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimServiceProviderConfig**](ScimServiceProviderConfig.html) get_scim_v2_serviceproviderconfig(opts) Get a service provider's configuration Wraps GET /api/v2/scim/v2/serviceproviderconfig Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { if_none_match: "if_none_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/serviceproviderconfig. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a service provider's configuration result = api_instance.get_scim_v2_serviceproviderconfig(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_serviceproviderconfig: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **if_none_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/serviceproviderconfig. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimServiceProviderConfig**](ScimServiceProviderConfig.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) get_scim_v2_user(user_id, opts) Get a user Wraps GET /api/v2/scim/v2/users/{userId} Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/v2/users. opts = { attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. if_none_match: "if_none_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. } begin #Get a user result = api_instance.get_scim_v2_user(user_id, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/v2/users. | | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **if_none_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns the current configuration of the resource. If the ETag is current, returns 304 Not Modified. | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimUserListResponse**](ScimUserListResponse.html) get_scim_v2_users(opts) Get a list of users To return all active users, do not use a filter parameter. To return inactive users, set \"filter\" to \"active eq false\". By default, returns SCIM attributes externalId, enterprise-user:manager, and roles. To exclude these attributes, set \"attributes\" to \"id,active\" or \"excludeAttributes\" to \"externalId,roles,urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division\". Wraps GET /api/v2/scim/v2/users Requires NO permissions: ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new opts = { start_index: 1, # Integer | The 1-based index of the first query result. count: 25, # Integer | The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. excluded_attributes: ["excluded_attributes_example"], # Array | Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. filter: "filter_example" # String | Filters results. If nothing is specified, returns all active users. Examples of valid values: \"id eq 857449b0-d9e7-4cd0-acbf-a6adfb9ef1e9\", \"userName eq search@sample.org\", \"manager eq 16e10e2f-1136-43fe-bb84-eac073168a49\", \"email eq search@sample.org\", \"division eq divisionName\", \"externalId eq 167844\", \"active eq false\". } begin #Get a list of users result = api_instance.get_scim_v2_users(opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->get_scim_v2_users: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **start_index** | **Integer**| The 1-based index of the first query result. | [optional] [default to 1] | **count** | **Integer**| The requested number of items per page. A value of 0 returns \"totalResults\". Note that page size over 25 will likely cause a 429 error by exceeding the internal resource limits. Page sizes over 25 will require using excludedAttributes and includeAttributes query parameters to exclude secondary lookup values -- (i.e. for Users externalId, roles, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, and for Groups externalId, members). | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the 'id', 'userName', 'active', and 'meta' attributes. Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. The 'id', 'userName', 'active', 'meta' attributes will always be present in output. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, groups, roles, urn:ietf:params:scim:schemas:core:2.0:User:id, urn:ietf:params:scim:schemas:core:2.0:User:userName, urn:ietf:params:scim:schemas:core:2.0:User:displayName, urn:ietf:params:scim:schemas:core:2.0:User:title, urn:ietf:params:scim:schemas:core:2.0:User:active, urn:ietf:params:scim:schemas:core:2.0:User:externalId, urn:ietf:params:scim:schemas:core:2.0:User:phoneNumbers, urn:ietf:params:scim:schemas:core:2.0:User:emails, urn:ietf:params:scim:schemas:core:2.0:User:groups, urn:ietf:params:scim:schemas:core:2.0:User:roles, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager.value, urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingSkills, urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:routingLanguages | **filter** | **String**| Filters results. If nothing is specified, returns all active users. Examples of valid values: \"id eq 857449b0-d9e7-4cd0-acbf-a6adfb9ef1e9\", \"userName eq search@sample.org\", \"manager eq 16e10e2f-1136-43fe-bb84-eac073168a49\", \"email eq search@sample.org\", \"division eq divisionName\", \"externalId eq 167844\", \"active eq false\". | [optional] | {: class="table table-striped"} ### Return type [**ScimUserListResponse**](ScimUserListResponse.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) patch_scim_group(group_id, body, opts) Modify a group Wraps PATCH /api/v2/scim/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/groups. body = PureCloud::ScimV2PatchRequest.new # ScimV2PatchRequest | The information used to modify a group. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Modify a group result = api_instance.patch_scim_group(group_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->patch_scim_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/groups. | | **body** | [**ScimV2PatchRequest**](ScimV2PatchRequest.html)| The information used to modify a group. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) patch_scim_user(user_id, body, opts) Modify a user Wraps PATCH /api/v2/scim/users/{userId} Requires ANY permissions: * directory:user:edit * directory:user:setPassword * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/users. body = PureCloud::ScimV2PatchRequest.new # ScimV2PatchRequest | The information used to modify a user. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Modify a user result = api_instance.patch_scim_user(user_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->patch_scim_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/users. | | **body** | [**ScimV2PatchRequest**](ScimV2PatchRequest.html)| The information used to modify a user. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) patch_scim_v2_group(group_id, body, opts) Modify a group Wraps PATCH /api/v2/scim/v2/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/v2/groups. body = PureCloud::ScimV2PatchRequest.new # ScimV2PatchRequest | The information used to modify a group. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Modify a group result = api_instance.patch_scim_v2_group(group_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->patch_scim_v2_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/v2/groups. | | **body** | [**ScimV2PatchRequest**](ScimV2PatchRequest.html)| The information used to modify a group. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) patch_scim_v2_user(user_id, body, opts) Modify a user Wraps PATCH /api/v2/scim/v2/users/{userId} Requires ANY permissions: * directory:user:edit * directory:user:setPassword * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/v2/users. body = PureCloud::ScimV2PatchRequest.new # ScimV2PatchRequest | The information used to modify a user. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Modify a user result = api_instance.patch_scim_v2_user(user_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->patch_scim_v2_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/v2/users. | | **body** | [**ScimV2PatchRequest**](ScimV2PatchRequest.html)| The information used to modify a user. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) post_scim_groups(body) The information used to create a group. PureCloud group will be created as \"Official\" group with visibility set \"Public\", and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed. Wraps POST /api/v2/scim/groups Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new body = PureCloud::ScimV2Group.new # ScimV2Group | The information used to create a group. begin #The information used to create a group. result = api_instance.post_scim_groups(body) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->post_scim_groups: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **body** | [**ScimV2Group**](ScimV2Group.html)| The information used to create a group. | | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) post_scim_users(body) Create a user Wraps POST /api/v2/scim/users Requires ANY permissions: * directory:user:add * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new body = PureCloud::ScimV2CreateUser.new # ScimV2CreateUser | The information used to create a user. begin #Create a user result = api_instance.post_scim_users(body) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->post_scim_users: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **body** | [**ScimV2CreateUser**](ScimV2CreateUser.html)| The information used to create a user. | | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) post_scim_v2_groups(body) The information used to create a group. PureCloud group will be created as \"Official\" group with visibility set \"Public\", and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed. Wraps POST /api/v2/scim/v2/groups Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new body = PureCloud::ScimV2Group.new # ScimV2Group | The information used to create a group. begin #The information used to create a group. result = api_instance.post_scim_v2_groups(body) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->post_scim_v2_groups: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **body** | [**ScimV2Group**](ScimV2Group.html)| The information used to create a group. | | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) post_scim_v2_users(body) Create a user Wraps POST /api/v2/scim/v2/users Requires ANY permissions: * directory:user:add * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new body = PureCloud::ScimV2CreateUser.new # ScimV2CreateUser | The information used to create a user. begin #Create a user result = api_instance.post_scim_v2_users(body) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->post_scim_v2_users: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **body** | [**ScimV2CreateUser**](ScimV2CreateUser.html)| The information used to create a user. | | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) put_scim_group(group_id, body, opts) Replace a group Wraps PUT /api/v2/scim/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/groups. body = PureCloud::ScimV2Group.new # ScimV2Group | The information used to replace a group. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Replace a group result = api_instance.put_scim_group(group_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->put_scim_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/groups. | | **body** | [**ScimV2Group**](ScimV2Group.html)| The information used to replace a group. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) put_scim_user(user_id, body, opts) Replace a user Wraps PUT /api/v2/scim/users/{userId} Requires ANY permissions: * directory:user:edit * directory:user:setPassword * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/users. body = PureCloud::ScimV2User.new # ScimV2User | The information used to replace a user. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Replace a user result = api_instance.put_scim_user(user_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->put_scim_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/users. | | **body** | [**ScimV2User**](ScimV2User.html)| The information used to replace a user. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2Group**](ScimV2Group.html) put_scim_v2_group(group_id, body, opts) Replace a group Wraps PUT /api/v2/scim/v2/groups/{groupId} Requires ANY permissions: * directory:group:edit ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new group_id = "group_id_example" # String | The ID of a group. Returned with GET /api/v2/scim/v2/groups. body = PureCloud::ScimV2Group.new # ScimV2Group | The information used to replace a group. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Replace a group result = api_instance.put_scim_v2_group(group_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->put_scim_v2_group: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **group_id** | **String**| The ID of a group. Returned with GET /api/v2/scim/v2/groups. | | **body** | [**ScimV2Group**](ScimV2Group.html)| The information used to replace a group. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2Group**](ScimV2Group.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json ## [**ScimV2User**](ScimV2User.html) put_scim_v2_user(user_id, body, opts) Replace a user Wraps PUT /api/v2/scim/v2/users/{userId} Requires ANY permissions: * directory:user:edit * directory:user:setPassword * authorization:grant:add * authorization:grant:delete * routing:skill:assign * routing:language:assign ### Example ```{"language":"ruby"} # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::SCIMApi.new user_id = "user_id_example" # String | The ID of a user. Returned with GET /api/v2/scim/v2/users. body = PureCloud::ScimV2User.new # ScimV2User | The information used to replace a user. opts = { if_match: "if_match_example" # String | The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". } begin #Replace a user result = api_instance.put_scim_v2_user(user_id, body, opts) p result rescue PureCloud::ApiError => e puts "Exception when calling SCIMApi->put_scim_v2_user: #{e}" end ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| The ID of a user. Returned with GET /api/v2/scim/v2/users. | | **body** | [**ScimV2User**](ScimV2User.html)| The information used to replace a user. | | **if_match** | **String**| The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/users/{userId}. Example: \"42\". If the ETag is different from the version on the server, returns 400 with a \"scimType\" of \"invalidVers\". | [optional] | {: class="table table-striped"} ### Return type [**ScimV2User**](ScimV2User.html) ### HTTP request headers - **Content-Type**: application/json, application/scim+json - **Accept**: application/json, application/scim+json