Vue d’ensemble
L’API RelatedQuery est une API permettant de gérer les requêtes associées dans Fess. Pour un mot-clé de recherche saisi par l’utilisateur (term), vous pouvez enregistrer et gérer des suggestions de mots-clés de recherche associés (queries). Les requêtes associées enregistrées sont affichées comme suggestions de recherche associées sur l’écran de recherche.
Pour les détails sur l’authentification, le format de réponse commun (champ version et codes status), la pagination et les réponses d’erreur, consultez Vue d’ensemble de l’API Admin.
URL de base
/api/admin/relatedquery
Liste des endpoints
| Méthode | Chemin | Description |
|---|---|---|
| GET | /settings | Obtention de la liste des requêtes associées |
| GET | /setting/{id} | Obtention d’une requête associée |
| POST | /setting | Création d’une requête associée |
| PUT | /setting | Mise à jour d’une requête associée |
| DELETE | /setting/{id} | Suppression d’une requête associée |
Obtention de la liste des requêtes associées
Requête
GET /api/admin/relatedquery/settings
Paramètres
| Paramètre | Type | Requis | Description |
|---|---|---|---|
size | Integer | Non | Nombre d’éléments par page (par défaut : 25 ; modifiable via paging.page.size du fichier fess_config.properties) |
page | Integer | Non | Numéro de page (commence à 1 ; par défaut : 1) |
Réponse
{
"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 paramètre contient versionNo (numéro de version utilisé pour le verrouillage optimiste). virtualHost et les champs d’audit (createdBy, createdTime, updatedBy, updatedTime) ne sont inclus que lorsqu’une valeur est définie. Un virtualHost vide n’est pas inclus dans la réponse.
Obtention d’une requête associée
Requête
GET /api/admin/relatedquery/setting/{id}
Réponse
{
"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
}
}
}
Création d’une requête associée
Requête
POST /api/admin/relatedquery/setting
Content-Type: application/json
Corps de la requête
{
"term": "search",
"queries": "search tutorial\nsearch syntax\nadvanced search",
"virtualHost": ""
}
Description des champs
| Champ | Requis | Description |
|---|---|---|
term | Oui | Mot-clé de recherche (10 000 caractères maximum) |
queries | Oui | Requêtes associées. Chaîne séparée par des sauts de ligne, une par ligne (les lignes vides sont ignorées ; 10 000 caractères maximum) |
virtualHost | Non | Hôte virtuel (1 000 caractères maximum) |
Note
crudMode étant défini automatiquement côté API, il n’est pas nécessaire de l’inclure dans le corps de la requête.
Réponse
{
"response": {
"version": "15.7.0",
"status": 0,
"id": "new_query_id",
"created": true
}
}
Mise à jour d’une requête associée
Requête
PUT /api/admin/relatedquery/setting
Content-Type: application/json
Corps de la requête
{
"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 requête associée à mettre à jour (1 000 caractères maximum) |
term | Oui | Mot-clé de recherche (10 000 caractères maximum) |
queries | Oui | Requêtes associées. Chaîne séparée par des sauts de ligne, une par ligne (les lignes vides sont ignorées ; 10 000 caractères maximum) |
virtualHost | Non | Hôte virtuel (1 000 caractères maximum) |
versionNo | Oui | Numéro de version utilisé pour le verrouillage optimiste. Spécifiez la valeur incluse dans la réponse lors de l’obtention du paramètre |
Réponse
{
"response": {
"version": "15.7.0",
"status": 0,
"id": "existing_query_id",
"created": false
}
}
Suppression d’une requête associée
Requête
DELETE /api/admin/relatedquery/setting/{id}
Réponse
{
"response": {
"version": "15.7.0",
"status": 0
}
}
Réponse d’erreur
En cas d’échec de la requête, status est défini sur une valeur différente de 0 et message contient le détail 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
Requêtes associées 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"
}'
Requêtes associées 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 complémentaires
Vue d’ensemble de l’API Admin - Vue d’ensemble de l’API Admin
RelatedContent API - API des contenus associés
Suggest API - API de gestion des suggestions
Présentation - Guide de gestion des requêtes associées