Exemples de demande et de réponse GET, POST, PUT, PATCH
Les demandes et réponses GET, POST, PUT et PATCH nécessitent un corps de demande JSON.
Exemple de demande et de réponse GET
Voici un exemple de corps de demande JSON utilisé avec une méthode GET pour répertorier un utilisateur et la réponse.
Demande:
GET {{HOST}}/admin/v1/Users/{{userid}}
Réponse:
{
"idcsCreatedBy": {
"type": "App",
"display": "Confidential App",
"value": "<app_id>",
"ocid": "ocid1.domainapp.oc1.<unique_id>",
"$ref": "https://<domain_url>/admin/v1/Apps/<app_id>"
},
"id": "<user_id>",
"urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User": {
"isFederatedUser": false,
"preferredUiLandingPage": "MyApps"
},
"meta": {
"created": "2024-10-24T19:07:26.810Z",
"lastModified": "2024-10-24T19:07:26.810Z",
"version": "ddf2b4979d704f3d813e2636630da678",
"resourceType": "User",
"location": "https://<domain_url>/admin/v1/Users/ocid1.user.oc1..<unique_id>"
},
"active": true,
"displayName": "Barbara Jensen",
"idcsLastModifiedBy": {
"value": "<app_id>",
"display": "Confidential App",
"ocid": "ocid1.domainapp.oc1.<unique_id>",
"type": "App",
"$ref": "https://<domain_url>/admin/v1/Apps/<app_id>"
},
"name": {
"givenName": "Barbara",
"familyName": "Jensen",
"formatted": "Barbara Jensen"
},
"urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User": {
"locked": {
"on": false
}
},
"ocid": "ocid1.user.oc1..<unique_id>",
"userName": "bjensen",
"emails": [
{
"value": "bjensen@exmple.com",
"type": "work",
"secondary": false,
"verified": false,
"primary": true
},
{
"value": "bjensen@exmple.com",
"type": "recovery",
"secondary": false,
"verified": false,
"primary": false
}
],
"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..<unique_id>",
"compartmentOcid": "ocid1.compartment.oc1..<unique_id>",
"tenancyOcid": "ocid1.tenancy.oc1..<unique_id>",
"urn:ietf:params:scim:schemas:oracle:idcs:extension:capabilities:User": {
"canUseApiKeys": true,
"canUseAuthTokens": true,
"canUseConsolePassword": true,
"canUseCustomerSecretKeys": true,
"canUseOAuth2ClientCredentials": true,
"canUseSmtpCredentials": true,
"canUseDbCredentials": true
}
}
Exemple de demande et de réponse POST
Voici un exemple de corps de demande JSON utilisé avec une méthode POST pour créer un utilisateur et la réponse.
Demande:
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:SearchRequest"],
"attributes": ["displayName", "userName"],
"filter":
"userName sw \"bje\"",
"startIndex": 1,
"count": 10
}Réponse:{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:ListResponse"
],
"totalResults": 1,
"Resources": [
{
"displayName": "Barbara Jensen",
"userName": "bjensen",
"id": "<user_id>"
}
],
"startIndex": 1,
"itemsPerPage": 10
}Exemple de demande et de réponse PUT
Voici un exemple de corps de demande JSON utilisé avec une méthode PUT pour remplacer les informations utilisateur et la réponse.
Demande:
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"name": {
"givenName": "Barbara",
"familyName": "Jensen"
},
"userName": "bjensen@example.com",
"active": true,
"emails": [
{
"value": "bjensen@example.com",
"primary": true,
"type": "home",
"verified": true
},
{
"value": "bjensen@example.org",
"type": "work"
}
]
}
Réponse:
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"name": {
"givenName": "Barbara",
"familyName": "Jensen"
},
"userName": "bjensen@example.com",
"active": true,
"emails": [
{
"value": "bjensen@example.com",
"primary": true,
"type": "home",
"verified": true
},
{
"value": "bjensen@example.org",
"type": "work"
}
]
}
Exemple de demande et de réponse PATCH
Voici un exemple de corps de demande JSON utilisé avec une méthode PATCH pour modifier les informations utilisateur et la réponse.
Demande:
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "add",
"path": "phoneNumbers",
"value": [
{
"value": "555-555-1111",
"type": "home"
}
]
}
]
}Réponse:{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "replace",
"path": "phoneNumbers",
"value": [
{
"value": "666-666-1111",
"type": "home"
}
]
}
]
} -
L'attribut
schemasest défini sur la collection de schémas qui correspond à la ressource. Par exemple,urn:ietf:params:scim:schemas:core:2.0:Usercorrespond à/Users. Reportez-vous à la section SCIM Schema Overview. -
Les autres attributs sont des attributs utilisateur à définir.