Back to Nodes

Skhema

Last updated Sep 1, 2026

n8n community node for Skhema — the strategy platform. Trigger on new users and project members, create projects and elements, and complete member compliance.

174 Weekly Downloads
263 Monthly Downloads

Included Nodes

Skhema
Skhema Trigger

Description

@skhema/n8n-nodes-skhema

An n8n community node for Skhema — the
strategy platform. Trigger workflows when people join your organization or
projects, and create projects, strategy elements, and compliance
completions from any n8n workflow.

The node mirrors Skhema’s Zapier and Make integrations exactly (same triggers,
actions, field semantics, and output shapes), so an automation recipe built on
one platform replicates on the others.

Installation · Credentials · Triggers · Actions · Example · Resources

—

Installation

Follow the n8n community nodes installation guide:
in your n8n instance, go to Settings → Community Nodes → Install and enter
@skhema/n8n-nodes-skhema.

Self-hosted n8n requires Node.js 20.19–24.

Credentials

The node authenticates with Skhema OAuth2 (Authorization Code + PKCE, as a
public client — no client secret). A connection represents your Skhema
organization.

1. In Skhema, have an organization owner or admin register your n8n
instance’s OAuth callback URL under Connections:
https:///rest/oauth2-credential/callback
(for n8n Cloud: https://.app.n8n.cloud/rest/oauth2-credential/callback).
Skhema refuses OAuth flows targeting unregistered callbacks — this is what
ties a connection to your instance.
2. Add a new Skhema OAuth2 API credential in n8n. The Client ID is
prefilled (Skhema’s shared public client) and there is no secret to enter;
the endpoints and scopes are pre-configured.
3. Click Connect and authorize as an organization admin or owner, selecting
the organization the connection should act for.

> Upgrading to 0.3.0: delete and re-create your Skhema credential. Saved
> credentials keep the previous authorization endpoints, which no longer exist,
> and tokens issued by them can no longer be refreshed.

> Upgrading to 0.4.0 (breaking, SK-415): the workspace concept is renamed
> to project ecosystem-wide, with no compatibility aliases. The resource
> dropdown value Workspace is now Project; parameter names change from
> workspace/workspaceMemberId/workspaceFilter to
> project/projectMemberId/projectFilter; the trigger event moves from
> workspace.memberadded to project.memberadded; and every REST call moves
> from /v1/workspaces… to /v1/projects…. These parameter names are
> serialised into your saved workflow JSON, so **existing workflows will show
> the old parameters as unresolved after upgrading** — open each Skhema node
> and re-select its resource/operation; on the Skhema Trigger node, its saved
> Events value workspace.member_added must be re-selected as
> project.member_added. Re-map any expression that referenced workspaceId,
> workspaceMemberId, or workspaceFilter (e.g.
> {{ $json.newState.workspaceMemberId }} →
> {{ $json.newState.projectMemberId }}) to the new field names before
> reactivating the workflow.

Trigger node — Skhema Trigger

Instant, webhook-backed trigger — no polling. Subscriptions are registered
automatically when the workflow is activated and removed when it is
deactivated. Pick one or both events:

| Event | Fires when | Payload highlights |
| ———————- | ——————————– | —————————————————————————————- |
| New User | a member joins your organization | username, useremail, role, joined_at |
| New Project Member | a member joins a project | the above plus projectName, membership source, and pendingCompliance (see example) |

The New Project Member event also carries haspendingcompliance,
pendingcompliancecount, and pendingcompliancenames — flat fields that
are easy to filter on. An optional Project parameter restricts the trigger to
a single project; leave it empty to fire for every project in the
organization.

Action node — Skhema

| Resource | Operation | What it does |
| ———- | —————————— | ————————————————— |
| Project | Create | Create a project (name, visibility) |
| Project | Find | Find a project by name or ID |
| Element | Create | Create a strategy element in a project |
| Compliance | Find Requirement | List a project’s compliance requirements |
| Compliance | Complete Member Compliance | Mark a member’s compliance requirement as satisfied |

Create Element understands Skhema’s component → element-type structure: the
element-type options scope to the chosen component. Project, member, and
requirement fields accept values from dropdowns or — the common pattern —
mapped expressions from a trigger, e.g.
{{ $json.newState.projectMemberId }}.

Example: compliance hand-off

Automate project compliance (e.g. NDAs) end to end:

1. Skhema Trigger — New Project Member, filtered on
haspendingcompliance being true.
2. Your e-signature node (PandaDoc, DocuSign, …) sends the document to
user_email.
3. On completion, Skhema — Complete Member Compliance marks the requirement
satisfied — mapping projectId, newState.projectMemberId, and
metadata.pendingCompliance[0].id straight from the trigger.

The trigger payload carries everything the completion action needs, so the
Skhema side of the workflow is exactly two nodes.

Compatibility

License

MIT