Listenantworten filtern

Die meisten Dienste im Bereich Display- und Die Video 360 API bietet eine LIST-Methode zum Bulk-Abruf von Ressourcen. Diese LIST-Methoden unterstützen normalerweise das Filtern von Ergebnissen durch eine filter. Verwenden Sie diesen Parameter, um Ihre API-Nutzung nur um was Sie brauchen.

In diesem Leitfaden erfahren Sie, wie Sie den Parameter filter effektiv verwenden.

Filterstruktur

Der Parameterwert filter ist ein String, der aus einer oder mehreren Einschränkungen besteht die mit den Operatoren AND oder OR kombiniert und mithilfe von Klammern.

Einschränkungen haben das Format {field} {operator} {value}. Hier ist ein Beispiel:

entityStatus="ENTITY_STATUS_ACTIVE"

Der Filterstring darf nicht länger als 500 Zeichen sein. Wenn Ihr Filterstring 500 Zeichen überschreitet, führen Sie einen der folgenden Schritte aus:

  • Die Logik in mehrere Filterstrings aufteilen und die Ressourcen mithilfe von separate LIST-Anfragen.
  • Entfernen Sie einen Teil der Logik aus dem Filterstring und filtern Sie damit Ressourcen lokal abgerufen.

Setzen Sie Einschränkungswerte in Anführungszeichen, um sicherzustellen, dass die Logik richtig angewendet wird.

Codieren Sie Ihre Filterstrings als URL, wenn Sie LIST-Aufrufe direkt ohne mithilfe einer Clientbibliothek.

Weitere Informationen zur Formatierung finden Sie unter Logik zwischen Einschränkungen. Ihre Abfragen anpassen.

Filterbare Felder

Die filterbaren Felder jeder LIST-Methode sind in der filter der Methode aufgelistet Beschreibung des Parameters. In den meisten Fällen können Sie nach einer Teilmenge der Standardfelder. In seltenen Fällen können Sie zusätzliche Felder verwenden nur zum Filtern verwenden.

Jedes Feld in der Beschreibung des Parameters unterstützt mindestens eines der folgenden Elemente: vergleichbaren Operatoren:

Vergleichbare Operatoren
EQUALS (=) Der Wert des Ressourcenfelds ist mit dem angegebenen Wert identisch.

Beispiel: entityStatus="ENTITY_STATUS_ACTIVE"

LESS THAN OR EQUAL TO (<=) Der Wert des Ressourcenfelds ist kleiner oder gleich dem angegebenen Wert. Häufig verwendet wenn ein Datum oder ein Datum und eine Uhrzeit verglichen werden.

Beispiel: updateTime<="2023-04-01T12:00:00Z"

GREATER THAN OR EQUAL TO (>=) Der Wert des Ressourcenfelds ist größer oder gleich dem angegebenen Wert. Häufig verwendet wenn ein Datum oder ein Datum und eine Uhrzeit verglichen werden.

Beispiel: updateTime>="2023-03-01T12:00:00Z"

HAS (:) Der Ressourcenfeldwert enthält den angegebenen Wert. Wenn das Ressourcenfeld ein -String wird geprüft, ob der angegebene Wert eine vorhandene Teilzeichenfolge ist. Wenn die Ressourcenfeld ein Array ist, wird geprüft, ob das Array die angegebenen Wert.

Beispiel: lineItemIds:"1234"

Wenn für das Feld in der Beschreibung des Parameters keine Operatoren angegeben sind, kann nur den Operator EQUALS (=) verwenden. Einige Felder unterstützen mehrere Operatoren.

Für einige filterbare Felder, z. B. für Datum und Uhrzeit, ist der Parameter für ein bestimmtes Format. Das Format wird neben im Feld in der Beschreibung des Parameters filter.

Logik zwischen Einschränkungen

Sie können mehrere Einschränkungen kombinieren, um die Antwort Ihrer Website einzugrenzen oder zu erweitern. LIST-Anfrage.

Normalerweise lassen sich mehrere Einschränkungen mit AND und OR kombinieren logischen Operatoren. Jede LIST-Methode gibt an, welche Operatoren sie unterstützt. Bei einigen Methoden kann nur eine einzige Einschränkung im filter-Parameter verwendet werden.

Beachten Sie beim Erstellen von Filterstrings mit AND die folgenden Einschränkungen oder OR logischen Operatoren:

  • AND muss zwischen Einschränkungen oder Gruppen von Einschränkungen verwendet werden, die unterschiedliche Felder filtern oder dasselbe Feld unterschiedlich filtern. Hier sind Einige Beispiele: <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 muss zwischen einzelnen Einschränkungen verwendet werden, die nach denselben ein. Hier ein Beispiel: <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")
  • Sie können OR nicht verwenden, um zwei Gruppen von Einschränkungen zu kombinieren. Mehrere verwenden LIST-Anfragen stattdessen mit anderen Filterwerten. Verwenden Sie beispielsweise die Methode folgenden separaten LIST-Anfragen:

    • (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123")
    • (lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")

    Verwenden Sie nicht den Operator OR, um sie zu kombinieren:

    (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123") OR (lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")

  • Klammern können impliziert werden, wenn Sie sie nicht zum Gruppieren von Einschränkungen in einem Filterzeichenfolge. Beispielsweise der folgende Filterstring:

    updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT"

    wird interpretiert als:

    updateTime>="2023-03-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT")