This workflow corresponds to n8n.io template #13996 — we link there as the canonical source.
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 →
{
"id": "5Vs3wM6nbVlwKLEg",
"name": "reCAPTCHA v2",
"tags": [],
"nodes": [
{
"id": "2252983b-459c-43f6-90d8-ff0463287d44",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-48,
-64
],
"parameters": {
"width": 480,
"height": 896,
"content": "## reCAPTCHA v2 \u2014 All Triggers\n\n### How it works\n\n1. Receives solver requests through a webhook.\n2. Processes these requests using CapSolver and returns the results.\n3. Regularly triggers checks every hour using a schedule.\n4. Executes the scheduled process and checks the status of tasks.\n5. Allows manual testing of CapSolver through a manual trigger.\n\n### Setup steps\n\n- [ ] Set up webhook credentials for 'Receive Solver Request'.\n- [ ] Configure CapSolver with necessary keys for all CapSolver nodes.\n- [ ] Assign necessary permissions for HTTP request to reCAPTCHA endpoint.\n- [ ] Review and adjust the schedule in 'Schedule Trigger'.\n- [ ] Test manual execution with 'Manual Trigger'.\n"
},
"typeVersion": 1
},
{
"id": "93d7de7b-9a39-4b04-bcc8-89d8294f438a",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
512,
-64
],
"parameters": {
"color": 7,
"width": 800,
"height": 304,
"content": "## Receive and handle requests\n\nStarts with receiving a solver request via webhook, processes it, and returns the solver result."
},
"typeVersion": 1
},
{
"id": "3e5b48a9-ee9c-455d-9547-4dcead27813f",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
512,
288
],
"parameters": {
"color": 7,
"width": 800,
"height": 304,
"content": "## Scheduled recurrent process\n\nInitiates the process on an hourly schedule, sets target parameters, and sends them to CapSolver."
},
"typeVersion": 1
},
{
"id": "4a12c26e-43be-4d96-80b8-2e38e7a2f5d3",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1424,
160
],
"parameters": {
"color": 7,
"width": 736,
"height": 464,
"content": "## Process and validate token\n\nPosts to the reCAPTCHA validation endpoint and checks results, branching into pass or fail paths."
},
"typeVersion": 1
},
{
"id": "dccea023-c7c3-49fa-a78c-907e1ed813fd",
"name": "Receive Solver Request",
"type": "n8n-nodes-base.webhook",
"onError": "continueRegularOutput",
"position": [
560,
64
],
"parameters": {
"path": "solve-recaptcha-v2",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2.1
},
{
"id": "c9bd8a57-c4ec-441a-8e9a-f259f38f8285",
"name": "CapSolver [Webhook]",
"type": "n8n-nodes-capsolver.capSolver",
"position": [
880,
64
],
"parameters": {
"type": "={{ $json.body.taskType || 'ReCaptchaV2TaskProxyLess' }}",
"proxy": "={{ $json.body.proxy || '' }}",
"optional": {
"apiDomain": "={{ $json.body.apiDomain || '' }}",
"isSession": "={{ $json.body.isSession || false }}",
"pageAction": "={{ $json.body.pageAction || '' }}",
"isInvisible": "={{ $json.body.isInvisible || false }}",
"enterprisePayload": "={{ $json.body.enterprisePayload || '' }}"
},
"websiteKey": "={{ $json.body.websiteKey }}",
"websiteURL": "={{ $json.body.websiteURL }}"
},
"typeVersion": 1
},
{
"id": "ca06627a-2f18-4db8-98e9-ab2d66b9672a",
"name": "Return Solver Result",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1168,
64
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={{ JSON.stringify($json.data) }}"
},
"typeVersion": 1.5
},
{
"id": "47e00184-ad92-4447-96c2-bf213bd05868",
"name": "Schedule Trigger (Every 1h)",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
560,
416
],
"parameters": {
"rule": {
"interval": [
{
"field": "hours"
}
]
}
},
"typeVersion": 1.3
},
{
"id": "dfb0507c-23b7-4269-9a6f-f9c8a4c0d050",
"name": "Set Target Params",
"type": "n8n-nodes-base.set",
"position": [
880,
416
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "sa-001",
"name": "websiteURL",
"type": "string",
"value": "https://www.google.com/recaptcha/api2/demo"
},
{
"id": "sa-002",
"name": "websiteKey",
"type": "string",
"value": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "43efeeb9-cc97-4a26-84a3-4ba2a2f3de7e",
"name": "CapSolver [Schedule]",
"type": "n8n-nodes-capsolver.capSolver",
"position": [
1168,
416
],
"parameters": {
"optional": {},
"websiteKey": "={{ $json.websiteKey }}",
"websiteURL": "={{ $json.websiteURL }}"
},
"credentials": {
"capSolverApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "16356383-a36b-4c20-854b-b280af3142a3",
"name": "Submit Token",
"type": "n8n-nodes-base.httpRequest",
"position": [
1472,
416
],
"parameters": {
"url": "https://www.google.com/recaptcha/api2/demo",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "form-urlencoded",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "g-recaptcha-response",
"value": "={{ $json.data.solution.gRecaptchaResponse }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "content-type",
"value": "application/x-www-form-urlencoded"
},
{
"name": "user-agent",
"value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36"
}
]
}
},
"typeVersion": 4.3
},
{
"id": "1bed5df0-44ad-4778-9c05-bd2ffb5a2ad1",
"name": "Check Result",
"type": "n8n-nodes-base.if",
"position": [
1776,
416
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "if-001",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $json.data }}",
"rightValue": "recaptcha-success"
}
]
}
},
"typeVersion": 2.3
},
{
"id": "4d59e132-fc29-4f82-a82d-5b28da65d389",
"name": "Monitor Passed",
"type": "n8n-nodes-base.set",
"position": [
2016,
288
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "sp-001",
"name": "status",
"type": "string",
"value": "passed"
},
{
"id": "sp-002",
"name": "message",
"type": "string",
"value": "reCAPTCHA v2 monitor passed successfully"
},
{
"id": "sp-003",
"name": "timestamp",
"type": "string",
"value": "={{ new Date().toISOString() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "0bfa4871-0209-473e-83fd-7b68b58f59e5",
"name": "Monitor Failed",
"type": "n8n-nodes-base.set",
"position": [
2016,
448
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "sf-001",
"name": "status",
"type": "string",
"value": "failed"
},
{
"id": "sf-002",
"name": "message",
"type": "string",
"value": "reCAPTCHA v2 monitor FAILED \u2014 token rejected"
},
{
"id": "sf-003",
"name": "timestamp",
"type": "string",
"value": "={{ new Date().toISOString() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "6af2965d-2bad-4682-8bf1-6eae36050217",
"name": "Manual Trigger (Test)",
"type": "n8n-nodes-base.manualTrigger",
"position": [
560,
752
],
"parameters": {},
"typeVersion": 1
},
{
"id": "13fafebf-1475-464f-bdd3-3f75e1e58d60",
"name": "CapSolver [Manual]",
"type": "n8n-nodes-capsolver.capSolver",
"position": [
880,
752
],
"parameters": {
"optional": {},
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
"websiteURL": "https://www.google.com/recaptcha/api2/demo"
},
"credentials": {
"capSolverApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "09d7fa93-9d06-44f9-8d28-ee7b0b248968",
"name": "Format Result",
"type": "n8n-nodes-base.set",
"position": [
1168,
752
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "mr-001",
"name": "token",
"type": "string",
"value": "={{ $json.data.solution.gRecaptchaResponse }}"
},
{
"id": "mr-002",
"name": "taskId",
"type": "string",
"value": "={{ $json.data.taskId }}"
},
{
"id": "mr-003",
"name": "status",
"type": "string",
"value": "solved"
},
{
"id": "mr-004",
"name": "solvedAt",
"type": "string",
"value": "={{ new Date().toISOString() }}"
}
]
}
},
"typeVersion": 3.4
}
],
"active": false,
"settings": {
"binaryMode": "separate",
"executionOrder": "v1"
},
"versionId": "cf4a4359-d5c4-40e8-986b-0cf099b6511c",
"connections": {
"Check Result": {
"main": [
[
{
"node": "Monitor Passed",
"type": "main",
"index": 0
}
],
[
{
"node": "Monitor Failed",
"type": "main",
"index": 0
}
]
]
},
"Submit Token": {
"main": [
[
{
"node": "Check Result",
"type": "main",
"index": 0
}
]
]
},
"Set Target Params": {
"main": [
[
{
"node": "CapSolver [Schedule]",
"type": "main",
"index": 0
}
]
]
},
"CapSolver [Manual]": {
"main": [
[
{
"node": "Format Result",
"type": "main",
"index": 0
}
]
]
},
"CapSolver [Webhook]": {
"main": [
[
{
"node": "Return Solver Result",
"type": "main",
"index": 0
}
]
]
},
"CapSolver [Schedule]": {
"main": [
[
{
"node": "Submit Token",
"type": "main",
"index": 0
}
]
]
},
"Manual Trigger (Test)": {
"main": [
[
{
"node": "CapSolver [Manual]",
"type": "main",
"index": 0
}
]
]
},
"Receive Solver Request": {
"main": [
[
{
"node": "CapSolver [Webhook]",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger (Every 1h)": {
"main": [
[
{
"node": "Set Target Params",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
capSolverApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
• Receives reCAPTCHA v2 solving requests via webhook • Sends tasks to CapSolver and returns solved tokens in real time • Runs a scheduled check to validate solving performance • Submits tokens to target endpoint and verifies success/failure • Supports manual trigger for quick…
Source: https://n8n.io/workflows/13996/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This n8n template provides enterprise-level version control for your workflows using GitHub integration. Stop losing hours to broken workflows and manual exports – get proper commit history, visual di
This flow creates dummy files for every item added in your *Arrs (Radarr/Sonarr) with the tag .
This workflow acts as a central API gateway for all technical indicator agents in the Binance Spot Market Quant AI system. It listens for incoming webhook requests and dynamically routes them to the c
Sign PDF documents with legally-compliant digital signatures using X.509 certificates. Supports multiple PAdES signature levels (B, T, LT, LTA) with optional visible stamps.
📡 This workflow serves as the central Alpha Vantage API fetcher for Tesla trading indicators, delivering cleaned 20-point JSON outputs for three timeframes: , , and . It is required by the following a