1. Home
  2. 9. Data Ingestion & Integrations

Custom Integration with API Nodes

Use API nodes in Rayven workflows to connect your application with any third-party system—without writing code.

Overview

Rayven allows you to create custom integrations with external systems using a set of API connector nodes. These nodes enable both Push and Pull interactions, allowing data to be sent to or retrieved from third-party applications. Whether you're working with a RESTful API, internal data service, or customer-specific system, Rayven’s API nodes make it easy to establish secure, dynamic, and flexible integrations using low-code workflows.


Understanding API Nodes in Rayven

Rayven provides a set of general-purpose API nodes for integrating with external systems using standard web protocols. These nodes are distinct from product-specific connectors (e.g. Google Sheets, Xero, Slack), which are documented separately.

General Integration Nodes

  • API Node
    Enables two-way integration with external RESTful APIs. Use GET to pull data into Rayven, or use POST or PATCH to push data from your workflow to another system.

  • HTTP Node
    Generates a Rayven-hosted URL endpoint that external systems can use to push data into your workflow via HTTP POST. Suitable for webhook-based ingestion.

  • Output to API Node
    Exposes a Rayven endpoint that external systems can call (via GET) to pull data from a specific point in your workflow. You define the structure and content of the returned payload.

⚠️ Note: This article focuses specifically on general-purpose integration nodes. Product-specific connectors (e.g. Xero, Google Sheets) are covered in other articles.

Use Cases

  • Fetch external data into your application.

  • Make your Rayven data available for external systems to consume.

  • Trigger logic based on incoming API calls.

  • Expose specific parts of your workflow to external endpoints with controlled schemas.


Creating a Custom Integration

To build a custom integration using API nodes, follow these steps:

  1. Open or Create a Workflow

    • Navigate to your application in the Rayven Workspace.

    • Click Workflows.

    • Either open an existing workflow or click Create New to start from scratch.

  2. Choose the Right API Node Type

    Choose the one that matches your data flow requirements:

    • API Node
      Use this node to call external systems.

      • GET requests allow you to pull data into Rayven.

      • POST or PATCH requests allow you to push data out to an external system.

    • HTTP Node
      Use this node when you want to receive data into Rayven. It generates a unique endpoint URL that external systems can POST to. Ideal for webhook-style integrations.

    • Output to HTTP Node
      Use this node to push data from a workflow to an external system via HTTP POST.

      • You configure the destination endpoint URL.

      • You can choose the output format as JSON, XML, or plain string.

      • This node is ideal for notifying or updating other platforms or triggering actions via webhooks.

    • Output to API Node
      Use this node to expose a secure Rayven-hosted API endpoint. External systems can GET data from your workflow by calling this endpoint. You define the payload structure returned.

  3. Configure Node Settings

    • For API Nodes, set the request method (GET, POST, or PATCH), URL, headers, and body payload (if applicable).

    • For HTTP Nodes, copy the generated endpoint URL and share it with the external system that will be posting data.

    • For Output to API Nodes, define the structure of the data you want external systems to receive when they call the endpoint.

  4. Use Inspect Data to Validate

    • Each node includes an Inspect Data tab that shows recent incoming and outgoing payloads.

    • Use this to verify request formatting, headers, and response structure as you build and test your integration.

     

  5. Test Your Integration End-to-End

    • Simulate calls from or to the external system using Postman or similar tools.

    • Ensure your payload mappings, data flow, and triggers behave as expected.

🔍 These API integration nodes are designed for flexible, general-purpose use. If you're integrating with specific platforms like Google Sheets, Xero, or Slack, refer to the relevant connector documentation.



Best Practices

  • Use Trigger Nodes with API Nodes for polling: Allows you to periodically fetch data from an external API.
  • Use Output to API when exposing data: Ideal when you want external systems to request information from Rayven.
  • Secure your endpoints: Leverage Rayven’s access token and authentication controls for any exposed Output to API nodes.


Summary

Rayven's API nodes allow you to build secure, dynamic integrations with other systems—entirely through the Workflow Builder. With support for both sending and receiving data, you can enable your application to become part of a broader enterprise ecosystem. Whether integrating ERP, CRM, custom services, or IoT platforms, the flexibility of API nodes ensures you can tailor the data flow to your exact needs.


FAQs

What’s the difference between the API Node and the Output to API Node?
The API Node is used to call external systems. It supports GET (to pull data into Rayven) and POST/PATCH (to push data out).
The Output to API Node exposes a Rayven-generated endpoint that external systems can call via GET to retrieve data from your workflow.

Can I create a custom payload structure in Output to API nodes?
Yes. You can define a flat JSON structure by specifying each column's JSON key, display name, and field type in the Output to API node. This is useful when you want a clean, structured response.
Alternatively, if you need full control over the response format—including nested objects or arrays—you can enable the "Pass Data as Received" option. This will return the incoming payload exactly as it was passed into the node, allowing for complete customisation of the output.

Can I secure the Output to API endpoint?
Yes. You can set a password that external systems must provide, and optionally restrict access by IP address/subnet

How do I handle authentication for API nodes?
For outbound API calls (e.g. using the API or HTTP Node), you can include credentials using custom headers (e.g. Authorization: Bearer <token>) or provide a username/password for basic authentication.

Can I use dynamic values in my API request?
Yes. Use double-square bracket syntax (e.g. [[fieldname]]) in the URL, headers, or body fields to insert values from the incoming payload dynamically.

When should I use the HTTP Node?
Use the HTTP Node to receive incoming data into Rayven. It creates an inbound URL that external systems can POST to. It's best for webhook-style integrations.

What’s the difference between Output to HTTP and Output to API?
Output to HTTP pushes data out of Rayven to a third-party system via POST. You control the destination and output format (JSON, XML, or String).
Output to API exposes a Rayven-hosted GET endpoint for external systems to call and retrieve data.

Can I use the API Node to both send and receive data?
Yes. Use GET to retrieve (pull) data from an external system, or POST/PATCH to send (push) data to it.

Can I define the format of outgoing data?
Yes.

  • Output to HTTP lets you select JSON, XML, or String formats.

  • Output to API allows you to define a custom JSON response structure via its column configuration.