Ejemplos de solicitud GET, POST, PUT, PATCH y respuesta

Las solicitudes y respuestas GET, POST, PUT y PATCH necesitan un cuerpo de solicitud JSON.

Ejemplo de solicitud GET y respuesta

A continuación se muestra un ejemplo de un cuerpo de solicitud JSON utilizado con un método GET para mostrar un usuario y la respuesta.

Solicitud:


GET {{HOST}}/admin/v1/Users/{{userid}}

Respuesta:

{
    "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
    }
} 

Ejemplo de solicitud y respuesta de POST

A continuación se muestra un ejemplo de un cuerpo de solicitud de JSON utilizado con un método POST para crear un nuevo usuario y la respuesta.

Solicitud:

{
  "schemas": ["urn:ietf:params:scim:api:messages:2.0:SearchRequest"],
  "attributes": ["displayName", "userName"],
  "filter":
          "userName sw \"bje\"",
  "startIndex": 1,
  "count": 10
}
Respuesta:
{
    "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
}

Ejemplo de solicitud y respuesta PUT

A continuación se muestra un ejemplo de un cuerpo de solicitud JSON utilizado con un método PUT para sustituir la información del usuario y la respuesta.

Solicitud:

{
    "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"
        }
    ]
}

Respuesta:

{
    "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"
        }
    ]
}

Ejemplo de solicitud y respuesta de PATCH

A continuación se muestra un ejemplo de un cuerpo de solicitud JSON utilizado con un método PATCH para modificar la información del usuario y la respuesta.

Solicitud:

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
        {
            "op": "add",
            "path": "phoneNumbers",
            "value": [
                {
                    "value": "555-555-1111",
                    "type": "home"
                }
            ]
        }
    ]
}
Respuesta:
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
        {
            "op": "replace",
            "path": "phoneNumbers",
            "value": [
                {
                    "value": "666-666-1111",
                    "type": "home"
                }
            ]
        }
    ]
} 
Nota

  • El atributo schemas se define en la recopilación de esquemas que corresponde al recurso. Por ejemplo, urn:ietf:params:scim:schemas:core:2.0:User se corresponde con /Users. Consulte SCIM Schema Overview.

  • Los atributos restantes son los atributos de usuario que se van a definir.