Sortieren und Filtern von Antworten in der Flow Service-API

Bei der Ausführung von Auflistungsanforderungen (GET) in der Flussdienst-API können Sie Abfrageparameter zum Sortieren und Filtern von Antworten verwenden. Dieses Handbuch enthält eine Referenz zur Verwendung dieser Parameter für verschiedene Anwendungsfälle.

Sortieren

Sie können Antworten mithilfe eines orderby -Abfrageparameters sortieren. Die folgenden Ressourcen können in der API sortiert werden:

Um den Parameter zu verwenden, müssen Sie seinen Wert auf die spezifische Eigenschaft festlegen, nach der Sie sortieren möchten (z. B. ?orderby=name). Sie können dem Wert ein Pluszeichen (+) für aufsteigende Reihenfolge oder ein Minuszeichen (-) für absteigende Reihenfolge voranstellen. Wenn kein Bestellpräfix angegeben wird, wird die Liste standardmäßig in aufsteigender Reihenfolge sortiert.

GET /flows?orderby=name
GET /flows?orderby=-name

Sie können einen Sortierparameter auch mit einem Filterparameter kombinieren, indem Sie ein "und"-Symbol (&) verwenden.

GET /flows?property=state==enabled&orderby=createdAt

Filter

Sie können Antworten filtern, indem Sie einen property -Parameter mit einem Schlüssel-Wert-Ausdruck verwenden. Beispielsweise gibt ?property=id==12345 nur Ressourcen zurück, deren id-Eigenschaft genau 12345 entspricht.

Die Filterung kann im Allgemeinen auf jede Eigenschaft in einer Entität angewendet werden, solange der gültige Pfad zu dieser Eigenschaft bekannt ist.

NOTE
Wenn eine Eigenschaft in einem Array-Element verschachtelt ist, müssen Sie eckige Klammern ([]) an das Array im Pfad anhängen. Beispiele finden Sie im Abschnitt zum Filtern von nach Array-Eigenschaften .

Gibt alle Quellverbindungen zurück, bei denen der Name der Quelltabelle lead: ist

GET /sourceConnections?property=params.tableName==lead

Alle Flüsse für eine bestimmte Segment-ID zurückgeben:

GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a

Filter kombinieren

Mehrere property -Filter können in eine Abfrage einbezogen werden, vorausgesetzt, sie werden durch die Zeichen "und"(&) getrennt. Beim Kombinieren von Filtern wird von einer UND-Beziehung ausgegangen. Das bedeutet, dass eine Entität alle Filter erfüllen muss, damit sie in die Antwort aufgenommen wird.

Alle aktivierten Flüsse für eine Segment-ID zurückgeben:

GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a&property=state==enabled

Filtern nach Array-Eigenschaften arrays

Sie können anhand der Eigenschaften von Elementen in Arrays filtern, indem Sie [] an den Namen der Array-Eigenschaft anhängen.

Rückkehrflüsse, die bestimmten Quellverbindungen zugeordnet sind:

GET /flows?property=sourceConnectionIds[]==9874984,6980696

Rückkehrflüsse mit einer Transformation, die eine bestimmte Selektorwert-ID enthält:

GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a

Quellverbindungen zurückgeben, die eine Spalte mit einem bestimmten name -Wert aufweisen:

GET /sourceConnections?property=params.columns[].name==firstName

Suchen Sie nach der Flusslaufs-ID für ein Ziel, indem Sie nach Segment-ID filtern:

GET /runs?property=metrics.recordSummary.targetSummaries[].entitySummaries[].id==segment:068d6e2c-b546-4c73-bfb7-9a9d33375659

count

Jede Filterabfrage kann mit dem Abfrageparameter count mit dem Wert true angehängt werden, um die Anzahl der Ergebnisse zurückzugeben. Die API-Antwort enthält eine count -Eigenschaft, deren Wert die Anzahl der insgesamt gefilterten Elemente darstellt. Die tatsächlichen gefilterten Elemente werden in diesem Aufruf nicht zurückgegeben.

Gibt die Anzahl der aktivierten Flüsse im System zurück:

GET /flows?property=state==enabled&count=true

Die Antwort auf die obige Abfrage würde wie folgt aussehen:

{
  "count": 95
}

Gefilterte Eigenschaften nach Ressource

Je nachdem, welche Flow Service-Entität Sie abrufen, können für die Filterung verschiedene Eigenschaften verwendet werden. Die folgenden Tabellen enthalten die Felder der Stammebene für jede Ressource, die häufig bei der Filterung von Anwendungsfällen verwendet wird.

connectionSpec

Eigenschaft
Beispiel
id
/connectionSpecs?property=id==736873,9485095
name
/connectionSpecs?property=name==TestConn
providerId
/connectionSpecs?property=providerId==3897933
attributes.{ATTRIBUTE_NAME}
/connectionSpecs?property=attributes.sampleAttribute="abc"

flowSpec

Eigenschaft
Beispiel
id
/flowSpecs?property=id==736873,9485095
name
/flowSpecs?property=name==TestConn
providerId
/flowSpecs?property=providerId==3897933

connection

Eigenschaft
Beispiel
id
/connections?property=id==736873,9485095
name
/connections?property=name==TestConn
description
/connections?property=description==Test%20description
connectionSpec.id
/connections?property=connectionSpec.id==938903,849048
state
/connections?property=state==enabled

sourceConnection

Eigenschaft
Beispiel
id
/sourceConnections?property=id==736873,9485095
connectionSpec.id
/sourceConnections?property=connectionSpec.id==938903,849048
baseConnectionId
/sourceConnections?property=baseConnectionId==983908,4908095

targetConnection

Eigenschaft
Beispiel
id
/targetConnections?property=id==736873,9485095
connectionSpec.id
/targetConnections?property=connectionSpec.id==938903,849048
baseConnectionId
/targetConnections?property=baseConnectionId==983908,4908095

flow

Eigenschaft
Beispiel
id
/flows?property=id==736873,9485095
name
/flows?property=name==TestFlow
description
/flows?property=description==Test%20description
flowSpec.id
/flows?property=flowSpec.id==938903,849048
state
/flows?property=state==enabled
sourceConnectionIds
/flows?property=sourceConnectionIds[]==9874984,6980696
targetConnectionIds
/flows?property=targetConnectionIds[]==598590,690666

run

Eigenschaft
Beispiel
id
/runs?property=id==736873,9485095
flowId
/runs?property=flowId==8749844
state
/runs?property=state==inProgress

Anwendungsfälle use-cases

In diesem Abschnitt finden Sie einige spezifische Beispiele dafür, wie Sie mit Filtern und Sortieren Informationen zu bestimmten Connectoren zurückgeben oder Probleme beheben können. Wenn Sie weitere Anwendungsfälle hinzufügen möchten, verwenden Sie die Optionen für detailliertes Feedback auf der Seite, um eine Anfrage zu senden.

Filtern, um nur Verbindungen zu einem bestimmten Ziel zurückzugeben

Sie können Filter verwenden, um nur Verbindungen zu bestimmten Zielen zurückzugeben. Abfragen des Endpunkts connectionSpecs wie unten gezeigt:

GET /connectionSpecs

Suchen Sie dann nach Ihrem gewünschten connectionSpec , indem Sie den Parameter name überprüfen. Suchen Sie beispielsweise im Parameter name nach Amazon Ads, Pega oder SFTP usw. Die entsprechende id ist die connectionSpec, nach der Sie im nächsten API-Aufruf suchen können.

Filtern Sie beispielsweise Ihre Ziele so, dass nur vorhandene Verbindungen zu Amazon S3-Verbindungen zurückgegeben werden:

GET /connections?property=connectionSpec.id==4890fc95-5a1f-4983-94bb-e060c08e3f81

Filtern, um nur Datenflüsse an Ziele zurückzugeben

Bei der Abfrage des /flows -Endpunkts können Sie anstelle der Rückgabe aller Datenflüsse für Quellen und Ziele einen Filter verwenden, um nur Datenflüsse an Ziele zurückzugeben. Verwenden Sie dazu isDestinationFlow als Abfrageparameter wie folgt:

GET /flows?property=inheritedAttributes.properties.isDestinationFlow==true

Filtern, um nur Datenflüsse an eine bestimmte Quelle oder ein bestimmtes Ziel zurückzugeben

Sie können Datenflüsse filtern, um Datenflüsse nur an ein bestimmtes Ziel oder aus einer bestimmten Quelle zurückzugeben. Filtern Sie beispielsweise Ihre Ziele so, dass nur vorhandene Verbindungen zu Amazon S3-Verbindungen zurückgegeben werden:

GET /flows?property=inheritedAttributes.targetConnections[].connectionSpec.id==4890fc95-5a1f-4983-94bb-e060c08e3f81

Filtern, um alle Ausführungen eines Datenflusses für einen bestimmten Zeitraum abzurufen

Sie können Datenfluss-Ausführungen eines Datenflusses filtern, um nur Ausführungen in einem bestimmten Zeitintervall zu betrachten, wie unten dargestellt:

GET /runs?property=flowId==<flow-id>&property=metrics.durationSummary.startedAtUTC>1593134665781&property=metrics.durationSummary.startedAtUTC<1653134665781

Filtern, um nur fehlgeschlagene Datenflüsse zurückzugeben

Zu Debugging-Zwecken können Sie alle fehlgeschlagenen Datenfluss-Ausführungen für einen bestimmten Quell- oder Ziel-Datenfluss filtern und anzeigen, wie unten dargestellt:

GET /runs?property=flowId==<flow-id>&property=metrics.statusSummary.status==Failed

Nächste Schritte

In diesem Handbuch wurde die Verwendung der Abfrageparameter orderby und property zum Sortieren und Filtern von Antworten in der Flow Service-API beschrieben. Eine schrittweise Anleitung zur Verwendung der API für allgemeine Workflows in Platform finden Sie in den API-Tutorials in der Dokumentation zu Quellen und Zielen .

recommendation-more-help
d4f38c9a-ed8e-4b74-98e7-57b4df1b999f