Endpoint "privacy jobs"
Questo documento illustra come lavorare con i processi relativi alla privacy utilizzando le chiamate API. In particolare, riguarda l'uso del /job
endpoint nella Privacy Service API. Prima di leggere questa guida, consulta guida introduttiva per informazioni importanti che devi conoscere per effettuare correttamente chiamate all’API, incluse le intestazioni richieste e la lettura di esempi di chiamate API.
Elenca tutti i processi list
Puoi visualizzare un elenco di tutti i processi di privacy disponibili all’interno della tua organizzazione effettuando una richiesta GET al /jobs
endpoint.
Formato API
Questo formato di richiesta utilizza un regulation
parametro di query sul /jobs
punto finale, quindi inizia con un punto interrogativo (?
) come illustrato di seguito. Quando vengono elencate le risorse, l’API Privacy Service restituisce fino a 1000 processi e impagina la risposta. Usa altri parametri di query (page
, size
e filtri di data) per filtrare la risposta. È possibile separare più parametri utilizzando il simbolo commerciale (&
).
status
, fromDate
, e toDate
parametri di query.GET /jobs?regulation={REGULATION}
GET /jobs?regulation={REGULATION}&page={PAGE}
GET /jobs?regulation={REGULATION}&size={SIZE}
GET /jobs?regulation={REGULATION}&page={PAGE}&size={SIZE}
GET /jobs?regulation={REGULATION}&fromDate={FROMDATE}&toDate={TODATE}&status={STATUS}
{REGULATION}
Tipo di regolamento per cui eseguire la query. I valori accettati includono:
apa_aus
ccpa
cpa
cpra_usa
ctdpa
ctdpa_usa
gdpr
hipaa_usa
lgpd_bra
mhmda
nzpa_nzl
pdpa_tha
ucpa_usa
vcdpa_usa
Consulta la panoramica su normative supportate per ulteriori informazioni sulle normative sulla privacy rappresentate dai valori di cui sopra.
{PAGE}
0
.{SIZE}
100
e il massimo è 1000
. Se si supera il valore massimo, l’API restituisce un errore 400 codici.{status}
Il comportamento predefinito consiste nell’includere tutti gli stati. Se si specifica un tipo di stato, la richiesta restituisce solo i processi di privacy che corrispondono a tale tipo di stato. I valori accettati includono:
processing
complete
error
{toDate}
Accetta il formato AAAA-MM-GG. La data fornita viene interpretata come data di cessazione espressa in ora di Greenwich (GMT).
Se non fornisci questo parametro (e un corrispondente
fromDate
), il comportamento predefinito restituisce i processi che risalgono agli ultimi sette giorni. Se usa toDate
, è inoltre necessario utilizzare fromDate
parametro di query. Se non utilizzi entrambi, la chiamata restituisce un errore 400.{fromDate}
Accetta il formato AAAA-MM-GG. La data fornita viene interpretata come la data di origine della richiesta espressa in ora di Greenwich (GMT).
Se non fornisci questo parametro (e un corrispondente
toDate
), il comportamento predefinito restituisce i processi che risalgono agli ultimi sette giorni. Se usa fromDate
, è inoltre necessario utilizzare toDate
parametro di query. Se non utilizzi entrambi, la chiamata restituisce un errore 400.{filterDate}
Richiesta
La richiesta seguente recupera un elenco impaginato di tutti i processi all’interno di un’organizzazione, a partire dalla terza pagina con dimensioni di pagina pari a 50.
curl -X GET \
https://platform.adobe.io/data/core/privacy/jobs?regulation=gdpr&page=2&size=50 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
Risposta
In caso di esito positivo, la risposta restituisce un elenco di processi, ciascuno dei quali contiene dettagli quali jobId
. In questo esempio, la risposta conterrà un elenco di 50 processi, a partire dalla terza pagina dei risultati.
Accesso alle pagine successive
Per recuperare il successivo set di risultati in una risposta impaginata, devi effettuare un’altra chiamata API allo stesso endpoint durante l’aumento del page
parametro di query per 1.
Creare un processo di privacy create-job
Prima di creare una nuova richiesta di lavoro, devi raccogliere informazioni di identificazione sulle persone interessate a cui desideri accedere, eliminare o rinunciare alla vendita dei dati. Una volta che disponi dei dati richiesti, questi devono essere forniti nel payload di una richiesta POST al /jobs
endpoint.
Il Privacy Service L’API supporta due tipi di richieste di lavoro per i dati personali:
- Accesso e/o eliminazione: accedere (leggere) o eliminare dati personali.
- Rinuncia alla vendita: contrassegna i dati personali come non venduti.
Creare un processo di accesso/eliminazione access-delete
In questa sezione viene illustrato come effettuare una richiesta di processo di accesso/eliminazione utilizzando l’API.
Formato API
POST /jobs
Richiesta
La richiesta seguente crea una nuova richiesta di processo, configurata dagli attributi forniti nel payload come descritto di seguito.
curl -X POST \
https://platform.adobe.io/data/core/privacy/jobs \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-d '{
"companyContexts": [
{
"namespace": "imsOrgID",
"value": "{ORG_ID}"
}
],
"users": [
{
"key": "DavidSmith",
"action": ["access"],
"userIDs": [
{
"namespace": "email",
"value": "dsmith@acme.com",
"type": "standard"
},
{
"namespace": "ECID",
"type": "standard",
"value": "443636576799758681021090721276",
"isDeletedClientSide": false
}
]
},
{
"key": "user12345",
"action": ["access","delete"],
"userIDs": [
{
"namespace": "email",
"value": "ajones@acme.com",
"type": "standard"
},
{
"namespace": "loyaltyAccount",
"value": "12AD45FE30R29",
"type": "integrationCode"
}
]
}
],
"include": ["Analytics", "AudienceManager","profileService"],
"expandIds": false,
"priority": "normal",
"analyticsDeleteMethod": "anonymize",
"mergePolicyId": 124,
"regulation": "ccpa"
}'
companyContexts
(Obbligatorio)Array contenente le informazioni di autenticazione per l’organizzazione. Ogni identificatore elencato include i seguenti attributi:
namespace
: spazio dei nomi di un identificatore.value
: valore dell’identificatore.
È obbligatorio che uno degli identificatori utilizza imsOrgId
come namespace
, con i relativi value
contenente l’ID univoco della tua organizzazione.
Identificatori aggiuntivi possono essere qualificatori aziendali specifici per prodotto (ad esempio, Campaign
), che identificano un’integrazione con un’applicazione di Adobe appartenente alla tua organizzazione. I valori potenziali includono nomi di account, codici client, ID tenant o altri identificatori dell’applicazione.
users
(Obbligatorio)Matrice contenente una raccolta di almeno un utente di cui si desidera accedere o eliminare le informazioni. Un massimo di 1000 utenti può essere fornito in una singola richiesta. Ogni oggetto utente contiene le seguenti informazioni:
key
: identificatore per un utente utilizzato per qualificare gli ID processo separati nei dati di risposta. È consigliabile scegliere una stringa univoca e facilmente identificabile per questo valore in modo che possa essere facilmente referenziato o cercato in un secondo momento.action
: array che elenca le azioni da eseguire sui dati dell’utente. A seconda delle azioni che desideri eseguire, questo array deve includereaccess
,delete
, o entrambi.userIDs
: raccolta di identità per l’utente. Il numero di identità che un singolo utente può avere è limitato a nove. Ogni identità è costituita da unanamespace
, avalue
, e un qualificatore dello spazio dei nomi (type
). Consulta la appendice per ulteriori dettagli su queste proprietà richieste.
Per una spiegazione più dettagliata di users
e userIDs
, vedere guida alla risoluzione dei problemi.
include
(Obbligatorio)expandIDs
true
, rappresenta un’ottimizzazione per l’elaborazione degli ID nelle applicazioni (attualmente supportato solo da Analytics). Se omesso, il valore predefinito è false
.priority
normal
e low
. Se priority
viene omesso, il comportamento predefinito è normal
.analyticsDeleteMethod
Proprietà facoltativa che specifica come Adobe Analytics deve gestire i dati personali. Per questo attributo sono accettati due possibili valori:
anonymize
: tutti i dati a cui fa riferimento la raccolta specificata di ID utente vengono resi anonimi. SeanalyticsDeleteMethod
viene omesso. Si tratta del comportamento predefinito.purge
: tutti i dati vengono rimossi completamente.
mergePolicyId
profileService
), puoi facoltativamente fornire l’ID della specifica criterio di unione che desideri utilizzare per l’unione di ID. Specificando un criterio di unione, le richieste di privacy possono includere informazioni sul pubblico quando si restituiscono dati su un cliente. È possibile specificare un solo criterio di unione per richiesta. Se non viene fornito alcun criterio di unione, le informazioni di segmentazione non vengono incluse nella risposta.regulation
(Obbligatorio)Il regolamento per il lavoro sulla privacy. Sono accettati i seguenti valori:
apa_aus
ccpa
cpra_usa
gdpr
hipaa_usa
lgpd_bra
nzpa_nzl
pdpa_tha
vcdpa_usa
Consulta la panoramica su normative supportate per ulteriori informazioni sulle normative sulla privacy rappresentate dai valori di cui sopra.
Risposta
In caso di esito positivo, la risposta restituisce i dettagli dei nuovi processi creati.
{
"jobs": [
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076b0842b6",
"customer": {
"user": {
"key": "DavidSmith",
"action": [
"access"
]
}
}
},
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076be029f3",
"customer": {
"user": {
"key": "user12345",
"action": [
"access"
]
}
}
},
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076bd023j1",
"customer": {
"user": {
"key": "user12345",
"action": [
"delete"
]
}
}
}
],
"requestStatus": 1,
"totalRecords": 3
}
jobId
Dopo aver inviato correttamente la richiesta del processo, è possibile procedere al passaggio successivo di verifica dello stato del processo.
Controllare lo stato di un processo check-status
È possibile recuperare informazioni su un job specifico, ad esempio il relativo stato di elaborazione corrente, includendo jobId
nel percorso di una richiesta GET al /jobs
endpoint.
Formato API
GET /jobs/{JOB_ID}
{JOB_ID}
jobId
in risposte API per creazione di un processo e elenco di tutti i processi.Richiesta
La richiesta seguente recupera i dettagli del processo il cui jobId
viene fornito nel percorso della richiesta.
curl -X GET \
https://platform.adobe.io/data/core/privacy/jobs/6fc09b53-c24f-4a6c-9ca2-c6076b0842b6 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
Risposta
In caso di esito positivo, la risposta restituisce i dettagli del processo specificato.
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076b0842b6",
"requestId": "15700479082313109RX-899",
"userKey": "David Smith",
"action": "access",
"status": "complete",
"submittedBy": "{ACCOUNT_ID}",
"createdDate": "10/02/2019 08:25 PM GMT",
"lastModifiedDate": "10/02/2019 08:25 PM GMT",
"userIds": [
{
"namespace": "email",
"value": "dsmith@acme.com",
"type": "standard",
"namespaceId": 6,
"isDeletedClientSide": false
},
{
"namespace": "ECID",
"value": "1123A4D5690B32A",
"type": "standard",
"namespaceId": 4,
"isDeletedClientSide": false
}
],
"productResponses": [
{
"product": "Analytics",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6000-200",
"responseMsgDetail": "Finished successfully."
}
},
{
"product": "Profile",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6000-200",
"responseMsgDetail": "Success dataSetIds = [5dbb87aad37beb18a96feb61], Failed dataSetIds = []"
}
},
{
"product": "AudienceManager",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6054-200",
"responseMsgDetail": "PARTIALLY COMPLETED- Data not found for some requests, check results for more info.",
"results": {
"processed": ["1123A4D5690B32A"],
"ignored": ["dsmith@acme.com"]
}
}
}
],
"downloadURL": "http://...",
"regulation": "ccpa"
}
productStatusResponse
productResponses
contiene informazioni sullo stato corrente del processo rispetto a un Experience Cloud applicazione.productStatusResponse.status
productStatusResponse.message
productStatusResponse.responseMsgCode
responseMsgDetail
.productStatusResponse.responseMsgDetail
productStatusResponse.results
results
oggetto che fornisce informazioni aggiuntive non coperte responseMsgDetail
.downloadURL
complete
, questo attributo fornisce un URL per scaricare i risultati del processo come file ZIP. Questo file è disponibile per il download per 60 giorni dopo il completamento del processo.Categorie stato processo status-categories
Nella tabella seguente sono elencate le diverse categorie possibili di stato dei job e il relativo significato:
complete
processing
submitted
error
processing
stato se il processo figlio dipendente è ancora in elaborazione.Passaggi successivi
Ora sai come creare e monitorare i processi relativi alla privacy utilizzando Privacy Service API. Per informazioni su come eseguire le stesse attività utilizzando l'interfaccia utente, vedere Panoramica dell’interfaccia utente di Privacy Service.