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 lister 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 nouvel 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 sur l'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 sur l'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 réglé à la collection de schémas qui correspond à la ressource. Par exemple,urn:ietf:params:scim:schemas:core:2.0:User, correspond à/Users. Voir Aperçu du schéma SCIM. -
Les autres attributs sont des attributs utilisateur à définir.