3 REST Specification for OCI Deployment

This section provides information about REST specifications used in Oracle Communications Cloud Native Configuration Console while deployed in Oracle Cloud Infrastructure (OCI).

3.1 Generate Access Token

CNC Console uses Generate access token REST API to generate the access token.

Type: POST

URI:

/oauth2/v1/token

Sample URI:

https://<oci-iam-domain-url>/v1/token

Example curl command:

curl --location 'https://<oci-iam-domain-url>/oauth2/v1/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic <Base64 encoding of client credentials in the format "clientId:clientSceret">' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=testuser' \
--data-urlencode 'password=******' \
--data-urlencode 'scope=urn:opc:idm:__myscopes__ offline_access' -s

Example of the Response Body

The following is the example of the response body:
200 OK
{
    "access_token": "eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q",
    "token_type": "Bearer",
    "expires_in": 3600
}

3.2 Create a New User

CNC Console uses Create a new user REST API to create a new user.

Type: POST

URI:

/admin/v1/Users

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Users

Example curl command:

curl --location 'https://<oci-iam-domain-url>/admin/v1/Users' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--header 'Content-Type: application/json' \
--data-raw '{
  "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User"
  ],
  "name": {
    "givenName": "user",
    "familyName": "test"
  },
  "userName": "user@oracle.com",
  "emails": [
    {
      "value": "user@oracle.com",
      "type": "work",
      "primary": true
    }
  ]
}'

Example of the Response Body

The following is the example of the response body:
201 OK
{
    "idcsCreatedBy": {
        "type": "User",
        "display": "Test User",
        "value": "5427ea861e2c479895b8375b19c6827a",
        "ocid": "ocid1.user.oc1..aaaaaaaaxszu5pi3iudjfa2tkkz3onobfnk3ctuqqyg3zsa7gx4sohikrboq",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "id": "de18f42c3eeb474d98853574b1927200",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User": {
        "isFederatedUser": false,
        "preferredUiLandingPage": "MyApps"
    },
    "meta": {
        "created": "2024-01-23T11:01:02.009Z",
        "lastModified": "2024-01-23T11:01:02.009Z",
        "version": "7842e880cafc44d49f30cda44436cfc2",
        "resourceType": "User",
        "location": "https://<oci-iam-domain-url>:443/admin/v1/Users/de18f42c3eeb474d98853574b1927200"
    },
    "active": true,
    "displayName": "user121 dummy",
    "idcsLastModifiedBy": {
        "value": "5427ea861e2c479895b8375b19c6827a",
        "display": "Test User",
        "ocid": "ocid1.user.oc1..aaaaaaaaxszu5pi3iudjfa2tkkz3onobfnk3ctuqqyg3zsa7gx4sohikrboq",
        "type": "User",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "name": {
        "givenName": "user121",
        "familyName": "dummy",
        "formatted": "user121 dummy"
    },
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User": {
        "locked": {
            "on": false
        }
    },
    "ocid": "ocid1.user.oc1...gwvwq",
    "userName": "user121",
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User"
    ],
    "domainOcid": "ocid1.domain.oc1...j6kgka",
    "compartmentOcid": "ocid1.tenancy.oc1...pojwe4wxe34a",
    "tenancyOcid": "ocid1.tenancy.oc1...wxe34a",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:capabilities:User": {
        "canUseApiKeys": true,
        "canUseAuthTokens": true,
        "canUseConsolePassword": true,
        "canUseCustomerSecretKeys": true,
        "canUseOAuth2ClientCredentials": true,
        "canUseSmtpCredentials": true,
        "canUseDbCredentials": true
    }
}

3.3 Get All User

CNC Console uses Get all user REST API to get all users.

Type: GET

URI:

/admin/v1/Users

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Users

Example curl command:

curl --location 'https://<oci-iam-domain-url>/admin/v1/Users' \
--header 'Authorization: Bearer 'eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q

Example of the Response Body

The following is the example of the response body:
201 OK
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 36,
    "Resources": [
        {
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User": {
                "isFederatedUser": false,
                "preferredUiLandingPage": "MyApps"
            },
            "idcsCreatedBy": {
                "type": "App",
                "display": "idcsjob",
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "id": "a07ebe1f5b5543608803561b97265fcd",
            "meta": {
                "created": "2024-01-18T05:39:01.978Z",
                "lastModified": "2024-01-18T05:39:01.978Z",
                "version": "186f6d8f4364492ab5c79659d2c33263",
                "resourceType": "User",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Users/a07ebe1f5b5543608803561b97265fcd"
            },
            "active": true,
            "displayName": "CSV User7",
            "idcsLastModifiedBy": {
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "display": "idcsjob",
                "type": "App",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "name": {
                "givenName": "CSV",
                "familyName": "User7",
                "formatted": "CSV User7"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User": {
                "locked": {
                    "on": false
                }
            },
            "ocid": "ocid1.user.oc1..aaaaaaaarql7rbnj4s7ayjiykve7ozjoxfkp7dub7gpwu6vpcl3ysm4he4ha",
            "userName": "CSV7",
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:User",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:capabilities:User": {
                "canUseApiKeys": true,
                "canUseAuthTokens": true,
                "canUseConsolePassword": true,
                "canUseCustomerSecretKeys": true,
                "canUseOAuth2ClientCredentials": true,
                "canUseSmtpCredentials": true,
                "canUseDbCredentials": true
            }
        },
.
.
.
}

3.4 Get Specific User

CNC Console uses Get all user REST API to get a specific user.

Type: GET

URI:

/admin/v1/Users/{{userid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Users/{{userid}}
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
For {{userid}} field, "id" as well as "ocid" can be used.

Example curl command:

curl --location 'https://<oci-iam-domain-url>/admin/v1/Users/ocid1.user.oc1...jrdq' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q'

Example of the Response Body

The following is the example of the response body:
200 OK{
    "idcsCreatedBy": {
        "type": "User",
        "display": "User1",
        "value": "411bdad4c26044aaa8c8cab88da48e86",
        "ocid": "ocid1.user.oc1..aaaaaaaa6woa5vcnxot5mcxefx5isaat77tqdnj62iulsxxeiycwuce4w7aq",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/411bdad4c26044aaa8c8cab88da48e86"
    },
    "id": "30857d89710942e2b5bd67e37d7c0c15",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User": {
        "isFederatedUser": false
    },
    "meta": {
        "created": "2023-12-15T10:09:05.487Z",
        "lastModified": "2024-01-11T07:11:23.485Z",
        "version": "75a47233965648079c0b09aadb1c4d64",
        "resourceType": "User",
        "location": "https://<oci-iam-domain-url>:443/admin/v1/Users/ocid1.user.oc1..aaaaaaaafnvamuekbzxjzyg3fd2b2o3eimcw3hnycypjnfudiyflfid3jrdq"
    },
    "active": true,
    "displayName": "Karan Gupta",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:mfa:User": {
        "preferredDevice": {
            "value": "620a0cde1f6e42f38fca609a6097fbfe",
            "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Devices/620a0cde1f6e42f38fca609a6097fbfe"
        },
        "loginAttempts": 0,
        "mfaStatus": "ENROLLED",
        "preferredAuthenticationFactor": "PUSH"
    },
    "idcsLastModifiedBy": {
        "value": "af2d1df6c13f493b9f3131baae2e8638",
        "display": "idcssso",
        "ocid": "ocid1.domainapp.oc1.iad.amaaaaaasvq5r3yarymeans3hx2mz34nkypz3pan477oeiithvx3ax34asaa",
        "type": "App",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/af2d1df6c13f493b9f3131baae2e8638"
    },
    "name": {
        "givenName": "Karan",
        "familyName": "Gupta",
        "formatted": "Karan Gupta"
    },
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User": {
        "locked": {
            "on": false
        }
    },
    "ocid": "ocid1.user.oc1..aaaaaaaafnvamuekbzxjzyg3fd2b2o3eimcw3hnycypjnfudiyflfid3jrdq",
    "userName": "karan",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
        "definedTags": [
            {
                "value": "corp/karan.k.gupta@oracle.com",
                "key": "CreatedBy",
                "namespace": "Oracle-Tags"
            },
            {
                "value": "2023-12-15T10:09:05.454Z",
                "key": "CreatedOn",
                "namespace": "Oracle-Tags"
            }
        ]
    },
    "emails": [
        {
            "secondary": false,
            "verified": true,
            "type": "recovery",
            "primary": false,
            "value": "karan.k.gupta@oracle.com"
        },
        {
            "secondary": false,
            "verified": true,
            "type": "work",
            "primary": true,
            "value": "karan.k.gupta@oracle.com"
        }
    ],
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:mfa:User",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User"
    ],
    "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
    "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
    "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:capabilities:User": {
        "canUseApiKeys": true,
        "canUseAuthTokens": true,
        "canUseConsolePassword": true,
        "canUseCustomerSecretKeys": true,
        "canUseOAuth2ClientCredentials": true,
        "canUseSmtpCredentials": true,
        "canUseDbCredentials": true
    }
}

3.5 Delete User

CNC Console uses Delete User REST API to delete user.

Type: DELETE

URI:

/admin/v1/Users/{{userid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Users/{{userid}}
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
For {{userid}} field, "id" as well as "ocid" can be used.

Example curl command:

curl --location --request DELETE 'https://<oci-iam-domain-url>/admin/v1/Users/ocid1.user.oc1...fs6tq' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--header 'Content-Type: application/json'

Example of the Response Body

The following is the example of the response body:
204 No Content

3.6 Set up a New Password for the User

CNC Console uses Set up a New Password for the User REST API to set up a new password for the user.

Type: GET

URI:

/admin/v1/UserPasswordChanger/{{userid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/UserPasswordChanger/{{userid}}
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
For {{userid}} field, "id" as well as "ocid" can be used.

Example curl command:

curl --location --request PUT 'https://<oci-iam-domain-url>/admin/v1/UserPasswordChanger/ocid1.user.oc1...vpcta' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--header 'Content-Type: application/json' \
--data-raw '{
  "password": "Welcome@123Bro",
  "schemas": [
    "urn:ietf:params:scim:schemas:oracle:idcs:UserPasswordChanger"
  ]
}'

Example of the Response Body

The following is the example of the response body:
200 OK
{
    "schemas": [
        "urn:ietf:params:scim:schemas:oracle:idcs:UserPasswordChanger"
    ],
    "id": "023aa77a7ccd419db579dc6707c43e03",
    "meta": {
        "resourceType": "UserPasswordChanger",
        "location": "https://<oci-iam-domain-url>:443/admin/v1/UserPasswordChanger/ocid1.user.oc1..aaaaaaaa7hz5lhf4a64aekqndcvolrhscj25udrz7gux44kl7pckdlgvpcta"
    },
    "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
    "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
    "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
    "ocid": "ocid1.user.oc1..aaaaaaaa7hz5lhf4a64aekqndcvolrhscj25udrz7gux44kl7pckdlgvpcta"
}
400 Bad Request
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:Error",
        "urn:ietf:params:scim:api:oracle:idcs:extension:messages:Error"
    ],
    "detail": "The password does not meet the criteria of the password policy because: [The password must have at least 12 characters.]",
    "status": "400",
    "urn:ietf:params:scim:api:oracle:idcs:extension:messages:Error": {
        "messageId": "error.identity.passwordmgmt.pwdpolicyViolation"
    }
}

3.7 Get all groups of the domain

CNC Console uses Get all groups of the domain REST API to get all groups of the domain.

Type: GET

URI:

/admin/v1/Groups

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups

Example curl command:

curl --location 'https://<oci-iam-domain-url>/admin/v1/Groups' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q'

Example of the Response Body

The following is the example of the response body:
200 OK
{
   "schemas": [
       "urn:ietf:params:scim:api:messages:2.0:ListResponse"
   ],
   "totalResults": 58,
   "Resources": [
       {
           "displayName": "SCP_WRITE",
           "idcsLastModifiedBy": {
               "type": "User",
               "value": "fc0f9952563e4b4399f4869fc066673d",
               "display": "User1",
               "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
               "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
           },
           "idcsCreatedBy": {
               "type": "User",
               "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
               "display": "User1",
               "value": "fc0f9952563e4b4399f4869fc066673d",
               "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
           },
           "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
               "description": "Read and Write access to SCP Resource"
           },
           "meta": {
               "version": "418190f8f2c64e4fa380f5d2673b9f37",
               "created": "2023-11-14T09:05:39.001Z",
               "lastModified": "2023-11-21T03:53:00.352Z",
               "resourceType": "Group",
               "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/d29818fc6a1d4be9883699766a8f026c"
           },
           "id": "d29818fc6a1d4be9883699766a8f026c",
           "ocid": "ocid1.group.oc1..aaaaaaaahwdyfqkvz42tszory5nkz4kuha6iuwah26j4pgtuyhic3gssq2jq",
           "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
               "definedTags": [
                   {
                       "key": "CreatedBy",
                       "namespace": "Oracle-Tags",
                       "value": "corp/shreyas.b@oracle.com"
                   },
                   {
                       "key": "CreatedOn",
                       "namespace": "Oracle-Tags",
                       "value": "2023-11-14T09:05:38.977Z"
                   }
               ]
           },
           "schemas": [
               "urn:ietf:params:scim:schemas:core:2.0:Group",
               "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
               "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
           ],
           "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
           "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
           "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
           "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
               "membershipType": "static"
           }
       },
       {
           "displayName": "SCP_WRITE",
           "idcsLastModifiedBy": {
               "type": "User",
               "value": "5427ea861e2c479895b8375b19c6827a",
               "display": "Test User",
               "ocid": "ocid1.user.oc1..aaaaaaaaxszu5pi3iudjfa2tkkz3onobfnk3ctuqqyg3zsa7gx4sohikrboq",
               "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
           },
           "idcsCreatedBy": {
               "type": "User",
               "ocid": "ocid1.user.oc1..aaaaaaaaxszu5pi3iudjfa2tkkz3onobfnk3ctuqqyg3zsa7gx4sohikrboq",
               "display": "Test User",
               "value": "5427ea861e2c479895b8375b19c6827a",
               "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
           },
           "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
               "description": "Example Description"
           },
           "meta": {
               "version": "1d57c48a69c1485cbfa732d0f6c6d5b5",
               "created": "2024-01-16T05:58:21.652Z",
               "lastModified": "2024-01-16T05:58:21.652Z",
               "resourceType": "Group",
               "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/0a71625b839a41d4a70814bd336e9580"
           },
           "id": "0a71625b839a41d4a70814bd336e9580",
           "ocid": "ocid1.group.oc1..aaaaaaaazu4nl2jlsl5iavnvnjszbwrdmyqn4fo5n7hbyng6mooaamsjynfq",
           "externalId": "123456",
           "schemas": [
               "urn:ietf:params:scim:schemas:core:2.0:Group",
               "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
           ],
           "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
           "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
           "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
           "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
               "membershipType": "static"
           }
       },
.
.
.
.
}
400 Bad Request
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:Error",
        "urn:ietf:params:scim:api:oracle:idcs:extension:messages:Error"
    ],
    "detail": "The password does not meet the criteria of the password policy because: [The password must have at least 12 characters.]",
    "status": "400",
    "urn:ietf:params:scim:api:oracle:idcs:extension:messages:Error": {
        "messageId": "error.identity.passwordmgmt.pwdpolicyViolation"
    }
}

3.8 Get all groups of a specific user

CNC Console uses Get all groups of a specific user REST API to get all hroups of a spcific user.

Type: GET

URI:

/admin/v1/Groups?filter=members[type eq "User" and value eq "{{userid}}"]

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups?filter=members[type eq "User" and value eq
      "{{userid}}"]
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
For {{userid}} field, "id" as well as "ocid" can be used.

Example curl command:

Replace <USER-ID> with required user's id .

curl --location --globoff 'https://<oci-iam-domain-url>/admin/v1/Groups?filter=members[type%20eq%20%22User%22%20and%20value%20eq%20%22<USER-ID>%22]' \--header 'Authorization: Bearer
        eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q'

Example of the Response Body

The following is the example of the response body:
200 OK{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 3,
    "Resources": [
        {
            "displayName": "Domain_Administrators",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "6923eddd11d1457084f550273b51027a",
                "display": "idcssm",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/6923eddd11d1457084f550273b51027a"
            },
            "idcsCreatedBy": {
                "type": "App",
                "display": "idcssm",
                "value": "6923eddd11d1457084f550273b51027a",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/6923eddd11d1457084f550273b51027a"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Domain Administrators"
            },
            "meta": {
                "version": "a9d7f9a9e7114c2994fe729f0506739a",
                "created": "2023-10-06T05:23:58.569Z",
                "lastModified": "2023-10-06T05:23:58.569Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/2c715a2f00b44e3fab0dced1c5798d84"
            },
            "id": "2c715a2f00b44e3fab0dced1c5798d84",
            "ocid": "ocid1.group.oc1..aaaaaaaaenl5su2ejqkzonyjdcrtt52nvgfk53zgggjp2vfja5lya742dqnq",
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        },
        {
            "displayName": "SCP_READ",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "display": "idcsjob",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "idcsCreatedBy": {
                "type": "User",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "display": "Shreyas Rao B",
                "value": "fc0f9952563e4b4399f4869fc066673d",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Has access to only SCP resources and can only perform READ Managed Objects of SCP."
            },
            "meta": {
                "version": "8a1f0617369a444da296ef6ce2b73a9e",
                "created": "2023-11-14T09:05:28.413Z",
                "lastModified": "2024-01-25T03:56:30.173Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/5d315d352e8c4af38e590b71ed6d2699"
            },
            "id": "5d315d352e8c4af38e590b71ed6d2699",
            "ocid": "ocid1.group.oc1..aaaaaaaava7e65qhum3tatqzzk43tqyb5f7txwb56ukbhtlxf5neb54yy4oq",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
                "definedTags": [
                    {
                        "key": "CreatedBy",
                        "namespace": "Oracle-Tags",
                        "value": "corp/shreyas.b@oracle.com"
                    },
                    {
                        "key": "CreatedOn",
                        "namespace": "Oracle-Tags",
                        "value": "2023-11-14T09:05:28.391Z"
                    }
                ]
            },
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        },
        {
            "displayName": "SCP_WRITE",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "display": "idcsjob",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "idcsCreatedBy": {
                "type": "User",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "display": "Shreyas Rao B",
                "value": "fc0f9952563e4b4399f4869fc066673d",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Has access to only SCP resources and can perform CRUD operations on Managed Objects."
            },
            "meta": {
                "version": "f4fcceb2a4014355a0a099ea22f0f2da",
                "created": "2023-11-14T09:05:39.001Z",
                "lastModified": "2024-01-25T03:56:30.043Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/d29818fc6a1d4be9883699766a8f026c"
            },
            "id": "d29818fc6a1d4be9883699766a8f026c",
            "ocid": "ocid1.group.oc1..aaaaaaaahwdyfqkvz42tszory5nkz4kuha6iuwah26j4pgtuyhic3gssq2jq",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
                "definedTags": [
                    {
                        "key": "CreatedBy",
                        "namespace": "Oracle-Tags",
                        "value": "corp/shreyas.b@oracle.com"
                    },
                    {
                        "key": "CreatedOn",
                        "namespace": "Oracle-Tags",
                        "value": "2023-11-14T09:05:38.977Z"
                    }
                ]
            },
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        }
    ],
    "startIndex": 1,
    "itemsPerPage": 50
}

3.9 Create a group

CNC Console uses Create a group REST API to create a group.

Type: POST

URI:

/admin/v1/Groups

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
For {{userid}} field, "id" as well as "ocid" can be used.

Example curl command:

curl --location --globoff 'https://<oci-iam-domain-url>/admin/v1/Groups?filter=members[type%20eq%20%22User%22%20and%20value%20eq%20%22ocid1.user.oc1...q%22]' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q'

Example of the Response Body

The following is the example of the response body:
200 OK{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 3,
    "Resources": [
        {
            "displayName": "Domain_Administrators",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "6923eddd11d1457084f550273b51027a",
                "display": "idcssm",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/6923eddd11d1457084f550273b51027a"
            },
            "idcsCreatedBy": {
                "type": "App",
                "display": "idcssm",
                "value": "6923eddd11d1457084f550273b51027a",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/6923eddd11d1457084f550273b51027a"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Domain Administrators"
            },
            "meta": {
                "version": "a9d7f9a9e7114c2994fe729f0506739a",
                "created": "2023-10-06T05:23:58.569Z",
                "lastModified": "2023-10-06T05:23:58.569Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/2c715a2f00b44e3fab0dced1c5798d84"
            },
            "id": "2c715a2f00b44e3fab0dced1c5798d84",
            "ocid": "ocid1.group.oc1..aaaaaaaaenl5su2ejqkzonyjdcrtt52nvgfk53zgggjp2vfja5lya742dqnq",
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        },
        {
            "displayName": "SCP_READ",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "display": "idcsjob",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "idcsCreatedBy": {
                "type": "User",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "display": "Shreyas Rao B",
                "value": "fc0f9952563e4b4399f4869fc066673d",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Has access to only SCP resources and can only perform READ Managed Objects of SCP."
            },
            "meta": {
                "version": "8a1f0617369a444da296ef6ce2b73a9e",
                "created": "2023-11-14T09:05:28.413Z",
                "lastModified": "2024-01-25T03:56:30.173Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/5d315d352e8c4af38e590b71ed6d2699"
            },
            "id": "5d315d352e8c4af38e590b71ed6d2699",
            "ocid": "ocid1.group.oc1..aaaaaaaava7e65qhum3tatqzzk43tqyb5f7txwb56ukbhtlxf5neb54yy4oq",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
                "definedTags": [
                    {
                        "key": "CreatedBy",
                        "namespace": "Oracle-Tags",
                        "value": "corp/shreyas.b@oracle.com"
                    },
                    {
                        "key": "CreatedOn",
                        "namespace": "Oracle-Tags",
                        "value": "2023-11-14T09:05:28.391Z"
                    }
                ]
            },
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        },
        {
            "displayName": "SCP_WRITE",
            "idcsLastModifiedBy": {
                "type": "App",
                "value": "4ed77d9256654268aa286ec1a959dbe2",
                "display": "idcsjob",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Apps/4ed77d9256654268aa286ec1a959dbe2"
            },
            "idcsCreatedBy": {
                "type": "User",
                "ocid": "ocid1.user.oc1..aaaaaaaa7ieth5a2q72o52uu56cx3xwigqldjpndp63zt7jo4a7hhhcnyvpq",
                "display": "Shreyas Rao B",
                "value": "fc0f9952563e4b4399f4869fc066673d",
                "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/fc0f9952563e4b4399f4869fc066673d"
            },
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
                "description": "Has access to only SCP resources and can perform CRUD operations on Managed Objects."
            },
            "meta": {
                "version": "f4fcceb2a4014355a0a099ea22f0f2da",
                "created": "2023-11-14T09:05:39.001Z",
                "lastModified": "2024-01-25T03:56:30.043Z",
                "resourceType": "Group",
                "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/d29818fc6a1d4be9883699766a8f026c"
            },
            "id": "d29818fc6a1d4be9883699766a8f026c",
            "ocid": "ocid1.group.oc1..aaaaaaaahwdyfqkvz42tszory5nkz4kuha6iuwah26j4pgtuyhic3gssq2jq",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags": {
                "definedTags": [
                    {
                        "key": "CreatedBy",
                        "namespace": "Oracle-Tags",
                        "value": "corp/shreyas.b@oracle.com"
                    },
                    {
                        "key": "CreatedOn",
                        "namespace": "Oracle-Tags",
                        "value": "2023-11-14T09:05:38.977Z"
                    }
                ]
            },
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:OCITags",
                "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
            ],
            "domainOcid": "ocid1.domain.oc1..aaaaaaaatzwhla6vhqwnvj6eiaoksjwqe2sxxwzlsm6zljr3ttcs5mj6kgka",
            "compartmentOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "tenancyOcid": "ocid1.tenancy.oc1..aaaaaaaa5oqwziy4bngiebry6letze4s2ap5x5pv4esurhc6pojwe4wxe34a",
            "urn:ietf:params:scim:schemas:oracle:idcs:extension:dynamic:Group": {
                "membershipType": "static"
            }
        }
    ],
    "startIndex": 1,
    "itemsPerPage": 50
}

3.10 Delete a group

CNC Console uses Delete a group REST API to delete a group.

Type: DELETE

URI:

/admin/v1/Groups/{{groupid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups/{{groupid}}
Sample group:
{{
    "displayName": "ExampleGroup",
    .
    .
    .
    "id": "f4fc...6ad",
    "ocid": "ocid1.group.oc1...4fq",
    .
    .
    .
}
Populate {{groupid}} as "id" of sample group

Example curl command:

curl --location --request DELETE 'https://<oci-iam-domain-url>/admin/v1/Groups/f4fc1efec8a1478fbe858cbbe95456ad' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q'

Example of the Response Body

The following is the example of the response body:
204 No Content

3.11 Update group details

CNC Console uses Update group details REST API to update group details.

Type: PATCH

URI:

/admin/v1/Groups/{{groupid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups/{{groupid}}
Sample group:
{{
    "displayName": "ExampleGroup",
    .
    .
    .
    "id": "f4fc...6ad",
    "ocid": "ocid1.group.oc1...4fq",
    .
    .
    .
}
Populate {{groupid}} as "id" of sample group

Example curl command:

curl --location --request PATCH 'https://<oci-iam-domain-url>/admin/v1/Groups/efac9f16bf5949318e36c32f6c4b4574' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--header 'Content-Type: application/json' \
--data '{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "replace",
      "path": "displayName",
      "value": "Employees from Example"
    }
  ]
}'

Example of the Response Body

The following is the example of the response body:
{
    "displayName": "Employees from Example",
    "idcsLastModifiedBy": {
        "type": "User",
        "value": "5427ea861e2c479895b8375b19c6827a",
        "display": "Test User",
        "ocid": "ocid1.user.oc1..aaaaaaaaxszu5pi3iudjfa2tkkz3onobfnk3ctuqqyg3zsa7gx4sohikrboq",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "idcsCreatedBy": {
        "type": "User",
        "ocid": "ocid1.user.oc1...krboq",
        "display": "Test User",
        "value": "5427ea861e2c479895b8375b19c6827a",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
        "description": "Example Description"
    },
    "meta": {
        "version": "7a72fc34066347a9aafccf7258614c4d",
        "created": "2024-01-24T08:50:30.209Z",
        "lastModified": "2024-01-24T09:47:34.308Z",
        "resourceType": "Group",
        "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/efac9f16bf5949318e36c32f6c4b4574"
    },
    "id": "efac9f16bf5949318e36c32f6c4b4574",
    "ocid": "ocid1.group.oc1...woq",
    "externalId": "123456",
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
    ],
    "domainOcid": "ocid1.domain.oc1...j6kgka",
    "compartmentOcid": "ocid1.tenancy.oc1...xe34a",
    "tenancyOcid": "ocid1.tenancy.oc1...wxe34a"
}

3.12 Assign group to a user

CNC Console uses Assign group to a user REST API to assign a group to a user.

Type: PATCH

URI:

/admin/v1/Groups/{{groupid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Groups/{{groupid}}
Sample group:
{{
    "displayName": "ExampleGroup",
    .
    .
    .
    "id": "f4fc...6ad",
    "ocid": "ocid1.group.oc1...4fq",
    .
    .
    .
}
Populate {{groupid}} as "id" of sample group

Example curl command:

curl --location --request PATCH 'https://<oci-iam-domain-url>/admin/v1/Groups/efac9f16bf5949318e36c32f6c4b4574' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--data '{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "add",
      "path": "members",
      "value": [
        {
          "value": "<userid>",
          "type": "User"
        }
      ]
    }
  ]
}'
Sample user format:
{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}
Populate <userid> as "id" of Sample User

Example of the Response Body

The following is the example of the response body:
{
    "displayName": "Employees from Example",
    "idcsLastModifiedBy": {
        "type": "User",
        "value": "5427ea861e2c479895b8375b19c6827a",
        "display": "Test User",
        "ocid": "ocid1.user.oc1...krboq",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "idcsCreatedBy": {
        "type": "User",
        "ocid": "ocid1.user.oc1...krboq",
        "display": "Test User",
        "value": "5427ea861e2c479895b8375b19c6827a",
        "$ref": "https://<oci-iam-domain-url>:443/admin/v1/Users/5427ea861e2c479895b8375b19c6827a"
    },
    "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group": {
        "description": "Example Description"
    },
    "meta": {
        "version": "7a72fc34066347a9aafccf7258614c4d",
        "created": "2024-01-24T08:50:30.209Z",
        "lastModified": "2024-01-24T09:47:34.308Z",
        "resourceType": "Group",
        "location": "https://<oci-iam-domain-url>:443/admin/v1/Groups/efac9f16bf5949318e36c32f6c4b4574"
    },
    "id": "efac9f16bf5949318e36c32f6c4b4574",
    "ocid": "ocid1.group.oc1...oewoq",
    "externalId": "123456",
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group",
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:group:Group"
    ],
    "domainOcid": "ocid1.domain.oc1...j6kgka",
    "compartmentOcid": "ocid1.tenancy.oc1...wxe34a",
    "tenancyOcid": "ocid1.tenancy.oc1...4wxe34a"
}

3.13 Assign multiple groups to a user

CNC Console uses Assign multiple groups to a user REST API to assign multiple groups to a user.

Type: POST

URI:

/admin/v1/Bulk

/admin/v1/Groups/{{groupid}}

Sample URI:

https://<oci-iam-domain-url>/admin/v1/Bulk

Example curl command:

curl --location --request PATCH 'https://<oci-iam-domain-url>/admin/v1/Groups/efac9f16bf5949318e36c32f6c4b4574' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--data '{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "add",
      "path": "members",
      "value": [
        {
          "value": "<userid>",
          "type": "User"
        }
      ]
    }
  ]
}'

Example of the Response Body

The following is the example of the response body:

curl --location 'https://<oci-iam-domain-url>/admin/v1/Bulk' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsI................._LcCZYwDQJJTloj2PJ8y1WjO9l2Q' \
--data '{"schemas":["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
"Operations":
[
{
"method":"PATCH","path":"/Groups/<groupid>",
"data":{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations":[{"op":"add","path":"members","value":[{"value":"<userid>","type":"User"}]}]}
},
{
"method":"PATCH","path":"/Groups/<groupid>",
"data":{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations":[{"op":"add","path":"members","value":[{"value":"<userid>","type":"User"}]}]}
}
]
}'

Populate different groups with <groupid>, to assign multiple groups to user, <userid>

Sample user format:

{
"id": 12...x3,
...
"ocid": "ocid1...op",
"userName": "testuser"
.
.
.
}

Populate <userid> as "id" field of sample User

Sample group format:
{
    "displayName": "ExampleGroup",
    .
    .
    .
    "id": "f4fc...6ad",
    "ocid": "ocid1.group.oc1...4fq",
    .
    .
    .
}
Populate <groupid> as "id" of sample group