Sostituire una risorsa

Consente di Schema Registry sostituire un'intera risorsa con un'operazione PUT. L'operazione riscrive sostanzialmente la risorsa, pertanto il corpo della richiesta deve includere tutti i campi necessari per la creazione di una nuova risorsa utilizzando una richiesta di POST.

Questo metodo è particolarmente utile se desiderate aggiornare molte informazioni contemporaneamente nella risorsa.

Nota

Se desiderate aggiornare solo parte di una risorsa invece di sostituirla completamente, consultate il documento sull' aggiornamento di una risorsa mediante un'operazionePATCH.

Formato API

Una richiesta di PUT può essere eseguita solo con risorse definite nel contenitore tenant.

PUT /tenant/{RESOURCE_TYPE}/{RESOURCE_ID} 
Parametro Descrizione
{RESOURCE_TYPE} Il tipo di risorsa da aggiornare dal Schema Library. I tipi validi sono datatypes, mixins, schemase classes.
{RESOURCE_ID} URI con codifica URL $id o meta:altId della risorsa.

Richiesta

Questa richiesta di esempio sostituisce il tipo di dati Property Construction creato in un esempio precedente. Il corpo della richiesta è simile alla richiesta POST utilizzata per creare il tipo di dati, ma ora contiene un set aggiornato di campi con nuovi valori che sostituiscono quelli precedentemente definiti.

curl -X PUT \
  https://platform.adobe.io/data/foundation/schemaregistry/tenant/mixins/_{TENANT_ID}.datatypes.24c643f618647344606222c494bd0102 \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
        "title":"Property Construction",
        "description":"Information related to the construction of the property.",
        "type":"object",
        "properties": {
          "dateOpened": {
            "type":"string",
            "format": "date",
            "title": "Date Opened",
            "description": "The date the property was first opened."
          },
          "propertyType": {
            "type":"string",
            "title": "Property Type",
            "description": "Type of building or structure in which the property exists.",
            "enum": [
              "standAlone",
              "highRise",
              "stripMall"
            ],
            "meta:enum": {
              "standAlone": "Stand-Alone Building",
              "highRise": "High Rise Building",
              "stripMall": "Strip Mall"
            }
          },
          "constructionCompany": {
            "type": "string",
            "title": "Construction Company",
            "description": "Name of the construction company that completed the construction of the property."
          },
          "totalSquareFootage": {
            "type": "integer",
            "title": "Total Square Footage",
            "description": "Total square footage of the property."
          }
        } 
      }'

Risposta

Una risposta corretta restituisce i dettagli del tipo di dati, mostrando i campi e i valori aggiornati come forniti nella richiesta.

{
    "title": "Property Construction",
    "description": "Information related to the construction of the property.",
    "type": "object",
    "properties": {
        "dateOpened": {
            "type": "string",
            "format": "date",
            "title": "Date Opened",
            "description": "The date the property was first opened.",
            "meta:xdmType": "date"
        },
        "propertyType": {
            "type": "string",
            "title": "Property Type",
            "description": "Type of building or structure in which the property exists.",
            "enum": [
                "standAlone",
                "highRise",
                "stripMall"
            ],
            "meta:enum": {
                "standAlone": "Stand-Alone Building",
                "highRise": "High Rise Building",
                "stripMall": "Strip Mall"
            },
            "meta:xdmType": "string"
        },
        "constructionCompany": {
            "type": "string",
            "title": "Construction Company",
            "description": "Name of the construction company that completed the construction of the property.",
            "meta:xdmType": "string"
        },
        "totalSquareFootage": {
            "type": "integer",
            "title": "Total Square Footage",
            "description": "Total square footage of the property.",
            "meta:xdmType": "int"
        }
    },
    "meta:abstract": true,
    "meta:extensible": true,
    "meta:containerId": "tenant",
    "imsOrg": "{IMS_ORG}",
    "meta:altId": "_{TENANT_ID}.datatypes.24c643f618647344606222c494bd0102",
    "meta:xdmType": "object",
    "$id": "https://ns.adobe.com/{TENANT_ID}/datatypes/24c643f618647344606222c494bd0102",
    "version": "1.2",
    "meta:resourceType": "datatypes",
    "meta:registryMetadata": {
        "repo:createDate": 1552087079285,
        "repo:lastModifiedDate": 1552090569013,
        "xdm:createdClientId": "{CREATED_CLIENT}",
        "xdm:repositoryCreatedBy": "{CREATED_BY}"
    }
}

In questa pagina