Skip to content

n8n

n8n’s HTTP Request node is all you need — no community node.

  1. Make a credential. In n8n, create a Header Auth credential: name Authorization, value Bearer pbv_….

  2. Add an HTTP Request node after whatever produces the post — a form, an RSS item, a row from a sheet — and set:

    Field Value
    Method POST
    URL https://app.pubrivo.com/api/posts
    Authentication Generic Credential Type → Header Auth → the credential above
    Send Body On, as JSON, using JSON
  3. Write the body with expressions from the earlier node:

    {
    "text": {{ JSON.stringify($json.text) }},
    "channelIds": ["5b0b6c1e-9f4a-4a57-8d1e-2c3f4a5b6c7d"],
    "scheduledAt": "{{ $json.when }}"
    }

    JSON.stringify keeps quotes and line breaks in the text from breaking the JSON. when must be an ISO instant with Z or an offset — in n8n, {{ $json.when.toISO() }} from a Luxon date gives one.

Get the Channel ids once, with a GET to https://app.pubrivo.com/api/channels using the same credential.

A refused Post is a 422 with blockers. Turn on Never Error in the node’s options, or its error output, to route those on instead of stopping the workflow.