airprocess

Community n8n node for AirProcess API integrations.

Package Information

Released: this month
Downloads: 40 weekly / 705 monthly
Latest Version: 0.1.25
Author: Angelina

Documentation

n8n-nodes-airprocess (AirProcess)

Community n8n node for AirProcess.

What this package provides

  • One node: AirProcess
  • Route families grouped by HTTP method: GET, POST, PATCH, DELETE, Custom
  • Dynamic model, private-view, and field dropdowns loaded from AirProcess

Supported operations

GET

  • Find One Model: GET /model/{MODEL_ID}
  • Get a Record: GET /{MODEL_ID}/{RECORD_ID}
  • Get Records: GET /{MODEL_ID}
  • Get Models: GET /model
  • Get Users: GET /account
  • Get Applications: GET /application
  • Get Groups: GET /group
  • Get Workspaces: GET /workspace

POST

  • Create a Record: POST /{MODEL_ID}
    • Specify Body = JSON: send raw JSON body
    • Specify Body = Using Fields Below: build payload from selected fields
  • Find Records (Mongo): POST /{MODEL_ID}
    • Specify Filters = Using Fields Below: build filter from selected field/value pairs
    • Specify Filters = JSON: send raw JSON in filter
    • Sends a search payload with:
      • operation: "search"
      • filterSyntax: "mongo"
      • skip
      • limit
      • filter from fields or raw JSON (depending on selected mode)
  • Find Records by ID: POST /{MODEL_ID}
    • Select the model, then add record IDs individually or provide a JSON array.
    • Sends { "operation": "search", "ids": ["RECORD_ID_1", "RECORD_ID_2"] }.
  • Get Private View Data: POST /command/views/getViewData
    • Select the model, then a private view belonging to that model
    • Optionally filter by a model field, choose fields to return, and send a sort object
    • Uses the standard skip and limit options for paging

PATCH

  • Update a Record: PATCH /{MODEL_ID}/{RECORD_ID}

DELETE

  • Delete a Record: DELETE /{MODEL_ID}/{RECORD_ID}
  • Send to Trash: DELETE /{MODEL_ID}/{RECORD_ID} with body { "sendToTrash": true }

Custom

  • Custom GET, Custom POST, Custom PATCH, Custom DELETE
  • Accepts relative path or full URL
  • Optional custom headers (Send Headers)
  • Optional request body (Send Body)

Pagination

AirProcess supports offset paging through skip and limit. Add these number options from the node's Options menu:

  • Skip: number of records to skip (default: 0)
  • Limit: maximum number of records to return (default: 50)

The connector sends the values according to the route type:

  • Native GET routes: as URL query parameters, for example /{MODEL_ID}?skip=100&limit=50
  • Find Records (Mongo) and Get Private View Data: in the JSON body
  • Custom GET: as URL query parameters
  • Custom POST with JSON body: merged into the JSON body

For Find Records (Mongo), values added in Options take precedence over the operation's existing Skip and Limit fields.

Example: Find Records (Mongo)

Example payload generated by the node:

{
  "operation": "search",
  "filterSyntax": "mongo",
  "skip": 0,
  "limit": 10,
  "filter": {
    "flddHGP8O6VWZGpaj": "Done"
  }
}

You can build the same filter either:

  • with Using Fields Below
  • or with Specify Filters = JSON

Example: Find Records by ID

The Find Records by ID operation sends this body:

{
  "operation": "search",
  "ids": [
    "ec9e25bc-98c3-4bdf-a8ac-e0eaaca07832",
    "abb59191-78a9-47d8-a545-1b442c1ae5a9"
  ]
}

In the node, select Specify Record IDs = JSON to paste the ids value directly as an array:

[
  "ec9e25bc-98c3-4bdf-a8ac-e0eaaca07832",
  "abb59191-78a9-47d8-a545-1b442c1ae5a9"
]

Example: Get Private View Data

The Get Private View Data operation builds a request such as:

{
  "modelId": "MODEL_ID",
  "viewId": "PRIVATE_VIEW_ID",
  "filter": {
    "type": "filter",
    "fieldId": "FIELD_ID",
    "operator": "=",
    "value": "Example"
  },
  "sort": [
    {
      "fieldId": "FIELD_ID",
      "direction": "asc"
    }
  ],
  "fields": ["FIELD_ID_1", "FIELD_ID_2"],
  "skip": 0,
  "limit": 50
}

Authentication

The node uses the package credential AirProcess API (airProcessApi) with an API token (Bearer).

Base URL

https://app.airprocess.com

Local development

npm run dev

Build

npm run build

Lint

npm run lint

Version

These commands update package.json and package-lock.json together, without creating a Git commit or tag:

  • npm run version:minor: increments the last number (0.1.24 → 0.1.25).
  • npm run version:feature: increments the middle number (0.1.24 → 0.2.0).
  • npm run version:major: increments the first number (0.1.24 → 1.0.0).

Publish on npm (official/verified path)

  1. Create an npm automation token and add it in your GitHub repository secrets as NPM_TOKEN.
  2. Bump the package version (for example, npm run version:minor).
  3. Commit and push your changes to GitHub.
  4. Create a GitHub Release, or run the Publish n8n Node to npm workflow manually from the Actions tab.
  5. GitHub Actions publishes the package from a GitHub-hosted runner with npm provenance enabled.

Important:

  • For n8n Creator Portal verification, do not publish from your local machine.
  • The repository must be public, and the published version must come from GitHub Actions.
  • The package homepage should point to the repository or documentation page.

Publish a public npm package manually

Use this when you want to publish the package directly from your terminal instead of relying on GitHub Actions.

  1. Make sure the version in package.json is new.
  2. Build the package:
npm run build
  1. Log in to npm:
npm login
  1. Publish the package publicly:
npm run release

Notes:

  • Do not use npm publish directly in this project. The prepublishOnly hook runs n8n-node prerelease and blocks direct publishing.
  • If your npm account has two-factor authentication enabled for publishing, npm will ask for an OTP (one-time password).
  • The OTP code comes from the authenticator app linked to your npm account, such as Google Authenticator, Authy, Microsoft Authenticator, or 1Password.
  • If the publish fails because the version already exists on npm, bump the version again and retry.
  • For a first public publish, npm may require public access:
npm publish --access public --ignore-scripts

Only use this fallback if you explicitly need to bypass the project publish hook.

Workflow file:

  • .github/workflows/publish-npm.yml

Submit to n8n Creator Portal

After publishing your package, submit it through the n8n Creator Portal for verification.

Prepare these details:

  • npm package name: n8n-nodes-airprocess
  • repository URL: https://github.com/Angelina974/n8n-connector.git
  • documentation: this README.md
  • supported auth: AirProcess API credential (API token)

Recommended before submitting:

  • npm run lint
  • npm run build
  • ensure the latest published npm version matches your GitHub release

Discussion