AutomationFlowsGeneral › Create Custom API Endpoint

Create Custom API Endpoint

Original n8n title: Creating an API Endpoint

Creating An Api Endpoint. Uses stickyNote, respondToWebhook. Webhook trigger; 5 nodes.

Webhook trigger★★☆☆☆ complexity5 nodes
General Trigger: Webhook Nodes: 5 Complexity: ★★☆☆☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "nodes": [
    {
      "id": "f80aceed-b676-42aa-bf25-f7a44408b1bc",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        375,
        115
      ],
      "parameters": {
        "path": "6f7b288e-1efe-4504-a6fd-660931327269",
        "options": {},
        "responseMode": "responseNode"
      },
      "typeVersion": 1
    },
    {
      "id": "3b9ec913-0bbe-4906-bf8e-da352b556655",
      "name": "Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        355,
        -25
      ],
      "parameters": {
        "width": 600,
        "height": 280,
        "content": "## Create a simple API endpoint\n\nIn this workflow we show how to create a simple API endpoint with `Webhook` and `Respond to Webhook` nodes\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "9c36dae5-0700-450c-9739-e9f3eff31bfe",
      "name": "Respond to Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        815,
        115
      ],
      "parameters": {
        "options": {},
        "respondWith": "text",
        "responseBody": "=The URL of the Google search query for the term \"{{$node[\"Webhook\"].json[\"query\"][\"first_name\"]}} {{$node[\"Webhook\"].json[\"query\"][\"last_name\"]}}\" is: {{$json[\"product\"]}}"
      },
      "typeVersion": 1
    },
    {
      "id": "5a228fcb-78b9-4a28-95d2-d7c9fdf1d4ea",
      "name": "Create URL string",
      "type": "n8n-nodes-base.set",
      "position": [
        595,
        115
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "product",
              "value": "=https://www.google.com/search?q={{$json[\"query\"][\"first_name\"]}}+{{$json[\"query\"][\"last_name\"]}}"
            }
          ]
        },
        "options": {},
        "keepOnlySet": true
      },
      "typeVersion": 1
    },
    {
      "id": "e7971820-45a8-4dc8-ba4c-b3220d65307a",
      "name": "Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        355,
        275
      ],
      "parameters": {
        "width": 600,
        "height": 220,
        "content": "### How to use it\n1. Execute the workflow so that the webhook starts listening\n2. Make a test request by pasting, **in a new browser tab**, the test URL from the `Webhook` node and appending the following test at the end `?first_name=bob&last_name=dylan`\n\nYou will receive the following output in the new tab `The URL of the Google search query for the term \"bob dylan\" is: https://www.google.com/search?q=bob+dylan`\n\n"
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Create URL string",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create URL string": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Creating An Api Endpoint. Uses stickyNote, respondToWebhook. Webhook trigger; 5 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More General workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

General

HR tool. Uses googleSheets. Webhook trigger; 12 nodes.

Google Sheets
General

This workflow receives inbound emails from EmailConnect.eu via an n8n webhook, extracts key message fields, drops spam, and routes emails to different downstream paths based on the recipient alias (fo

General

Http Stickynote. Uses stickyNote, httpRequest, highLevel. Webhook trigger; 10 nodes.

HTTP Request, High Level
General

Http Keap. Uses stickyNote, httpRequest, keap. Webhook trigger; 10 nodes.

HTTP Request, Keap
General

Http Stickynote. Uses stickyNote, httpRequest. Webhook trigger; 10 nodes.

HTTP Request