Back to Nodes

eccenca Corporate Memory

Last updated Jul 14, 2026

n8n community node for eccenca Corporate Memory (CMEM): execute Data Integration workflows and (v2) run SPARQL queries and query-catalog reports.

20 Weekly Downloads
500 Monthly Downloads

Included Nodes

eccenca Corporate Memory

Description

@eccenca/n8n-nodes-corporate-memory

An n8n community node for
eccenca Corporate Memory (CMEM).

Provides a Corporate Memory credential (OAuth2 client-credentials grant, via
n8n’s built-in OAuth2) and a Corporate Memory node with three resources:
Workflow (execute DataIntegration workflows), SPARQL (SELECT/ASK queries),
and Query Catalog (list and run saved, parameterized queries). See
tasks/spec.md and tasks/backlog.md.

Installation · Credentials ·
Operations · Development

Installation

In a self-hosted n8n: Settings → Community Nodes → Install and enter
@eccenca/n8n-nodes-corporate-memory. See the n8n docs on
installing community nodes.

Credentials

Create an eccenca Corporate Memory OAuth2 API credential. It extends n8n’s
built-in OAuth2 and uses the client-credentials grant, so n8n obtains, caches
and refreshes the access token for you (no interactive sign-in).

| Field | Notes |
| —– | —– |
| Client ID | OAuth2 client (e.g. the cmemc service-account client) |
| Client Secret | client secret of the (confidential) service-account client |
| Base URL | e.g. https://cmem.example.com (trailing slash optional) |
| OAuth Token URL | optional; leave empty to derive {Base URL}/auth/realms/cmem/protocol/openid-connect/token; set it for a non-default Keycloak realm or host |
| DataIntegration / DataPlatform Base URL | optional overrides; default to {Base URL}/dataintegration and {Base URL}/dataplatform |

> Field order follows n8n’s OAuth2 credential layout: the inherited fields (Client ID,
> Client Secret, plus Send Additional Body Properties and Allowed HTTP Request Domains)
> render first, then the CMEM-specific fields.

Use Test in the credential dialog to verify the token can be obtained and the
DataPlatform API is reachable.

> The resource-owner password grant is not offered: n8n’s built-in OAuth2
> supports only the authorizationCode, clientCredentials and pkce grants, and
> the client-credentials service-account flow covers the automation use case.

Operations

Resource: Workflow

Project and Workflow are searchable dropdowns populated from your instance.

  • Execute — run a workflow synchronously (POST /api/workflow/result/…),
  • optionally with a payload. Pick the Payload content type (None / JSON / XML /
    CSV) and the Result Format (JSON / XML / CSV / N-Triples) independently — they
    need not match. A workflow with no variable output returns
    { executed: true, hasResult: false }; a JSON array result can be split into one
    item per element.

  • Execute (Async) — start a workflow execution
  • (POST /api/workflow/executeAsync?output:type=…); returns { activityId, instanceId }.

    Resource: SPARQL

  • Select Query — run a SPARQL SELECT/ASK (GET /proxy/default/sparql) and get
  • one item per result row. Simplify returns just each variable’s value; off
    returns the full binding object (type, value, datatype, language). Optional
    default/named graph URIs.

    Resource: Query Catalog

    Queries live in one or more catalog graphs; a Catalog Graph dropdown (default
    All Catalogs) scopes the picker, mirroring CMEM’s own catalog selector.

  • List Queries — list saved queries across the selected catalog(s); each item
  • carries its source catalogGraph.

  • Run Report — execute a saved query by IRI with parameter substitutions

({{placeholder}} → value) and get the CSV result parsed into items
(GET /api/queries/reports/perform); toggle off to return the raw CSV string.

Development

Requires Node.js v22+. Tooling is provided by
@n8n/node-cli; a
Taskfile.yml (go-task) wraps the
lifecycle.

task deps     # install dependencies
task dev      # run a local n8n with the node hot-reloaded (http://localhost:5678)
task test     # jest unit tests
task lint     # n8n-node lint (verification-grade)
task build    # compile + copy icons into dist/
task check    # lint + test + build (the CI gates)

The equivalent npm scripts (npm run dev|test|lint|build) work too. Without
go-task, run the npm scripts directly.

Manual end-to-end check: task dev, add the Corporate Memory credential, run its
Test, then add a Corporate Memory node and execute a known workflow.

CI & publishing

.gitlab-ci.yml runs lint + test + build on merge requests and
branches, and publishes to npm (with provenance) on v* tags. Publishing needs an
NPM_TOKEN CI/CD variable; npm provenance becomes mandatory for community nodes
from 2026-05-01.

License

MIT.