Le point dʼentrée /search
de lʼAPI Reactor permet de trouver des ressources correspondant aux critères souhaités, exprimés sous forme de requête.
Les types de ressources API suivants peuvent faire lʼobjet de recherches, au moyen de la même structure de données que les documents basés sur les ressources renvoyés par lʼAPI :
audit_events
builds
callbacks
data_elements
environments
extension_packages
extensions
hosts
libraries
properties
rule_components
rules
Toutes les requêtes sont limitées à votre entreprise actuelle et aux propriétés accessibles.
La fonctionnalité de recherche comporte les avertissements et exceptions suivants :
Pour plus dʼinformations détaillées sur lʼutilisation de cette fonctionnalité, consultez le guide de recherche.
Le point d’entrée utilisé dans ce guide fait partie de lʼAPI Reactor. Avant de poursuivre, consultez le guide de prise en main pour obtenir des informations importantes sur la procédure à suivre pour s’authentifier auprès de l’API.
Vous pouvez effectuer une recherche en faisant une requête POST.
Format d’API
POST /search
Requête
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"
]
}
}'
Propriété | Description |
---|---|
from |
Nombre de résultats à décaler de la réponse. |
size |
Nombre maximal de résultats à renvoyer. Les résultats sont limités à 100 éléments. |
query |
Objet représentant la requête. Pour chaque propriété au sein de cet objet, la clé doit représenter un chemin du champ sur lequel portera la requête, et la valeur doit être un objet dont les sous-propriétés déterminent le contenu de la requête. Pour chaque chemin du champ, vous pouvez utiliser les sous-propriétés suivantes :
|
sort |
Tableau dʼobjets indiquant lʼordre dans lequel trier les résultats. Chaque objet doit contenir une seule propriété : la clé représente le chemin du champ à trier et la valeur lʼordre de tri (asc pour lʼordre croissant et desc pour lʼordre décroissant). |
resource_types |
Tableau de chaînes indiquant les types de ressources spécifiques à rechercher. |
Réponse
Une réponse réussie renvoie une liste de ressources correspondant à la requête. Pour plus dʼinformations sur la manière dont lʼAPI détermine les correspondances pour des valeurs spécifiques, reportez-vous à la section de lʼannexe sur les conventions de correspondance.
{
"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 section suivante contient des informations supplémentaires sur lʼutilisation du point dʼentrée /search
.
Les valeurs de requête sont séparées en termes afin dʼêtre comparées aux documents indexés. Entre chaque terme, une relation AND
est supposée.
Lorsque vous utilisez AND
comme value_operator
, une valeur de requête My Rule Holiday Sale
est interprétée comme des documents dont le champ contient My AND Rule AND Holiday AND Sale
.
Lorsque vous utilisez OR
comme value_operator
, une valeur de requête My Rule Holiday Sale
est interprétée comme des documents dont le champ contient My OR Rule OR Holiday OR Sale
. Plus le nombre de termes correspondants est élevé, plus le match_score
est élevé. En raison de la nature de la correspondance partielle des termes, lorsquʼaucune valeur ne correspond exactement à celle souhaitée, vous pouvez obtenir un jeu de résultats pour lequel la valeur ne correspond quʼà un niveau très élémentaire, comme quelques caractères de texte.
La recherche consiste à déterminer dans quelle mesure un document est pertinent par rapport à une requête fournie. La manière dont les données des documents sont analysées et indexées a un impact direct sur ce processus.
Le tableau suivant détaille les conventions de correspondance pour les types de champs les plus courants :
Type de champ | Conventions de correspondance |
---|---|
Chaînes | Texte avec une analyse partielle des termes, non sensible à la casse |
Valeurs Enum | Correspondance exacte, sensible à la casse |
Nombres entiers | Correspondance exacte |
Nombres à virgule flottante | Correspondance exacte |
Horodatages | Correspondance exacte (format date et heure) |
Noms d’affichage | Texte avec une analyse partielle des termes, non sensible à la casse |
Il existe aussi dʼautres conventions propres à des champs spécifiques qui apparaissent dans lʼAPI :
Champ | Conventions de correspondance |
---|---|
id |
Correspondance exacte, sensible à la casse |
delegate_descriptor_id |
Correspondance exacte, sensible à la casse, avec les termes séparés sur :: |
name |
Correspondance exacte, sensible à la casse |
settings |
Texte avec une analyse partielle des termes, non sensible à la casse |
type |
Correspondance exacte, sensible à la casse |