Output to API (GET Endpoint) Node Configuration Guide

The Output to API node exposes a read-only HTTP GET endpoint for securely retrieving structured workflow data from Rayven. It allows external systems to fetch filtered, mapped, and optionally raw payloads using a customizable API endpoint

What It Does

This node publishes a device-specific, authenticated API endpoint. When called, it returns a response containing selected fields from recent payloads, formatted as JSON. You can control which fields are visible, assign display names, map internal fields to custom table columns, and configure visibility for external consumers.


 Step-by-Step: How to Configure the Node

  1. Add the node

    • Drag the Output to API node from the Outputs section onto your workflow canvas.

  2. Open the configuration panel

    • Define authentication, endpoint behavior, and output structure.

  3. Map internal fields to API output

    • Add columns to expose, assign display names, and configure formatting or visibility.

  4. Restrict endpoint access by IP (optional)

    • Apply subnet-based filtering for enhanced security.

  5. Activate the node

    • Save and activate to expose the endpoint for external requests.


⚙️ Configuration Fields

 Endpoint Access & Authentication

Field Requirement Description
Node Name* Required Descriptive name for the node.
Password Optional If provided, adds a password-based security check to API access.
API Endpoint* Required This field is auto-populated and represents the public endpoint.
Example:
https://my.rayven.io:8082/api/apipull?uid=...&deviceid=[[UID]]

Replace [[device_id]] at runtime with the actual UID.
IP-Based Restriction Optional Enter comma-separated IPs or subnets (e.g., 192.168.1.0/25) to restrict access.
Pass Data as Received Optional If enabled, the node returns the raw, untransformed internal payload. Use only when full context is needed.
 

 Output Format

Field Requirement Description
Outbound Format* Required Must be set to JSON. Defines the response structure format.
 

 Column Configuration

Each response field is defined via columns. You can expose one or more fields from the payload and customize their display and type.

Column Structure

Field Requirement Description
JSON Key* Required Key from the incoming payload (e.g., temperature, status).
Custom Table Field Optional Optional field mapping from a custom table (e.g., city > CityID).
Display Name* Required Label used in the API response (e.g., Device, Event Date).
Field Type* Required One of:
- UID
- Timestamp
- JSON Key
- Event Date
Visibility Optional Defaults to Show. Set to Hide if this field should not appear in the output.
 

Repeat this setup for each field to expose (e.g., Column 1, Column 2, etc.).


 Example Configuration

Column JSON Key Custom Table Field Display Name Field Type Visibility
1 city_id city > CityID City UID Show
2 timestamp   Event Date Timestamp Show
3 temperature   Temp Value JSON Key Show
 

 API Usage

Sample GET Request:

 
GET https://my.rayven.io:8082/api/2/apipull?uid=abcdef123456&deviceid=device-01

Sample JSON Response:

 
{
"City": "Chicago",
"Event Date": "2025-07-15T12:30:00Z",
"Temp Value": 25.7
}

 Best Practices

  • Always replace [[UID]] in the endpoint URL with a valid UID before calling it.

  • Use IP-based restriction and/or password to prevent unauthorized access.

  • Keep Display Names user-friendly if the data is consumed by UI tools or APIs.

  • For public-facing integrations, ensure rate-limiting and logging are implemented on the consumer side.


 Use Cases

  • Provide external teams or systems with read-only API access to device data

  • Integrate with external reporting tools, BI dashboards, or partner systems

  • Support third-party platforms with on-demand access to live or recent values

  • Expose controlled, structured API views for integration without database exposure


 FAQ

Q: What happens if no columns are defined?

A: The API will return an empty object or raw data if Pass Data as Received is enabled.

Q: Can this output be paginated?

A: No. This endpoint returns a flat payload with the most recent values.

Q: How often is the data refreshed?

A: It reflects the most recent payloads sent into the Rayven workflow for that UID.