What is the n8n Integration in Task Manager?
The n8n integration in Task Manager moves data between tasks and other systems. A form submission can become a task without having to re-enter the details. Creating a task can trigger an entry in a Google spreadsheet or a Slack notification. The team carries on working in Task Manager as usual.
n8n integration belongs to the Pro plan. It's an experimental feature, disabled by default. The administrator enables it in Settings → Advanced → Other. When disabled, the n8n tab doesn't appear in the interface, and the /api/n8n/* endpoints reject requests with a 503 code. The instruction chapter about n8n also disappears from the AI Assistant's context.
n8n is a separate platform for building workflows between applications. Task Manager sends events to it and accepts calls back from it.
How does it work?
Data is sent from Task Manager to n8n via a webhook. Enter its name and the URL from the *Webhook* node in n8n, then select the events. You can also add a secret to sign requests (HMAC). There are 26 events to choose from, including task.created, task.status_changed, task.completed and chat.message_sent. System events (system.daily_summary and other system.* events) and user.created are sent only to global webhooks set up by an administrator. Each request contains the event name, a timestamp and contextual data. You can send a test ping before building the entire workflow.
In the other direction, an API key is used. The token in the format tm_live_<32hex> is shown only once. In n8n, enter it in the Authorization: Bearer header. The available endpoints are ping.php, workspaces.php, users.php, tasks.php and messages.php. POST /api/n8n/tasks.php creates a task with a subject, description, priority, due date and list of assignees. PATCH updates an existing task. It requires task_id; all other fields are optional. If the HTTP node does not support PATCH, you can send the body using POST. Including task_id switches the endpoint to update mode.
A status change from n8n follows the same path as a change made in the app. The task thread gets an entry saying “changed the status to…”, assigned users receive an email, and Task Manager sends task.status_changed (and task.completed when the status is set to done). Setting the same status again does not send another event. Failed webhooks are added to a queue. The queue schedules retries after 60, 300 and 1800 seconds, with a maximum of four attempts, but retries are run by the retry cron job or by queue processing during some requests to the app. Without the cron job and app activity, retries will not happen at these intervals. An integration error does not interrupt your work in the app.
The key uses the permissions of the user who created it and their access to Workspaces. users.php is available only to global administrator keys. Webhook URLs in private and reserved IP ranges are blocked; the n8n_private_network_policy policy accepts the values off, admin and all, and an invalid value is treated as off.

What do you gain?
You don't have to copy a customer's form submission into a task. In the morning, you can get straight to work on the request instead of transferring data between windows.
You also don't have to remember to update both systems when the work is done. When a task is closed, the information can be passed on through a prepared workflow. The customer won't have to wait for someone to record the change manually in the other system.
Your team doesn't need to learn n8n to use the ready-made integration. When a task is closed by an external workflow, assigned users receive an email and the thread gets an entry about the change. An integration failure won't stop work on your tasks.
An everyday example
A service company receives requests in an external ticketing system. An n8n workflow picks up a new ticket and sends POST /api/n8n/tasks.php. A task is created with the address in its description, priority high and due date in deadline_date - in the workspace accessible to the key owner, and assigned to those people from the assignees list who also have access to it.
When a technician closes the task, Task Manager sends task.completed to a webhook subscribed to that event, and the workflow updates the status in the client's system. A separate webhook for task.deadline_approaching (the event is emitted by the recurring “deadline” task, so cron must be enabled) can trigger an SMS reminder about the approaching due date. The technician does not need to use n8n.
Frequently asked questions
Is n8n integration available in the Standard plan?
No, this is a Pro plan feature. In Standard, there's no integration toggle in Settings, so it can't be enabled.
Does the n8n integration work straight after installation?
No. This is an experimental feature and is disabled by default. An administrator can enable it in Settings → Advanced → Other. Until then, the n8n tab is hidden and the /api/n8n/* endpoints return a 503 status code.
Do integrations require a developer?
You may need someone with technical expertise to build a workflow in n8n. You need to copy the webhook URL, provide a token and prepare a JSON body. You don't need this knowledge to use a ready-made workflow.
Can I change a task's status externally?
Yes. Send a PATCH request to /api/n8n/tasks.php with task_id and the status none, in_progress, done or cancelled. The change will create an entry in the task thread, send an email to assigned users and trigger an outgoing webhook.
What happens if n8n doesn't respond?
Failed webhooks are added to a queue. The queue schedules retries after 60, 300 and 1800 seconds, with a maximum of four attempts, but retries are run by the retry cron job or by queue processing during some requests to the app. Without the cron job and app activity, retries will not happen at these intervals. An integration error does not interrupt your work in the app.
Does disabling the integration delete its configuration?
No. Webhooks and API keys remain in the database and become available again when you re-enable the integration.
