Build with HumanTone

HumanTone for n8n.

Add HumanTone's AI humanizer and AI checker to any n8n workflow. Install the official community node for self-hosted n8n, or paste a ready-made HTTP Request config on n8n Cloud.

Get Your API Key Available on all paid plans. Uses your existing credit balance.

Two ways to call HumanTone from n8n:

Recommended

Option 1

Community node

Best for self-hosted n8n.

  • One node, three operations
  • Visual config with dropdowns for level and format
  • Type-safe outputs ready for downstream nodes
  • Install once, reuse everywhere
Jump to install

Option 2

HTTP Request

Best for n8n Cloud, or any no-install setup.

  • Three ready-to-import HTTP Request configs
  • Works on every n8n version 1.50 and above
  • No package install required
  • Same API, same credits
Jump to HTTP setup

Community node

Single n8n step that wraps the HumanTone humanizer API. Drag onto canvas, pick an operation, run. Includes credentials class with test endpoint, AI Agent tool framework support, and TypeScript output types.

Install

  1. 1

    In your n8n instance, open Settings then Community Nodes.

  2. 2

    Click Install.

  3. 3

    Enter n8n-nodes-humantone.

  4. 4

    Click Install and wait for completion.

  5. 5

    The HumanTone node appears in your node list under Transform.

Set up credentials

  1. 1

    Add a HumanTone node to any workflow.

  2. 2

    Click Create New Credential.

  3. 3

    Paste your API key from app.humantone.io/settings/api.

  4. 4

    Click Test to verify, then Save.

Operations

Operation What it does
HumanizeRewrites AI text to sound natural. Three levels, three output formats, optional custom instructions.
AI CheckerReturns an AI score from 0 to 100. Free, 30 checks per day per account.
Get AccountReturns your plan, credit balance, and subscription status.

Use as an AI Agent tool

The node sets usableAsTool: true. Connect it to n8n's AI Agent and the agent can call humanize as a tool when generating text that should sound natural.

Resources

n8n Cloud users: community nodes are not installable on n8n Cloud. Use the HTTP Request configs below instead. Same API, same credits, no install required.

HTTP Request

You can call any HumanTone humanizer endpoint from n8n's built-in HTTP Request node. The configs below paste directly into your n8n canvas as fully wired nodes with the right URL, method, body parameters, and authentication. Works on n8n Cloud where installing a community node isn't an option, and on self-hosted n8n.

How to import

  1. 1

    Copy the JSON for the operation you want.

  2. 2

    In n8n, open any workflow canvas.

  3. 3

    Press Ctrl+V (or Cmd+V on macOS), or right-click and choose Paste.

  4. 4

    The node appears on your canvas, pre-configured.

  5. 5

    Click the node, open Credentials, and add a new HTTP Bearer Auth credential with your API key in the Bearer Token field.

Humanize

POST /v1/humanize

Rewrites AI text to sound natural. Returns the humanized content plus credits used and a request ID.

json
{
  "nodes": [
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.humantone.io/v1/humanize",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "content",
              "value": ""
            },
            {
              "name": "custom_instructions"
            },
            {
              "name": "humanization_level",
              "value": "standard"
            },
            {
              "name": "output_format",
              "value": "text"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.4,
      "position": [0,0],
      "name": "HumanTone - Humanize",
      "credentials": {
        "httpBearerAuth": {}
      }
    }
  ],
  "connections": {},
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "0"
  }
}

Body parameters to configure in the node

Parameter Required Notes
contentYesThe text to humanize. Map from a previous node, e.g. {{$json.text}}. Minimum 30 words.
humanization_levelNostandard (default), advanced, or extreme. Advanced and Extreme are English only.
output_formatNotext, html, or markdown. Defaults to html in the API. The imported config sets text for plain output.
custom_instructionsNoFree-form guidance for tone, terms, audience. Max 1,000 characters.

Response shape

json
{
  "success": true,
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "content": "Your humanized text...",
  "output_format": "text",
  "credits_used": 3
}

AI Checker

POST /v1/detect

Returns an AI likelihood score from 0 to 100. Higher means more AI patterns detected. Free, 30 checks per day per account, shared between the HumanTone web app and the API.

json
{
  "nodes": [
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.humantone.io/v1/detect",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "content",
              "value": ""
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.4,
      "position": [0,0],
      "name": "HumanTone - AI Checker",
      "credentials": {
        "httpBearerAuth": {}
      }
    }
  ],
  "connections": {},
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "0"
  }
}

Body parameters

Parameter Required Notes
contentYesThe text to analyze.

Response shape

json
{
  "success": true,
  "ai_score": 87
}

When the daily limit is reached, the API returns HTTP 200 with success: false and a time_to_next_renew field (seconds until reset).

Get Account

GET /v1/account

Returns your plan, credit balance, and subscription status. Useful for checking remaining credits before kicking off a batch run.

json
{
  "nodes": [
    {
      "parameters": {
        "url": "https://api.humantone.io/v1/account",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.4,
      "position": [0,0],
      "name": "HumanTone - Get Account",
      "credentials": {
        "httpBearerAuth": {}
      }
    }
  ],
  "connections": {},
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "0"
  }
}

Response shape

json
{
  "plan": {
    "id": "pro_monthly",
    "name": "Pro Monthly",
    "max_words": 1500,
    "monthly_credits": 1000,
    "api_access": true
  },
  "credits": {
    "trial": 0,
    "subscription": 820,
    "extra": 150,
    "total": 970
  },
  "subscription": {
    "active": true,
    "expires_at": "2026-05-08T00:00:00.000Z"
  }
}

Workflow examples

Example 1: AI text generation, humanized before publishing.

The most common pattern. Generate text with any AI node, then humanize before sending it to your CMS, Notion, Slack, or email.

flow
Trigger → OpenAI / Anthropic / any AI node → HumanTone (Humanize) → Notion / CMS / Slack

In the HumanTone node, set content to the AI node's output, e.g. {{$json.message.content}}. Pick humanization_level: standard for most cases.

Example 2: AI Agent with HumanTone as a tool.

n8n's AI Agent node can use HumanTone operations as agent tools. Connect HumanTone (community node) to your agent, and the agent will call humanize on its own initiative when it generates text that should sound natural.

flow
Trigger → AI Agent (with HumanTone connected as a tool)

This works only with the community node. The HTTP Request alternative cannot be exposed as an AI Agent tool.

Example 3: Pre-batch credit check.

Before processing a batch of articles, check that you have enough credits. Avoids mid-batch failures.

flow
Manual Trigger → HumanTone (Get Account) → IF (credits.total < 200) → Stop & Notify
                                          ↓ else
                                          Loop over articles → HumanTone (Humanize)

Limits

Limit Detail
Per-request word limitBasic 750 · Standard 1,000 · Pro 1,500
Minimum input30 words
CreditsHumanize uses 1 credit per 100 words. Detect and Get Account do not consume credits.
AI checker quota30 checks per day per account, shared between the HumanTone web app and the API.
API accessIncluded on all paid plans. Free trial accounts cannot use the API.
Plan supportSelf-hosted n8n. Tested on n8n 1.50 and later.

For the full error reference (HTTP codes, error messages, what each one means), see the API documentation.

Pricing

API and n8n calls share the same credit balance you already use in the app. No separate API pricing, no per-request fees, no platform surcharge.

What you need Where to get it
A paid plan (Basic, Standard, or Pro) humantone.io/pricing
An API key app.humantone.io/settings/api
More credits Buy Extra Credits in your dashboard. No plan change required.

FAQ

Other platforms

If you use HumanTone elsewhere:

Platform Path
Make HumanTone for Make
Claude Desktop, Cursor, VSCode, any MCP client MCP server
Direct API (any language) API documentation