npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@joshuanode/n8n-nodes-symao

v0.5.0

Published

Official n8n community node for sending metadata-only workflow telemetry to Symao Portal.

Readme

n8n-nodes-symao

Official n8n community node for sending metadata-only workflow outcomes and operational signals to Symao Portal.

Installation

Install @joshuanode/n8n-nodes-symao through Settings > Community Nodes in n8n. Symao Portal is available only to Symao Automation Partner customers.

Credentials

Create an ingestion credential for the customer environment in Symao Portal, copy the token once, and save it in an n8n Symao Portal API credential. Each token is bound to one customer workspace and is write-only; it cannot read portal data.

Use a separate credential for each customer environment. The node sends telemetry only to https://portal.symaosystems.com; the destination cannot be changed from a workflow credential.

Operations

  • Completed Work records a positive quantity of completed business outcomes. Configure its business-friendly outcome name, time saved per unit, and job role in the node. The Portal snapshots that definition for every event and applies Portal-managed labor rates and FTE assumptions. Existing nodes with those fields blank continue using legacy Portal-managed models.
  • Expected Exception records expected paths that prevent straight-through automation.
  • Manual Work Needed records work that still required a person.
  • Business Failure records customer-safe business/domain errors. General n8n execution failures are collected separately through the n8n API to avoid double counting.
  • Advanced Metric records a registered counter, gauge, or duration value.
  • Process Milestone records process progress for cycle-time and SLA reporting.

The node batches up to 25 events per request while still emitting one API receipt for every input item and preserving n8n item pairing. Each receipt identifies whether the event was accepted or duplicated, matched to a collected workflow, covered by a measurement model, and included in reporting or retained as test data. Enable n8n's Continue On Fail setting when a telemetry delivery failure should not stop the business workflow.

For self-service reporting, choose Eligible Request Completion. Provide a stable internal request ID, request type, and fulfillment mode. The node hashes the request ID locally, emits one deduplicated eligible-request fact, and never sends the raw ID. Staffing, endpoint inventory, service-quality, and Symao delivery-time inputs belong in Portal administration or dedicated connectors rather than customer workflows.

Data safety

This node is deliberately metadata-only. Never place workflow input/output bodies, provider responses, authorization headers, secrets, stack traces, names, email addresses, or customer record content into a summary or metadata field.

The node automatically sends only source identifiers required for correlation: n8n instance, workflow, execution, execution mode, node, operation, timestamp, and idempotency key. Manual and evaluation executions are retained as test telemetry and excluded from customer reporting. Custom metadata is flat, string-only, length-bounded, limited to six entries, and selected from Portal's supported metadata keys. The workflow designer supplies the operational time estimate and job-role name; hourly wages, subscription costs, FTE assumptions, and dollar calculations are never sent from n8n.

Idempotency

By default, the node derives a deterministic key from the n8n instance, workflow, execution, node run, input item, and operation. This suppresses normal retries and keeps repeated loop runs within one execution distinct.

For deduplication across entirely separate workflow executions, set Business Record ID to a stable internal ticket, alert, request, asset, or provider record identifier. The node hashes that value locally together with the workflow, node, operation, and outcome key; the raw value is never transmitted. Do not use names, email addresses, or other personal identifiers. Existing workflows using Legacy Idempotency Key remain supported, but new workflows should prefer Business Record ID.

Development

npm install
npm run build
npm run lint
npm test
npm pack --dry-run

Only dist is included in the published package.