Introducción a REST APIs getting-started-with-rest-apis

Información sobre requisitos generales, autenticación, parámetros de consulta opcionales, solicitud URLs y otras referencias.

Requisitos de API y Recommendations api-requirements-recommendations

Tenga en cuenta lo siguiente al trabajar con el código API de Audience Manager:

  • Parámetros de solicitud: todos los parámetros de solicitud son obligatorios a menos que se especifique lo contrario.
  • Encabezados de solicitud: al usar tokens de Adobe Developer, debe proporcionar el encabezado x-api-key. Puede obtener su clave API siguiendo las instrucciones de la página Integración de cuenta de servicio.
  • JSONtipo de contenido: Especifique content-type: application/json y accept: application/json en su código.
  • Solicitudes y respuestas: Envíe solicitudes como un objeto JSON correctamente formateado. Audience Manager responde con JSON datos formateados. Las respuestas del servidor pueden contener datos solicitados, un código de estado o ambos.
  • Acceso: Su asesor de Audience Manager le proporcionará un identificador de cliente y una clave que le permitirán realizar API solicitudes.
  • Ejemplos de documentación y código: El texto en cursiva representa una variable que proporciona o pasa al realizar o recibir datos de API. Reemplace el texto cursiva con su propio código, parámetros u otra información necesaria.

Autenticación authentication

Audience Manager REST APIs admite tres métodos de autenticación.

IMPORTANT
Según el método de autenticación, debe ajustar la solicitud URLs en consecuencia. Consulte la sección Entornos para obtener más información sobre los nombres de host que debe usar.

Autenticación de servidor a servidor OAuth mediante Adobe Developer oauth-adobe-developer

Esta sección cubre cómo recopilar las credenciales necesarias para autenticar las llamadas a la API de Audience Manager, como se describe en el diagrama de flujo siguiente. Puede recopilar la mayoría de las credenciales necesarias en la configuración inicial única. Sin embargo, el token de acceso debe actualizarse cada 24 horas.

diagrama de flujo de autenticación del Audience Manager.

Información general de Adobe Developer developer-overview

Adobe Developer es el ecosistema y la comunidad de desarrolladores de Adobe. Incluye API para todos los productos de Adobe.

Esta es la forma recomendada de configurar y usar Adobe APIs.

Requisitos previos prerequisites-server-to-server

Antes de configurar la autenticación de OAuth Server-to-Server, asegúrate de tener acceso a Adobe Developer Console en Adobe Developer. Póngase en contacto con el administrador de su organización para solicitudes de acceso.

Autenticación oauth

Siga los pasos a continuación para configurar la autenticación de OAuth Server-to-Server mediante Adobe Developer:

  1. Inicie sesión en Adobe Developer Console.
  2. Siga los pasos de la guía de implementación de credenciales de servidor a servidor OAuth.
  3. Pruebe la conexión realizando la primera llamada de API según las instrucciones del Paso 3.
NOTE
Para configurar y trabajar con Audience Manager REST APIs de forma automatizada, puede rotar los secretos de cliente mediante programación. Consulte la documentación para desarrolladores para obtener instrucciones detalladas.

Añadir la API de Audience Manager a un proyecto add-aam-api-to-project

Ve a Adobe Developer Console e inicia sesión con tu Adobe ID. A continuación, siga los pasos descritos en el tutorial sobre creación de un proyecto vacío en la documentación de Adobe Developer Console.

Una vez creado un nuevo proyecto, seleccione Add API en la pantalla Project Overview.

TIP
Si está aprovisionado para varias organizaciones, utilice el selector de organizaciones en la esquina superior derecha de la interfaz para asegurarse de que se encuentra en la organización que necesita.

Pantalla de Developer Console con la opción Agregar API resaltada.

Aparecerá la pantalla Add an API. Seleccione el icono de producto de Adobe Experience Cloud y, a continuación, elija Audience Manager API antes de seleccionar Next.

Seleccionar API de Audience Manager.

TIP
Seleccione la opción View docs para navegar en una ventana separada del explorador a la documentación de referencia de la API del Audience Manager.

Seleccione el tipo de autenticación de servidor a servidor OAuth select-oauth-server-to-server

A continuación, seleccione el tipo de autenticación para generar tokens de acceso y acceder a la API de Audience Manager.

IMPORTANT
Seleccione el método OAuth Server-to-Server, ya que este será el único método admitido a partir de ahora. El método Service Account (JWT) está obsoleto. Aunque las integraciones que utilizan el método de autenticación JWT seguirán funcionando hasta el 1 de enero de 2025, Adobe recomienda migrar las integraciones existentes al nuevo método de servidor a servidor OAuth antes de esa fecha.

Seleccionar método de autenticación OAuth.

Selección de los perfiles de producto para la integración select-product-profiles

En la pantalla Configure API, seleccione los perfiles de producto que desee. La cuenta de servicio de su integración obtendrá acceso a las funciones granulares a través de los perfiles de producto seleccionados aquí.

Seleccione perfiles de producto para su integración.

Seleccione Save configured API cuando esté listo.

Recopilar credenciales gather-credentials

Una vez agregada la API al proyecto, la página Audience Manager API del proyecto muestra las siguientes credenciales, que son necesarias en todas las llamadas a las API de Audience Manager:

Información de integración después de agregar una API en Developer Console.

  • {API_KEY} (Client ID)
  • {ORG_ID} (Organization ID)

Generación de un token de acceso generate-access-token

El siguiente paso es generar una credencial {ACCESS_TOKEN} para usarla en llamadas a la API de Audience Manager. A diferencia de los valores de {API_KEY} y {ORG_ID}, se debe generar un nuevo token cada 24 horas para seguir usando las API de Audience Manager. Seleccione Generate access token, como se muestra a continuación.

Mostrar cómo generar token de acceso

Prueba de una llamada API test-api-call

Después de obtener el token de portador de autenticación, realice una llamada a la API para probar que ahora puede acceder a las API de Audience Manager.

  1. Vaya a la documentación de referencia de API.

  2. Seleccione Authorize y pegue el token de acceso que obtuvo en el paso generar token de acceso.

    Autorizar llamadas API

  3. Realice una llamada de GET al extremo de API /datasources para recuperar una lista de todos los orígenes de datos disponibles globalmente, como se indica en la documentación de referencia de API. Seleccione Try it out, seguido de Execute, como se muestra a continuación.

    Realizar llamadas API

recommendation-more-help
Solicitud de API
code language-shell
curl -X 'GET' \
  'https://api.demdex.com/v1/datasources/' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer your-access-token'
Respuesta API en caso de usar el token portador correcto

Al utilizar un token de acceso de trabajo, el extremo de la API devuelve una respuesta 200, junto con un cuerpo de respuesta que incluye todas las fuentes de datos globales a las que su organización tiene acceso.

code language-json
[
  {
    "pid": 1794,
    "name": "testdatasource1",
    "description": "Test data source",
    "status": "ACTIVE",
    "integrationCode": "test_ds1",
    "dataExportRestrictions": [],
    "updateTime": 1595340792000,
    "crUID": 0,
    "upUID": 15910,
    "linkNamespace": false,
    "type": "GENERAL",
    "subIdType": "CROSS_DEVICE_PERSON",
    "inboundS2S": true,
    "outboundS2S": true,
    "useAudienceManagerVisitorID": false,
    "allowDataSharing": true,
    "masterDataSourceIdProvider": true,
    "uniqueTraitIntegrationCodes": false,
    "uniqueSegmentIntegrationCodes": false,
    "marketingCloudVisitorIdVersion": 0,
    "idType": "CROSS_DEVICE",
    "samplingEndTime": 1596550392825,
    "allowDeviceGraphSharing": false,
    "supportsAuthenticatedProfile": true,
    "deviceGraph": false,
    "authenticatedProfileName": "testdatasource1",
    "deviceGraphName": "",
    "customNamespaceId": 29769,
    "customNamespaceCode": "silviu_ds1",
    "customerProfileDataRetention": 62208000,
    "samplingStartTime": 1595340792825,
    "dataSourceId": 29769,
    "containerIds": [],
    "samplingEnabled": false
  },
  {
    "pid": 1794,
    "name": "AAM Test Company Audiences",
    "description": "Automatically generated trait data source",
    "status": "ACTIVE",
    "integrationCode": "adobe-provided",
    "dataExportRestrictions": [
      "PII"
    ],

    [...]

[Obsoleto]{class="badge negative"}Autenticación JWT (Service Account) mediante Adobe Developer jwt

Vea información sobre el método obsoleto JWT (Service Account) de obtención de tokens de autenticación.

Información general de Adobe Developer adobeio

Adobe Developer es el ecosistema y la comunidad de desarrolladores de Adobe. Incluye API para todos los productos de Adobe.

Esta es la forma recomendada de configurar y usar Adobe APIs.

Requisitos previos prerequisites

Antes de configurar la autenticación de JWT, asegúrate de tener acceso a Adobe Developer Console en Adobe Developer. Póngase en contacto con el administrador de su organización para solicitudes de acceso.

Autenticación auth

Siga los pasos a continuación para configurar la autenticación de JWT (Service Account) mediante Adobe Developer:

  1. Inicie sesión en Adobe Developer Console.
  2. Siga los pasos de Conexión de cuenta de servicio.
  3. Pruebe la conexión realizando la primera llamada de API según las instrucciones del Paso 3.
note note
NOTE
Para configurar y trabajar con Audience Manager REST APIs de manera automatizada, puede generar JWT mediante programación. Consulte Autenticación JWT (cuenta de servicio) para obtener instrucciones detalladas.

Permisos de RBAC de cuenta técnica

Si su cuenta de Audience Manager usa Control de acceso basado en roles, debe crear una cuenta de usuario técnico de Audience Manager y agregarla al grupo RBAC de Audience Manager que realizará las llamadas de API.

Siga los pasos a continuación para crear una cuenta de usuario técnica y agregarla a un grupo RBAC:

  1. Realizar una llamada de GET a https://aam.adobe.io/v1/users/self. La llamada creará una cuenta de usuario técnica que podrá ver en Admin Console, en la página Users.

    cuenta técnica

  2. Inicie sesión en su cuenta de Audience Manager y agregue la cuenta de usuario técnico al grupo de usuarios que realizará las llamadas de API.

[Obsoleto]{class="badge negative"}Autenticación OAuth (obsoleta) oauth-deprecated

Vea información sobre el método de autenticación OAuth heredado obsoleto para obtener tokens de autenticación.
note warning
WARNING
Audience Manager REST API La autenticación y renovación de tokens mediante OAuth 2.0 ya no se utiliza.
En su lugar, use la autenticación JWT (cuenta de servicio).

Audience Manager REST API sigue OAuth 2.0 estándares para la autenticación y renovación de tokens. Las secciones siguientes describen cómo autenticarse y comenzar a trabajar con API.

Crear un usuario API genérico requirements

Le recomendamos que cree una cuenta de usuario técnica independiente para trabajar con Audience Manager APIs. Se trata de una cuenta genérica que no está vinculada a un usuario específico de su organización ni asociada a él. Este tipo de cuenta de usuario API le ayuda a lograr dos cosas:

  • Identifique qué servicio está llamando a API (por ejemplo, llamadas de sus aplicaciones que usan nuestros APIs o de otras herramientas que realizan API solicitudes).
  • Proporcione acceso ininterrumpido a API. Una cuenta vinculada a una persona específica puede eliminarse cuando abandone la compañía. Esto evitará que trabaje con el código API disponible. Una cuenta genérica que no esté vinculada a un empleado en particular le ayuda a evitar este problema.

Como ejemplo o caso de uso para este tipo de cuenta, supongamos que desea cambiar muchos segmentos a la vez con las herramientas de administración masiva. Para ello, su cuenta de usuario necesita el acceso de API. En lugar de agregar permisos a un usuario específico, cree una cuenta de usuario API no específica que tenga las credenciales, la clave y el secreto adecuados para realizar llamadas a API. Esto también resulta útil si desarrolla sus propias aplicaciones que utilizan Audience Manager APIs.

Póngase en contacto con el consultor de Audience Manager para configurar una cuenta de usuario genérica de solo API.

Flujo de trabajo de autenticación de contraseña password-authentication-workflow

Autenticación de contraseña: acceso seguro a REST API. Los pasos siguientes describen el flujo de trabajo para la autenticación mediante contraseña desde un cliente de JSON en su explorador.

note tip
TIP
Cifre los tokens de acceso y actualización si los almacena en una base de datos.

Paso 1: Solicitar acceso de API

Póngase en contacto con su administrador de Soluciones para socios. Proporcionarán un ID de cliente API y un secreto. El identificador y secreto le autentican en API.

Nota: Si desea recibir un token de actualización, especifíquelo cuando solicite acceso a API.

Paso 2: Solicitar el token

Pase una solicitud de token con su cliente JSON preferido. Cuando genere la solicitud:

  • Use un método POST para llamar a https://api.demdex.com/oauth/token.
  • Convierta su ID de cliente y secreto en una cadena codificada en base 64. Separe el ID y el secreto con dos puntos durante el proceso de conversión. Por ejemplo, las credenciales testId : testSecret se convierten en dGVzdElkOnRlc3RTZWNyZXQ=.
  • Pasar HTTP headers Authorization:Basic <base-64 clientID:clientSecret> y Content-Type: application/x-www-form-urlencoded Por ejemplo, el encabezado podría tener el aspecto siguiente:
    Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
    Content-Type: application/x-www-form-urlencoded
  • Configure el cuerpo de la solicitud de la siguiente manera:

    grant_type=password&username=<your-AudienceManager-user-name>&password=<your-AudienceManager-password>

Paso 3: Recibir el token

La respuesta JSON contiene su token de acceso. La respuesta debería ser similar a la siguiente:

code language-json
{
    "access_token": "28fed402-eafd-456c-9341-ac753f25bbbc",
    "token_type": "bearer",
    "refresh_token": "b27122c0-b0c7-4b39-a71b-1547a3b3b88e",
    "expires_in": 21922,
    "scope": "read write"
}

La clave expires_in representa el número de segundos hasta que caduca el token de acceso. Se recomienda utilizar tiempos de caducidad cortos para limitar la exposición si el token se expone en algún momento.

Actualizar token refresh-token

Actualizar tokens renovar el acceso de API después de que caduque el token original. Si se solicita, la respuesta JSON en el flujo de trabajo de contraseñas incluye un token de actualización. Si no recibe un token de actualización, cree uno nuevo mediante el proceso de autenticación de contraseña.

También puede utilizar un token de actualización para generar un nuevo token antes de que caduque el token de acceso existente.

Si su token de acceso ha caducado, recibirá un 401 Status Code y el siguiente encabezado en la respuesta:

WWW-Authenticate: Bearer realm="oauth", error="invalid_token", error_description="Access token expired: <token>"

Los siguientes pasos describen el flujo de trabajo para usar un token de actualización con el fin de crear un nuevo token de acceso a partir de un cliente JSON en el explorador.

Paso 1: Solicitar el nuevo token

Pase una solicitud de token de actualización con su cliente JSON preferido. Cuando genere la solicitud:

  • Use un método POST para llamar a https://api.demdex.com/oauth/token.
  • Convierta su ID de cliente y secreto en una cadena codificada en base 64. Separe el ID y el secreto con dos puntos durante el proceso de conversión. Por ejemplo, las credenciales testId : testSecret se convierten en dGVzdElkOnRlc3RTZWNyZXQ=.
  • Pase los encabezados HTTP Authorization:Basic <base-64 clientID:clientSecret> y Content-Type: application/x-www-form-urlencoded. Por ejemplo, el encabezado podría tener el aspecto siguiente:
    Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
    Content-Type: application/x-www-form-urlencoded
  • En el cuerpo de la solicitud, especifique grant_type:refresh_token y pase el token de actualización que recibió en su solicitud de acceso anterior. La solicitud debe tener este aspecto:
    grant_type=refresh_token&refresh_token=b27122c0-b0c7-4b39-a71b-1547a3b3b88e

Paso 2: Recibir el nuevo token

La respuesta JSON contiene su nuevo token de acceso. La respuesta debería ser similar a la siguiente:

code language-json
{
    "access_token": "4fdfc261-2ffc-4fb7-8dbd-64221714c45f",
    "token_type": "bearer",
    "refresh_token": "295fa487-1825-4caa-a715-80b81ac17dae",
    "expires_in": 21922,
    "scope": "read write"
}

Código de autorización y autenticación implícita authentication-code-implicit

Audience Manager REST API admite código de autorización y autenticación implícita. Para usar estos métodos de acceso, los usuarios deben iniciar sesión en https://api.demdex.com/oauth/authorize para obtener acceso y actualizar los tokens.

Hacer solicitudes autenticadas de API authenticated-api-requests

Requisitos para llamar a los métodos API después de recibir un token de autenticación.

Para realizar llamadas contra los métodos API disponibles:

  • En el encabezado HTTP, establezca Authorization: Bearer <token>.
  • Al usar la autenticación JWT (cuenta de servicio), debe proporcionar el encabezado x-api-key, que será el mismo que client_id. Puede obtener su client_id desde la página Integración de Adobe Developer.
  • Llame al método API requerido.

Parámetros de consulta API opcionales optional-api-query-parameters

Establezca los parámetros opcionales disponibles para los métodos que devuelven todas las propiedades de un objeto.

Puede utilizar estos parámetros opcionales con API métodos que devuelven todas las propiedades de un objeto. Establezca estas opciones en la cadena de solicitud al pasar esa consulta al API.

Parámetro
Descripción
page
Devuelve los resultados por número de página. La numeración comienza en 0.
pageSize
Establece el número de resultados de respuesta que devuelve la solicitud (10 es el valor predeterminado).
sortBy
Ordena y devuelve los resultados según la propiedad JSON especificada.
descending
Ordena y devuelve los resultados en orden descendente. ascending es el valor predeterminado.
search
Devuelve los resultados en función de la cadena especificada que desee utilizar como parámetro de búsqueda. Por ejemplo, supongamos que desea buscar resultados para todos los modelos que tienen la palabra "Test" en cualquiera de los campos de valor de ese elemento. La solicitud de ejemplo podría tener este aspecto: GET https://aam.adobe.io/v1/models/?search=Test. Puede buscar cualquier valor devuelto por un método "get all".
folderId
Devuelve todos los identificadores de traits dentro de la carpeta especificada. No disponible para todos los métodos.
permissions

Devuelve una lista de segmentos en función del permiso especificado. READ es el valor predeterminado. Los permisos incluyen:

  • READ : devolver y ver información sobre un segmento.
  • WRITE : usar PUT para actualizar un segmento.
  • CREATE : usar POST para crear un segmento.
  • DELETE : Eliminar un segmento. Requiere acceso a los rasgos subyacentes, si los hay. Por ejemplo, necesitará derechos para eliminar los rasgos que pertenecen a un segmento si desea eliminarlo.

Especifique varios permisos con pares clave-valor independientes. Por ejemplo, para devolver una lista de segmentos con READ y WRITE permisos solamente, pase "permissions":"READ", "permissions":"WRITE" .

includePermissions
(Boolean) Configúrelo en true para devolver sus permisos para el segmento. El valor predeterminado es false.

Una Nota Sobre Las Opciones De Página

Si no se especifica la información de página **, la solicitud devolverá JSON resultados sin formato en una matriz. Si se especifica la información de página is, la lista devuelta se incluirá en un objeto JSON que contiene información sobre el resultado total y la página actual. La solicitud de muestra que utiliza opciones de página puede tener un aspecto similar al siguiente:

GET https://aam.adobe.io/v1/models/?page=1&pageSize=2&search=Test

API URLs api-urls

URLs para solicitudes, entornos de ensayo y producción y versiones.

Solicitud URLs request-urls

En la tabla siguiente se enumera la solicitud URLs utilizada para pasar API solicitudes, por método.

Según el método de autenticación que utilice, debe ajustar la solicitud URLs según las tablas siguientes.

Solicitar URLs para [Recomendado]{class="badge positive"}[Obsoleto]{class="badge negative"}Autenticación de JWT mediante Adobe Developer request-urls-jwt

API métodos
Solicitud URL
Algorithmic Modeling
https://aam.adobe.io/v1/models/
Data Source
https://aam.adobe.io/v1/datasources/
Derived Signals
https://aam.adobe.io/v1/signals/derived/
Destinations
https://aam.adobe.io/v1/destinations/
Domains
https://aam.adobe.io/v1/partner-sites/
Folders
Características: https://aam.adobe.io/v1/folders/traits /
Segmentos: https://aam.adobe.io/v1/folders/segments /
Schema
https://aam.adobe.io/v1/schemas/
Segments
https://aam.adobe.io/v1/segments/
Traits
https://aam.adobe.io/v1/traits/
Trait Types
https://aam.adobe.io/v1/customer-trait-types
Taxonomy
https://aam.adobe.io/v1/taxonomies/0/

Solicitud URLs para [obsoleto]{class="badge negative"}Autenticación de OAuth request-urls-oauth

API métodos
Solicitud URL
Algorithmic Modeling
https://api.demdex.com/v1/models/
Data Source
https://api.demdex.com/v1/datasources/
Derived Signals
https://api.demdex.com/v1/signals/derived/
Destinations
https://api.demdex.com/v1/destinations/
Domains
https://api.demdex.com/v1/partner-sites/
Folders
Características: https://api.demdex.com/v1/folders/traits /
Segmentos: https://api.demdex.com/v1/folders/segments /
Schema
https://api.demdex.com/v1/schemas/
Segments
https://api.demdex.com/v1/segments/
Traits
https://api.demdex.com/v1/traits/
Trait Types
https://api.demdex.com/v1/customer-trait-types
Taxonomy
https://api.demdex.com/v1/taxonomies/0/

Entornos environments

Los Audience Manager API proporcionan acceso a diferentes entornos de trabajo. Estos entornos le ayudan a probar el código en bases de datos independientes sin afectar a los datos activos y de producción. En la tabla siguiente se enumeran los entornos API disponibles y los nombres de host de recursos correspondientes.

Según el método de autenticación que utilice, debe ajustar su entorno URLs según la tabla siguiente.

Entorno
Nombre de host para la autenticación JWT
Nombre de host para la autenticación OAuth
Producción
https://aam.adobe.io/...
https://api.demdex.com/...
Beta
https://aam-beta.adobe.io/...
https://api-beta.demdex.com/...
NOTE
El entorno beta Audience Manager es una versión independiente a menor escala del entorno de producción. Todos los datos que desee probar deben introducirse y recopilarse en este entorno.

Versiones versions

Las nuevas versiones de estos(as) API se publican de manera regular. Una nueva versión incrementa el número de versión API. Se hace referencia al número de versión en la solicitud URL como v<version number>, como se muestra en el siguiente ejemplo:

https://<host>/v1/...

Códigos de respuesta definidos response-codes-defined

HTTP códigos de estado y texto de respuesta devuelto por Audience Manager REST API.

ID de código de respuesta
Texto de respuesta
Definición
200
OK
Solicitud procesada correctamente. Devuelve el contenido o los datos esperados si es necesario.
201
Created
Se ha creado el recurso. Devuelve para PUT y POST solicitudes.
204
No Content
Se ha eliminado el recurso. El cuerpo de la respuesta estará en blanco.
400
Bad Request
El servidor no entendió la solicitud. Por lo general, debido a sintaxis mal formada. Compruebe su solicitud e inténtelo de nuevo.
403
Forbidden
No tiene acceso al recurso.
404
Not Found
No se encontró el recurso para la ruta de acceso especificada.
409
Conflict
No se pudo completar la solicitud debido a un conflicto con el estado del recurso.
500
Server Error
El servidor encontró un error inesperado que le impidió cumplir la solicitud.
de293fbf-b489-49b0-8daa-51ed303af695