1. Home
  2. 5: Automation & Workflows
  3. Input Protocol + IoT Connector Nodes

HTTP Node Configuration Guide

The HTTP Node enables external systems to send data into Rayven workflows using an HTTP POST request. It supports multiple payload formats and optional authentication, with flexible handling of arrays, timestamps, and UID mapping.

What It Does

This node exposes a predefined HTTP endpoint that accepts inbound data. It is used to integrate devices, third-party systems, or external applications that can post data in JSON, XML, CSV, or compressed bulk formats. Upon receiving a valid payload, the node parses it and emits it into the Rayven workflow.


 Step-by-Step: How to Configure the HTTP Node

  1. Add the node

    • Drag the HTTP Node from the Inputs panel to your canvas.

  2. Configure endpoint and payload handling

    • Double-click the node to open the configuration window and complete required fields.

  3. Activate the node

    • Click the Activate button and then click Save. The node is now listening for incoming data.

  4. Send a POST request to the node URL

    • Transmit data to the provided URL using your device or application.


 Configuration Fields

 Section: General

Field Requirement Description
Node Name* Required Unique name to identify the node in your workflow.
URL Auto-filled This is the endpoint for incoming HTTP POST requests. Format:
https://my.rayven.io:8082/api/main?uid=xxxxx&deviceid=[[device_id]]
Replace [[device_id]] with the actual device ID configured in Rayven.
Password Optional Enables basic password authentication. Minimum 8 characters, with at least one uppercase, one lowercase, and one special character.
Payload Format* Required Format of incoming data. Options:
- JSON
- XML
- CSV
- JSON Array
- Bulk Compressed XML ZIP
- Bulk Compressed CSV
- GET Query Strings
 

Section: Advanced Features

These options allow for timestamp alignment and parsing nested JSON arrays.

Field Requirement Description
Location of Child Array Optional For JSON Array payloads, specify the path to the array (e.g., data.readings).
Timestamp JSON Key Optional Field in the payload that contains the timestamp value.
Timestamp Format Optional Format of the timestamp (e.g., yyyy-MM-dd HH:mm:ss, EPOCH, EPOCHMS).
Use HH for 24-hour clock.
Time Zone Optional Select the time zone used by the device sending the data (e.g., UTC, UID time zone).
 

Output Behavior

Each received record is parsed and emitted as a Rayven JSON payload. If a child array is defined, each element in the array becomes a separate emitted message.

Example Input:

 
{
"device_id": "pump-001",
"data": [
{ "temperature": 24.5, "timestamp": "2025-07-15 10:00:00" },
{ "temperature": 24.8, "timestamp": "2025-07-15 10:05:00" }
]
}

With:

  • Location of Child Array = data

  • Timestamp JSON Key = timestamp

  • Timestamp Format = yyyy-MM-dd HH:mm:ss

Output:

 
{
"uid": "pump-001",
"temperature": 24.5,
"timestamp": "2025-07-15T10:00:00Z"
}

And a second payload for the next item.


 Security

  • If a password is configured, external devices must use Basic Auth.

  • If [[device_id]] is part of the URL, it must match the UID configured in Device Management.


 Best Practices

  • Use consistent timestamp formats and time zones across devices.

  • Enable password protection for public-facing URLs.

  • Use JSON Array with Child Array location if sending batches of data.

  • Validate device IDs to match Rayven UIDs for proper routing.


 Use Cases

  • Ingest real-time telemetry from external microservices

  • Receive alert data from third-party systems

  • Capture batched sensor readings in compressed or array formats

  • Stream webhook content from partner platforms into the workflow


 FAQ

Q: Can this node accept HTTP GET requests?

A: Only GET Query Strings payload format supports GET requests. All others require POST.

Q: Does the node provide a response?

A: Yes. It returns standard HTTP response codes (e.g., 200 OK, 400 Bad Request) and may return minimal feedback (e.g., "Payload received").

Q: What happens if the payload format doesn’t match?

A: The request is rejected and not processed. Ensure format, keys, and structure match what is configured.