Ordinamento e filtraggio delle risposte nell’API del servizio Flusso
- Argomenti:
- Flussi di dati
Creato per:
- Sviluppatore
Quando si eseguono richieste di elenchi (GET) nell'API Flow Service, è possibile utilizzare i parametri di query per ordinare e filtrare le risposte. Questa guida fornisce un riferimento su come utilizzare questi parametri per diversi casi d’uso.
Ordinamento
È possibile ordinare le risposte utilizzando un parametro di query orderby
. Le seguenti risorse possono essere ordinate nell’API:
Per utilizzare il parametro, è necessario impostarne il valore sulla proprietà specifica in base alla quale si desidera ordinare (ad esempio, ?orderby=name
). È possibile anteporre al valore un segno più (+
) per l'ordine crescente o un segno meno (-
) per l'ordine decrescente. Se non viene fornito alcun prefisso di ordinamento, l’elenco viene ordinato in ordine crescente per impostazione predefinita.
GET /flows?orderby=name
GET /flows?orderby=-name
È inoltre possibile combinare un parametro di ordinamento con un parametro di filtro utilizzando il simbolo "and" (&
).
GET /flows?property=state==enabled&orderby=createdAt
Filtro
È possibile filtrare le risposte utilizzando un parametro property
con un'espressione chiave-valore. Ad esempio, ?property=id==12345
restituisce solo le risorse la cui proprietà id
è esattamente uguale a 12345
.
Il filtro può essere applicato in modo generico a qualsiasi proprietà in un’entità, purché sia noto il percorso valido di tale proprietà.
[]
) alla matrice nel percorso. Per esempi, consulta la sezione sul filtro per le proprietà dell'array.Restituire tutte le connessioni di origine in cui il nome della tabella di origine è lead
:
GET /sourceConnections?property=params.tableName==lead
Restituisci tutti i flussi per un ID segmento specifico:
GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a
Unione di filtri
È possibile includere più filtri property
in una query purché siano separati da caratteri "e" (&
). Quando si combinano i filtri si assume una relazione AND, il che significa che un’entità deve soddisfare tutti i filtri per essere inclusa nella risposta.
Restituisci tutti i flussi abilitati per un ID segmento:
GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a&property=state==enabled
Filtraggio delle proprietà dell’array
È possibile filtrare in base alle proprietà degli elementi all'interno degli array aggiungendo []
al nome della proprietà dell'array.
Flussi di ritorno associati a connessioni di origine specifiche:
GET /flows?property=sourceConnectionIds[]==9874984,6980696
Flussi di ritorno con una trasformazione contenente un ID di valore selettore specifico:
GET /flows?property=transformations[].params.segmentSelectors.selectors[].value.id==5722a16f-5e1f-4732-91b6-3b03943f759a
Restituire le connessioni di origine con una colonna con un valore name
specifico:
GET /sourceConnections?property=params.columns[].name==firstName
Cercare l'ID esecuzione flusso per una destinazione filtrando l'ID segmento:
GET /runs?property=metrics.recordSummary.targetSummaries[].entitySummaries[].id==segment:068d6e2c-b546-4c73-bfb7-9a9d33375659
count
Qualsiasi query di filtro può essere aggiunta con il parametro di query count
con un valore di true
per restituire il conteggio dei risultati. La risposta API contiene una proprietà count
il cui valore rappresenta il numero totale di elementi filtrati. Gli elementi filtrati effettivi non vengono restituiti in questa chiamata.
Restituisce il numero di flussi abilitati nel sistema:
GET /flows?property=state==enabled&count=true
La risposta alla query precedente sarà simile alla seguente:
{
"count": 95
}
Proprietà filtrabili per risorsa
A seconda dell’entità Servizio flusso che stai recuperando, è possibile utilizzare proprietà diverse per il filtro. Le tabelle seguenti suddividono i campi a livello principale per ogni risorsa comunemente utilizzata per filtrare i casi d’uso.
connectionSpec
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
id
/flowSpecs?property=id==736873,9485095
name
/flowSpecs?property=name==TestConn
providerId
/flowSpecs?property=providerId==3897933
connection
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
id
/sourceConnections?property=id==736873,9485095
connectionSpec.id
/sourceConnections?property=connectionSpec.id==938903,849048
baseConnectionId
/sourceConnections?property=baseConnectionId==983908,4908095
targetConnection
id
/targetConnections?property=id==736873,9485095
connectionSpec.id
/targetConnections?property=connectionSpec.id==938903,849048
baseConnectionId
/targetConnections?property=baseConnectionId==983908,4908095
flow
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
id
/runs?property=id==736873,9485095
flowId
/runs?property=flowId==8749844
state
/runs?property=state==inProgress
Casi d’uso
Leggi questa sezione per alcuni esempi specifici su come utilizzare i filtri e l’ordinamento per restituire informazioni su determinati connettori o per assistenza nei problemi di debug. Se ci sono altri casi d'uso che vorresti fossero aggiunti da Adobe, usa le Opzioni di feedback dettagliate nella pagina per inviare una richiesta.
Filtro per restituire solo le connessioni a una determinata destinazione
Puoi utilizzare i filtri per restituire connessioni solo a determinate destinazioni. Innanzitutto, esegui una query sull'endpoint connectionSpecs
come segue:
GET /connectionSpecs
Quindi, cercare connectionSpec
desiderato esaminando il parametro name
. Ad esempio, cerca Amazon Ads, Pega, o SFTP e così via nel parametro name
. Il id
corrispondente è il connectionSpec
in base al quale è possibile eseguire una ricerca nella chiamata API successiva.
Ad esempio, filtra le destinazioni per restituire solo le connessioni esistenti alle connessioni Amazon S3:
GET /connections?property=connectionSpec.id==4890fc95-5a1f-4983-94bb-e060c08e3f81
Filtro per restituire flussi di dati solo alle destinazioni
Quando si esegue una query sull'endpoint /flows
, invece di restituire tutti i flussi di dati di origine e destinazione, è possibile utilizzare un filtro per restituire solo i flussi di dati alle destinazioni. A tale scopo, utilizzare isDestinationFlow
come parametro di query, come riportato di seguito:
GET /flows?property=inheritedAttributes.properties.isDestinationFlow==true
Filtro per restituire flussi di dati solo a una determinata origine o destinazione
Puoi filtrare i flussi di dati per restituirli solo a una determinata destinazione o da una determinata origine. Ad esempio, filtra le destinazioni per restituire solo le connessioni esistenti alle connessioni Amazon S3:
GET /flows?property=inheritedAttributes.targetConnections[].connectionSpec.id==4890fc95-5a1f-4983-94bb-e060c08e3f81
Filtro per ottenere tutte le esecuzioni di un flusso di dati per un periodo di tempo specifico
Puoi filtrare le esecuzioni di un flusso di dati per esaminare solo le esecuzioni in un determinato intervallo di tempo, come segue:
GET /runs?property=flowId==<flow-id>&property=metrics.durationSummary.startedAtUTC>1593134665781&property=metrics.durationSummary.startedAtUTC<1653134665781
Filtro per restituire solo flussi di dati non riusciti
A scopo di debug, puoi filtrare e visualizzare tutti i flussi di dati non riusciti eseguiti per un determinato flusso di dati di origine o di destinazione, come indicato di seguito:
GET /runs?property=flowId==<flow-id>&property=metrics.statusSummary.status==Failed
Passaggi successivi
Questa guida illustra come utilizzare i parametri di query orderby
e property
per ordinare e filtrare le risposte nell'API del servizio Flusso. Per guide dettagliate sull'utilizzo dell'API per i flussi di lavoro più comuni in Experience Platform, consulta i tutorial sull'API contenuti nella documentazione di sources e destinations.