L’endpoint /search
nell’API di Reactor consente di trovare le risorse che corrispondono ai criteri desiderati, espressi come query.
È possibile cercare i seguenti tipi di risorse API, utilizzando la stessa struttura di dati dei documenti basati sulle risorse restituiti nell’API:
audit_events
builds
callbacks
data_elements
environments
extension_packages
extensions
hosts
libraries
properties
rule_components
rules
L’ambito di tutte le query corrisponde all’azienda corrente e alle proprietà accessibili.
Avvertenze ed eccezioni applicabili alla funzionalità di ricerca:
Per ulteriori informazioni su come utilizzare questa funzionalità, consulta la guida alla ricerca.
L’endpoint utilizzato in questa guida fa parte dell’API di Reactor. Prima di continuare, consulta la guida introduttiva per informazioni importanti su come eseguire l’autenticazione nell’API.
Per eseguire una ricerca, devi eseguire una richiesta POST.
Formato API
POST /search
Richiesta
curl -X POST \
https://reactor.adobe.io/search \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1' \
-d '{
"data": {
"from": 0,
"size": 25,
"query": {
"attributes.name": {
"value": "Performance"
},
"attributes.revision_number": {
"range": {
"lte": "2",
"gt": "0"
}
}
},
"sort": [
{
"attributes.revision_number": "desc"
}
],
"resource_types": [
"data_elements",
"rule_components"
]
}
}'
Proprietà | Descrizione |
---|---|
from |
Numero di risultati oltre i quali veranno inclusi nella risposta. |
size |
Quantità massima di risultati da restituire. I risultati non possono superare i 100 elementi. |
query |
Oggetto che rappresenta la query di ricerca. Per ogni proprietà di questo oggetto, la chiave deve rappresentare un percorso di campo da considerare per la query; il valore deve essere un oggetto le cui sottoproprietà determinano per cosa viene eseguita la query. Per ogni percorso di campo, puoi utilizzare le seguenti sottoproprietà:
|
sort |
Matrice di oggetti che indica l’ordine in cui elencare i risultati. Ogni oggetto deve contenere una singola proprietà: la chiave rappresenta il percorso del campo in base al quale eseguire l’ordinamento; il valore rappresenta l’ordinamento (asc per crescente, desc per decrescente). |
resource_types |
Matrice di stringhe che indica i tipi di risorse specifici da cercare. |
Risposta
In caso di esito positivo, la risposta restituisce un elenco di risorse corrispondenti per la query. Per informazioni dettagliate sulle modalità in cui l’API determina le corrispondenze per valori specifici, consulta la sezione dell’appendice sulle convenzioni di corrispondenza.
{
"data": [
{
"id": "DE5d11b3ed301d4ce99b530a5121e392b2",
"type": "data_elements",
"attributes": {
"created_at": "2020-12-14T17:36:09.045Z",
"deleted_at": null,
"dirty": true,
"enabled": true,
"name": "Performance Indicator",
"published": false,
"published_at": null,
"revision_number": 1,
"updated_at": "2020-12-14T17:36:09.045Z",
"clean_text": false,
"default_value": null,
"delegate_descriptor_id": "kessel-test::dataElements::dom-attribute",
"force_lower_case": false,
"review_status": "unsubmitted",
"storage_duration": null,
"settings": "{\"elementProperty\":\"html\",\"elementSelector\":\".target-element\"}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/property"
},
"data": {
"id": "PR97d92a379a5f48758947cdf44f607a0d",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/origin"
},
"data": {
"id": "DE5d11b3ed301d4ce99b530a5121e392b2",
"type": "data_elements"
}
},
"extension": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/extension"
},
"data": {
"id": "EX0348d463358c4c89afe726245576f112",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"updated_with_extension": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2/updated_with_extension"
},
"data": {
"id": "EX1cc78b39339242da82a0e0752fa53375",
"type": "extensions"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR97d92a379a5f48758947cdf44f607a0d",
"origin": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2",
"self": "https://reactor.adobe.io/data_elements/DE5d11b3ed301d4ce99b530a5121e392b2",
"extension": "https://reactor.adobe.io/extensions/EX0348d463358c4c89afe726245576f112"
},
"meta": {
"latest_revision_number": 1
}
}
],
"meta": {
"total_hits": 1
}
}
La sezione seguente contiene informazioni aggiuntive sull’utilizzo dell’endpoint /search
.
I valori delle query di ricerca sono suddivisi nei diversi termini che devono essere rilevati nei documenti indicizzati. Tra ciascun termine, si presume una relazione AND
.
Quando utilizzi AND
come value_operator
, un valore di query My Rule Holiday Sale
viene interpretato come documento con un campo contenente My AND Rule AND Holiday AND Sale
.
Quando utilizzi OR
come value_operator
, un valore di query My Rule Holiday Sale
viene interpretato come documento con un campo contenente My OR Rule OR Holiday OR Sale
. Maggiore è il numero di termini corrispondenti rilevati, maggiore è il valore di match_score
. A causa della natura della corrispondenza parziale dei termini, quando nulla corrisponde esattamente al valore desiderato, è possibile ottenere un set di risultati per una corrispondenza molto basilare, ad esempio considerando solo alcuni dei caratteri che compongono i termini cercati.
Nella ricerca viene esaminata la rilevanza di un documento rispetto alla query fornita. Il modo in cui i dati del documento vengono analizzati e indicizzati influisce direttamente su questo aspetto.
La tabella seguente suddivide le convenzioni di corrispondenza per i tipi di campo più comuni:
Tipo di campo | Convenzioni di corrispondenza |
---|---|
Stringhe | Testo con analisi parziale dei termini, senza distinzione tra maiuscole e minuscole |
Valori enum | Corrispondenza esatta, distinzione tra maiuscole e minuscole |
Interi | Corrispondenza esatta |
Mobile | Corrispondenza esatta |
Marca temporale | Corrispondenza esatta (formato DataOra) |
Nomi visualizzati | Testo con analisi parziale dei termini, senza distinzione tra maiuscole e minuscole |
Nell’API sono disponibili convenzioni aggiuntive per campi specifici:
Campo | Convenzioni di corrispondenza |
---|---|
id |
Corrispondenza esatta, distinzione tra maiuscole e minuscole |
delegate_descriptor_id |
Corrispondenza esatta, con distinzione tra maiuscole e minuscole, con termini suddivisi da :: |
name |
Corrispondenza esatta, distinzione tra maiuscole e minuscole |
settings |
Testo con analisi parziale dei termini, senza distinzione tra maiuscole e minuscole |
type |
Corrispondenza esatta, distinzione tra maiuscole e minuscole |