Description
n8n-nodes-pewpros
This is an n8n community node. It lets you use the Pewpros
CRM, events, and learning platform in your n8n workflows.
Pewpros is a multi-tenant platform for contacts, tags, lists, events, courses,
certifications, conversations, waivers, and affiliate leads. This package
provides an action node for the REST API, a trigger node that starts
workflows from Pewpros outbound webhooks, and a poll trigger node for
record types without webhook topics (waiver signatures, affiliate leads).
n8n is a fair-code licensed
workflow automation platform.
Installation
Credentials
Operations
Trigger
Poll Trigger
Compatibility
Resources
Installation
Follow the
installation guide
in the n8n community nodes documentation.
In your n8n instance, go to Settings > Community Nodes, select Install,
and enter n8n-nodes-pewpros.
Credentials
This package ships two credential types. The Base URL must be https://
(plain http:// is rejected so your key is never sent in cleartext; localhost
is the one exception, for local development).
Pewpros API (Bearer)
Used by the Pewpros action node and the Pewpros Trigger node. Most write
operations require the user to have an admin role (owner, instructor,
staff, or super_admin).
- API Token — the user’s Bearer API token.
- Base URL — your Pewpros instance, no trailing slash.
- Partner Key — the
skpartner...secret. - Base URL — same format as above.
- Partner API (
X-Partner-Key) — facility/booking sync (customers, range - Public funnel API (
X-Tenant-Key) — anonymous lead capture and public - New Waiver Signature — optionally filtered by waiver, contact, event, or
- New Affiliate Lead — optionally filtered by status or source.
- Requires n8n with
n8nNodesApiVersion1 (n8n-workflow ^1.82.0). - Node.js
>=20.15.
– Production example: https://app.pewpros.com
– Development example: https://dev.pewpros.com
– Tenants on custom domains use their own domain.
Verified against GET /api/v1/auth/me.
Pewpros Partner API (X-Partner-Key)
A secret server-to-server key (skpartner...) for the facility-management
partner API under /api/v1/partner (customers, memberships, range, bookings,
orders, events). Generate and rotate it in Site Settings → Integrations;
it is not the public funnel key (pk_...). There is no dedicated partner
action node yet — pair this credential with n8n’s built-in HTTP Request node
to call partner endpoints.
Verified against GET /api/v1/partner/whoami.
Operations
| Resource | Operations |
| — | — |
| Contact | Get Many, Get, Create, Update, Delete, Create or Update, Get Activities, Add Tags, Remove Tags, Bulk Add Tags, Add to List, Remove from List |
| Contact Note | Get Many, Create, Update, Delete |
| Tag | Get Many, Create, Update, Delete |
| List | Get Many, Create, Update, Delete |
| Conversation | Get Many, Get, Get Messages, Create, Send, Send Message, Update, Close, Reopen |
| Event | Get Many, Get, Get Upcoming Sessions, Get Registrations, Register Attendee |
| Course | Get Many, Get, Get Lessons, Get Enrollments, Enroll |
| Certification | Get Many, Get, Get Download URL |
| Group | Get Many, Get, Create, Update, Delete, Get Members, Invite |
| Membership | Get Current, Get Many, Get |
| Waiver | Get Many, Get, Get Many Signatures, Get Signature, Get Contact Status |
| Affiliate Lead | Get Many, Get, Get Contact Attribution |
Contact Get Many supports filtering by search, status, contact type, tag IDs,
list IDs, and an Updated Since timestamp for incremental syncs. Waiver
Get Many Signatures (filter by waiver, contact, event, or course) and
Affiliate Lead Get Many (filter by status or source) follow the same
Updated Since incremental-sync contract. Get Contact Status answers “has
contact X signed waiver Y?”; Get Contact Attribution returns a contact’s
affiliate lead handoff rollup.
Scope
The Pewpros action node targets the Bearer-token REST surface
(/api/v1), which covers the CRM, messaging, events, and learning resources used
in automations. Not covered by a dedicated node:
reservations, resource bookings, orders). Use the Pewpros Partner API
credential with n8n’s HTTP Request node.
event registration.
App-internal surfaces (community, push notifications, wallet passes, telephony,
QR, timers) are intentionally not exposed.
The full API is documented at pewpros.com/docs
(OpenAPI spec at /api/docs/openapi.json).
Trigger
The Pewpros Trigger node starts a workflow when a Pewpros event fires,
instead of polling. It uses the Pewpros API (Bearer) credential.
On activation it registers the workflow’s webhook URL as an outbound-webhook
subscription (POST /api/v1/webhooks/register, idempotent — re-activating never
creates duplicates) and removes it on deactivation. Use **Listen for test
event** to receive a synthetic sample without waiting for real traffic.
Select one or more Events:
contact.created, contact.updated, registration.created,
registration.cancelled, enrollment.created, order.paid,
conversation.created, message.received, membership.created,
membership.updated, membership.cancelled.
Signature verification is on by default: each delivery carries
Pewpros-Signature: t= where
v1 = HMAC_SHA256(secret, ". The node recomputes it with the
subscription secret and rejects mismatches with 401. Leave it enabled.
Poll Trigger
Waiver signatures and affiliate leads are not (yet) outbound-webhook topics, so
the Pewpros Poll Trigger node covers them by polling on the schedule you
choose in n8n’s Poll Times setting:
course.
It uses the API’s updated_since cursor (inclusive, ascending): each poll
fetches everything updated since the last high-water mark, advances the cursor,
and dedupes the boundary so records are emitted exactly once. The first poll
after activation sets the cursor to “now” rather than replaying history; a
manual test run returns the most recent records without moving the cursor.
Note the cursor fires on updates too — a signature or lead that is modified
later will be emitted again.
Compatibility
Development
npm install
npm run build # compile TypeScript + copy icons to dist/
npm run lint # n8n community node lint rules
npm run dev # tsc --watch
To test locally, link the built package into your n8n custom nodes folder and
run an n8n instance pointed at your Pewpros dev host.