Nommify

Nommify dans tes outils.

Lance un audit depuis Zapier, Make ou ton CRM, lis son score quand il est prêt, et reçois chaque lundi le score et les alertes de tes commerces suivis, là où tu travailles déjà.

  1. 1. Une clé

    Dans Mon espace, « API, Zapier et Make » : une clé par outil, nommée, que tu supprimes quand tu veux. Elle s'affiche une seule fois.

  2. 2. Zapier

    « Webhooks by Zapier » : Catch Hook pour recevoir le lundi, POST pour lancer un audit avec ta clé dans l'en-tête Authorization.

  3. 3. Make

    Le module « Webhooks › Custom webhook » pour le lundi, le module « HTTP › Make a request » pour lancer et lire un audit.

Lancer un audit

activity : une clé de la liste /api/activities, ou « autre:toiletteur » pour un métier hors liste. Réponse immédiate, l'audit tourne environ une minute. 30 par heure au plus.

curl -X POST https://nommify.app/api/v1/audits \
  -H "Authorization: Bearer nmk_…" \
  -H "Content-Type: application/json" \
  -d '{"business": "Bella Notte", "city": "Lyon 3e", "activity": "pizzeria", "locale": "fr"}'

Lire un audit

« status » passe de « running » à « done » : attends une minute après l'avoir lancé (l'étape « Delay » de Zapier, « Sleep » de Make), puis lis-le.

curl https://nommify.app/api/v1/audits/AUDIT_ID -H "Authorization: Bearer nmk_…"
{
  "id": "aScQ9seKKV9t",
  "business": "Bella Notte",
  "status": "done",
  "score": 6,
  "engines": [{ "id": "chatgpt", "name": "ChatGPT", "score": 7 }, …],
  "rivals": [{ "name": "Casa Nostra", "score": 7 }, …],
  "actions": [{ "title": "Compléter ta fiche Google", "impact": "fort" }, …],
  "report": "https://nommify.app/audit/aScQ9seKKV9t"
}

Tes commerces suivis

Leur dernier score, son évolution et leur objectif.

curl https://nommify.app/api/v1/follows -H "Authorization: Bearer nmk_…"

Chaque lundi, chez toi

Donne une adresse https dans Mon espace : pour chaque commerce suivi, Nommify y envoie le score, son évolution, les concurrents et les alertes. « Envoyer un essai » envoie un exemple pour relier les champs.

POST https://ton-adresse…
Nommify-Event: semaine
Nommify-Signature: sha256=…

{
  "event": "semaine",
  "sentAt": "2026-10-26T06:12:00.000Z",
  "data": {
    "business": "Bella Notte", "city": "Lyon 3e",
    "score": 6, "previousScore": 4, "change": 2,
    "report": "https://nommify.app/audit/…",
    "rivals": [{ "name": "Casa Nostra", "score": 7 }],
    "alerts": [{ "kind": "rise", "tone": "good", "title": "Ton score monte : 4 → 6 sur 10", "body": "…", "link": "https://nommify.app/audit/…" }]
  }
}

Pour vérifier qu'un envoi vient bien de Nommify, avec le secret donné en même temps que l'adresse :

import { createHmac, timingSafeEqual } from "node:crypto";

const expected = "sha256=" + createHmac("sha256", process.env.NOMMIFY_SECRET).update(rawBody).digest("hex");
const ok = timingSafeEqual(Buffer.from(expected), Buffer.from(request.headers["nommify-signature"]));

Et ensuite