rooted-wellness

List and create Rooted Wellness blog posts from n8n over the blog's OAuth2 API

Package Information

Released: this month
Downloads: 0 weekly / 0 monthly
Latest Version: 1.0.1

Documentation

Rooted Wellness node for n8n

List and create posts on a Rooted Wellness blog from n8n, over the blog's
OAuth2 API. The node handles token acquisition and refresh for you, so a
workflow only deals with post data.

Operations

Operation What it does
List Returns posts, one n8n item per post. Filter by status and category, cap the count, and optionally include the Markdown body.
Create Creates a post per input item, with English and/or Turkish translations, in a chosen category. Optionally published immediately or scheduled.

List ignores its input and returns everything it finds, which makes it useful
on its own or as the first step of a workflow. Create runs once per incoming
item, so it can follow a webhook, a schedule or an AI agent.

Requirements

  • The blog must expose the publishing API, with these environment variables set:
    • OAUTH_CLIENT_ID — the client ID you use in n8n
    • OAUTH_CLIENT_SECRET — the matching secret, at least 32 characters
    • OAUTH_TOKEN_TTL_SECONDS — optional, defaults to 3600, capped at 86400
  • The blog's SITE_URL must be set to its public origin, so generated post URLs
    point at the right place.

The node needs no n8n OAuth2 setup of its own. It calls
POST /api/oauth/token with the client_credentials grant, caches the token
for the run, and retries once if the blog rejects it.

Install

In n8n

  1. Open Settings → Community nodes.
  2. Choose Install, then either search for this package or paste a tarball
    URL.
  3. Restart n8n when prompted.

From a local build

npm install
npm run build
npm pack

Then install the resulting .tgz through the same dialog, or drop it into the
n8n container's /home/node/.n8n/nodes directory and restart n8n.

Credentials

Create a Rooted Wellness API credential:

Field Meaning
Blog URL Public origin of the blog, for example https://example.com.
Token URL Optional. Defaults to <Blog URL>/api/oauth/token.
Client ID Must match OAUTH_CLIENT_ID on the blog.
Client Secret Must match OAUTH_CLIENT_SECRET on the blog.

The category dropdown loads live categories from the blog when the credential
saves.

Notes on creating posts

  • At least one language must be selected, and each selected language needs a
    title, excerpt and body.
  • Leave Slug empty to derive one from the title. Slugs must be unique and
    lowercase.
  • Leave Read Minutes at 0 to estimate it from the body.
  • Publish At accepts a date such as 2026-10-01 or a full ISO timestamp. A
    published post with no timestamp goes live immediately.
  • Created posts are returned with publicUrls for each translation written.

Development

npm install       # install dependencies
npm run typecheck # type-check without emitting
npm run build     # compile to dist/
npm run watch     # rebuild on change
npm run clean     # remove dist/

Targets n8n's n8nNodesApiVersion 1 and is developed against
n8n-workflow@1.120.31.

License

MIT

Discussion