Extremo de políticas de combinación
Adobe Experience Platform permite reunir fragmentos de datos de varias fuentes y combinarlos para ver una vista completa de cada uno de los clientes individuales. Al unir estos datos, las políticas de combinación son las reglas que Experience Platform usa para determinar cómo se priorizarán los datos y qué datos se combinarán para crear una vista unificada.
Por ejemplo, si un cliente interactúa con su marca en varios canales, su organización tendrá varios fragmentos de perfil relacionados con ese único cliente que aparecerán en varios conjuntos de datos. Cuando estos fragmentos se incorporan en Experience Platform, se combinan para crear un único perfil para ese cliente. Cuando los datos de varias fuentes entran en conflicto (por ejemplo, un fragmento enumera al cliente como "único", mientras que el otro indica al cliente como "casado"), la política de combinación determina qué información se incluye en el perfil de la persona.
Mediante las API de RESTful o la interfaz de usuario de, puede crear nuevas políticas de combinación, administrar las políticas existentes y establecer una política de combinación predeterminada para su organización. Esta guía proporciona los pasos para trabajar con las políticas de combinación mediante la API.
Para trabajar con políticas de combinación mediante la interfaz de usuario, consulte la guía de la interfaz de usuario de las políticas de combinación. Para obtener más información sobre las políticas de combinación en general y su función en Experience Platform, lea la descripción general de las políticas de combinación.
Introducción
El extremo de API utilizado en esta guía forma parte de Real-Time Customer Profile API. Antes de continuar, revisa la guía de introducción para ver vínculos a documentación relacionada, una guía para leer las llamadas de API de ejemplo en este documento e información importante sobre los encabezados necesarios para realizar correctamente llamadas a cualquier API de Experience Platform.
Componentes de las políticas de combinación components-of-merge-policies
Las políticas de combinación son privadas para su organización, lo que le permite crear diferentes políticas para combinar esquemas de las formas específicas que necesite. Cualquier API que acceda a datos de Profile requiere una política de combinación, aunque se usará una predeterminada si no se proporciona una de forma explícita. Experience Platform proporciona a las organizaciones una política de combinación predeterminada, o bien puede crear una política de combinación para una clase de esquema Experience Data Model (XDM) específica y marcarla como predeterminada para su organización.
Aunque cada organización puede tener potencialmente varias políticas de combinación por clase de esquema, cada clase solo puede tener una política de combinación predeterminada. Cualquier política de combinación establecida como predeterminada se utilizará en los casos en que se proporcione el nombre de la clase de esquema y se requiera una política de combinación, pero no se proporcione.
Para garantizar que todos los consumidores de perfiles trabajen con la misma vista en los bordes, las políticas de combinación se pueden marcar como activas en el borde. Para que una audiencia se active en Edge (marcada como audiencia Edge), debe estar vinculada a una política de combinación marcada como activa en Edge. Si una audiencia no está vinculada a una política de combinación marcada como activa en Edge, la audiencia no se marca como activa en Edge y se marca como una audiencia de flujo continuo.
Además, cada organización solo puede tener una política de combinación activa en Edge. Si una política de combinación está activa en Edge, puede utilizarse para otros sistemas en Edge, como Perfil de Edge, Segmentación de Edge y Destinos en Edge.
Completar objeto de política de combinación
El objeto de política de combinación completo representa un conjunto de preferencias que controlan aspectos de la combinación de fragmentos de perfil.
Objeto de política de combinación
{
"id": "{MERGE_POLICY_ID}",
"name": "{NAME}",
"imsOrgId": "{ORG_ID}",
"schema": {
"name": "{SCHEMA_CLASS_NAME}"
},
"version": 1,
"identityGraph": {
"type": "{IDENTITY_GRAPH_TYPE}"
},
"attributeMerge": {
"type": "{ATTRIBUTE_MERGE_TYPE}"
},
"isActiveOnEdge": "{BOOLEAN}",
"default": "{BOOLEAN}",
"updateEpoch": "{UPDATE_TIME}"
}
id
name
imsOrgId
schema.name
schema
, el campo name
contiene la clase de esquema XDM con la que se relaciona la política de combinación. Para obtener más información sobre esquemas y clases, lea la documentación de XDM.version
identityGraph
attributeMerge
isActiveOnEdge
false
.default
updateEpoch
Ejemplo de política de combinación
{
"id": "10648288-cda5-11e8-a8d5-f2801f1b9fd1",
"name": "profile-default",
"imsOrgId": "{ORG_ID}",
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "timestampOrdered"
},
"isActiveOnEdge": false,
"default": true,
"updateEpoch": 1551660639
}
Gráfico de identidad identity-graph
El servicio de identidad de Adobe Experience Platform administra los gráficos de identidad utilizados globalmente y para cada organización en Experience Platform. El atributo identityGraph
de la política de combinación define cómo determinar las identidades relacionadas de un usuario.
objeto identityGraph
"identityGraph": {
"type": "{IDENTITY_GRAPH_TYPE}"
}
Donde {IDENTITY_GRAPH_TYPE}
es uno de los siguientes:
- "none": No realice ninguna vinculación de identidad.
- "pdg": Realice la vinculación de identidad en función de su gráfico de identidad privado.
EjemploidentityGraph
"identityGraph": {
"type": "pdg"
}
Combinación de atributos attribute-merge
Un fragmento de perfil es la información de perfil de una sola identidad de la lista de identidades que existen para un usuario en particular. Cuando el tipo de gráfico de identidad utilizado genera más de una identidad, existe la posibilidad de que haya conflictos entre los atributos de perfil y se debe especificar la prioridad. Con attributeMerge
, puede especificar qué atributos de perfil priorizar en caso de un conflicto de combinación entre conjuntos de datos del tipo Valor clave (datos de registro).
objeto attributeMerge
"attributeMerge": {
"type": "{ATTRIBUTE_MERGE_TYPE}"
}
Donde {ATTRIBUTE_MERGE_TYPE}
es uno de los siguientes:
timestampOrdered
: (predeterminado) dar prioridad al perfil que se actualizó por última vez. Con este tipo de combinación, el atributodata
no es necesario.dataSetPrecedence
: dé prioridad a los fragmentos de perfil en función del conjunto de datos del que procedan. Esto se puede utilizar cuando se prefiere la información presente en un conjunto de datos o cuando se confía en ella sobre los datos de otro conjunto de datos. Al utilizar este tipo de combinación, el atributoorder
es necesario, ya que enumera los conjuntos de datos en el orden de prioridad.order
: cuando se usa "dataSetPrecedence", se debe proporcionar una matrizorder
con una lista de conjuntos de datos. No se combinarán los conjuntos de datos que no estén incluidos en la lista. En otras palabras, los conjuntos de datos deben enumerarse explícitamente para combinarse en un perfil. La matrizorder
enumera los identificadores de los conjuntos de datos en orden de prioridad.
Ejemplo de objeto attributeMerge
con tipo dataSetPrecedence
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"dataSetId_2",
"dataSetId_3",
"dataSetId_1",
"dataSetId_4"
]
}
Ejemplo de objeto attributeMerge
con tipo timestampOrdered
"attributeMerge": {
"type": "timestampOrdered"
}
Esquema schema
El objeto de esquema especifica la clase de esquema del Modelo de datos de experiencia (XDM) para la que se crea esta política de combinación.
schema
objeto
"schema": {
"name": "{SCHEMA_NAME}"
}
Donde el valor de name
es el nombre de la clase XDM en la que se basa el esquema asociado con la política de combinación.
Ejemploschema
"schema": {
"name": "_xdm.context.profile"
}
Para obtener más información sobre XDM y trabajar con esquemas en Experience Platform, comience por leer la descripción general del sistema XDM.
Acceso a políticas de combinación access-merge-policies
Con la API Real-Time Customer Profile, el extremo /config/mergePolicies
le permite realizar una solicitud de búsqueda para ver una política de combinación específica por su ID o acceder a todas las políticas de combinación de su organización, filtradas según criterios específicos. También puede usar el extremo /config/mergePolicies/bulk-get
para recuperar varias directivas de combinación por sus identificadores. Los pasos para realizar cada una de estas llamadas se describen en las secciones siguientes.
Acceso a una única política de combinación por ID
Puede acceder a una única política de combinación por su ID realizando una petición GET al extremo /config/mergePolicies
e incluyendo mergePolicyId
en la ruta de solicitud.
Formato de API
GET /config/mergePolicies/{mergePolicyId}
{mergePolicyId}
Solicitud
curl -X GET \
'https://platform.adobe.io/data/core/ups/config/mergePolicies/10648288-cda5-11e8-a8d5-f2801f1b9fd1' \
-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}
Respuesta
Una respuesta correcta devuelve los detalles de la política de combinación.
{
"id": "10648288-cda5-11e8-a8d5-f2801f1b9fd1",
"imsOrgId": "{ORG_ID}",
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "pdg"
},
"attributeMerge": {
"type": "timestampOrdered"
},
"isActiveOnEdge": "false",
"default": false,
"updateEpoch": 1551127597
}
Consulte la sección componentes de políticas de combinación al principio de este documento para obtener detalles sobre cada uno de los elementos individuales que conforman una política de combinación.
Recuperar varias políticas de combinación por sus ID
Puede recuperar varias políticas de combinación realizando una petición POST al extremo /config/mergePolicies/bulk-get
e incluyendo los ID de las políticas de combinación que desea recuperar en el cuerpo de la solicitud.
Formato de API
POST /config/mergePolicies/bulk-get
Solicitud
El cuerpo de la solicitud incluye una matriz "ids" con objetos individuales que contienen el "id" para cada política de combinación cuyos detalles desea recuperar.
curl -X POST \
'https://platform.adobe.io/data/core/ups/config/mergePolicies/bulk-get' \
-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 '{
"ids": [
{
"id": "0bf16e61-90e9-4204-b8fa-ad250360957b"
},
{
"id": "42d4a596-b1c6-46c0-994e-ca5ef1f85130"
}
]
}'
Respuesta
Una respuesta correcta devuelve el estado HTTP 207 (varios estados) y los detalles de las políticas de combinación cuyos ID se proporcionaron en la solicitud POST.
{
"results": {
"0bf16e61-90e9-4204-b8fa-ad250360957b": {
"id": "0bf16e61-90e9-4204-b8fa-ad250360957b",
"name": "Profile Default Merge Policy",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "timestampOrdered"
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1552086578
},
"42d4a596-b1c6-46c0-994e-ca5ef1f85130": {
"id": "42d4a596-b1c6-46c0-994e-ca5ef1f85130",
"name": "Dataset Precedence Merge Policy",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "pdg"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": false,
"default": false,
"updateEpoch": 1576099719
}
}
}
Consulte la sección componentes de políticas de combinación al principio de este documento para obtener detalles sobre cada uno de los elementos individuales que conforman una política de combinación.
Enumerar varias políticas de combinación por criterios
Puede enumerar varias directivas de combinación dentro de su organización emitiendo una solicitud GET al extremo /config/mergePolicies
y utilizando parámetros de consulta opcionales para filtrar, ordenar y paginar la respuesta. Se pueden incluir varios parámetros, separados por el símbolo "et" (&). Realizar una llamada a este extremo sin parámetros recuperará todas las políticas de combinación disponibles para su organización.
Formato de API
GET /config/mergePolicies?{QUERY_PARAMS}
default
limit
orderBy
orderBy=name
o orderBy=+name
para ordenar por nombre en orden ascendente o orderBy=-name
para ordenar en orden descendente. Si se omite este valor, la ordenación predeterminada de name
será en orden ascendente.isActiveOnEdge
schema.name
identityGraph.type
attributeMerge.type
start
version
Para obtener más información sobre schema.name
, identityGraph.type
y attributeMerge.type
, consulte la sección componentes de políticas de combinación que se ha proporcionado anteriormente en esta guía.
Solicitud
La siguiente solicitud enumera todas las políticas de combinación para un esquema determinado:
curl -X GET \
'https://platform.adobe.io/data/core/ups/config/mergePolicies?schema.name=_xdm.context.profile' \
-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}
Respuesta
Una respuesta correcta devuelve una lista paginada de directivas de combinación que cumplen los criterios especificados por los parámetros de consulta enviados en la solicitud.
{
"_page": {
"totalCount": 2,
"pageSize": 2
},
"children": [
{
"id": "0bf16e61-90e9-4204-b8fa-ad250360957b",
"name": "Profile Default Merge Policy",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "timestampOrdered"
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1552086578
},
{
"id": "42d4a596-b1c6-46c0-994e-ca5ef1f85130",
"name": "Dataset Precedence Merge Policy",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "pdg"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": false,
"default": false,
"updateEpoch": 1576099719
}
],
"_links": {
"next": {
"href": "@/mergePolicies?start=K1JJRDpFaWc5QUpZWHY1c2JBQUFBQUFBQUFBPT0jUlQ6MSNUUkM6MiNGUEM6QWdFQUFBQldBQkVBQVBnaFFQLzM4VUIvL2tKQi8rLysvMUpBLzMrMi8wRkFmLzR4UUwvL0VrRC85em4zRTBEcmNmYi92Kzh4UUwvL05rQVgzRi8rMStqNS80WHQwN2NhUUVzQUFBUUFleGpLQ1JnVXRVcEFCQUFFQVBBRA==&orderBy=&limit=2"
}
}
}
_links.next.href
Crear una política de combinación
Puede crear una nueva política de combinación para su organización realizando una petición POST al extremo /config/mergePolicies
.
Formato de API
POST /config/mergePolicies
Solicitud
La siguiente solicitud crea una nueva política de combinación, que se configura con los valores de atributo proporcionados en la carga útil:
curl -X POST \
https://platform.adobe.io/data/core/ups/config/mergePolicies \
-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": "Loyalty members ordered by ID",
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type":"dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"schema": {
"name":"_xdm.context.profile"
},
"isActiveOnEdge": true,
"default": true
}'
name
identityGraph.type
attributeMerge
schema
isActiveOnEdge
default
Consulte la sección componentes de políticas de combinación para obtener más información.
Respuesta
Una respuesta correcta devuelve los detalles de la política de combinación recién creada.
{
"id": "e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2",
"name": "Loyalty members ordered by ID",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1551898378
}
Consulte la sección componentes de políticas de combinación al principio de este documento para obtener detalles sobre cada uno de los elementos individuales que conforman una política de combinación.
Actualizar una política de combinación update
Puede modificar una política de combinación existente editando atributos individuales (PATCH) o sobrescribiendo toda la política de combinación con atributos nuevos (PUT). A continuación se muestran ejemplos de cada una de ellas.
Editar campos de políticas de combinación individuales
Puede editar campos individuales para una política de combinación realizando una petición PATCH al extremo /config/mergePolicies/{mergePolicyId}
:
Formato de API
PATCH /config/mergePolicies/{mergePolicyId}
{mergePolicyId}
Solicitud
La siguiente solicitud actualiza una política de combinación especificada cambiando el valor de su propiedad default
a true
:
curl -X PATCH \
https://platform.adobe.io/data/core/ups/config/mergePolicies/e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2 \
-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 '{
"op": "add",
"path": "/default",
"value": "true"
}'
op
path
value
Consulte la sección componentes de políticas de combinación para obtener más información.
Respuesta
Una respuesta correcta devuelve los detalles de la política de combinación recién actualizada.
{
"id": "e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2",
"name": "Loyalty members ordered by ID",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1551898378
}
Sobrescribir una política de combinación
Otra forma de modificar una política de combinación es utilizar una petición PUT, que sobrescribe toda la política de combinación.
Formato de API
PUT /config/mergePolicies/{mergePolicyId}
{mergePolicyId}
Solicitud
La siguiente solicitud sobrescribe la política de combinación especificada y reemplaza sus valores de atributo por los proporcionados en la carga útil. Dado que esta solicitud reemplaza completamente una política de combinación existente, es necesario que proporcione todos los campos que fueron necesarios al definir originalmente la política de combinación. Sin embargo, esta vez proporciona valores actualizados para los campos que desea cambiar.
curl -X PUT \
https://platform.adobe.io/data/core/ups/config/mergePolicies/e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2 \
-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": "Loyalty members ordered by ID",
"imsOrgId": "{ORG_ID}",
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1551898378
}'
name
identityGraph
attributeMerge
schema
isActiveOnEdge
default
Consulte la sección componentes de políticas de combinación para obtener más información.
Respuesta
Una respuesta correcta devuelve los detalles de la política de combinación actualizada.
{
"id": "e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2",
"name": "Loyalty members ordered by ID",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"sandboxName": "prod",
"type": "production",
"default": true
},
"schema": {
"name": "_xdm.context.profile"
},
"version": 1,
"identityGraph": {
"type": "none"
},
"attributeMerge": {
"type": "dataSetPrecedence",
"order": [
"5b76f86b85d0e00000be5c8b",
"5b76f8d787a6af01e2ceda18"
]
},
"isActiveOnEdge": true,
"default": true,
"updateEpoch": 1551898378
}
Eliminar una política de combinación
Se puede eliminar una política de combinación realizando una petición DELETE al extremo /config/mergePolicies
e incluyendo el ID de la política de combinación que desea eliminar en la ruta de solicitud.
Formato de API
DELETE /config/mergePolicies/{mergePolicyId}
{mergePolicyId}
Solicitud
La siguiente solicitud elimina una política de combinación.
curl -X DELETE \
https://platform.adobe.io/data/core/ups/config/mergePolicies/e5bc94de-cd14-4cdf-a2bc-88b6e8cbfac2 \
-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}' \
Respuesta
Una solicitud de eliminación correcta devuelve el estado HTTP 200 (OK) y un cuerpo de respuesta vacío. Para confirmar que la eliminación se ha realizado correctamente, puede realizar una petición GET para ver la política de combinación por su ID. Si se ha eliminado la política de combinación, recibirá un error de estado HTTP 404 (no encontrado).
Pasos siguientes
Ahora que sabe cómo crear y configurar políticas de combinación para su organización, puede utilizarlas para ajustar la vista de perfiles de clientes en Experience Platform y para crear audiencias a partir de los datos de Real-Time Customer Profile.
Consulte la documentación del servicio de segmentación de Adobe Experience Platform para empezar a definir y trabajar con audiencias.