Autenticación de la API de Impression Bus
Antes de usar Impression Bus API, debe usar el nombre de usuario y la contraseña para obtener un token de autorización. Para obtener el token, realice una POST
solicitud a https://api.adnxs.com/auth
con un archivo JSON que contenga sus credenciales de autenticación.
Esto devuelve una respuesta JSON con el token. A continuación, tiene dos opciones:
- coloque el token en el encabezado en solicitudes futuras como Autorización: TOKEN o
- colóquela en una cookie con el método descrito a continuación (recomendado).
Si no tiene un nombre de usuario y una contraseña, póngase en contacto con el representante de su cuenta de Xandr.
Nota:
Para obtener una explicación de los errores que puede encontrar durante y después de la autenticación, consulte la sección Errores en Semántica de API.
Período de tiempo
Cuando se autentica, recibe un token de autorización que permanece activo durante 2 horas después de la llamada más reciente. Se recomienda volver a autenticarse solo después de recibir en las "NOAUTH"``error_id
respuestas de llamada. Si sigue esta práctica, la restricción anterior no debería tener ningún impacto en la implementación.
Además, el servicio agrega una expiración dura de 24 horas. Cuando una sesión de API alcanza la marca de 24 horas, esa sesión expira, independientemente de cuándo se haya realizado la llamada API más reciente. El comportamiento actual, en el que una sesión expira después de dos horas de inactividad por parte del cliente, permanece sin cambios. Los programas que siguen las directrices de procedimientos recomendados de API no deben verse afectados.
Autenticación
Paso 1: Creación de JSON de autenticación
Cree un archivo de texto con formato JSON con el nombre de usuario y la contraseña. A continuación, hemos usado el cat
comando para mostrar la salida de un archivo de ejemplo.
$ cat auth
{
"auth":
{
"username" : "USERNAME",
"password" : "PASSWORD"
}
}
Paso 2: POST la solicitud
Realice una solicitud POST con el "auth"
archivo . La solicitud de autorización establece una cookie de sesión (IBAPI_SESSID
) y devuelve un token en JSON. Tenga en cuenta que hemos usado el parámetro "detallado" en el ejemplo siguiente.
curl -v -X POST --data-binary @auth https://api.adnxs.com/auth
< HTTP/1.1 200 OK
< Date: Fri, 22 Aug 2008 12:12:13 GMT
< Set-Cookie: IBAPI_SESSID=622cee5f8c99c81e87614e9efc63eddb; path=/
< Content-Length: 58
< Content-Type: text/html
<
{
"response": {
"token": "622cee5f8c99c81e87614e9efc63eddb"
}
}
PASO 3: Uso del token para llamadas API
El token ahora se puede usar para realizar una solicitud desde la API:
$ curl -H "Authorization: 622cee5f8c99c81e87614e9efc63eddb" https://api.adnxs.com/member
{
"response": {
"members": [
{
"id": "1",
"name": "Car company c\/o Ad Agency",
"active": "1",
"bidder_id": "2"
}
]
}
}
Como alternativa, podemos usar la cookie. Este es el método recomendado y la notación que usamos en nuestros ejemplos. Este es un ejemplo con el servicio miembro.
$ curl -b cookies -c cookies -X POST -d @auth "https://api.adnxs.com/auth"
{
"response": {
"token": "622cee5f8c99c81e87614e9efc63eddb"
}
}
$ curl -b cookies https://api.adnxs.com/member
{
"response": {
"members": [
{
"id": "1",
"name": "Car company c\/o Ad Agency",
"active": "1",
"bidder_id": "2"
}
]
}
}
Frecuencia de autenticación
Después de autenticarse, el token permanece válido durante 2 horas. No es necesario volver a autenticarse en este momento.
Nota:
Si vuelve a autenticarse, tenga en cuenta la siguiente limitación:
- La API le permite autenticarse correctamente 10 veces por período de 5 minutos.
- Los intentos de autenticación posteriores en esos 5 minutos producirán un error.
Sugerencia
Se recomienda escuchar "NOAUTH" error_id
en las respuestas de llamada y volver a autenticarse solo después de recibirlo.