API

Moteur de recherche missions

GET https://api.benevolt.fr/v1/search/mission

Moteur de recherche missions

GET https://api.benevolt.fr/v1/search/mission

Parameters

L'accès à l'API est sécurisée par une clé API qui permet de retourner les missions en fonction de la plateforme associée. L'authentification se faut avec le paramètre X-API-KEY en header ou avec le paramètre api_key en query.

Query

NameValueDescription
activity_typeslug d'un ou plusieurs types d'activités (séparés par une virgule)Pour filtrer par type d'activités
activity_type_strictbooleanPermet de ne pas retourner les types d'activités similaires (Benevolt élargit par défaut les types d'activités avec des activités similaires)
domainslug d'un ou plusieurs domaines de structure (séparés par une virgule)Pour filtrer par domaine d'une structure
target_audienceslug d'un ou plusieurs publics cibles de la mission (séparés par une virgule)(pas encore disponible) Pour filtrer par public cible d'une structure
remotewith, without, onlywithout permet de retirer les missions à distance et only n'affiche que celles-ci

Par défaut : with affiche les missions à distance présentes dans le périmètre
distancenombreDistance autour du point GPS

Par défaut : 25000 = 25km, sauf en île de france où on passe à 10000 = 10km
coordinateslat,lngCoordonnées GPS autour desquelles filtrer les missions.

Si non défini, l'ensemble des missions sont retournées en fonction de l'adresse ip du client
city_codecode Insee de la villeRetourne exclusivement les missions d'une ville à partir de son code Insee.

Remplace la recherche par coordinates et distance
typeregular, punctualMission régulière, Mission ponctuelle

Par défaut : les deux types de missions sont retournés
organizationid d'une ou plusieurs associations (séparés par une virgule)id Benevolt d'une association
local_organizationid interne d'une ou plusieurs associations (séparés par une virgule)id interne de l'association (si api_key liée à une nomenclature)
templateid d'un ou plusieurs templates de mission (séparés par une virgule)id Benevolt d'un template de mission
dateyyyy-MM-dd(disponible que si type=ponctual)

Ne retourne que les missions ponctuelles qui se déroulent à la date donnée
date_afteryyyy-MM-dd(disponible que si type=ponctual)

Ne retourne que les missions ponctuelles qui se déroulent à la date donnée ou après
date_beforeyyyy-MM-dd(disponible que si type=ponctual)

Ne retourne que les missions ponctuelles qui se déroulent à la date donnée ou avant
cursorretourné par le premier appel APIPour afficher la suite des résulats (remplace la pagination)
per_pagenombreNombre de missions à retourner

Par défaut : 12
api_keyapi_keyClé d'authentification (donnée par Benevolt)
Les missions sont triées par distance (si paramètre type non défini ou type=regular) à partir des coordonnés GPS passés en paramètre ou récupéré à partir l'IP de l'utilisateur. Si le paramètre type=ponctual, les missions sont triées par date de début de mission.Le référentiel des types d'activités (+ similarité des types d'activités) et domaines des associations est disponible ici

Response

{
  "data":[
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "type": "'regular' ou 'punctual'",
      "title": "Titre de la mission",
      "description": "Description de la mission",
      "infos": "Informations pratiques de la mission",
      "duration": "Durée de la mission", // si mission de type 'regular'
      "frequency": "Fréquence de la mission", // si mission de type 'regular'
      "activity_type": {
        "slug": "Slug du type d'activité",
        "name": "Nom du type d'activité"
      },
      "publisher": null,
      "organization": {
        "id": "00000000-0000-0000-0000-000000000000",
        "name": "Nom de la structure",
        "avatar_url": "https://storage.benevolt.fr/00000000-0000-0000-0000-000000000000/c/avatar.jpg",
        "domain": {
          "slug": "Slug du domaine de l'association",
          "name": "Nom du domaine de l'association"
        },
        "url": "https://benevolat.monasso.org/association/mon-asso"
      },
      "start_date": "2023-02-13T14:00:00+01:00", // optionnel si mission de type 'regular'
      "end_date": "2023-02-13T16:00:00+01:00", // `null` si mission de type 'regular'
      "date_txt": "À partir du 13 février 2023, 2 créneaux", // adapté si regroupe plusieurs créneaux
      "remote": false,
      "location": {
        "poi": null,
        "address": "Adresse de la mission",
        "zipcode": "Code Postal de la mission",
        "city": "Ville de la mission",
        "coordinates": {
          "lat": 0.00000,
          "lng": -0.00000
        },
        "country": "France",
        "country_code": "fr"
      },
      "location_txt": "Lieu de la mission à afficher sur la card de résultat", // adapté si regroupe plusieurs annonces dans plusieurs lieux
      "other_sessions_count": 1, // *déprécié* si = 0, ne regroupe pas d'autres créneaux
      "places": null, // *déprécié* nombre de places (si 'other_sessions_count' = 0 et le type de mission est ponctuelle avec inscription)
      "remaining_places": null, // *déprécié* nombre de places restantes (si other_sessions_count = 0 et le type de mission est ponctuelle avec inscription)
      "grouped_count": 2, // si = 1, ne regroupe pas d'autres créneaux (remplace 'other_sessions_count')
      "slots": null, // nombre de places (si other_sessions_count = 0 et le type de mission est ponctuelle avec inscription)
      "remaining_slots": null, // nombre de places restantes (si other_sessions_count = 0 et le type de mission est ponctuelle avec inscription)
      "url": "https://benevolat.monasso.org/association/mon-asso/ma-mission-000000000000"
    }
  ],
  "path": "https://api.benevolt.fr/v1/search/mission", // n'ajoute pas automatiquement les paramètres GET
  "per_page": 12,
  "next_cursor": 'xxxxxxxxxx', // à passer dans l'attribut 'cursor' pour avoir les résulats suivants
  "prev_cursor": null
}