Devuelve
Returns
a TargetDeliveryResponse
si se llama sincrónicamente (predeterminado), o a AsyncResult
si se llama con una llamada de retorno. TargetDeliveryResponse
tiene la siguiente estructura:
Nombre | Tipo | Descripción |
---|---|---|
respuesta | DeliveryResponse | Se ajusta a la respuesta Target Delivery API |
target_cookie | dict | Cookie Target |
target_location_hint_cookie | dict | Target cookie de indicio de ubicación |
analytics_details | list[AnalyticsResponse] | Analytics carga útil, en caso de uso de Analytics del lado del cliente |
trazar | list[dict] | |
response_tokens | list[dict] | Una lista de tokens de respuesta |
meta | dict | Metadatos de toma de decisiones adicionales para su uso con la toma de decisiones en el dispositivo |
Ejemplo
En primer lugar, vamos a generar la solicitud Target Delivery API para recuperar previamente contenido para los mboxes home
y product1
.
Python
mboxes = [MboxRequest(name="home"),
MboxRequest(name="product1")]
prefetch = PrefetchRequest(mboxes=mboxes)
delivery_request = DeliveryRequest(prefetch=prefetch)
# Next, we fetch the offers via Target Python SDK getOffers() API
response = target_client.get_offers({ "request": delivery_request })
Una respuesta correcta contendrá un objeto de respuesta Target Delivery API, que incluye contenido recuperado previamente para los mboxes solicitados. Un objeto target_response["response"]
de ejemplo (con formato de diccionario) puede aparecer de la siguiente manera:
Python
{
"status": 200,
"requestId": "e8ac2dbf5f7d4a9f9280f6071f24a01e",
"id": {
"tntId": "08210e2d751a44779b8313e2d2692b96.21_27"
},
"client": "adobetargetmobile",
"edgeHost": "mboxedge21.tt.omtrdc.net",
"prefetch": {
"mboxes": [
{
"index": 0,
"name": "home",
"options": [
{
"type": "html",
"content": "HOME OFFER",
"eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
"responseTokens": {
"profile.memberlevel": "0",
"geo.city": "dublin",
"activity.id": "302740",
"experience.name": "Experience B",
"geo.country": "ireland"
}
}
],
"state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
},
{
"index": 1,
"name": "product1",
"options": [
{
"type": "html",
"content": "TEST OFFER 1",
"eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
"responseTokens": {
"profile.memberlevel": "0",
"geo.city": "dublin",
"activity.id": "302740",
"experience.name": "Experience B",
"geo.country": "ireland"
}
}
],
"state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
}
]
}
}
Observe los campos mbox name
y state
, así como el campo eventToken
, en cada una de las opciones de contenido de Target. Se deben proporcionar en la solicitud send_notifications()
, en cuanto se muestre cada opción de contenido. Supongamos que el mbox product1
se ha mostrado en un dispositivo que no es de explorador. La solicitud de notificaciones aparecerá de la siguiente manera: