Listar ofertas personalizadas
- Tópicos:
- Gestão de decisões
- API
Criado para:
- Experiente
- Desenvolvedor
Uma oferta personalizada é uma mensagem de marketing personalizável baseada em regras de elegibilidade e restrições.
Você pode exibir uma lista de todas as ofertas personalizadas executando uma única solicitação GET para a API Offer Library.
Formato da API
GET /{ENDPOINT_PATH}/offers?offer-type=personalized&{QUERY_PARAMS}
Parâmetro | Descrição | Exemplo |
---|---|---|
{ENDPOINT_PATH} | O caminho do endpoint para APIs de persistência. | https://platform.adobe.io/data/core/dps |
{QUERY_PARAMS} | Parâmetros de consulta opcionais para filtrar os resultados. | limit=2 |
Solicitação
curl -X GET 'https://platform.adobe.io/data/core/dps/offers?offer-type=personalized&limit=2' \
-H 'Accept: *,application/json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Uso de parâmetros de consulta
Você pode usar parâmetros de consulta para paginar e filtrar resultados ao listar recursos.
Paginação
Os parâmetros de consulta mais comuns para paginação incluem:
Parâmetro | Descrição | Exemplo |
---|---|---|
property |
Um filtro de propriedade opcional:
| property=name!=abc&property=id~.*1234.*&property=description equivalent with property=name!=abc,id~.*1234.*,description. |
orderBy | Classificar os resultados por uma propriedade específica. Adicionar um - antes do nome (orderby=-name) classificará os itens pelo nome em ordem decrescente (Z-A). As expressões de caminho estão no formato de caminhos separados por pontos. Este parâmetro pode ser repetido assim: orderby=field1[,-fields2,field3,...] | orderby=id ,-name |
limit | Limitar o número de posicionamentos retornados. | limit=5 |
Resposta
Uma resposta bem-sucedida retorna uma lista de ofertas personalizadas que estão presentes junto com aquelas às quais você tem acesso.
{
"results": [
{
"created": "2023-05-15T14:35:16.781+00:00",
"modified": "2023-05-15T14:38:26.691+00:00",
"etag": 2,
"schemas": [
"https://ns.adobe.com/experience/offer-management/personalized-offer;version=0.15"
],
"createdBy": "{CREATED_BY}",
"lastModifiedBy": "{MODIFIED_BY}",
"id": "personalizedOffer1234",
"name": "Test personalized offer with frequency constraint",
"status": "draft",
"representations": [
{
"channel": "https://ns.adobe.com/xdm/channel-types/web",
"placement": "offerPlacement1234",
"components": [
{
"type": "html",
"format": "text/html",
"language": [
"en-us"
],
"content": "Hello You qualify for our Discount of 60%"
}
]
}
],
"selectionConstraint": {
"startDate": "2022-07-27T05:00:00.000+00:00",
"endDate": "2023-07-29T05:00:00.000+00:00",
"profileConstraintType": "none"
},
"rank": {
"priority": 0
},
"cappingConstraint": {},
"frequencyCappingConstraints": [
{
"enabled": false,
"limit": 1,
"startDate": "2023-05-15T14:25:49.622+00:00",
"endDate": "2023-05-25T14:25:49.622+00:00",
"scope": "global",
"entity": "offer",
"repeat": {
"enabled": false,
"unit": "month",
"unitCount": 1
}
}
]
}
],
"count": 1,
"total": 1,
"_links": {
"self": {
"href": "/offers?offer-type=personalized&href={SELF_HREF}",
"type": "application/json"
}
}
}
Executar paginação se várias ofertas personalizadas estiverem ausentes da resposta.
Resposta
{
"results": [...],
"count": 2,
"total": 43,
"_links": {
"self": {
"href": "/offers?orderby=-modified&limit=2&offer-type=PERSONALIZED",
"type": "application/json"
},
"next": {
"href": "/offers?orderby=-modified&limit=2&start={TIMESTAMP}&offer-type=PERSONALIZED",
"type": "application/json"
}
}
}
Métrica | Descrição |
---|---|
total | O número de ofertas personalizadas. |
count | O número de ofertas retornadas nesta resposta. |
Recupere o ponto de extremidade de _links.next.href
como /offers?orderby=-modified&limit=2&start={TIMESTAMP}&offer-type=PERSONALIZED
e anexe-o à API.
Formato da API
GET /{ENDPOINT_PATH}/offers?orderby=-modified&limit=2&start={TIMESTAMP}&offer-type=PERSONALIZED
{
"results": [...],
"count": 2,
"total": 43,
"_links": {
"self": {...},
"next": {
"href": "/offers?orderby=-modified&limit=2&start={TIMESTAMP}&offer-type=PERSONALIZED",
"type": "application/json"
}
}
}
Da mesma forma, se você não estiver na primeira página e precisar recuperar a página anterior de ofertas personalizadas, use o valor href
de _links.prev
. Faça uma solicitação ao URL para buscar o conjunto anterior de resultados, como mostrado no exemplo abaixo.
Resposta
{
"results": [...],
"count": 2,
"total": 43,
"_links": {
"self": {...},
"next": {...},
"prev": {
"href": "/offers?orderby=-modified&limit=2&start={TIMESTAMP}&offer-type=PERSONALIZED",
"type": "application/json"
}
}
}