Registrera borttagning av arbetsorder work-order-endpoint
Använd slutpunkten /workorder i API:t för datahygien för att skapa, visa och hantera arbetsorder för borttagning av poster i Adobe Experience Platform. Med arbetsorder kan ni styra, övervaka och spåra borttagning av data mellan datauppsättningar för att upprätthålla datakvaliteten och stödja organisationens standarder för datastyrning.
Komma igång
Innan du börjar kan du läsa översikten för att lära dig mer om obligatoriska rubriker, hur du läser exempel-API-anrop och var du hittar relaterad dokumentation.
Kvoter och bearbetningstidslinjer quotas
Gränserna för att skicka in raderade arbetsorder gäller för dag- och månadsvisa ID-inlämningar, som bestäms av din organisations licensberättigande. Dessa begränsningar gäller för både UI- och API-baserade begäranden om postborttagning.
Möjlighet att skicka in per produkt varje månad quota-limits
I följande tabell visas inskicksgränser för identifierare per produkt och berättigandenivå. För varje produkt är den månatliga övre gränsen det lägsta av två värden: ett fast identifierartak eller ett procentbaserat tröskelvärde som är knutet till den licensierade datavolymen. I praktiken har de flesta organisationer lägre månadsgränser baserat på den faktiska adresserbara målgruppen eller Adobe Customer Journey Analytics-radrättigheterna.
- Kvoterna återställs den första dagen i varje kalendermånad. Oanvänd kvot för överföring av inte.
- Kvotanvändningen baseras på din organisations licensierade månadsberättigande för skickade identifierare. Kvoterna styrs inte av systemgarantisystem, men kan övervakas och granskas.
- Posten för borttagning av arbetsorderkapacitet är en delad tjänst. Det högsta antalet licenser som gäller för Real-Time CDP, Adobe Journey Optimizer, Customer Journey Analytics och eventuella tillägg till Shield.
Bearbetar tidslinjer för identifieraröverföringar sla-processing-timelines
När du har skickat in en post köas och bearbetas arbetsorder för borttagning baserat på din berättigandenivå.
Om din organisation kräver högre gränser kontaktar du Adobe för att få en tillståndsgranskning.
Lista post ta bort arbetsorder list
Hämta en sidnumrerad lista med arbetsorder för att ta bort poster för datahygien i organisationen. Filtrera resultat med frågeparametrar. Varje arbetsorderpost innehåller åtgärdstypen (till exempel identity-delete), status, relaterad datauppsättning och användarinformation samt granskningsmetadata.
API-format
GET /workorder
I följande tabell beskrivs de frågeparametrar som är tillgängliga för att lista arbetsorder för radering av poster.
searchtypeidentity-delete).statusUppräkning:
received, validated, submitted, ingested, completed, failedauthordisplayNamedescriptionworkorderIdsandboxName* för att inkludera alla sandlådor.fromDatetoDate anges.toDatefromDate anges.filterDatepagelimitorderBy+ eller - för stigande/fallande. Exempel: orderBy=-datasetName.propertiesBegäran
Följande begäran hämtar alla slutförda arbetsorder för radering av poster, begränsat till två per sida:
curl -X GET \
"https://platform.adobe.io/data/core/hygiene/workorder?status=completed&limit=2" \
-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}'
Svar
Ett godkänt svar returnerar en numrerad lista över arbetsorder för radering av poster.
{
"results": [
{
"workorderId": "DI-1729d091-b08b-47f4-923f-6a4af52c93ac",
"orgId": "9C1F2AC143214567890ABCDE@AcmeOrg",
"bundleId": "BN-4cfabf02-c22a-45ef-b21f-bd8c3d631f41",
"action": "identity-delete",
"createdAt": "2034-03-15T11:02:10.935Z",
"updatedAt": "2034-03-15T11:10:10.938Z",
"operationCount": 3,
"targetServices": [
"profile",
"datalake",
"identity",
"ajo"
],
"status": "received",
"createdBy": "a.stark@acme.com <a.stark@acme.com> BD8C3D631F41@acme.com",
"datasetId": "a7b7c8f3a1b8457eaa5321ab",
"datasetName": "Acme_Customer_Exports",
"displayName": "Customer Identity Delete Request",
"description": "Scheduled identity deletion for compliance"
}
],
"total": 1,
"count": 1,
"_links": {
"next": {
"href": "https://platform.adobe.io/workorder?page=1&limit=2",
"templated": false
},
"page": {
"href": "https://platform.adobe.io/workorder?limit={limit}&page={page}",
"templated": true
}
}
}
I följande tabell beskrivs egenskaperna i svaret.
resultsworkorderIdorgIdbundleIdactioncreatedAtupdatedAtoperationCounttargetServices["datalake", "identity", "profile", "ajo"]). För organisationer som bara använder Customer Journey Analytics (utan ett realtidskundprofilberättigande) är det enda giltiga värdet ["datalake"].statusreceived,validated, submitted, ingested, completed och failed.createdBydatasetIdALL. När begäran använde läget för enbart profil är det här värdet ALL.datasetNamedisplayNamedescriptiontotalcount_linksnexthref (sträng) och templated (booleskt) för nästa sida.pagehref (sträng) och templated (booleskt) för sidnavigering.Skapa en post för borttagning av arbetsorder create
Om du vill ta bort poster som är associerade med en eller flera identiteter från en enskild datauppsättning, flera datauppsättningar eller alla datauppsättningar, gör du en POST-begäran till /workorder-slutpunkten.
Arbetsorder bearbetas asynkront och visas i arbetsorderlistan när de har skickats. Alternativ för flera datauppsättningar och enbart profiler (riktade tjänster) är i allmänhet tillgängliga för alla kunder från och med Experience Platform-utgåvan från mars 2026.
API-format
POST /workorder
- Datamängdsschemat måste definiera en primär identitet eller identitetskarta. Du kan bara ta bort poster från datauppsättningar vars associerade XDM-schema definierar en primär identitet eller identitetskarta.
- Sekundära identiteter genomsöks inte. Om en datauppsättning innehåller flera identitetsfält används bara den primära identiteten för matchning. Det går inte att ange mål för eller ta bort poster baserat på icke-primära identiteter.
- Poster utan en ifylld primär identitet hoppas över. Om en post inte har några primära ID-metadata ifyllda, kan den inte tas bort.
- Data som har importerats innan identitetskonfigurationen är inte giltiga. Om det primära identitetsfältet lades till i ett schema efter dataöverföring, kan tidigare importerade poster inte tas bort via arbetsorder för postborttagning.
Identity-nyttolastformat (namespacesIdentities eller identities)
Begärandetexten måste innehålla exakt en av följande.
namespacesIdentitiesnamespace (till exempel { "code": "email" }) och ids (en array med identitetssträngar).identitiesnamespace (till exempel { "code": "email" }) och en enda id (sträng).Om du skickar båda egenskaperna, ingen egenskap eller anger en tom array för den egenskap som du inkluderar, returnerar API HTTP 400 (felaktig begäran) med något av följande meddelanden:
- Båda egenskaperna har angetts:
"Identities and NamespacesIdentities are not allowed at the same time" - Ingen angiven eller tom lista:
"Identities are Empty for Delete Identity request."
Begäran
Följande begäran tar bort alla poster som är associerade med angivna e-postadresser från en viss datauppsättning. Det använder det rekommenderade namespacesIdentities-formatet.
curl -X POST \
https://platform.adobe.io/data/core/hygiene/workorder \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"displayName": "Acme Loyalty - Customer Data Deletion",
"description": "Delete all records associated with the specified email addresses from the Acme_Loyalty_2023 dataset.",
"action": "delete_identity",
"datasetId": "7eab61f3e5c34810a49a1ab3",
"namespacesIdentities": [
{
"namespace": {
"code": "email"
},
"ids": [
"alice.smith@acmecorp.com",
"bob.jones@acmecorp.com",
"charlie.brown@acmecorp.com"
]
}
]
}'
I följande tabell beskrivs egenskaperna för att skapa en postborttagningsarbetsordning.
displayNamedescriptionactiondelete_identity om du vill ta bort poster som är associerade med en viss identitet.datasetIdALL, ett enskilt datauppsättnings-ID eller en kommaavgränsad lista med två eller flera datauppsättnings-ID:n (t.ex. "id1,id2,id3"). Du kan inte kombinera ALL med specifika ID:n. Enstaka datauppsättningsbegäranden fungerar som tidigare, multidatauppsättningsbegäranden tar bort identiteter från varje datamängd som listas, och ALL avser varje datamängd. Datauppsättningar måste ha en primär identitet eller identitetskarta. Om det finns en identitetskarta finns den som ett fält på den översta nivån med namnet identityMap.Obs! En datauppsättningsrad kan ha många identiteter i sin identitetskarta, men bara en kan markeras som primär.
"primary": true måste inkluderas för att id ska matcha en primär identitet.När
targetServices används för borttagning av endast profil måste datasetId vara ALL.targetServices["datalake", "identity", "profile", "ajo"]). Organisationer med Customer Journey Analytics men utan ett realtidsberättigande för kundprofil kan bara använda ["datalake"]. Om du vill begränsa borttagningen till enbart profilrelaterade data och lämna datarutan orörd anger du det här till ["identity", "profile", "ajo"] (i valfri ordning). Det här läget för endast profiler kräver ett Real-Time CDP- eller Adobe Journey Optimizer-berättigande och datasetId måste vara ALL.identitiesidentities eller namespacesIdentities. Array med objekt, var och en med namespace (objekt med code, t.ex. "email") och id (en identitetssträng). Godkänt för bakåtkompatibilitet och framställt av konverteringsskripten. Tjänsten normaliserar det här formatet internt. Beteendet är identiskt. Se Nyttolastformat för identitet ovan.namespacesIdentitiesidentities eller namespacesIdentities. Array med objekt, var och en med namespace (objekt med code, t.ex. "email") och ids (array med identitetssträngar). Rekommenderas för alla nyttolaster. Egenskapen namespacesIdentities är mer kompakt när många identiteter delar ett namnutrymme. Se Nyttolastformat för identitet ovan. Identitetsnamnutrymmen: dokumentation för identitetsnamn, API för identitetstjänst.Svar
Ett lyckat svar returnerar information om den nya postens arbetsorder för borttagning.
{
"workorderId": "DI-95c40d52-6229-44e8-881b-fc7f072de63d",
"orgId": "8B1F2AC143214567890ABCDE@AcmeOrg",
"bundleId": "BN-c61bec61-5ce8-498f-a538-fb84b094adc6",
"action": "identity-delete",
"createdAt": "2035-06-02T09:21:00.000Z",
"updatedAt": "2035-06-02T09:21:05.000Z",
"operationCount": 1,
"targetServices": [
"profile",
"datalake",
"identity",
"ajo"
],
"status": "received",
"createdBy": "c.lannister@acme.com <c.lannister@acme.com> 7EAB61F3E5C34810A49A1AB3@acme.com",
"datasetId": "7eab61f3e5c34810a49a1ab3",
"datasetName": "Acme_Loyalty_2023",
"displayName": "Loyalty Identity Delete Request",
"description": "Schedule deletion for Acme loyalty program dataset"
}
I följande tabell beskrivs egenskaperna i svaret.
workorderIdorgIdbundleIdactioncreatedAtupdatedAtoperationCounttargetServicesstatuscreatedBydatasetIdALL. För förfrågningar om flera datauppsättningar återspeglar värdet den kommaavgränsade listan eller ett enda ID som har skickats.datasetNamedisplayNamedescriptionSvarets targetServices-värde motsvarar din begäran eller visar den fullständiga standarduppsättningen när den utelämnas (se svarstabellen ovan).
Flera datauppsättningar och endast profiler (API) multi-dataset-profile-only
Följande alternativ är bara tillgängliga via API:t och stöds inte i användargränssnittet för datahygien. De styr vilka datauppsättningar och vilka tjänster som bearbetar borttagningen, vilket möjliggör att flera datauppsättningar skickas och riktade serviceförfrågningar enbart för profiler.
I följande tabell sammanfattas hur innehållet och beteendet i begäran ändras för varje alternativ.
datasetId (t.ex. "id1,id2,id3"). Ett ID eller ALL har inte ändrats.ALL).targetServices med exakt ["identity", "profile", "ajo"] (valfri ordning). datasetId krävs: "ALL".Flerdatauppsättningsbegäranden
Fältet datasetId delas upp på kommatecken: använd ett enda ID (samma beteende som tidigare), en kommaavgränsad lista med ID:n eller literalen ALL. Om du vill ta bort identiteter från flera specifika datauppsättningar i en arbetsordning anger du en kommaseparerad lista:
"datasetId": "6707eb36eef4d42ab86d9fbe,6643f00c16ddf51767fcf780"
Identiteter tas sedan bort från alla de listade datauppsättningarna. Enstaka datauppsättningsbegäranden fungerar som de alltid gjorde. Använd ALL för att ange alla datauppsättningar som mål. Värdet måste vara exakt ett av: ALL, ett enskilt datauppsättnings-ID eller två eller flera datauppsättnings-ID:n avgränsade med kommatecken (ingen kombination av ALL med specifika ID:n).
Endast profil (riktade tjänster)
Om du bara vill ta bort identitets- och profilrelaterade data medan du lämnar datalänken orörd inkluderar du targetServices med exakt dessa tre värden i valfri ordning: identity, profile och ajo. Identitet, profil och AJO ingår uttryckligen; datasjön är exkluderad. I det här läget måste datasetId vara ALL (användningsfallet är fullständig profilborttagning, inte fragment per datauppsättning).
I följande exempel skapas en arbetsordning som bara innehåller en profil:
curl -X POST \
"https://platform.adobe.io/data/core/hygiene/workorder" \
-H 'Content-Type: application/json' \
-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 'x-sandbox-id: {SANDBOX_ID}' \
-d '{
"action": "delete_identity",
"datasetId": "ALL",
"displayName": "Profile-only delete for specified identity",
"description": "Delete identity, profile, and AJO data only; datalake unchanged.",
"targetServices": ["identity", "profile", "ajo"],
"namespacesIdentities": [
{
"namespace": { "code": "email" },
"ids": ["user@example.com"]
}
]
}'
Slutförda svar på begäranden om flera datauppsättningar eller bara profiler följer samma form som andra svar på arbetsorder. Den returnerade datasetId och targetServices återspeglar värdena i begäran (eller hela standardlistan när targetServices utelämnas), så att du kan bekräfta vad som skickades.
identity-delete i API-svar. Om API:t ändras till ett annat värde (till exempel delete_identity) uppdateras den här dokumentationen därefter.Konvertera ID-listor till JSON för begäranden om postborttagning (#convert-id-lists-to-json-for-record-delete-requests)
Använd konverteringsskript för att skapa de JSON-nyttolaster som krävs för slutpunkten /workorder när dina identifierare finns i CSV-, TSV- eller TXT-filer. Detta är särskilt användbart när du arbetar med befintliga datafiler. Information om färdiga skript och instruktioner finns i GitHub-databasen csv-to-data-health.
Skripten genererar formatet identities - en id per objekt med en namespace. API:t godkänner det här formatet som det är; du kan skicka den genererade JSON-filen direkt i POST-brödtexten till /workorder utan konvertering. Det rekommenderade formatet är namespacesIdentities. Se Skapa en arbetsorder för borttagning av post och Identitetsnyttolastformat.
Generera JSON-nyttolaster
I följande grundläggande skript visas hur du kör konverteringsskript i Python eller Ruby:
| code language-bash |
|---|
|
| code language-bash |
|---|
|
Tabellen nedan beskriver parametrarna i de grundläggande skripten.
verbosecolumnnamespaceemail). Den genererade JSON använder detta i varje objekts namespace.code-egenskap.dataset-idALL för alla datauppsättningar.descriptionoutput-dirI exemplet nedan visas en JSON-nyttolast som konverterats från en CSV-, TSV- eller TXT-fil. Den innehåller poster som är associerade med det angivna namnutrymmet och används för att ta bort poster som identifieras av e-postadresser.
{
"action": "delete_identity",
"datasetId": "66f4161cc19b0f2aef3edf10",
"displayName": "output/sample-big-001.json",
"description": "a simple sample",
"identities": [
{
"namespace": {
"code": "email"
},
"id": "1"
},
{
"namespace": {
"code": "email"
},
"id": "2"
}
]
}
I följande tabell beskrivs egenskaperna i JSON-nyttolasten.
actiondelete_identity av konverteringsskriptet.datasetIdALL.displayNamedescriptionidentitiesEn array med objekt som var och en innehåller:
namespace: Ett objekt med encode-egenskap som anger identitetsnamnutrymmet (till exempel "email").id: Det identitetsvärde som ska tas bort för det här namnområdet.
Skicka genererade JSON-data till /workorder-slutpunkten
Skriptutdata använder formatet identities, som API godkänner som det är. Använd den konverterade JSON-nyttolasten som begärandetext (-d) när du skickar din curl POST-begäran till /workorder-slutpunkten. Fullständiga alternativ för begäran och valideringsregler finns i Skapa en arbetsordning för borttagning av post.
Hämta information för en viss postborttagningsarbetsorder lookup
Hämta information för en viss postborttagningsarbetsordning genom att göra en GET-begäran till /workorder/{WORKORDER_ID}. Svaret innehåller åtgärdstyp, status, associerad datauppsättning och användarinformation samt granskningsmetadata.
API-format
GET /workorder/{WORKORDER_ID}
{WORK_ORDER_ID}Begäran
curl -X GET \
https://platform.adobe.io/data/core/hygiene/workorder/DI-6fa98d52-7bd2-42a5-bf61-fb5c22ec9427 \
-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}'
Svar
Ett lyckat svar returnerar information om den angivna arbetsordern för borttagning av post.
{
"workorderId": "DI-6fa98d52-7bd2-42a5-bf61-fb5c22ec9427",
"orgId": "3C7F2AC143214567890ABCDE@AcmeOrg",
"bundleId": "BN-dbe3ffad-cb0b-401f-91ae-01c189f8e7b2",
"action": "identity-delete",
"createdAt": "2037-01-21T08:25:45.119Z",
"updatedAt": "2037-01-21T08:30:45.233Z",
"operationCount": 3,
"targetServices": [
"ajo",
"profile",
"datalake",
"identity"
],
"status": "received",
"createdBy": "g.baratheon@acme.com <g.baratheon@acme.com> C189F8E7B2@acme.com",
"datasetId": "d2f1c8a4b8f747d0ba3521e2",
"datasetName": "Acme_Marketing_Events",
"displayName": "Marketing Identity Delete Request",
"description": "Scheduled identity deletion for marketing compliance"
}
I följande tabell beskrivs egenskaperna i svaret.
workorderIdorgIdbundleIdactioncreatedAtupdatedAtoperationCounttargetServicesstatuscreatedBydatasetIdALL).datasetNamedisplayNamedescriptionUppdatera en post, ta bort arbetsorder update
Uppdatera name och description för en postborttagning av arbetsorder genom att göra en PUT-begäran till slutpunkten /workorder/{WORKORDER_ID}.
API-format
PUT /workorder/{WORKORDER_ID}
I följande tabell beskrivs parametern för denna begäran.
{WORK_ORDER_ID}Begäran
curl -X PUT \
https://platform.adobe.io/data/core/hygiene/workorder/DI-893a6b1d-47c2-41e1-b3f1-2d7c2956aabb \
-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 '{
"name": "Updated Marketing Identity Delete Request",
"description": "Updated deletion request for marketing data"
}'
I följande tabell beskrivs de egenskaper som du kan uppdatera.
namedescriptionSvar
Ett svar returnerar den uppdaterade arbetsorderbegäran.
{
"workorderId": "DI-893a6b1d-47c2-41e1-b3f1-2d7c2956aabb",
"orgId": "7D4E2AC143214567890ABCDE@AcmeOrg",
"bundleId": "BN-12abcf45-32ea-45bc-9d1c-8e7b321cabc8",
"action": "identity-delete",
"createdAt": "2038-04-15T12:14:29.210Z",
"updatedAt": "2038-04-15T12:30:29.442Z",
"operationCount": 2,
"targetServices": [
"profile",
"datalake"
],
"status": "received",
"createdBy": "b.tarth@acme.com <b.tarth@acme.com> 8E7B321CABC8@acme.com",
"datasetId": "1a2b3c4d5e6f7890abcdef12",
"datasetName": "Acme_Marketing_2024",
"displayName": "Updated Marketing Identity Delete Request",
"description": "Updated deletion request for marketing data",
"productStatusDetails": [
{
"productName": "Data Management",
"productStatus": "waiting",
"createdAt": "2024-06-12T20:11:18.447747Z"
},
{
"productName": "Identity Service",
"productStatus": "success",
"createdAt": "2024-06-12T20:36:09.020832Z"
},
{
"productName": "Profile Service",
"productStatus": "waiting",
"createdAt": "2024-06-12T20:11:18.447747Z"
},
{
"productName": "Journey Orchestrator",
"productStatus": "success",
"createdAt": "2024-06-12T20:12:19.843199Z"
}
]
}
workorderIdorgIdbundleIdactioncreatedAtupdatedAtoperationCounttargetServicesstatusreceived,validated, submitted, ingested, completed och failed.createdBydatasetIdALL).datasetNamedisplayNamedescriptionproductStatusDetailsEn array som visar den aktuella statusen för processerna längre fram i kedjan för begäran. Varje objekt innehåller:
productName: Namnet på den underordnade tjänsten.productStatus: Aktuell bearbetningsstatus från den underordnade tjänsten.createdAt: Tidsstämpeln när den senaste statusen bokfördes av tjänsten.
Den här egenskapen är tillgänglig när arbetsordern har skickats till tjänster i senare led för att påbörja bearbetningen.