Vue d’ensemble
L’API RelatedQuery est une API permettant de gerer les requetes associees dans Fess. Pour un mot-cle de recherche saisi par l’utilisateur (term), vous pouvez enregistrer et gerer des suggestions de mots-cles de recherche associes (queries). Les requetes associees enregistrees sont affichees comme suggestions de recherche associees sur l’ecran de recherche.
Pour les details sur l’authentification, le format de reponse commun (champ version et codes status), la pagination et les reponses d’erreur, consultez Vue d’ensemble de l’API Admin.
URL de base
/api/admin/relatedquery
Liste des endpoints
| Methode | Chemin | Description |
|---|---|---|
| GET | /settings | Obtention de la liste des requetes associees |
| GET | /setting/{id} | Obtention d’une requete associee |
| POST | /setting | Creation d’une requete associee |
| PUT | /setting | Mise a jour d’une requete associee |
| DELETE | /setting/{id} | Suppression d’une requete associee |
Obtention de la liste des requetes associees
Requete
GET /api/admin/relatedquery/settings
Parametres
| Parametre | Type | Requis | Description |
|---|---|---|---|
size | Integer | Non | Nombre d’elements par page (par defaut : 25 ; modifiable via paging.page.size du fichier fess_config.properties) |
page | Integer | Non | Numero de page (commence a 1 ; par defaut : 1) |
Reponse
{
"response": {
"version": "15.7.0",
"status": 0,
"settings": [
{
"id": "query_id_1",
"term": "fess",
"queries": "fess tutorial\nfess installation\nfess configuration",
"versionNo": 1
}
],
"total": 5
}
}
Note
Chaque parametre contient versionNo (numero de version utilise pour le verrouillage optimiste). virtualHost et les champs d’audit (createdBy, createdTime, updatedBy, updatedTime) ne sont inclus que lorsqu’une valeur est definie. Un virtualHost vide n’est pas inclus dans la reponse.
Obtention d’une requete associee
Requete
GET /api/admin/relatedquery/setting/{id}
Reponse
{
"response": {
"version": "15.7.0",
"status": 0,
"setting": {
"id": "query_id_1",
"term": "fess",
"queries": "fess tutorial\nfess installation\nfess configuration",
"virtualHost": "site1.example.com",
"versionNo": 1
}
}
}
Creation d’une requete associee
Requete
POST /api/admin/relatedquery/setting
Content-Type: application/json
Corps de la requete
{
"term": "search",
"queries": "search tutorial\nsearch syntax\nadvanced search",
"virtualHost": ""
}
Description des champs
| Champ | Requis | Description |
|---|---|---|
term | Oui | Mot-cle de recherche (10 000 caracteres maximum) |
queries | Oui | Requetes associees. Chaine separee par des sauts de ligne, une par ligne (les lignes vides sont ignorees ; 10 000 caracteres maximum) |
virtualHost | Non | Hote virtuel (1 000 caracteres maximum) |
Note
crudMode etant defini automatiquement cote API, il n’est pas necessaire de l’inclure dans le corps de la requete.
Reponse
{
"response": {
"version": "15.7.0",
"status": 0,
"id": "new_query_id",
"created": true
}
}
Mise a jour d’une requete associee
Requete
PUT /api/admin/relatedquery/setting
Content-Type: application/json
Corps de la requete
{
"id": "existing_query_id",
"term": "search",
"queries": "search tutorial\nsearch syntax\nadvanced search\nsearch tips",
"virtualHost": "",
"versionNo": 1
}
Description des champs
| Champ | Requis | Description |
|---|---|---|
id | Oui | ID de la requete associee a mettre a jour (1 000 caracteres maximum) |
term | Oui | Mot-cle de recherche (10 000 caracteres maximum) |
queries | Oui | Requetes associees. Chaine separee par des sauts de ligne, une par ligne (les lignes vides sont ignorees ; 10 000 caracteres maximum) |
virtualHost | Non | Hote virtuel (1 000 caracteres maximum) |
versionNo | Oui | Numero de version utilise pour le verrouillage optimiste. Specifiez la valeur incluse dans la reponse lors de l’obtention du parametre |
Reponse
{
"response": {
"version": "15.7.0",
"status": 0,
"id": "existing_query_id",
"created": false
}
}
Suppression d’une requete associee
Requete
DELETE /api/admin/relatedquery/setting/{id}
Reponse
{
"response": {
"version": "15.7.0",
"status": 0
}
}
Reponse d’erreur
En cas d’echec de la requete, status est defini sur une valeur differente de 0 et message contient le detail de l’erreur. Par exemple, pour une erreur de validation telle qu’un champ obligatoire manquant, status vaut 1. Pour la liste des codes de statut, consultez Vue d’ensemble de l’API Admin.
{
"response": {
"version": "15.7.0",
"status": 1,
"message": "..."
}
}
Exemples d’utilisation
Requetes associees pour les produits
curl -X POST "http://localhost:8080/api/admin/relatedquery/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"term": "product",
"queries": "product features\nproduct pricing\nproduct comparison\nproduct reviews"
}'
Requetes associees pour l’aide
curl -X POST "http://localhost:8080/api/admin/relatedquery/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"term": "help",
"queries": "help center\nhelp documentation\nhelp contact support"
}'
Informations complementaires
Vue d’ensemble de l’API Admin - Vue d’ensemble de l’API Admin
RelatedContent API - API des contenus associes
Suggest API - API de gestion des suggestions
Présentation - Guide de gestion des requetes associees