Introduction to OCI SCIM

The following documentation provides the basic endpoints needed to utilize Oracle Cloud Infrastructure's SCIM.

Base Resource URLs
Parameters
Users

Resource: /Users

  1. Create a user

    POST
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users

    Sample Payloads

    1. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "userName": "test_user",
                          "externalId": "extid"
                        } 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "id": "{user_ocid}",
                          "externalId": "extid",
                          "userName": "test_user",
                          "version": "W/\"536318337495399554cd5fefb2917932e9a43ab6\"",
                          "active": true,
                          "meta": {
                            "resourceType": "User",
                            "created": "2020-05-14T05:19:32.287Z",
                            "lastModified": "2020-05-14T05:19:32.287Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Users/{user_ocid}",
                            "version": "W/\"536318337495399554cd5fefb2917932e9a43ab6\""
                          }
                        }
                        
                      
    2. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "userName": "Runscope608Gzcyagflp869@atko.com",
                          "name": { "givenName": "Runscope608", "familyName": "Gzcyagflp869" },
                          "emails": [
                            {
                              "primary": true,
                              "value": "Runscope608Gzcyagflp869@atko.com",
                              "type": "work"
                            }
                          ],
                          "displayName": "Runscope608 Gzcyagflp869",
                          "active": true
                        } 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "id": "{user_ocid}",
                          "externalId": "extid",
                          "userName": "test_user",
                          "version": "W/\"536318337495399554cd5fefb2917932e9a43ab6\"",
                          "active": true,
                          "meta": {
                            "resourceType": "User",
                            "created": "2020-05-14T05:19:32.287Z",
                            "lastModified": "2020-05-14T05:19:32.287Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Users/{user_ocid}",
                            "version": "W/\"536318337495399554cd5fefb2917932e9a43ab6\""
                          }
                        }
                        
                      
  2. Get a user by OCID

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users/{user_ocid}

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "id": "{user_ocid}",
                          "externalId": "extid",
                          "userName": "test_user",
                          "version": "W/\"a693373ddd9791b6457e7775d57e4fd17a5e50ed\"",
                          "active": true,
                          "groups": [],
                          "meta": {
                            "resourceType": "User",
                            "created": "2020-05-14T05:19:32.287Z",
                            "lastModified": "2020-05-14T05:19:33.760Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Users/{user_ocid}",
                            "version": "W/\"a693373ddd9791b6457e7775d57e4fd17a5e50ed\""
                          }
                        }
                        
                      
  3. Get a user by username

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users?filter=userName eq "Runscope608Gzcyagflp869%40atko.com"

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
                          "totalResults": 1,
                          "itemsPerPage": 1,
                          "startIndex": 1,
                          "Resources": [
                            {
                              "id": "{user_ocid}",
                              "userName": "Runscope608Gzcyagflp869@atko.com",
                              "active": true,
                              "emails": [
                                {
                                  "value": "Runscope608Gzcyagflp869@atko.com",
                                  "primary": false
                                }
                              ]
                            }
                          ]
                        }
                        
                      
  4. Get the first user

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users?count=1&startIndex=1

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
                          "totalResults": 1,
                          "itemsPerPage": 1,
                          "startIndex": 1,
                          "Resources": [
                            {
                              "id": "{user_ocid}",
                              "userName": "Runscope608Gzcyagflp869@atko.com",
                              "active": true,
                              "emails": [
                                {
                                  "value": "Runscope608Gzcyagflp869@atko.com",
                                  "primary": false
                                }
                              ]
                            }
                          ]
                        }
                        
                      
  5. Update a user

    PATCH
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users/{user_ocid}

    Sample Payloads

    1. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
                          "Operations": [{ "op": "replace", "value": { "active": "False" } }]
                        }
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
                          "id": "{user_ocid}",
                          "externalId": "extid",
                          "userName": "test_user",
                          "version": "W/\"c084da813955cb439b93c30c1c6e03fecaf117b5\"",
                          "active": false,
                          "groups": [],
                          "meta": {
                            "resourceType": "User",
                            "created": "2020-05-14T05:19:32.287Z",
                            "lastModified": "2020-05-14T05:19:32.404Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Users/{user_ocid}",
                            "version": "W/\"c084da813955cb439b93c30c1c6e03fecaf117b5\""
                          }
                        }
                        
                      
  6. Delete a user

    DELETE
    https://<region-name>.scim.oci.oraclecloud.com/v2/Users/{user_ocid}

    Sample Payloads

    1. Request Body:
                        
                        (no body)
                        
                      
      Response Body:
                        
                        (no body)
                        
                      
Groups

Resource: /Groups

  1. Create a group

    POST
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups

    Sample Payloads

    1. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                          "displayName": "test_group",
                          "externalId": "extid"
                        }
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                          "id": "{group_ocid}",
                          "externalId": "extid",
                          "displayName": "test_group",
                          "version": "W/\"4e55ad2f75559d91864384eb5da0b4f6734ef440\"",
                          "meta": {
                            "resourceType": "Group",
                            "created": "2020-05-14T05:15:26.717Z",
                            "lastModified": "2020-05-14T05:15:26.717Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}",
                            "version": "W/\"4e55ad2f75559d91864384eb5da0b4f6734ef440\""
                          }
                        }
                        
                      
  2. Get a group by display name with provided attributes

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups?displayName eq "test_group"&attributes=groups,id,displayName

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
                          "totalResults": 1,
                          "itemsPerPage": 1,
                          "startIndex": 1,
                          "Resources": [
                            {
                              "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                              "id": "{group_ocid}",
                              "externalId": "extid",
                              "displayName": "test_group",
                              "meta": {
                                "resourceType": "Group",
                                "created": "2020-05-14T05:15:26.717Z",
                                "lastModified": "2020-05-14T05:15:26.717Z",
                                "location": "/v2/Groups/{group_ocid}",
                                "version": null
                              }
                            }
                          ]
                        } 
                        
                      
  3. Get a group by display name using filter syntax

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups?filter=displayName eq "test_group"

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
                          "totalResults": 1,
                          "itemsPerPage": 1,
                          "startIndex": 1,
                          "Resources": [
                            {
                              "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                              "id": "{group_ocid}",
                              "externalId": "extid",
                              "displayName": "test_group",
                              "meta": {
                                "resourceType": "Group",
                                "created": "2020-05-14T05:14:14.723Z",
                                "lastModified": "2020-05-14T05:14:14.723Z",
                                "location": "/v2/Groups/{group_ocid}",
                                "version": null
                              }
                            }
                          ]
                        }
                        
                      
  4. Get all groups

    GET
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups

    Sample Payloads

    1. Request Body:
                        
                        (no body) 
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
                          "totalResults": 1,
                          "itemsPerPage": 1,
                          "startIndex": 1,
                          "Resources": [
                            {
                              "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                              "id": "{group_ocid}",
                              "externalId": "extid",
                              "displayName": "test_group",
                              "meta": {
                                "resourceType": "Group",
                                "created": "2020-05-14T05:18:13.431Z",
                                "lastModified": "2020-05-14T05:18:13.431Z",
                                "location": "/v2/Groups/{group_ocid}",
                                "version": null
                              }
                            }
                          ]
                        }
                        
                      
  5. Add a member to the group

    PATCH
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}

    Sample Payloads

    1. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
                          "Operations": [
                            { "op": "add", "path": "members", "value": [{ "value": "{user_ocid}" }] }
                          ]
                        }
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                          "id": "{group_ocid}",
                          "externalId": "extid",
                          "displayName": "test_group",
                          "version": "W/\"b865d336e77e783c8fb8fa86adbadbc16e844af7\"",
                          "meta": {
                            "resourceType": "Group",
                            "created": "2020-05-14T05:17:37.656Z",
                            "lastModified": "2020-05-14T05:17:37.863Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}",
                            "version": "W/\"b865d336e77e783c8fb8fa86adbadbc16e844af7\""
                          }
                        }
                        
                      
  6. Delete a member from the group

    PATCH
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}

    Sample Payloads

    1. Request Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
                          "Operations": [
                            { "op": "remove", "path": "members[value eq \"{user_ocid}\"]" }
                          ]
                        }
                        
                      
      Response Body:
                        
                        {
                          "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
                          "id": "{group_ocid}",
                          "externalId": "extid",
                          "displayName": "test_group",
                          "version": "W/\"0aa3762ddd30beb0a06276cbc9721a462cd1cdba\"",
                          "meta": {
                            "resourceType": "Group",
                            "created": "2020-05-14T05:13:46.791Z",
                            "lastModified": "2020-05-14T05:13:46.900Z",
                            "location": "https://.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}",
                            "version": "W/\"0aa3762ddd30beb0a06276cbc9721a462cd1cdba\""
                          }
                        }
                        
                      
  7. Delete a group

    DELETE
    https://<region-name>.scim.oci.oraclecloud.com/v2/Groups/{group_ocid}

    Sample Payloads

    1. Request Body:
                        
                        (no body)
                        
                      
      Response Body:
                        
                        (no body)