Фильтр

Параметр строки запроса filters ограничивает данные, возвращаемые в отчете AdSense Management API. При использовании параметра filters вы указываете параметр, по которому хотите выполнить фильтрацию, а затем выражение фильтра.

Фильтры в запросах ограничивают количество строк, включаемых в результат. Каждая строка в результате проверяется на соответствие фильтру. Если строка соответствует фильтру, она сохраняется, а если нет – удаляется.

  • Кодирование URL. Клиентские библиотеки автоматически кодируют операторы фильтров. Однако если вы отправляете запросы непосредственно в протокол, то должны явно кодировать операторы фильтров, как показано в таблице ниже.
  • Приоритет фильтрации. Фильтрация выполняется до агрегирования параметров, поэтому возвращаемые показатели представляют собой общие значения только для релевантных параметров.

Синтаксис фильтра

Для одиночного фильтра используется форма:

name operator expression

В этом синтаксисе:

  • name – название параметра, по которому выполняется фильтрация. Например, AD_CLIENT_ID отфильтрует данные по идентификатору клиента.
  • operator – определяет тип соответствия фильтру.
  • expression – указывает значения, включенные в результаты.

В качестве фильтров можно использовать все параметры, которые применяются к показателям в отчете, за исключением параметров, связанных с датами (DATE, WEEK и MONTH). Чтобы отфильтровать данные по дате, укажите диапазон дат для отчета.

Операторы фильтра

Есть два оператора фильтра. Чтобы операторы можно было включить в строки запроса URL, они должны быть закодированы.

Оператор Описание Форма в кодировке URL Пример
== Точное соответствие %3D%3D Агрегированные показатели, где название страны – Канада:
filters=COUNTRY_NAME%3D%3DCanada
=@ Содержит подстроку %3D@ Агрегировать показатели, в которых название страны содержит United (например, United States и United Kingdom):
filters=COUNTRY_NAME%3D@United

Выражения фильтра

Существует несколько важных правил относительно выражений фильтров:

  • Зарезервированные символы URL. Такие символы, как &, должны быть закодированы в URL обычным способом. Клиентские библиотеки выполняют это автоматически, поэтому вам нужно беспокоиться о кодировании только в том случае, если вы напрямую вызываете протокол.
  • Зарезервированные символы. Запятая и обратная косая черта должны быть экранированы обратной косой чертой, если они появляются в выражении.
    • обратная косая черта \\
    • запятая \,

Примечание. Чтобы избежать двойного экранирования, экранируйте обратные косые черты перед запятыми.

Объединение фильтров

Фильтры можно комбинировать с помощью логических операторов OR и AND.

Логический оператор ИЛИ

Логика OR определяется с помощью запятой (,) в выражении фильтра.

Пример (каждый URL должен быть закодирован):

Код страны (US или UK):
COUNTRY_CODE==US,COUNTRY_CODE==UK

Логический оператор И

Логика AND реализуется путем указания нескольких параметров фильтра, что в клиентских библиотеках означает предоставление массива фильтров.

Пример

Код страны – US, а код продукта – AFC:
filters=COUNTRY_CODE%3D%3DUS&filters=PRODUCT_CODE%3D%3DAFC

Объединение операторов И и ИЛИ

В одном выражении можно использовать логические операторы И и ИЛИ.

Примечание. Каждый фильтр оценивается отдельно, а затем все они объединяются в логическое выражение И.

Пример

Код страны: (US ИЛИ UK) И код продукта: AFC:
filters=COUNTRY_CODE%3D%3DUS,COUNTRY_CODE%3D%3DUK&filters=PRODUCT_CODE%3D%3DAFC

Дальнейшие действия