필터링

필터 메타데이터 검색

필터는 각 리소스에 대해 사용할 수 있습니다. 리소스에 연결된 필터를 식별하려면 리소스 메타데이터에 대해 GET 요청을 수행해야 합니다. 이 요청은 지정된 리소스에 대해 모든 필터가 정의된 URL을 반환합니다. 메타데이터에 대한 자세한 내용은 이 섹션을 참조하십시오.

필터의 메타데이터를 식별하고 필터 사용 방법을 결정하려면 이전에 반환된 URL에 대해 GET 요청을 수행해야 합니다.


샘플 요청

아래의 샘플 페이로드에서는 "profile" 리소스에 대한 "byText" 필터 메타데이터를 검색하는 방법을 보여 줍니다. 먼저 "프로필" 리소스 메타다에서 GET 요청을 수행합니다.

-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>'

필터를 설명하는 URL을 반환합니다.

{
"filters": {
        "href": "https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/resourceType/<PKEY>/filters/"
    }
  }

URL에 대해 GET 요청을 수행합니다. 각 필터에 연결된 메타데이터와 함께 프로필 리소스에 대한 필터 목록을 반환합니다.

{
"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",
}

메타데이터 구조 필터링

각 필터에 대해 동일한 메타데이터 구조를 사용할 수 있습니다.

  • @formType@webPage 필드는 기술 필드입니다.
  • data 필드는 필터 사용 방법에 대한 샘플을 제공합니다.
  • metadata 노드는 필터 매개 변수를 설명합니다.
  • condition 노드는 필터의 작업을 설명합니다. 메타데이터 노드에 설명된 필터 매개 변수는 필터 조건을 만드는 데 사용됩니다. 각 필터 조건에 대해 enabledIf​이 true이면 expr​이 적용됩니다.

필터 메타데이터 구조 샘플:

"byText": {
        "PKey": "...",
        "category": "99_none",
        "condition": ...,
        "data": "/profileAndServices/profile/byText?text=$value",
        "formType": "none",
        "fragmentName": "",
        "label": "By name or email",
    }

필터 사용

필터링은 다음 요청으로 수행됩니다.

GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/<resourceName>/by<filterName>?<filterParam>=<filterValue>

단일 요청에 여러 필터를 결합할 수 있습니다.

GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServices/<resourceName>/<filter1name>/<filter2name>?<filter1param>=<filter1value>&<filter2param>=<filter2value>


샘플 요청

  • "이메일" 유형의 "서비스" 리소스를 검색하기 위한 샘플 GET 요청.

    -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>'
    

    요청에 대한 응답입니다.

    {
        "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",
                ...
            },
            ...
        ],
        ...
    }
    
  • "Doe"를 포함하는 "프로필" 리소스를 검색하기 위한 샘플 GET 요청
    이메일 또는 성 필드(byText 필터는 이메일 필드와 성 필드 모두를 검색합니다).

    -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>'
    

    요청에 대한 응답입니다.

    {
        "content": [
            {
                "PKey": "<PKEY>",
                "firstName": "John",
                "lastName":"Doe",
                "birthDate": "1980-10-24",
                ...
            }
            ...
        ],
        ...
    }
    
  • "email" 유형 및 "sport" 레이블이 있는 서비스 리소스를 검색하기 위한 샘플 GET 요청.

    -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>'
    

    요청에 대한 응답입니다.

    {
        "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",
                ...
            }
        ],
        ...
    }
    

사용자 정의 필터

사용자 정의 필터를 사용하려면 Adobe Campaign Standard 인터페이스에서 사용자 정의 필터를 만들고 사용자 정의해야 합니다. 그러면 사용자 정의 필터는 상자 외부의 필터와 동일한 비헤이비어를 갖게 됩니다.

GET https://mc.adobe.io/<ORGANIZATION>/campaign/profileAndServicesExt/<resourceName>/by<customFilterName>?<customFilterparam>=<customFilterValue>

자세한 내용은 Campaign Standard 설명서를 참조하십시오.


샘플 요청

거래 금액이 100$ 이상인 "프로파일" 리소스를 검색하기 위한 샘플 GET 요청. "byAmount" 필터는 Adobe Campaign Standard 인터페이스에서 처음 정의되었으며 "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>'

이 페이지에서는