Extremo de trabajos de privacidad
Este documento explica cómo trabajar con trabajos de privacidad mediante llamadas a la API. En concreto, cubre el uso del extremo /job
en la API Privacy Service. Antes de leer esta guía, consulte la guía de introducción para obtener información importante que necesita conocer para realizar correctamente llamadas a la API, incluidos los encabezados obligatorios y cómo leer llamadas de API de ejemplo.
Enumerar todos los trabajos list
Puede ver una lista de todos los trabajos de privacidad disponibles en su organización realizando una solicitud de GET al extremo /jobs
.
Formato de API
Este formato de solicitud usa un parámetro de consulta regulation
en el extremo /jobs
, por lo que comienza con un signo de interrogación (?
) como se muestra a continuación. Al enumerar recursos, la API de Privacy Service devuelve hasta 1000 trabajos y pagina la respuesta. Use otros parámetros de consulta (page
, size
y filtros de fecha) para filtrar la respuesta. Puede separar varios parámetros mediante el símbolo et (&
).
status
, fromDate
y toDate
.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 de regulación que se va a consultar. Los valores aceptados incluyen:
apa_aus
ccpa
cpa_usa
cpra_usa
ctdpa_usa
dpdpa
fdbr_usa
gdpr
hipaa_usa
icdpa_usa
lgpd_bra
mcdpa_usa
mhmda_usa
ndpa_usa
nhpa_usa
njdpa_usa
nzpa_nzl
ocpa_usa
pdpa_tha
ql25
tdpsa_usa
ucpa_usa
vcdpa_usa
Consulte la descripción general de regulaciones admitidas para obtener más información sobre las regulaciones de privacidad que representan los valores anteriores.
{PAGE}
0
.{SIZE}
100
y el máximo es 1000
. Si se supera el máximo, la API devolverá un error de 400 códigos.{status}
El comportamiento predeterminado es incluir todos los estados. Si especifica un tipo de estado, la solicitud solo devolverá los trabajos de privacidad que coincidan con ese tipo de estado. Los valores aceptados incluyen:
processing
complete
error
{toDate}
Acepta el formato AAAA-MM-DD. La fecha que proporcione se interpreta como la fecha de finalización expresada en la hora del meridiano de Greenwich (GMT).
Si no proporciona este parámetro (y un
fromDate
correspondiente), el comportamiento predeterminado devuelve los trabajos que contienen datos en los últimos siete días. Si usa toDate
, también debe usar el parámetro de consulta fromDate
. Si no utiliza ambas, la llamada devuelve un error 400.{fromDate}
Acepta el formato AAAA-MM-DD. La fecha que proporcione se interpreta como la fecha de origen de la solicitud expresada en la hora del meridiano de Greenwich (GMT).
Si no proporciona este parámetro (y un
toDate
correspondiente), el comportamiento predeterminado devuelve los trabajos que contienen datos en los últimos siete días. Si usa fromDate
, también debe usar el parámetro de consulta toDate
. Si no utiliza ambas, la llamada devuelve un error 400.{filterDate}
Solicitud
La siguiente solicitud recupera una lista paginada de todos los trabajos de una organización, a partir de la tercera página con un tamaño de página de 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}'
Respuesta
Una respuesta correcta devuelve una lista de trabajos, y cada trabajo contiene detalles como su jobId
. En este ejemplo, la respuesta contendría una lista de 50 trabajos, a partir de la tercera página de resultados.
Acceso a páginas subsiguientes
Para obtener el siguiente conjunto de resultados en una respuesta paginada, debe realizar otra llamada de API al mismo extremo y aumentar el parámetro de consulta page
en 1.
Creación de un trabajo de privacidad create-job
Antes de crear una nueva solicitud de trabajo, primero debe recopilar información de identificación de los interesados a cuyos datos desea acceder, eliminar o excluir de la venta. Una vez que tenga los datos requeridos, deben proporcionarse en la carga de una solicitud de POST al extremo /jobs
.
La API Privacy Service admite dos tipos de solicitudes de trabajo para datos personales:
- Acceder o eliminar: Acceda (lea) o elimine datos personales.
- Excluirse de la venta: marca los datos personales como no vendidos.
Creación de un trabajo de acceso o eliminación access-delete
Esta sección muestra cómo realizar una solicitud de trabajo de acceso o eliminación mediante la API.
Formato de API
POST /jobs
Solicitud
La siguiente solicitud crea una nueva solicitud de trabajo, configurada por los atributos proporcionados en la carga útil como se describe a continuación.
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",
"mergePolicyId": 124,
"regulation": "ccpa"
}'
companyContexts
(obligatorio)Matriz que contiene información de autenticación de su organización. Cada identificador enumerado incluye los siguientes atributos:
namespace
: área de nombres de un identificador.value
: el valor del identificador.
Se requiere que uno de los identificadores use imsOrgId
como su namespace
, y que su value
contenga el identificador único de su organización.
Los identificadores adicionales pueden ser calificadores de compañía específicos de productos (por ejemplo, Campaign
), que identifican una integración con una aplicación de Adobe que pertenece a su organización. Los valores potenciales incluyen nombres de cuenta, códigos de cliente, ID de inquilino u otros identificadores de aplicación.
users
(obligatorio)Matriz que contiene una colección de al menos un usuario cuya información desea eliminar o a la que desea acceder. Se puede proporcionar un máximo de 1000 usuarios en una sola solicitud. Cada objeto de usuario contiene la siguiente información:
key
: identificador de un usuario que se usa para calificar los identificadores de trabajo independientes en los datos de respuesta. Se recomienda elegir una cadena única y fácilmente identificable para este valor, de modo que se pueda hacer referencia a ella o buscarla más tarde.action
: una matriz que enumera las acciones que se deben realizar con los datos del usuario. Según las acciones que desee realizar, esta matriz debe incluiraccess
,delete
o ambos.userIDs
: una colección de identidades del usuario. El número de identidades que un solo usuario puede tener está limitado a nueve. Cada identidad consta denamespace
,value
y un calificador de área de nombres (type
). Consulte el apéndice para obtener más información sobre estas propiedades requeridas.
Para obtener una explicación más detallada de users
y userIDs
, consulte la guía de solución de problemas.
include
(obligatorio)expandIDs
true
, representa una optimización para procesar los identificadores en las aplicaciones (actualmente solo es compatible con Analytics). Si se omite, el valor predeterminado es false
.priority
normal
y low
. Si se omite priority
, el comportamiento predeterminado es normal
.mergePolicyId
profileService
), puede proporcionar de forma opcional el identificador de la política de combinación específica que desee usar para la vinculación de ID. Al especificar una política de combinación, las solicitudes de privacidad pueden incluir información de la audiencia al devolver datos de un cliente. Solo se puede especificar una política de combinación por solicitud. Si no se proporciona ninguna política de combinación, la información de segmentación no se incluye en la respuesta.regulation
(obligatorio)La regulación del trabajo de privacidad. Se aceptan los siguientes valores:
apa_aus
ccpa
cpra_usa
gdpr
hipaa_usa
lgpd_bra
nzpa_nzl
pdpa_tha
vcdpa_usa
Consulte la descripción general de regulaciones admitidas para obtener más información sobre las regulaciones de privacidad que representan los valores anteriores.
Respuesta
Una respuesta correcta devuelve los detalles de los trabajos recién creados.
{
"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
Una vez que haya enviado correctamente la solicitud de trabajo, puede continuar con el siguiente paso de comprobar el estado del trabajo.
Comprobar el estado de un trabajo check-status
Puede recuperar información sobre un trabajo específico, como su estado de procesamiento actual, incluyendo el jobId
de ese trabajo en la ruta de una solicitud de GET al extremo /jobs
.
Formato de API
GET /jobs/{JOB_ID}
{JOB_ID}
jobId
en respuestas de API correctas para crear un trabajo y enumerar todos los trabajos.Solicitud
La siguiente solicitud recupera los detalles del trabajo cuyo jobId
se ha proporcionado en la ruta de solicitud.
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}'
Respuesta
Una respuesta correcta devuelve los detalles del trabajo especificado.
{
"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 información sobre el estado actual del trabajo con respecto a una aplicación Experience Cloud específica.productStatusResponse.status
productStatusResponse.message
productStatusResponse.responseMsgCode
responseMsgDetail
.productStatusResponse.responseMsgDetail
productStatusResponse.results
results
que proporciona información adicional no cubierta por responseMsgDetail
.downloadURL
complete
, este atributo proporciona una URL para descargar los resultados del trabajo como archivo ZIP. Este archivo está disponible para descargar durante 60 días después de completarse el trabajo.Categorías de estado del trabajo status-categories
En la tabla siguiente se enumeran las diferentes categorías de estado de trabajo posibles y su significado correspondiente:
complete
processing
submitted
error
processing
si tiene un trabajo secundario dependiente que aún se está procesando.Pasos siguientes
Ahora sabe cómo crear y supervisar trabajos de privacidad mediante la API Privacy Service. Para obtener información sobre cómo realizar las mismas tareas con la interfaz de usuario, vea la descripción general de la interfaz de usuario del Privacy Service.