Filtragem filtering
Recuperando metadados de filtros
Os filtros estão disponíveis para cada recurso. Para identificar os filtros associados a um recurso, é necessário executar uma solicitação GET nos metadados do recurso. Essa solicitação retorna o URL em que todos os filtros são definidos para um determinado recurso. Para obter mais informações sobre metadados, consulte esta seção.
Para identificar os metadados de um filtro e determinar como usá-lo, é necessário executar uma solicitação do GET no URL retornado anteriormente.
Solicitação de exemplo
As cargas de amostra abaixo mostram como recuperar os metadados do filtro "byText" para o recurso "perfil". Primeiro, execute uma solicitação GET na metada de recurso "perfil".
-X GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/resourceType/profile \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Cache-Control: no-cache' \
-H 'X-Api-Key: <API_KEY>'
Ele retorna o URL no qual os filtros são descritos.
{
"filters": {
"href": "https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/resourceType/<PKEY>/filters/"
}
}
Execute uma solicitação GET no URL. Ele retorna a lista de filtros para o recurso de perfil, com os metadados associados a cada filtro.
{
"birthday": {
"PKey": "@FL-CbDFXbnHbXcVpeCGWL46VXJLn1LqxLMPagt2vz8sCxQ52lvB15KiUaxXkxJYQw-tZXYrgUWG6K8QcB4gxVY9RKoba5bRFY3294YFshDmorRr8",
"category": "0150_profile",
"condition": ...,
"data": "https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/profile/birthday?type=$value&precision=$value&operator=$value&day=$value&month=$value&includeStart=$value&endDay=$value&endMonth=$value&includeEnd=$value&relativeValue=$value&nextUnitsValue=$value&previousUnitsValue=$value",
"formType": "webPage",
"fragmentName": "",
"label": "Birthday",
}
Estrutura de metadados de filtros
A mesma estrutura de metadados está disponível para cada filtro:
- Os campos @formType e @webPage são campos técnicos.
- O campo dados fornece uma amostra sobre como usar o filtro.
- O nó metadata descreve os parâmetros de filtro.
- O nó condition descreve o que o filtro deve fazer. Os parâmetros de filtro descritos no nó de metadados são usados para criar condições de filtro. Para cada condição de filtro, se enabledIf for true, a expr será aplicada.
Exemplo de estrutura de metadados de filtro:
"byText": {
"PKey": "...",
"category": "99_none",
"condition": ...,
"data": "/profileAndServices/profile/byText?text=$value",
"formType": "none",
"fragmentName": "",
"label": "By name or email",
}
Utilização de filtros
A filtragem é executada com a seguinte solicitação:
GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/<resourceName>/by<filterName>?<filterParam>=<filterValue>
É possível combinar vários filtros em uma única solicitação:
GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/<resourceName>/<filter1name>/<filter2name>?<filter1param>=<filter1value>&<filter2param>=<filter2value>
Solicitações de exemplo
-
Exemplo de solicitação do GET para recuperar os recursos de "serviço" com o tipo "email".
code language-none -X GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/service/byChannel?channel=email \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <ACCESS_TOKEN>' \ -H 'Cache-Control: no-cache' \ -H 'X-Api-Key: <API_KEY>'
Resposta à solicitação.
code language-none { "content": [ { "PKey": "<PKEY>", "created": "2019-09-25 23:20:35.000Z", "href": "https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/service/@I_FIiDush4OQPc0mbOVR9USoh36Tt5CsD35lATvQjdWlXrYc0lFkvle2XIwZUbD8GqTVvSp8AfWFUvjkGMe1fPe5nok", "label": "Marketing Newsletter", "lastModified": "2019-09-25 23:20:35.000Z", "limitedDuration": false, "messageType": "email", "mode": "newsletter", ... }, ... ], ... }
-
Exemplo de solicitação de GET para recuperar os recursos de "perfil" que contêm "Concluído" em
os campos email ou sobrenome (o filtro byText pesquisa nos campos email e sobrenome).code language-none -X GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/profile/byText?text=Doe \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <ACCESS_TOKEN>' \ -H 'Cache-Control: no-cache' \ -H 'X-Api-Key: <API_KEY>'
Resposta à solicitação.
code language-none { "content": [ { "PKey": "<PKEY>", "firstName": "John", "lastName":"Doe", "birthDate": "1980-10-24", ... } ... ], ... }
-
Exemplo de solicitação do GET para recuperar os recursos de serviços com o tipo "email" e o rótulo "sport".
code language-none -X GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/service/byChannel/byText?channel=email&text=sport \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <ACCESS_TOKEN>' \ -H 'Cache-Control: no-cache' \ -H 'X-Api-Key: <API_KEY>'
Resposta à solicitação.
code language-none { "content": [ { "PKey": "<PKEY>", "created": "2019-09-26 09:36:01.014Z", "href": "https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/service/<PKEY>", "label": "sport", "lastModified": "2019-09-26 09:36:01.014Z", "limitedDuration": false, "messageType": "email", "mode": "newsletter", "name": "SVC13", ... } ], ... }
Filtros personalizados
Se quiser usar um filtro personalizado, será necessário criá-lo e personalizá-lo na interface do Adobe Campaign Standard. O filtro personalizado terá o mesmo comportamento que os filtros prontos para uso:
GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServicesExt/<resourceName>/by<customFilterName>?<customFilterparam>=<customFilterValue>
Para obter mais informações, consulte a documentação do Campaign Standard:
Solicitação de exemplo
Exemplo de solicitação de GET para recuperar os recursos de "perfil" com valores de transação de US$ 100 ou mais. Observe que o filtro "byAmount" foi definido primeiro na interface do Adobe Campaign Standard e vinculado à tabela personalizada "Transaction".
-X GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServicesExt/profile/byAmount?amount_parameter=100 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Cache-Control: no-cache' \
-H 'X-Api-Key: <API_KEY>'