Documentation technique Meilisearch


Cette page est destinée à des profils techniques type développeur.

Introduction


Le Portail de l'Alimentation Durable est un projet ouvert et coopératif. À cet égard, il est prévu de pouvoir donner un accès distant à des tiers. Pour se faire, il est demandé à toute personne intéressée de prendre contact avec nous afin de partager votre motivation et intention, en remplissant ce formulaire.

Cette page explique comment interroger les données mutualisées pour le projet Portail de l'Alimentation Durable via l'API REST de Meilisearch, l'outil open source utilisé par le projet pour la recherche. Une clé d'API est nécessaire et peut être partagée sur demande uniquement.

Pré-requis


- l'url su serveur : https://meilisearch.data-players.com
- maitrise de requettes HTTP

Endpoints Utilisés


- GET https://meilisearch.data-players.com/indexes/documents/documents : Obtenir tous les ressources.
- POST https://meilisearch.data-players.com/indexes/documents/search : Effectuer une recherche textuelle et/ou par facette.

Exemples de Requêtes


1. Obtenir Tous les Documents


Pour obtenir tous les documents de l'index documents.

Requête cURL



curl -X GET 'https://meilisearch.data-players.com/indexes/documents/documents'     -H 'Authorization: Bearer [clé_api]'


Explication


Cette requête récupère tous les documents disponibles dans l'index documents. Elle n'applique aucun filtre ou terme de recherche, retournant ainsi l'ensemble des données.

2. Recherche Textuelle (q)


Pour effectuer une recherche textuelle dans l'index documents.

Requête cURL



curl -X POST 'https://meilisearch.data-players.com/indexes/documents/search'     -H 'Content-Type: application/json'     -H 'Authorization: Bearer [clé_api]'     --data '{
        "q": "votre requête"
    }'



Explication


Cette requête permet de rechercher des documents contenant le terme spécifié dans "q". Le paramètre "limit" définit le nombre maximum de résultats retournés.


3. Recherche Complète avec q et Facettes


Pour effectuer une recherche textuelle avec des filtres par facettes.

Requête cURL



curl -X POST 'https://meilisearch.data-players.com/indexes/documents/search'     -H 'Content-Type: application/json'     -H 'Authorization: Bearer [clé_api]'     --data '{
        "q": "amap",
        "facets": ["hasDepartment", "hasKeyword", "hasTopic"],
        "attributesToHighlight": ["*"],
        "attributesToCrop": ["description:130", "hasKeyword:4"],
        "filter": [
            ["hasDepartment=\"Nord\""],
            ["hasKeyword=\"Maintien et/ou création direct(e) d’emplois\""],
            ["hasTopic=\"Circuits alimentaires courts et de proximité\""]
        ]
    }'



Explication


Cette requête effectue une recherche textuelle pour le terme "amapj" et applique des filtres basés sur les facettes spécifiées. Les documents sont mis en surbrillance et les descriptions sont coupées à une longueur spécifique.

Documentation Officielle


Pour plus de détails et d'exemples, consultez la documentation officielle de Meilisearch.

Documentation architecture

image Portail_ADarchitecture.drawio.png (0.2MB)