Skip to content

docs(recipes): Add recipes for Make, n8n, Square and any app with an API key (#35) - #36

Open
johnxie wants to merge 2 commits into
masterfrom
docs/recipes-bridges
Open

johnxie wants to merge 2 commits into
masterfrom
docs/recipes-bridges

Conversation

@johnxie

@johnxie johnxie commented Oct 22, 2026

Copy link
Copy Markdown
Member

Closes #35

Adds recipes/: four short recipes that connect Taskade with Make, n8n, Square and any app with an API key today, plus an index. They use only what ships in Taskade: the When a webhook arrives trigger, the Send HTTP Request step with its Authentication panel, and the Public Action API v2.

What changes

File Content
recipes/README.md Index, the token and project ID setup, the first listSpaces call, the rule that keeps secrets out of Headers
recipes/make.md Leads with the official Make app in review (#34, #33). Make HTTP module to POST /api/v2/createTask, and a Taskade automation that posts new tasks to a Make Custom webhook
recipes/n8n.md Leads with the n8n node in review (#32, #17). n8n HTTP Request with Header Auth, and a Taskade automation that posts to an n8n Webhook
recipes/square.md Square payment.updated events into When a webhook arrives, and Send HTTP Request with a Bearer Token to POST /v2/customers
recipes/any-app-with-an-api-key.md Send HTTP Request with each Auth Type, the Verify requests modes, and a curl call to createTask
README.md A 4-line "Recipes" section after "Status" that links the index. No other change

Each recipe has the same shape: who it is for, what it does in one sentence, 7 numbered steps, a "Check the result" line, a one-sentence Taskade EVE prompt, and a "Checked" list.

How the steps were checked

  • Taskade labels, endpoints and limits match the Taskade app source on 2026-10-22: the webhook URL form, the 3 accepted body types, the 404 on a turned-off automation, the Pro gate on the webhook trigger and Outgoing webhooks, the 4 Auth Type options, the 4 Verify requests modes and the HMAC header names, the createTask body (1 to 20 tasks, 2,000 characters), the 5-token limit and the /d/<project id> address.
  • https://www.taskade.com/api/documentation/v2 answers 200, and an unauthenticated POST /api/v2/listSpaces answers 401.
  • Make, n8n and Square labels and endpoints come from their public docs. Each recipe marks them in its "Checked" list. Nobody ran the recipes end to end in those apps.

Not changed

  • The Zapier app (src/, index.js, package.json) and packages/n8n-nodes-taskade are untouched.
  • No code, no dependency and no CI change. The CI workflow does not read .md files.

Copilot AI balanced review requested due to automatic review settings October 22, 2026 22:56
@johnxie

johnxie commented Oct 22, 2026

Copy link
Copy Markdown
Member Author

@deanzaka this PR adds recipes only (6 Markdown files, 258 added lines, no code). Please follow each recipe once with the QA table below.

Impact

  • Demand: 97 Canny votes for a Make integration, 36 more on the Make half of "Zapier & Make", 61 for an n8n node, and Square asks from a paying v8.enterprise customer.
  • The official Make app (feat(make): Add the Taskade custom app for Make as code (#33) #34) and the n8n node (feat(n8n): Make the Taskade node ready for n8n verification (#17) #32) both wait on a vendor review. These recipes give users a path that works before both approvals, and the Make and n8n recipes point at the PRs so users can switch later.
  • Each recipe puts the key in the Authentication panel of Send HTTP Request, never in Headers, which Taskade saves as plain text.
  • Risk: none for the Zapier app or the n8n package. The diff touches only recipes/ and 4 lines of README.md.

User path, before and after

Before                                        After
Make / n8n / Square / other app user          Make / n8n / Square / other app user
  |                                             |
  +-- Make app: in review (#34), no doc         +-- README "Recipes" --> recipes/README.md
  +-- n8n node: not on npm (#32), no doc        |     token, project ID, first listSpaces call
  +-- Square: no integration, no doc            +-- make.md / n8n.md
  +-- other app: guess the API                  |     tool HTTP module --> POST /api/v2/createTask
        |                                       |     Taskade Send HTTP Request --> tool webhook
        v                                       +-- square.md
  key pasted into Headers (plain text),         |     Square payment.updated --> When a webhook arrives
  or the user gives up                          |     Send HTTP Request + Bearer Token --> /v2/customers
                                                +-- any-app-with-an-api-key.md
                                                      Auth Type (Bearer, API Key, Basic) + Verify requests

QA

Step Action Expected result
1 Open README.md on the branch A "Recipes" section sits after "Status", and its link opens recipes/README.md. The rest of the README is unchanged
2 In recipes/README.md, create a token in Settings > API and run the listSpaces curl Taskade answers {"ok":true,...} with your workspaces
3 Follow make.md steps 1 to 6 in a Make account The Make a request module answers {"ok":true,"items":[{"id":"..."}]}, and the task shows in the project
4 Follow make.md step 7, then add a task in Taskade About 5 minutes after the last edit, the Make Custom webhook receives the task JSON
5 Follow n8n.md steps 1 to 5 Execute step answers ok: true, and the task shows in the project
6 Follow n8n.md steps 6 and 7, then add a task in Taskade A new execution shows in n8n
7 Follow square.md steps 1 to 5 in the Square Sandbox One completed test payment adds one task. A turned-off automation makes the URL answer 404
8 Follow square.md steps 6 and 7 The step answers with a customer id, and the customer shows in the Square Sandbox
9 Follow any-app-with-an-api-key.md steps 2 to 4 with API Key, Header Name X-API-Key, and the URL https://httpbin.org/headers The response shows X-Api-Key with your key. The Headers field stays empty
10 Follow any-app-with-an-api-key.md steps 5 and 6 with HMAC-SHA256 signature, then send one signed and one unsigned request The signed request starts a run. The unsigned request gets 401
11 Regression: run git diff --stat origin/master...docs/recipes-bridges -- src index.js package.json yarn.lock packages No output: the Zapier app and packages/n8n-nodes-taskade are untouched. CI (yarn lint, yarn build, yarn test) passes

Not verified

  • Make, n8n and Square labels, endpoints and payload paths come from their public docs. I did not open those apps.
  • No recipe ran end to end. The Taskade side was checked against the app source and the live v2 spec.
  • A nested field path such as data.object.payment.status in the webhook Parameters (step 2 of square.md) was not tested.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The walkthroughs need corrections to environment selection, duplicate-delivery guidance, and dynamic JSON serialization before readers can reliably follow them.

4 open issues
What changed in this PR

Adds documentation-only recipes for connecting Taskade to Make, n8n, Square, and other API-enabled apps while official integrations are unavailable or awaiting approval.

Changes:

  • Adds four walkthroughs using Taskade’s webhook trigger, HTTP step, and Public Action API v2.
  • Provides shared setup and credential-handling guidance.
  • Links the recipes from the root README without changing integration code, dependencies, or CI.
File Description
recipes/​square.md Payment webhook and customer-creation walkthrough.
recipes/​README.md Recipe index, prerequisites, and credential guidance.
recipes/​n8n.md HTTP Request and Webhook node walkthrough.
recipes/​make.md HTTP module and Custom webhook walkthrough.
recipes/​any-app-with-an-api-key.md Generic API authentication and webhook verification guidance.
README.md Adds a link to the recipes index.

Review effort: Balanced

Comment thread recipes/make.md Outdated
2. Open the Taskade project for the new tasks. Copy the project ID from the address bar, after `/d/`.
3. In Make, add the **HTTP** app's **Make a request** module. Set the method to `POST` and the URL to `https://www.taskade.com/api/v2/createTask`.
4. Add the header `Authorization` with the value `Bearer tskdp_YOUR_TOKEN`. Add the header `Content-Type` with the value `application/json`.
5. Set the body to raw JSON and paste the body below. Map your Make values into `content`.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 13eadff. Steps 5 and 6 now build the body with the JSON app Create JSON module and map its JSON string output into the HTTP request content, with a warning that raw JSON text does not escape a mapped value.

Comment thread recipes/n8n.md
Comment on lines +21 to +30
Request body for step 4:

```json
{
"projectId": "YOUR_PROJECT_ID",
"tasks": [
{ "contentType": "text/markdown", "content": "{{ $json.title }}", "placement": "beforeend" }
]
}
```

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 13eadff. Step 4 now sets the JSON field to Expression, and the body is one expression that returns the whole object with content: $json.title, so n8n serializes the title. A note warns against {{ $json.title }} inside quoted JSON.

Comment thread recipes/square.md Outdated
4. In the Square Developer Console, open your application, then **Webhooks**, then **Subscriptions**. Add a subscription with the Taskade URL and the `payment.updated` event.
5. Send a test event from Square. Make sure that a run shows in the automation history and that a task shows in your project.
6. To write to Square, add **Send HTTP Request** to a Taskade automation. Open **Authentication**, pick **Bearer Token**, and paste your Square access token.
7. Set **Method** `POST`, **URL** `https://connect.squareup.com/v2/customers`, a `Square-Version` header, and **Request Body Type** **JSON** with the body below.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 13eadff. Steps 6 and 7 now use the Sandbox token and https://connect.squareupsandbox.com/v2/customers, and a new note says to change both the token and the host to go live.

Comment thread recipes/square.md Outdated

- Square signs each event with its own header, and Taskade does not read that header. Thus the Taskade URL is the only key. Keep it private, and do not paste it into a page or a chat.
- Put the Square token only in the **Authentication** panel, never in **Headers**. Taskade saves headers as plain text in the automation.
- A Square payment sends `payment.updated` more than once as its status changes. The **Only continue if...** step keeps one task for each completed payment.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 13eadff. The one-task-per-payment claim is gone. The note now says that the filter skips incomplete payments but does not stop duplicates (retries, later updates such as a refund), and step 2 and 3 put the payment ID in the task text so that a duplicate is easy to find.

Build the Make body with Create JSON and the n8n body as one expression
object, so a quote in a mapped value does not break the request. Point the
Square walkthrough at the Sandbox host, say how to go live, and replace the
one-task-per-payment claim with a duplicate warning.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Recipes for Make, n8n, Square and any app with an API key

2 participants