n8n

Nodul comunitar n8n-nodes-honk adaugă o singură acțiune, Honk → Send message, cu toate câmpurile API-ului. Fiecare item primește o cheie de idempotență, așa că Retry On Fail nu notifică niciodată de două ori.

Pachet
n8n-nodes-honk Publicat
Cod sursă
github.com/honk-me/honk-n8n · Licență MIT
Cerințe
n8n self-hosted 1.x sau 2.x, cu nodurile comunitare activate.

Instalare

Din interfața n8n sau cu npm, în folderul de utilizator n8n.

Terminal
# Self-hosted n8n: Settings → Community Nodes → Install → n8n-nodes-honk
# Without the UI (Docker or npm installs), in the n8n user folder:
cd ~/.n8n/nodes && npm install n8n-nodes-honk
# then restart n8n

Credențială și nod

Creează o credențială Honk API cu URL-ul serverului și cheia API a unui proiect. Test verifică cheia fără să trimită nimic pe telefon. Apoi adaugă nodul în orice workflow.

n8n
1. Settings → Community Nodes → Install → n8n-nodes-honk
2. Credentials → New → Honk API
     Server URL:     https://honk-me.app
     Ingestion Key:  honk_…
     (Test checks the key; nothing is sent to your phone)
3. Add the node Honk → Send message
     Message:   Wants a quote for an online shop, budget €4,000. Reply within a day.
     Title:     New request from Ana Pop
     Severity:  Light Honk (Info)
   Additional Fields
     Priority:  High
     Category:  Customers
     Source:    n8n
     Group Key: requests/{{ $json.id }}
   Options
     Idempotency Key: request-{{ $json.id }}   (default: execution + node + item)
4. Node Settings → Retry On Fail: on (the same key, so never a duplicate)

Ce returnează

Câte un item pentru fiecare item primit, cu răspunsul lui Honk. accepted înseamnă că Honk a salvat mesajul; gruparea și notificarea vin după aceea.

{ "id": "msg_01k6…", "status": "accepted", "duplicate": false, "received_at": "2026-10-04T12:20:05.123Z" }

Reîncercările nu notifică de două ori

Cheia implicită este n8n-<execution id>-<node id>-<item index>, așa că Retry On Fail și reîncercările din aceeași execuție o refolosesc. Când același eveniment poate sosi în execuții diferite, de exemplu un webhook livrat de două ori, setează propria cheie în Options, de exemplu request-{{ $json.body.id }}.

Fără să instalezi nimic

n8n Cloud sau instanțele restricționate pot folosi în schimb nodul HTTP Request inclus:

n8n
HTTP Request node
  Method:          POST
  URL:             https://honk-me.app/v1/messages
  Authentication:  Generic Credential Type → Header Auth
                   Name "Authorization", Value "Bearer honk_…" (an n8n credential)
  Header:          Idempotency-Key = {{ $execution.id }}-{{ $runIndex }}
  Settings:        Retry On Fail (3 tries, 2000 ms)
  Body (JSON):
  {
    "title": "New request from Ana Pop",
    "message": "Wants a quote for an online shop, budget €4,000. Reply within a day.",
    "severity": "light",
    "priority": "high",
    "category": "customers",
    "source": "n8n",
    "group_key": "requests/{{ $json.id }}"
  }

Un workflow de exemplu

Repository-ul are examples/quote-request.json: un webhook primește o cerere de ofertă, iar Honk o trimite ca notificare, câte un grup pentru fiecare cerere. Importă-l, alege credențiala și încearcă-l:

Terminal
curl -X POST https://your-n8n.example.com/webhook/quote-request \
  -H 'Content-Type: application/json' \
  -d '{"id": 4812, "name": "Ana", "email": "[email protected]", "summary": "3 rooms, 2 bathrooms"}'