--- title: SCIMApi --- ## PureCloud::SCIMApi All URIs are relative to *https://api.mypurecloud.com* Method | Description ------------- | ------------- | ------------- [**delete_scim_user**](SCIMApi.html#delete_scim_user) | Delete a user [**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_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_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_users**](SCIMApi.html#post_scim_users) | Create a user [**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"} ## [**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 ## [**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 = { 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. | | **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\". 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\". | [optional] [default to 25] | **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' 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 | {: 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' 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 ## [**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' 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 default attributes (externalId, enterprise-user:manager, roles). 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 (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. 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 default attributes (externalId, enterprise-user:manager, roles). Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **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\". attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the default attributes (externalId, enterprise-user:manager, roles). 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 (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. 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\". | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the default attributes (externalId, enterprise-user:manager, roles). Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **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 = { 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. | | **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\". } 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\". | [optional] [default to 25] | {: 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' 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 | {: 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' 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 ## [**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' 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 default attributes (externalId, enterprise-user:manager, roles). 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 (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. 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 default attributes (externalId, enterprise-user:manager, roles). Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **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\". attributes: ["attributes_example"], # Array | Indicates which attributes to include. Returns these attributes and the default attributes (externalId, enterprise-user:manager, roles). 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 (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. 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\". | [optional] [default to 25] | **attributes** | [**Array<String>**](String.html)| Indicates which attributes to include. Returns these attributes and the default attributes (externalId, enterprise-user:manager, roles). Use \"attributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **excluded_attributes** | [**Array<String>**](String.html)| Indicates which attributes to exclude. Returns the default attributes (externalId, enterprise-user:manager, roles) minus \"excludedAttributes\". Use \"excludedAttributes\" to avoid expensive secondary calls for the default attributes. | [optional]
**Values**: id, userName, displayName, title, active, externalId, phoneNumbers, emails, photos, groups, rolesurn: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:photos, 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 | **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 ### 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 ### 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 ## [**ScimV2User**](ScimV2User.html) post_scim_users(body) Create a user Wraps POST /api/v2/scim/users Requires ANY permissions: * directory:user:add ### 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 ## [**ScimV2User**](ScimV2User.html) post_scim_v2_users(body) Create a user Wraps POST /api/v2/scim/v2/users Requires ANY permissions: * directory:user:add ### 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 ### 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 ### 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