Vue d’ensemble
L’API BoostDoc permet de gerer les parametres de boost de documents dans Fess. Vous pouvez ajuster le classement de recherche des documents correspondant a des conditions specifiques.
URL de base
/api/admin/boostdoc
Liste des endpoints
| Methode | Chemin | Description |
|---|---|---|
| GET/PUT | /settings | Obtention de la liste des boosts de documents |
| GET | /setting/{id} | Obtention d’un boost de document |
| POST | /setting | Creation d’un boost de document |
| PUT | /setting | Mise a jour d’un boost de document |
| DELETE | /setting/{id} | Suppression d’un boost de document |
Obtention de la liste des boosts de documents
Requete
GET /api/admin/boostdoc/settings
PUT /api/admin/boostdoc/settings
Parametres
| Parametre | Type | Requis | Description |
|---|---|---|---|
size | Integer | Non | Nombre d’elements par page (par defaut : 20) |
page | Integer | Non | Numero de page (commence a 0) |
Reponse
{
"response": {
"status": 0,
"settings": [
{
"id": "boostdoc_id_1",
"urlExpr": ".*docs\\.example\\.com.*",
"boostExpr": "3.0",
"sortOrder": 0
}
],
"total": 5
}
}
Obtention d’un boost de document
Requete
GET /api/admin/boostdoc/setting/{id}
Reponse
{
"response": {
"status": 0,
"setting": {
"id": "boostdoc_id_1",
"urlExpr": ".*docs\\.example\\.com.*",
"boostExpr": "3.0",
"sortOrder": 0
}
}
}
Creation d’un boost de document
Requete
POST /api/admin/boostdoc/setting
Content-Type: application/json
Corps de la requete
{
"urlExpr": ".*important\\.example\\.com.*",
"boostExpr": "5.0",
"sortOrder": 0
}
Description des champs
| Champ | Requis | Description |
|---|---|---|
urlExpr | Oui | Pattern regex de l’URL |
boostExpr | Oui | Expression de boost (valeur ou formule) |
sortOrder | Non | Ordre d’application |
Reponse
{
"response": {
"status": 0,
"id": "new_boostdoc_id",
"created": true
}
}
Mise a jour d’un boost de document
Requete
PUT /api/admin/boostdoc/setting
Content-Type: application/json
Corps de la requete
{
"id": "existing_boostdoc_id",
"urlExpr": ".*important\\.example\\.com.*",
"boostExpr": "10.0",
"sortOrder": 0,
"versionNo": 1
}
Reponse
{
"response": {
"status": 0,
"id": "existing_boostdoc_id",
"created": false
}
}
Suppression d’un boost de document
Requete
DELETE /api/admin/boostdoc/setting/{id}
Reponse
{
"response": {
"status": 0,
"id": "deleted_boostdoc_id",
"created": false
}
}
Exemples d’expressions de boost
| Expression de boost | Description |
|---|---|
2.0 | Boost avec une valeur fixe |
doc['boost'].value * 2 | Double la valeur de boost du document |
Math.log(doc['click_count'].value + 1) | Boost logarithmique base sur le nombre de clics |
doc['last_modified'].value > now - 7d ? 3.0 : 1.0 | Triple si mis a jour dans la derniere semaine |
Exemples d’utilisation
Boost pour le site de documentation
curl -X POST "http://localhost:8080/api/admin/boostdoc/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"urlExpr": ".*docs\\.example\\.com.*",
"boostExpr": "5.0",
"sortOrder": 0
}'
Boost pour le nouveau contenu
curl -X POST "http://localhost:8080/api/admin/boostdoc/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"urlExpr": ".*",
"boostExpr": "doc[\"last_modified\"].value > now - 30d ? 2.0 : 1.0",
"sortOrder": 10
}'
Informations complementaires
Vue d’ensemble de l’API Admin - Vue d’ensemble de l’API Admin
API ElevateWord - API ElevateWord
Présentation - Guide de gestion des boosts de documents