API publique — aperçu
REST et webhooks. La référence complète est disponible ci-dessous.
URL de base
https://bonjour.unpourtousettouspourun-asso.fr/api/public/v1
Schéma OpenAPI
La description OpenAPI 3.1 lisible par machine est publique et peut être importée dans Postman, Insomnia ou un générateur de SDK. /api/public/v1/openapi.json — import it into Postman, Insomnia, or an SDK generator.
Console API interactive
Les requêtes partent de votre navigateur. Sans jeton valide, la réponse attendue est 401.
Requête
curl -X GET \ "https://bonjour.unpourtousettouspourun-asso.fr/api/public/v1/ping" \ -H "Authorization: Bearer bja_<prefix>_<secret>"
Réponse d’exemple
{
"ok": true,
"organisationId": "8f14e45f-ceea-467a-9a2e-1b7c1cbd7f21",
"version": "1.0.0",
"at": "2026-01-12T09:30:00.000Z"
}Réponse en direct
—
Schémas d’autorisation
apiKey—Authorization: Bearer bja_<prefix>_<secret>, portéesread/write, quota 60 req/min.- Webhooks sortants — signature
x-bonjour-signature: sha256=<hex>(HMAC-SHA256 sur le corps brut).
Événements webhook
| Événement | Déclencheur |
|---|---|
incident.declared | Un incident est déclaré au niveau de gravité configuré. |
incident.contained | L'incident est marqué comme contenu. |
incident.notified | L'autorité de contrôle a été notifiée. |
incident.closed | L'incident est clôturé. |
incident.deadline_72h | Alarme : violation encore ouverte 60 h après détection (échéance RGPD 72 h). |
Charge utile d’exemple
POST https://votre-endpoint.example/hooks/bonjour
x-bonjour-signature: sha256=6f1c…d4
{
"event": "incident.declared",
"organisationId": "8f14e45f-ceea-467a-9a2e-1b7c1cbd7f21",
"incident": {
"id": "1f4d3a2b-…",
"severity": "critical",
"category": "data_breach",
"detectedAt": "2026-01-12T08:05:00.000Z"
},
"attempt": 1
}Points d’accès
GET /ping— key health probeGET /members— anonymised membership statisticsGET /events— upcoming public eventsGET /impact— latest published social-impact report
Authentification
Les jetons Bearer sont émis depuis la console de votre organisation et affichés une seule fois. Droits : lecture et écriture. Révocation possible à tout moment.
Limites de débit
60 requêtes par minute et par jeton par défaut. Le niveau Entreprise est configurable.
Webhooks
Les événements sont signés en HMAC-SHA256 sur le corps brut et retentés cinq fois avec temporisation exponentielle. x-bonjour-signature
incident.declared/incident.contained/incident.notified/incident.closedincident.deadline_72hmember.createdcontribution.receivedtimebank.payout.settledsanctuary.file.expired
SDK
SDK TypeScript prochainement. Un client Python est prévu.
Obtenir un accès API
Écrivez-nous avec un court cas d’usage. Réponse sous deux jours ouvrés. contact@unpourtousettouspourun-asso.fr
