Overview
Event-driven Flows are triggered when external systems send requests (HTTP, API calls, webhooks) to Etlworks endpoints (listeners).
This article explains how to test these Flows directly from Etlworks without relying on an external system.
How event-driven Flows work
- You create a Flow with a listener (HTTP, REST, webhook)
- Etlworks exposes an endpoint
- External systems send data (payload) to that endpoint
- The Flow is triggered automatically
See: User-defined APIs and listeners
Testing a Flow from Etlworks
To test an event-driven Flow, create a second Flow that sends a request to the listener.
Step 1. Prepare test data
Create:
- A source Connection (file, cloud storage, database, etc.)
- A Format for the payload (JSON, XML, CSV, etc.)
This represents the data that would normally be sent by an external system.
Step 2. Configure destination (listener endpoint)
Create a destination HTTP or Etlworks API Connection that points to your listener.
Example:
Etlworks URL:
- https://app.etlworks.com
- Listener path: /hl7/patient
Connection parameters:
- Endpoint path: /rest/v1/httplistener/hl7/patient
- Method: POST
- User: API user
- Password: API password
Step 3. Create sender Flow
Create a Flow with:
- Source: test data (from Step 1)
- Destination: listener endpoint (from Step 2)
- Format: same as source
This Flow simulates an external system sending data.
Step 4. Run the test
Run the sender Flow.
This will:
- Send the payload to the endpoint
- Trigger the event-driven Flow
- Execute the Flow as if it was called externally
Notes
- You can test both push (POST/PUT/PATCH/DELETE) and pull (GET) endpoints
- Authentication must match the API user configured for the listener
- The sender Flow can be reused for regression testing
Summary
- Event-driven Flows are triggered by HTTP/API calls
- Testing is done by creating a sender Flow
- This approach avoids dependency on external systems
- Useful for development, debugging, and validation