Ponto de extremidade de expiração do conjunto de dados
O ponto de extremidade /ttl
na API da higiene de dados permite agendar datas de expiração para conjuntos de dados na Adobe Experience Platform.
A expiração de um conjunto de dados é apenas uma operação de exclusão com tempo atrasado. O conjunto de dados não está protegido enquanto isso, portanto, ele pode ser excluído por outros meios antes de atingir sua expiração.
A qualquer momento antes da exclusão do conjunto de dados ser iniciada, você pode cancelar a expiração ou modificar a hora do acionador. Depois de cancelar uma expiração de conjunto de dados, você pode reabri-la definindo uma nova expiração.
Depois que a exclusão do conjunto de dados for iniciada, seu trabalho de expiração será marcado como executing
, e talvez não seja alterado. O conjunto de dados em si pode ser recuperável por até sete dias, mas somente por meio de um processo manual iniciado por meio de uma solicitação de serviço da Adobe. À medida que a solicitação é executada, o data lake, o Serviço de identidade e o Perfil do cliente em tempo real iniciam processos separados para remover o conteúdo do conjunto de dados de seus respectivos serviços. Depois que os dados forem excluídos dos três serviços, a expiração será marcada como completed
.
O Gerenciamento avançado do ciclo de vida dos dados suporta exclusões de conjuntos de dados por meio do ponto de extremidade de expiração do conjunto de dados e exclusões de ID (dados em nível de linha) usando identidades primárias por meio do ponto de extremidade da ordem de trabalho. Também é possível gerenciar expirações do conjunto de dados e exclusões de registros por meio da interface do usuário da Platform. Consulte a documentação vinculada para obter mais informações.
Introdução
O endpoint usado neste guia faz parte da API de higiene de dados. Antes de continuar, consulte o Guia de API para obter informações sobre cabeçalhos necessários para operações CRUD, mensagens de erro, coleções do Postman e como ler chamadas de API de exemplo.
x-sandbox-name: {SANDBOX_NAME}
.Listar expirações do conjunto de dados list
Você pode listar todas as expirações de conjunto de dados para sua organização fazendo uma solicitação GET. Parâmetros de consulta podem ser usados para filtrar a resposta para resultados apropriados.
Formato da API
GET /ttl?{QUERY_PARAMETERS}
{QUERY_PARAMETERS}
&
caracteres. Parâmetros comuns incluem limit
e page
para fins de paginação. Para obter uma lista completa de parâmetros de consulta com suporte, consulte a seção do apêndice.Solicitação
curl -X GET \
https://platform.adobe.io/data/core/hygiene/ttl?updatedToDate=2021-08-01&author=LIKE%20%25Jane%20Doe%25 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida lista as expirações do conjunto de dados resultantes. O exemplo a seguir foi truncado por questões de espaço.
ttlId
na resposta também é chamado de {DATASET_EXPIRATION_ID}
. Ambos se referem ao identificador exclusivo para a expiração do conjunto de dados.{
"results": [
{
"ttlId": "SD-b16c8b48-a15a-45c8-9215-587ea89369bf",
"datasetId": "629bd9125b31471b2da7645c",
"datasetName": "Sample Acme dataset",
"sandboxName": "hygiene-beta",
"imsOrg": "A2A5*EF06164773A8A49418C@AdobeOrg",
"status": "pending",
"expiry": "2050-01-01T00:00:00Z",
"updatedAt": "2023-06-09T16:52:44.136028Z",
"updatedBy": "Jane Doe <jdoe@adobe.com> 77A51F696282E48C0A494 012@64d18d6361fae88d49412d.e"
}
],
"current_page": 0,
"total_pages": 1,
"total_count": 1
}
total_count
results
Pesquisar uma expiração de conjunto de dados lookup
Para pesquisar uma expiração de conjunto de dados, faça uma solicitação GET com {DATASET_ID}
ou {DATASET_EXPIRATION_ID}
.
{DATASET_EXPIRATION_ID}
é mencionado como ttlId
na resposta. Ambos se referem ao identificador exclusivo para a expiração do conjunto de dados.Formato da API
GET /ttl/{DATASET_ID}?include=history
GET /ttl/{DATASET_EXPIRATION_ID}
{DATASET_ID}
{DATASET_EXPIRATION_ID}
Solicitação
A solicitação a seguir pesquisa os detalhes de expiração do conjunto de dados 62759f2ede9e601b63a2ee14
:
curl -X GET \
https://platform.adobe.io/data/core/hygiene/ttl/62759f2ede9e601b63a2ee14 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna os detalhes da expiração do conjunto de dados.
{
"ttlId": "SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f",
"datasetId": "62759f2ede9e601b63a2ee14",
"datasetName": "XtVRwq9-38734",
"sandboxName": "prod",
"imsOrg": "A2A5*EF06164773A8A49418C@AdobeOrg",
"status": "pending",
"expiry": "2024-12-31T23:59:59Z",
"updatedAt": "2024-05-11T15:12:40.393115Z",
"updatedBy": "Jane Doe <jdoe@adobe.com> 77A51F696282E48C0A494 012@64d18d6361fae88d49412d.e",
"displayName": "Delete Acme Data before 2025",
"description": "The Acme information in this dataset is licensed for our use through the end of 2024."
}
ttlId
datasetId
datasetName
sandboxName
imsOrg
status
expiry
updatedAt
updatedBy
displayName
description
Tags de expiração de catálogo
Ao usar a API do catálogo para pesquisar detalhes do conjunto de dados, se o conjunto de dados tiver uma expiração ativa, ele será listado em tags.adobe/hygiene/ttl
.
O JSON a seguir representa uma resposta truncada para os detalhes de um conjunto de dados do catálogo, que tem um valor de expiração de 32503680000000
. O valor da tag codifica a expiração como um número inteiro de milissegundos desde o início da época do Unix.
{
"63212313c308d51b997858ba": {
"name": "Test Dataset",
"description": "A piecrust promise, made to be broken",
"imsOrg": "0FCC747E56F59C747F000101@AdobeOrg",
"sandboxId": "8dc51b90-d0f9-11e9-b164-ed6a398c8b35",
"tags": {
"adobe/hygiene/ttl": [ "32503680000000" ],
...
},
...
}
}
Criar uma expiração de conjunto de dados create
Para garantir que os dados sejam removidos do sistema após um período especificado, programe uma expiração para um conjunto de dados específico fornecendo a ID do conjunto de dados e a data e hora de expiração no formato ISO 8601.
Para criar uma expiração do conjunto de dados, execute uma solicitação POST, como mostrado abaixo, e forneça os valores mencionados abaixo na carga.
Formato da API
POST /ttl
Solicitação
curl -X POST \
https://platform.adobe.io/data/core/hygiene/ttl \
-H `Authorization: Bearer {ACCESS_TOKEN}`
-H `x-gw-ims-org-id: {ORG_ID}`
-H `x-api-key: {API_KEY}`
-H `Accept: application/json`
-d {
"datasetId": "5b020a27e7040801dedbf46e",
"expiry": "2030-12-31T23:59:59Z"
"displayName": "Delete Acme Data before 2025",
"description": "The Acme information in this dataset is licensed for our use through the end of 2024."
}
datasetId
expiry
Obrigatório Uma data e hora no formato ISO 8601. Se a cadeia de caracteres não tiver deslocamento de fuso horário explícito, o fuso horário será considerado UTC. O tempo de vida dos dados no sistema é definido de acordo com o valor de expiração fornecido.
Observação:
- A solicitação falhará se uma expiração de conjunto de dados já existir para o conjunto de dados.
- Esta data e hora devem ser pelo menos 24 horas no futuro.
displayName
description
Resposta
Uma resposta bem-sucedida retorna um status HTTP 201 (Criado) e o novo estado da expiração do conjunto de dados.
{
"ttlId": "SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f",
"datasetId": "5b020a27e7040801dedbf46e",
"datasetName": "Acme licensed data",
"sandboxName": "prod",
"imsOrg": "{ORG_ID}",
"status": "pending",
"expiry": "2030-12-31T23:59:59Z",
"updatedAt": "2021-08-19T11:14:16Z",
"updatedBy": "Jane Doe <jdoe@adobe.com> 77A51F696282E48C0A494 012@64d18d6361fae88d49412d.e",
"displayName": "Delete Acme Data before 2031",
"description": "The Acme information in this dataset is licensed for our use through the end of 2030."
}
ttlId
datasetId
datasetName
sandboxName
imsOrg
status
expiry
updatedAt
updatedBy
displayName
description
Um status HTTP 400 (Solicitação inválida) ocorre se a expiração de um conjunto de dados já existir para o conjunto de dados. Uma resposta sem sucesso retornará um status HTTP 404 (Não encontrado) se essa expiração de conjunto de dados não existir (ou se você não tiver acesso ao conjunto de dados).
Atualizar uma expiração de conjunto de dados update
Para atualizar uma data de expiração para um conjunto de dados, use uma solicitação PUT e o ttlId
. Você pode atualizar as informações de displayName
, description
e/ou expiry
.
Formato da API
PUT /ttl/{DATASET_EXPIRATION_ID}
{DATASET_EXPIRATION_ID}
ttlId
na resposta.Solicitação
A solicitação a seguir reagenda a expiração de um conjunto de dados SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f
para o final de 2024 (Horário de Greenwich). Se a expiração do conjunto de dados existente for encontrada, ela será atualizada com o novo valor expiry
.
curl -X PUT \
https://platform.adobe.io/data/core/hygiene/ttl/SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"expiry": "2024-12-31T23:59:59Z",
"displayName": "Delete Acme Data before 2025",
"description": "The Acme information in this dataset is licensed for our use through the end of 2024."
}'
expiry
displayName
description
Resposta
Uma resposta bem-sucedida retorna o novo estado da expiração do conjunto de dados e um status HTTP 200 (OK) se uma expiração pré-existente tiver sido atualizada.
{
"ttlId": "SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f",
"datasetId": "5b020a27e7040801dedbf46e",
"imsOrg": "A2A5*EF06164773A8A49418C@AdobeOrg",
"status": "pending",
"expiry": "2024-12-31T23:59:59Z",
"updatedAt": "2022-05-09T22:38:40.393115Z",
"updatedBy": "Jane Doe <jdoe@adobe.com> 77A51F696282E48C0A494 012@64d18d6361fae88d49412d.e",
"displayName": "Delete Acme Data before 2025",
"description": "The Acme information in this dataset is licensed for our use through the end of 2024."
}
ttlId
datasetId
imsOrg
status
expiry
updatedAt
updatedBy
Uma resposta sem sucesso retornará um status HTTP 404 (Não encontrado) se essa expiração de conjunto de dados não existir.
Cancelar a expiração de um conjunto de dados delete
Você pode cancelar a expiração de um conjunto de dados fazendo uma solicitação DELETE.
pending
podem ser canceladas. A tentativa de cancelar uma expiração que foi executada ou já foi cancelada retorna um erro HTTP 404.Formato da API
DELETE /ttl/{EXPIRATION_ID}
{EXPIRATION_ID}
ttlId
da expiração do conjunto de dados que você deseja cancelar.Solicitação
A solicitação a seguir cancela uma expiração do conjunto de dados com a ID SD-b16c8b48-a15a-45c8-9215-587ea89369bf
:
curl -X DELETE \
https://platform.adobe.io/data/core/hygiene/ttl/SD-b16c8b48-a15a-45c8-9215-587ea89369bf \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna o status HTTP 204 (Sem Conteúdo), e o atributo status
da expiração está definido como cancelled
.
Apêndice
Parâmetros de consulta aceitos query-params
A tabela a seguir descreve os parâmetros de consulta disponíveis ao listar expirações do conjunto de dados:
description
, displayName
e datasetName
contêm a capacidade de pesquisa por valores LIKE. Isso significa que você pode encontrar expirações agendadas do conjunto de dados chamadas: "Name123", "Name183", "DisplayName1234" pesquisando a cadeia de caracteres "Name1".author
author
para localizar a pessoa que atualizou mais recentemente a expiração do conjunto de dados. Se nenhuma atualização tiver sido feita desde a criação, isso corresponderá ao criador original da expiração. Esse parâmetro corresponde a expirações nas quais o campo created_by
corresponde à cadeia de caracteres de pesquisa.Se a cadeia de caracteres de pesquisa começar com
LIKE
ou NOT LIKE
, o restante será tratado como um padrão de pesquisa SQL. Caso contrário, a cadeia de caracteres de pesquisa inteira será tratada como uma cadeia literal que deve corresponder exatamente ao conteúdo inteiro de um campo created_by
.author=LIKE %john%
, author=John Q. Public
datasetId
datasetId=62b3925ff20f8e1b990a7434
datasetName
datasetName=Acme
description
description=Handle expiration of Acme information through the end of 2024.
displayName
displayName=License Expiry
executedDate
/ executedFromDate
/ executedToDate
executedDate=2023-02-05T19:34:40.383615Z
expiryDate
2024-01-01
expiryToDate
/ expiryFromDate
expiryFromDate=2099-01-01&expiryToDate=2100-01-01
limit
limit=50
orderBy
orderBy
especifica a ordem de classificação dos resultados retornados pela API. Use-a para organizar os dados com base em um ou mais campos, em ordem crescente (ASC) ou decrescente (DESC). Use o prefixo + ou - para indicar ASC e DESC, respectivamente. Os seguintes valores são aceitos: displayName
, description
, datasetName
, id
, updatedBy
, updatedAt
, expiry
, status
.-datasetName
orgId
x-gw-ims-org-id
e é ignorado, a menos que a solicitação forneça um token de serviço.orgId=885737B25DC460C50A49411B@AdobeOrg
page
page=3
sandboxName
x-sandbox-name
da solicitação. Use sandboxName=*
para incluir expirações de conjunto de dados de todas as sandboxes.sandboxName=dev1
search
Corresponde a expirações nas quais a cadeia de caracteres especificada é uma correspondência exata para a ID de expiração, ou está contida em qualquer um destes campos:
- autor
- nome de exibição
- descrição
- nome de exibição
- nome do conjunto de dados
search=TESTING
status
status=pending,cancelled
ttlId
ttlID=SD-c8c75921-2416-4be7-9cfd-9ab01de66c5f
updatedDate
2024-01-01
updatedToDate
/ updatedFromDate
Uma expiração é considerada atualizada em cada edição, inclusive quando ela é criada, cancelada ou executada.
updatedDate=2022-01-01