Fundamentos da API Experience Platform

As APIs do Adobe Experience Platform empregam várias tecnologias e sintaxes subjacentes que são importantes de entender para gerenciar com eficácia a API baseada em JSON Platform recursos. Este documento fornece uma breve visão geral dessas tecnologias, bem como links para documentação externa para obter mais informações.

Ponteiro JSON json-pointer

O ponteiro JSON é uma sintaxe de sequência de caracteres padronizada (RFC 6901) para identificar valores específicos em documentos JSON. Um ponteiro JSON é uma cadeia de tokens separada por / caracteres, que especificam chaves de objeto ou índices de matriz, e os tokens podem ser uma string ou um número. As cadeias de caracteres JSON Pointer são usadas em muitas operações PATCH para Platform APIs, conforme descrito posteriormente neste documento. Para obter mais informações sobre o ponteiro JSON, consulte o Documentação de visão geral do ponteiro JSON.

Exemplo de objeto de esquema JSON

O JSON a seguir representa um esquema XDM simplificado cujos campos podem ser referenciados usando cadeias de caracteres de ponteiro JSON. Observe que todos os campos que foram adicionados usando grupos de campos de esquema personalizados (como loyaltyLevel) são nomeados com um espaço para nome em _{TENANT_ID} ao passo que os campos que foram adicionados usando grupos de campos fullName) não são.

{
  "$id": "https://ns.adobe.com/{TENANT_ID}/schemas/85a4bdaa168b01bf44384e049fbd3d2e9b2ffaca440d35b9",
  "meta:altId": "_{TENANT_ID}.schemas.85a4bdaa168b01bf44384e049fbd3d2e9b2ffaca440d35b9",
  "meta:resourceType": "schemas",
  "version": "1.0",
  "title": "Example schema",
  "type": "object",
  "description": "This is an example schema.",
  "properties": {
    "_{TENANT_ID}": {
      "type": "object",
      "properties": {
        "loyaltyLevel": {
          "title": "Loyalty Level",
          "description": "",
          "type": "string",
          "isRequired": false,
          "enum": [
            "platinum",
            "gold",
            "silver",
            "bronze"
          ]
        }
      }
    },
    "person": {
      "title": "Person",
      "description": "An individual actor, contact, or owner.",
      "type": "object",
      "properties": {
        "name": {
          "title": "Full name",
          "description": "The person's full name.",
          "type": "object",
          "properties": {
            "fullName": {
              "title": "Full name",
              "type": "string",
              "description": "The full name of the person, in writing order most commonly accepted in the language of the name.",
            },
            "suffix": {
              "title": "Suffix",
              "type": "string",
              "description": "A group of letters provided after a person's name to provide additional information. The `suffix` is used at the end of someones name. For example Jr., Sr., M.D., PhD, I, II, III, etc.",
            }
          },
          "meta:referencedFrom": "https://ns.adobe.com/xdm/context/person-name",
          "meta:xdmField": "xdm:name"
        }
      }
    }
  }
}

Exemplo de ponteiros JSON com base no objeto de esquema

Ponteiro JSON
Resolve para
"/title"
"Example schema"
"/properties/person/properties/name/properties/fullName"
(Retorna uma referência à variável fullName , fornecido por um grupo de campos principal.)
"/properties/_{TENANT_ID}/properties/loyaltyLevel"
(Retorna uma referência à variável loyaltyLevel campo, fornecido por um grupo de campos personalizado.)
"/properties/_{TENANT_ID}/properties/loyaltyLevel/enum"
["platinum", "gold", "silver", "bronze"]
"/properties/_{TENANT_ID}/properties/loyaltyLevel/enum/0"
"platinum"
NOTE
Ao lidar com a xdm:sourceProperty e xdm:destinationProperty atributos de Experience Data Model Descritores do (XDM), qualquer properties as chaves devem ser excluído na string JSON Pointer. Consulte a Schema Registry Subguia do guia do desenvolvedor de API em descritores para obter mais informações.

Patch JSON json-patch

Existem muitas operações de PATCH para Platform APIs que aceitam objetos JSON Patch para suas cargas de solicitação. O Patch JSON é um formato padronizado (RFC 6902) para descrever alterações em um documento JSON. Ela permite definir atualizações parciais no JSON sem precisar enviar o documento inteiro em um corpo de solicitação.

Exemplo de objeto de patch de JSON

{
  "op": "remove",
  "path": "/foo"
}
  • op: O tipo de operação de patch. Embora o JSON Patch suporte vários tipos de operação diferentes, nem todas as operações de PATCH em Platform As APIs são compatíveis com todos os tipos de operação. Os tipos de operação disponíveis são:

    • add
    • remove
    • replace
    • copy
    • move
    • test
  • path: a parte da estrutura JSON que deve ser atualizada, identificada com o uso de Ponteiro JSON notação.

Dependendo do tipo de operação indicado em op, o objeto JSON Patch pode exigir propriedades adicionais. Para obter mais informações sobre as diferentes operações de patch de JSON e sua sintaxe necessária, consulte o Documentação de patch de JSON.

Esquema JSON json-schema

O esquema JSON é um formato usado para descrever e validar a estrutura dos dados JSON. Experience Data Model (XDM) A aproveita os recursos do Esquema JSON para aplicar restrições na estrutura e no formato dos dados de experiência do cliente assimilados. Para obter mais informações sobre o Esquema JSON, consulte a documentação oficial.

Próximas etapas

Esse documento apresentou algumas das tecnologias e sintaxes envolvidas no gerenciamento de recursos baseados em JSON para Experience Platform. Consulte a guia de introdução para obter mais informações sobre como trabalhar com APIs da Platform, incluindo práticas recomendadas. Para obter respostas para perguntas frequentes, consulte o Guia de solução de problemas da Platform.

recommendation-more-help
5741548a-2e07-44b3-9157-9c181502d0c5