Criar uma política de uso de dados na API

A API do Serviço de Política permite que você crie e gerencie políticas de uso de dados para determinar quais ações de marketing podem ser tomadas em relação aos dados que contêm determinados rótulos de uso de dados.

Este documento fornece um tutorial passo a passo para a criação de uma política usando a API Policy Service. Para obter um guia mais abrangente das diferentes operações disponíveis na API, consulte o Guia do desenvolvedor do Serviço de Política.

Introdução

Este tutorial requer um entendimento prático dos seguintes conceitos-chave envolvidos na criação e avaliação de políticas:

  • Adobe Experience Platform Data Governance: A estrutura pela qual Platform aplica a conformidade de uso de dados.
    • Rótulos de uso de dados: Os rótulos de uso de dados são aplicados aos campos de dados XDM, especificando restrições para como esses dados podem ser acessados.
  • Experience Data Model (XDM): A estrutura padronizada pela qual Platform organiza os dados de experiência do cliente.
  • Caixas de proteção: Experience Platform fornece caixas de proteção virtuais que particionam uma única Platform instância em ambientes virtuais separados para ajudar a desenvolver e desenvolver aplicativos de experiência digital.

Antes de iniciar este tutorial, reveja o guia do desenvolvedor para obter informações importantes que você precisa saber para fazer chamadas com êxito para a API Policy Service, incluindo cabeçalhos necessários e como ler exemplos de chamadas de API.

Definir uma ação de marketing

Na estrutura Data Governance, uma ação de marketing é uma ação que um Experience Platform consumidor de dados toma, para a qual há necessidade de verificar violações das políticas de uso de dados.

A primeira etapa na criação de uma política de uso de dados é determinar que ação de marketing a política avaliará. Isso pode ser feito usando uma das seguintes opções:

Procure uma ação de marketing existente

Você pode procurar ações de marketing existentes para serem avaliadas por sua política, fazendo uma solicitação de GET para um dos pontos finais /marketingActions.

Formato da API

Dependendo de se você estiver pesquisando uma ação de marketing fornecida por Experience Platform ou uma ação de marketing personalizada criada por sua organização, use os pontos de extremidade marketingActions/core ou marketingActions/custom, respectivamente.

GET /marketingActions/core
GET /marketingActions/custom

Solicitação

A solicitação a seguir usa o endpoint marketingActions/custom, que obtém uma lista de todas as ações de marketing definidas pela Organização IMS.

curl -X GET \
  https://platform.adobe.io/data/foundation/dulepolicy/marketingActions/custom \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'

Resposta

Uma resposta bem-sucedida retorna o número total de ações de marketing encontradas (count) e lista os detalhes das próprias ações de marketing dentro da matriz children.

{
    "_page": {
        "start": "sampleMarketingAction",
        "count": 2
    },
    "_links": {
        "page": {
            "href": "https://platform.adobe.io/marketingActions/custom?{?limit,start,property}",
            "templated": true
        }
    },
    "children": [
        {
            "name": "sampleMarketingAction",
            "description": "Marketing Action description.",
            "imsOrg": "{IMS_ORG}",
            "created": 1550714012088,
            "createdClient": "{CREATED_CLIENT}",
            "createdUser": "{CREATED_USER}",
            "updated": 1550714012088,
            "updatedClient": "{UPDATED_CLIENT}",
            "updatedUser": "{UPDATED_USER}",
            "_links": {
                "self": {
                    "href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/sampleMarketingAction"
                }
            }
        },
        {
            "name": "newMarketingAction",
            "description": "Another marketing action.",
            "imsOrg": "{IMS_ORG}",
            "created": 1550793833224,
            "createdClient": "{CREATED_CLIENT}",
            "createdUser": "{CREATED_USER}",
            "updated": 1550793833224,
            "updatedClient": "{UPDATED_CLIENT}",
            "updatedUser": "{UPDATED_USER}",
            "_links": {
                "self": {
                    "href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/newMarketingAction"
                }
            }
        }
    ]
}
Propriedade Descrição
_links.self.href Cada item na matriz children contém uma ID de URI para a ação de marketing listada.

Quando você encontrar a ação de marketing que deseja usar, registre o valor de sua propriedade href. Esse valor é usado durante a próxima etapa de criar uma política.

Criar uma nova ação de marketing

Você pode criar uma nova ação de marketing, solicitando um PUT ao terminal /marketingActions/custom/ e fornecendo um nome para a ação de marketing no final do caminho da solicitação.

Formato da API

PUT /marketingActions/custom/{MARKETING_ACTION_NAME}
Parâmetro Descrição
{MARKETING_ACTION_NAME} O nome da nova ação de marketing que você deseja criar. Esse nome atua como o identificador principal da ação de marketing e, portanto, deve ser exclusivo. A prática recomendada é dar à ação de marketing um nome descritivo, mas conciso.

Solicitação

A solicitação a seguir cria uma nova ação de marketing personalizada chamada "exportToThirdParty". Observe que name na carga da solicitação é igual ao nome fornecido no caminho da solicitação.

curl -X PUT \  
  https://platform.adobe.io/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "exportToThirdParty",
      "description": "Export data to a third party"
    }'
Propriedade Descrição
name O nome da ação de marketing que você deseja criar. Esse nome deve corresponder ao nome fornecido no caminho da solicitação ou um erro 400 (solicitação incorreta) ocorrerá.
description Uma descrição legível da ação de marketing.

Resposta

Uma resposta bem-sucedida retorna o status HTTP 201 (Criado) e os detalhes da ação de marketing recém-criada.

{
    "name": "exportToThirdParty",
    "description": "Export data to a third party",
    "imsOrg": "{IMS_ORG}",
    "created": 1550713341915,
    "createdClient": "{CREATED_CLIENT}",
    "createdUser": "{CREATED_USER",
    "updated": 1550713856390,
    "updatedClient": "{UPDATED_CLIENT}",
    "updatedUser": "{UPDATED_USER}",
    "_links": {
        "self": {
            "href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
        }
    }
}
Propriedade Descrição
_links.self.href A ID de URI da ação de marketing.

Registre a ID de URI da ação de marketing recém-criada, pois ela será usada na próxima etapa da criação de uma política.

Criar uma política

A criação de uma nova política exige que você forneça a ID de URI de uma ação de marketing com uma expressão dos rótulos de uso que proíbem essa ação de marketing.

Essa expressão é chamada de expressão de política e é um objeto que contém (A) um rótulo ou (B) um operador e operandos, mas não ambos. Por sua vez, cada operando também é um objeto de expressão de política. Por exemplo, uma política relacionada à exportação de dados para terceiros pode ser proibida se C1 OR (C3 AND C7) rótulos estiverem presentes. Essa expressão seria especificada como:

"deny": {
  "operator": "OR",
  "operands": [
    {
      "label": "C1"
    },
    {
      "operator": "AND",
      "operands": [
        {
          "label": "C3"
        },
        {
          "label": "C7"
        }
      ]
    }
  ]
}
OBSERVAÇÃO

Somente operadores OR e AND são suportados.

Depois de configurar sua expressão de política, você pode criar uma nova política, fazendo uma solicitação POST para o terminal /policies/custom.

Formato da API

POST /policies/custom

Solicitação

A solicitação a seguir cria uma política chamada "Exportar dados para terceiros", fornecendo uma ação de marketing e uma expressão de política na carga da solicitação.

curl -X POST \
  https://platform.adobe.io/data/foundation/dulepolicy/policies/custom \
  -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 '{
    "name": "Export Data to Third Party",
    "status": "DRAFT",
    "marketingActionRefs": [
      "../marketingActions/custom/exportToThirdParty"
    ],
    "description": "Conditions under which data cannot be exported to a third party",
    "deny": {
      "operator": "OR",
      "operands": [
        {"label": "C1"},
        {
          "operator": "AND",
          "operands": [
            {"label": "C3"},
            {"label": "C7"}
          ]
        }
      ]
    }
  }'
Propriedade Descrição
marketingActionRefs Uma matriz que contém o valor href de uma ação de marketing, obtido na etapa anterior. Enquanto o exemplo acima lista apenas uma ação de marketing, várias ações também podem ser fornecidas.
deny O objeto de expressão de política. Define os rótulos e as condições de uso que fazem com que a política rejeite a ação de marketing referenciada em marketingActionRefs.

Resposta

Uma resposta bem-sucedida retorna o status HTTP 201 (Criado) e os detalhes da política recém-criada.

{
    "name": "Export Data to Third Party",
    "status": "DRAFT",
    "marketingActionRefs": [
        "https://platform-stage.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
    ],
    "description": "Conditions under which data cannot be exported to a third party",
    "deny": {
        "operator": "OR",
        "operands": [
            {
                "label": "C1"
            },
            {
                "operator": "AND",
                "operands": [
                    {
                        "label": "C3"
                    },
                    {
                        "label": "C7"
                    }
                ]
            }
        ]
    },
    "imsOrg": "{IMS_ORG}",
    "created": 1565651746693,
    "createdClient": "{CREATED_CLIENT}",
    "createdUser": "{CREATED_USER",
    "updated": 1565651746693,
    "updatedClient": "{UPDATED_CLIENT}",
    "updatedUser": "{UPDATED_USER}",
    "_links": {
        "self": {
            "href": "https://platform-stage.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3"
        }
    },
    "id": "5d51f322e553c814e67af1a3"
}
Propriedade Descrição
id Um valor somente leitura gerado pelo sistema que identifica exclusivamente a política.

Registre a ID de URI da política recém-criada, como ela é usada na próxima etapa para habilitar a política.

Ativar a política

OBSERVAÇÃO

Embora esta etapa seja opcional se você deseja deixar sua política no status DRAFT, observe que por padrão uma política deve ter seu status definido como ENABLED para participar da avaliação. Consulte o guia em fiscalização de políticas para obter informações sobre como fazer exceções para políticas no status DRAFT.

Por padrão, as políticas que têm a propriedade status definida como DRAFT não participam da avaliação. Você pode habilitar sua política para avaliação, fazendo uma solicitação PATCH ao terminal /policies/custom/ e fornecendo o identificador exclusivo da política no final do caminho da solicitação.

Formato da API

PATCH /policies/custom/{POLICY_ID}
Parâmetro Descrição
{POLICY_ID} O valor id da política que você deseja ativar.

Solicitação

A solicitação a seguir executa uma operação PATCH na propriedade status da política, alterando seu valor de DRAFT para ENABLED.

curl -X PATCH \
  https://platform.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3
  -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 '[
    {
      "op": "replace",
      "path": "/status",
      "value": "ENABLED"
    }
  ]'
Propriedade Descrição
op O tipo de operação de PATCH a ser executada. Esta solicitação executa uma operação de "substituição".
path O caminho para o campo a ser atualizado. Ao ativar uma política, o valor deve ser definido como "/status".
value O novo valor a ser atribuído à propriedade especificada em path. Esta solicitação define a propriedade status da política como "ENABLED".

Resposta

Uma resposta bem-sucedida retorna o status HTTP 200 (OK) e os detalhes da política atualizada, com seu status agora definido como ENABLED.

{
    "name": "Export Data to Third Party",
    "status": "ENABLED",
    "marketingActionRefs": [
        "https://platform-stage.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
    ],
    "description": "Conditions under which data cannot be exported to a third party",
    "deny": {
        "operator": "OR",
        "operands": [
            {
                "label": "C1"
            },
            {
                "operator": "AND",
                "operands": [
                    {
                        "label": "C3"
                    },
                    {
                        "label": "C7"
                    }
                ]
            }
        ]
    },
    "imsOrg": "{IMS_ORG}",
    "created": 1565651746693,
    "createdClient": "{CREATED_CLIENT}",
    "createdUser": "{CREATED_USER}",
    "updated": 1565723012139,
    "updatedClient": "{UPDATED_CLIENT}",
    "updatedUser": "{UPDATED_USER}",
    "_links": {
        "self": {
            "href": "https://platform-stage.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3"
        }
    },
    "id": "5d51f322e553c814e67af1a3"
}

Próximas etapas

Ao seguir este tutorial, você criou com êxito uma política de uso de dados para uma ação de marketing. Agora você pode continuar com o tutorial em impor políticas de uso de dados para saber como verificar violações de política e lidar com elas no aplicativo de experiência.

Para obter mais informações sobre as diferentes operações disponíveis na API Policy Service, consulte o Guia do desenvolvedor do Serviço de Política. Para obter informações sobre como aplicar políticas para Real-time Customer Profile dados, consulte o tutorial em impor a conformidade de uso de dados para segmentos de audiência.

Para saber como gerenciar políticas de uso na interface do usuário Experience Platform, consulte o guia do usuário da política.

Nesta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now