xippo-open-suite

n8n community node for Axelor Open Suite

Package Information

Released: 3 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 0.7.0
Author: Aurelio Gisler

Documentation

n8n-nodes-xippo-open-suite

This package provides an n8n community node for Xippo Open Suite.
It lets you read and write Axelor records from n8n workflows and receive events pushed by the Axelor xippo-n8n module.

n8n is a fair-code licensed workflow automation platform.

What this node does

The Xippo Axelor node talks to Axelor's native REST web services
(/ws/rest/:model) and lets you load and write records directly from n8n:

  • Resource: Record
  • Operations:
    • Get — GET /ws/rest/{dataType}/{id}
    • Create — PUT /ws/rest/{dataType} (payload without id)
    • Update — POST /ws/rest/{dataType}/{id} (payload merged with id)
    • Delete — DELETE /ws/rest/{dataType}/{id}
    • Search — POST /ws/rest/{dataType}/search (list of field/operator/value
      criteria combined with AND, plus an optional limit)

Data Type expects the fully qualified Axelor model class name (for example
com.axelor.apps.base.db.Partner). Data (JSON) holds the record fields as a
JSON object. For Search, add one or more Criteria (field, operator, value);
supported operators are =, !=, <, <=, >, >=, like, notLike,
ilike, notIlike, in, notIn, isNull and isNotNull (value is ignored
for the null checks). Outbound requests are authenticated with Axelor's native
API key (see below).

The Xippo Axelor Trigger node receives events pushed by the Axelor
xippo-n8n module and validates them against a shared Bearer token and signing
secret.

Installation

Follow the official n8n guide for community nodes:

Credentials

Authentication is split by direction so that each side uses Axelor's own
native mechanism:

Xippo Axelor API (xippoAxelorApi) — n8n → Axelor

Used by the Xippo Axelor node for outbound calls. Authenticates against
Axelor's native REST web services via the API-KEY HTTP header.

Xippo N8n Webhook API (xippoN8nApi) — Axelor → n8n

Used by the Xippo Axelor Trigger node to validate incoming webhook requests
pushed by the Axelor xippo-n8n module.

  • Bearer Token: shared secret expected in the Authorization: Bearer header
  • Signing Secret: shared secret expected in the X-Xippo-Signature-Secret
    header

Both secrets must match the Bearer token and Signing secret configured in
the Axelor n8n app (AppN8n). Leave a field empty to skip that specific check.

Usage

  1. Add the Xippo Axelor node to a workflow.
  2. Create/select Xippo Axelor API credentials (Axelor URL + API key).
  3. Choose a Record operation (Get, Create, Update, Delete, Search)
    and set Data Type (fully qualified class name) plus the relevant parameters.
  4. Execute the node to read or write Axelor records.
  5. To receive events from Axelor, add the Xippo Axelor Trigger node and
    select a Xippo N8n Webhook API credential.

Compatibility

Built as an n8n community node package (n8nNodesApiVersion: 1).
Use with current n8n versions that support community nodes.

Development

Useful scripts from package.json:

pnpm build
pnpm dev
pnpm lint
pnpm lint:fix

Resources

GitLab CI Release

Die Pipeline in .gitlab-ci.yml baut und lintet das Package automatisch auf Branch-Pipelines. Der Job publish:npm läuft nur auf dem Default-Branch und ist bewusst manuell, damit nicht jeder Push automatisch eine neue npm-Version veröffentlicht.

Für den Publish müssen in GitLab unter Settings > CI/CD > Variables diese Variablen hinterlegt werden:

  • NPM_TOKEN: npm Access Token mit Publish-Rechten für n8n-nodes-xippo-open-suite.
  • GITLAB_TOKEN: GitLab Project Access Token oder Personal Access Token mit write_repository, damit die Pipeline den Tag v<package.json version> erstellen und pushen kann.

Beim manuellen Start von publish:npm wird die Version aus package.json gelesen, z. B. 0.7.0, daraus der Git-Tag v0.7.0 erstellt und danach das Package nach npm publiziert. Existiert der Tag bereits, wird er nicht erneut erstellt.

Discussion