n8n recipe

Track client response time with n8n

Two workflows, one HTTP Request node each — works the same self-hosted or on n8n Cloud.

1

Create an API key

In ReplyTime, go to Settings → API Keys and create one named after this workflow, e.g. “n8n — production.” Copy the secret immediately — it's shown only once.

2

Build the inbound workflow

Start with a trigger node for wherever your clients message you (a webhook trigger, Gmail, Slack, or similar). Add an HTTP Request node, method POST, to the URL below.

Request URL
https://replytime.net/api/v1/events/inbound
3

Set auth and body

Under Authentication, choose Generic Credential Type → Header Auth, with name Authorization and the value below. Set Body Content Type to JSON and map the previous node's fields into client, channel, and message.

Header Auth value
Bearer rt_xxxxxxxxxxxxxxxxxxxxxxxx
4

Duplicate it for replies

Clone the workflow, trigger it on your own reply instead, and point the HTTP Request node at /api/v1/events/outbound. This is the workflow that stops the clock.

5

Execute once and check the dashboard

Run the workflow once with real data, then check the client's conversation in the ReplyTime dashboard — the countdown should start and stop as expected.

Example payload

Both endpoints accept the same shape. Set message.source_tool so you can tell where an event came from later.

{
  "client": { "external_ref": "acme-corp", "name": "Acme Corp" },
  "channel": { "type": "slack", "identifier": "#client-acme" },
  "message": {
    "occurred_at": "2026-09-09T10:15:00Z",
    "source_tool": "n8n"
  },
  "idempotency_key": "slack-ts-1694256900.001"
}
Full field reference, error codes, and idempotency details:Read the API reference →
Start free trial — 14 days

n8n questions, answered

Which n8n node should I use?+

The built-in HTTP Request node, set to POST with a JSON body — no custom code or extra packages required.

Do I need two separate workflows?+

Yes — one triggered by an incoming client message (posts to /api/v1/events/inbound), one triggered by your reply (posts to /api/v1/events/outbound). They run independently.

How do I avoid duplicate events if a workflow retries?+

Pass idempotency_key set to the source node's own message id (a Slack ts, a Gmail message id). A repeat call with the same key is a safe no-op.

Can I self-host n8n and still use this?+

Yes — the recipe is identical whether n8n is self-hosted or cloud, since it's just an outbound HTTP Request node.

Using a different tool?