展示广告网络中的大多数服务,Video 360 API 提供 LIST
方法,用于批量检索
资源。这些 LIST
方法通常支持通过
filter
查询参数。使用此参数来优化 API 的使用
来检索所需内容
本指南介绍了如何有效使用 filter
参数。
过滤器结构
filter
参数值是一个字符串,包含一个或多个限制
可与 AND
或 OR
运算符结合使用,并使用
括号。
限制的形式为 {field} {operator} {value}
。示例如下:
entityStatus="ENTITY_STATUS_ACTIVE"
过滤条件字符串长度不得超过 500 个字符。如果您的过滤条件字符串 超过 500 个字符,请执行以下操作之一:
- 将逻辑拆分为多个过滤器字符串,并使用
单独的
LIST
请求。 - 删除过滤器字符串中的部分逻辑,并使用该逻辑来过滤 检索资源
将限制值用英文引号引起来,以确保正确应用逻辑。
如果您要直接进行 LIST
调用而不对过滤器字符串进行网址编码
使用客户端库
如需详细了解格式设置,请参阅限制之间的逻辑。 您的查询。
可过滤的字段
每个 LIST
方法的可过滤字段都会列在相应方法的 filter
中
参数说明。在大多数情况下,您可以按资源的子集过滤
标准字段。在极少数情况下,您可以使用一些其他字段
仅用于过滤。
参数说明中的每个字段至少支持下列其中一项 可比较的运算符:
类似运营商 | ||
---|---|---|
EQUALS (=)
|
资源字段值等于指定值。
示例: |
|
LESS THAN OR EQUAL TO (<=)
|
资源字段值小于或等于指定值。经常使用
比较日期或日期时间时的值。
示例: |
|
GREATER THAN OR EQUAL TO (>=)
|
资源字段值大于或等于指定值。经常使用
比较日期或日期时间时的值。
示例: |
|
HAS (:)
|
资源字段值包含指定值。如果资源字段是
字符串,它将检查给定值是否为现有的子字符串。如果
resource 字段是一个数组,它会检查该数组是否包含指定的
值。
示例: |
如果没有为参数说明中的字段指定运算符,
只能使用 EQUALS (=)
运算符。某些字段支持多个运算符。
一些可过滤字段(如日期和时间字段)要求输入
以便遵循特定格式。格式会在
filter
参数说明中的字段。
限制之间的逻辑
你可以结合使用多项限制,以缩小或扩大回答范围,
LIST
请求。
您通常可以将多项限制与 AND
和 OR
结合使用。
逻辑运算符。每个 LIST
方法都会指定其支持的运算符。
某些方法仅支持在 filter
参数中使用单个限制。
使用 AND
构建过滤条件字符串时,请考虑以下限制
或 OR
逻辑运算符:
AND
必须在限制或限制组之间使用, 或者以不同方式过滤同一字段。以下是 一些示例: <ph type="x-smartling-placeholder">- </ph>
updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE"
updateTime>="2023-03-01T12:00:00Z" AND updateTime<="2023-04-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")
OR
必须在按相同过滤条件的各个限制之间使用 字段。示例如下: <ph type="x-smartling-placeholder">- </ph>
(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" OR lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT")
您不能使用
OR
来组合两组限制。使用多个 请改为使用具有不同过滤条件值的LIST
请求。例如,使用 以下单独的LIST
请求:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123")
(lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
请勿使用
OR
运算符合并它们:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123") OR (lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
如果您不使用圆括号将 过滤条件字符串。例如,以下过滤条件字符串:
updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT"
会被解释为:
updateTime>="2023-03-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT")