Skip to main content

iPaaS middleware (Zapier, Make, n8n, Power Automate, Workato)

No-code integration platforms (iPaaS) link FoxPlan to your other tools (ERP, CRM, ticketing, messaging, spreadsheets…) without development. FoxPlan ships five connectors as standard, on every instance: they appear in Settings → Connectors for your workspace or company administrators, with no prior access request.

ConnectorVendorWebhook trigger to use in the tool
ZapierZapierWebhooks by Zapier › Catch Hook
MakeCelonis (Make.com)Webhooks › Custom webhook module
n8nn8nWebhook node (POST method, production URL)
Microsoft Power AutomateMicrosoftWhen an HTTP request is received trigger
WorkatoWorkatoWebhooks › New event via webhook trigger

All five connectors work exactly the same way, in both directions:

DirectionMechanismWhere to configure it
FoxPlan → middleware (outbound)FoxPlan posts a structured JSON event to your scenario's webhook URLConfiguration tab of the connector page, then Flows tab
Middleware → FoxPlan (inbound)The scenario calls the FoxPlan REST API with an API accountAPI tab of the connector page

Setup, connector by connector

The approach is always the same: create the webhook trigger in the tool, paste its URL into FoxPlan, test, then enable the flows.

Zapier

  1. Create a Zap and pick the Webhooks by Zapier › Catch Hook trigger. Zapier shows a URL such as https://hooks.zapier.com/hooks/catch/….
  2. In FoxPlan, open Settings → Connectors → Zapier, paste the URL into Zapier webhook URL, optionally set a shared token, then Save.
  3. Click Test: Zapier receives a connection.test event and offers it as a sample ("Find new records").
  4. Flows tab: enable Task events and/or Task comments.
  5. Continue your Zap with any actions; to act on FoxPlan, use Webhooks by Zapier › Custom Request against the REST API (see below).

Make

  1. In a scenario, add the Webhooks › Custom webhook module, create a webhook and copy its address (https://hook.eu1.make.com/…).
  2. In FoxPlan, open the Make page, paste the URL, save then Test: Make determines the data structure automatically.
  3. Enable the flows you need in the Flows tab.
  4. To write into FoxPlan, add an HTTP › Make a request module with the Authorization: Bearer … header (see the API section).

n8n

  1. In a workflow, add a Webhook node, POST method, and copy the production URL.
  2. In FoxPlan, n8n page: paste the URL, save, then Test while the node is listening ("Listen for test event") to capture a sample.
  3. Enable the flows in the Flows tab.
  4. To call FoxPlan, use an HTTP Request node with a Header Auth credential (Authorization / Bearer …).

Microsoft Power Automate

  1. Create a flow with the When an HTTP request is received trigger. The URL only appears after the flow is saved for the first time.
  2. Paste the JSON sample below into "Use sample payload to generate schema" to get the fields in the next steps.
  3. In FoxPlan, Microsoft Power Automate page: paste the URL, save, Test, then enable the flows.
  4. To act on FoxPlan, add an HTTP action with the Authorization header.
Power Automate licensing

The HTTP trigger and the HTTP action are Premium connectors at Microsoft.

Workato

  1. In a recipe, pick the Webhooks › New event via webhook trigger and copy the webhook URL.
  2. In FoxPlan, Workato page: paste the URL, save, Test, then enable the flows.
  3. To write into FoxPlan, use Workato's HTTP connector with Header authentication (Authorization: Bearer …).

Outbound: the JSON event

The Test button immediately sends a connection.test event. The Task events flow (task.status-changed, task.owner-changed, task.planning-assignment-changed) and the Task comments flow (task.comment-added) then send, for each event, a JSON of the form:

{
"schemaVersion": "1",
"source": "foxplan",
"event": "task.status-changed",
"occurredAt": "2026-09-08T16:05:12.345Z",
"environmentId": "…",
"actor": { "id": "…", "name": "Jane Doe", "email": "jane@example.com" },
"project": { "id": "…", "name": "Project Alpha", "code": "ALP" },
"task": { "id": "…", "projectId": "…", "name": "…", "status": "…", "owner": "…", "priority": 1, "startDate": "…", "endDate": "…", "percentComplete": 40, "description": "…", "lastModifiedDate": "…" },
"previous": { "…": "task state before the change" },
"comment": { "author": "…", "text": "…" }
}

Two HTTP headers come with every call: X-Foxplan-Event (event type) and, when a shared token is set in the configuration, X-Foxplan-Token. Check that token in your scenario to accept calls from FoxPlan only.

Coupling with project notifications

As with chat connectors, these flows only fire when the matching project notification options are enabled in Project definition.

Inbound: calling the FoxPlan API from the scenario

The API tab of each connector page lists the REST API operations recommended for an automation scenario, grouped by domain (authentication, projects, tasks, comments, resources, portfolios): list or create tasks, change a status, comment, read a project, create an assignment… It shows the base URL to use and links to the full Swagger documentation.

Authentication, in three steps:

  1. Create an API account in Settings → Connectors → API tab and grant it a role (e.g. Workspace Manager).
  2. Call POST /api/auth with Basic authentication (Auth ID:Auth Token, base64-encoded): the response carries an id_token.
  3. Send the Authorization: Bearer <id_token> header on every call.

The detailed procedure is in the API usage guide.

Importing the OpenAPI specification into the tool

The API tab also offers the OpenAPI (3.x) document for download: it matches exactly the scope of the displayed list, uses your instance address as server, and leaves out FoxPlan's internal services. Make (Custom apps › Import OpenAPI), Zapier (Platform UI › Import an OpenAPI spec) and Workato (Connector SDK › Import OpenAPI) turn it into a custom connector in a few clicks. n8n does not import OpenAPI: the file serves as a reference for HTTP Request nodes. Power Automate currently accepts version 2.0 only: the file is provided in 3.x, to be converted until they support it.

Isolation per instance

A middleware can only act on the instance (tenant) it is attached to, in both directions:

  • Outbound: the connector is installed on a workspace; it only receives that workspace's events, and the emitting instance's context is kept until the webhook is sent.
  • Inbound: the API account belongs to one company; the token it obtains carries that company, which alone determines the data that can be reached. A header forged in the scenario cannot switch it, and the account's rights (project roles) apply as for any user.