Skip to main content

N8n

Purpose: Self-hosted automation platform for client workflows and internal workflows. Can give free access to clients.

Last verified: December 2025


Account Details

  • Notes: Automation tool we've self-hosted and are using for client workflows and internal workflows. Can give free access to clients
  • Category: SELF_HOSTING
  • Account type: CLIENT_ACCESS, INTERNAL
  • Monthly cost: 10.00 GBP
  • Created: December 2025
  • Access URL: https://n8n.pacing.agency/home/workflows
  • Account owner: Ben Power

Hosting

Provider: Hetzner Cloud
Project: Pacing n8n (Project ID: 12332922)
Server: n8n2 (Server ID: 112168432)
Public IP: 91.98.150.95
Location: Falkenstein, Germany (fsn1-dc14)

Server Specifications:

  • Type: CCX13 (Dedicated CPU)
  • vCPUs: 2 cores (dedicated)
  • RAM: 8 GB
  • Disk: 80 GB (local storage)
  • Monthly Cost: €11.99
  • OS: Ubuntu 24.04

Infrastructure Details: See tools/hetzner.md for complete server configuration and management commands.


API Access

Base URL: https://n8n.pacing.agency/api/v1

API Key: Stored in project .env file as N8N_API_KEY

Authentication: Include API key in request headers:

X-N8N-API-KEY: ${N8N_API_KEY}

API Endpoints

Workflows

MethodEndpointDescription
GET/workflowsRetrieve all workflows
GET/workflows/{id}Retrieve a specific workflow
POST/workflowsCreate a new workflow
PUT/workflows/{id}Update a workflow
DELETE/workflows/{id}Delete a workflow
POST/workflows/{id}/activateActivate a workflow
POST/workflows/{id}/deactivateDeactivate a workflow
PUT/workflows/{id}/transferTransfer workflow to another project
GET/workflows/{id}/tagsGet workflow tags
PUT/workflows/{id}/tagsUpdate workflow tags

Workflow Status: Use GET /workflows and filter by active: true to get only live/active workflows.

Tags: Some workflows are assigned to clients via tags. Tags can be retrieved via /workflows/{id}/tags endpoint.

Executions

MethodEndpointDescription
GET/executionsRetrieve all executions
GET/executions/{id}Retrieve a specific execution
DELETE/executions/{id}Delete an execution
POST/executions/{id}/retryRetry an execution

Users

MethodEndpointDescription
GET/usersRetrieve all users
POST/usersCreate multiple users
GET/users/{id}Get user by ID/Email
DELETE/users/{id}Delete a user
PATCH/users/{id}/roleChange a user's global role

Tags

MethodEndpointDescription
POST/tagsCreate a tag
GET/tagsRetrieve all tags
GET/tags/{id}Retrieve a specific tag
DELETE/tags/{id}Delete a tag
PUT/tags/{id}Update a tag

Credentials

MethodEndpointDescription
POST/credentialsCreate a credential
DELETE/credentials/{id}Delete credential by ID
GET/credentials/schema/{credentialTypeName}Show credential data schema
PUT/credentials/{id}/transferTransfer a credential to another project

Variables

MethodEndpointDescription
POST/variablesCreate a variable
GET/variablesRetrieve variables
DELETE/variables/{id}Delete a variable
PUT/variables/{id}Update a variable

Projects

MethodEndpointDescription
POST/projectsCreate a project
GET/projectsRetrieve projects
DELETE/projects/{projectId}Delete a project
PUT/projects/{projectId}Update a project
POST/projects/{projectId}/usersAdd users to a project
DELETE/projects/{projectId}/users/{userId}Delete a user from a project
PATCH/projects/{projectId}/users/{userId}Change a user's role in a project

Source Control

MethodEndpointDescription
POST/source-control/pullPull changes from remote repository

Audit

MethodEndpointDescription
POST/auditGenerate an audit

Example API Usage

Get all active workflows:

curl -X GET "https://n8n.pacing.agency/api/v1/workflows" \
-H "X-N8N-API-KEY: ${N8N_API_KEY}" \
| jq '.[] | select(.active == true)'

Get workflow with tags:

curl -X GET "https://n8n.pacing.agency/api/v1/workflows/{id}/tags" \
-H "X-N8N-API-KEY: ${N8N_API_KEY}"

Get all tags:

curl -X GET "https://n8n.pacing.agency/api/v1/tags" \
-H "X-N8N-API-KEY: ${N8N_API_KEY}"

Automation Scripts

See scripts/resources/n8n/ for scripts to:

  • Fetch and backup workflows from the API
  • Export workflow definitions for version control
  • Sync workflows between environments

Main script: scripts/resources/n8n/fetch-workflows.sh

  • Fetches active workflows from the API
  • Saves workflow definitions as JSON files
  • Includes tags and metadata
  • See scripts/resources/n8n/README.md for usage instructions

Workflow Management

Active Workflows

Active workflows are those with active: true status. These workflows are currently running and will execute based on their triggers.

Workflow Tags

Workflows can be tagged to organise them by client or purpose. Tags are useful for:

  • Filtering workflows by client
  • Organising workflows by category
  • Managing access and permissions

To view tags for a workflow, use the API endpoint /workflows/{id}/tags or check the workflow in the n8n UI.

Workflow Backup

Workflows are automatically backed up via the script in scripts/resources/n8n/fetch-workflows.sh. This script:

  • Fetches all active workflows from the API
  • Saves workflow definitions as JSON files
  • Includes workflow metadata (name, ID, tags, active status)
  • Organises workflows by tags or client assignment

Current Active Workflows

As of December 2025, there are 9 active workflows:

Workflow NameIDTagsPurpose
Process Call Data LIVE TWILIOBr8hV6MAxI3ZqR2JMTLProcess Twilio call data
TTL Website - Cache Clear On PublishKowT1FqN6Xk6UoRETTL, Cloudflare, WebflowClear cache on Webflow publish
Pacing Website - Cache Clear On PublishN11idwXDFWNwGYDhPacing, Cloudflare, WebflowClear cache on Webflow publish
My workflow 3QpjmWcZTwupjkXHI(none)Internal workflow
Process Call Data LIVETsmCwp84TKbHa62oMTLProcess call data
CIRCLELOOP-WEBHOOK1ZOYW9YJWM7Zlyob9MTLCircleLoop webhook handler
Google Ads Offline Conversion - CALL NON-CLkFpW5Ahu63kGfrSLMTLGoogle Ads conversion tracking
HML Website - Cache Clear On PublishlQvLaJJihWpebP6cHML, Cloudflare, WebflowClear cache on Webflow publish
Google Ads Offline Conversion - CALLlvWrOkP2lyFnVbQVMTLGoogle Ads conversion tracking

Workflow Tags

Tags are used to organise workflows by client or purpose:

Tag NameIDUsage
Pacing1AMJrKZ1uQrCIjT0Internal Pacing workflows
Webflowxs7njiJx2FesmGT9Webflow-related workflows
CloudflareY4zn1qUqhsuisYBLCloudflare-related workflows
TTLULds2c7XDyztnzUKTTL client workflows
MTLRWrUvJqLOhyZs2RdMTL client workflows
HML6wiOJFpb62tnmNQfHML client workflows
PACINGINTERNAL4keDmHrtJWbue7WXInternal Pacing workflows

Client Assignment: Workflows tagged with client names (MTL, TTL, HML) are assigned to those specific clients.