Appearance
Web
Serve and call HTTP, REST, SOAP, WebSocket and webhooks.
| Need | Plugins |
|---|---|
| Serve HTTP | Http listener, Http response |
| Build a REST API | Rest handler behind an Http listener |
| Serve SOAP | SOAP handler behind an Http listener |
| Call APIs | Http client |
| Authenticate callers | Http authentication, JWT issuer, JWT validator |
| Receive or send webhooks | Webhook receiver, Webhook sender |
| Talk WebSocket | Web socket listener, Web socket response, Web socket client |
text
Http listener → Rest handler → ... your logic → Http responseThe Rest handler publishes an OpenAPI document, and the webhook plugins generate client and receiver code with Connect an app.
Plugins
| Plugin | What it does | Pins |
|---|---|---|
| Http authentication | Reads the credentials of a request received by an Http listener and passes them on, so the next components can check them. It does not verify anything itself: connect Output to the component that checks the credentials (a database lookup, a file, a Script, a JWT validator) and raises an error to reject the request. Connect Input to the listener's Authentificate pin; when this component or one after it raises an error, the listener answers 401 and the request never reaches the listener's Output pin. | Input, Output |
| Http client | Sends an HTTP request to a remote server and emits the response as a WebHttpResponse. Use it to call REST APIs, download files or post forms. The request is built from the configuration, optionally overridden by a WebHttpRequest on the input. | Input, Output |
| Http listener | Embedded web server: listens on a port and path, emits every incoming request as a WebHttpRequest and sends the response it receives back on its Input pin (or from an Http response component). Use it to expose a flow as an HTTP endpoint. | Start, Output, Input, Authentificate |
| Http response | Sends the HTTP response for a request received by an Http listener. Place it at the end of the request branch; it finds the waiting request through the flow metadata, so it must run in the same branch that started at the listener. | Input, Continue |
| JWT issuer | Creates a signed JSON Web Token for a user, and optionally a refresh token. Use it in a login endpoint after the user's credentials have been checked; the JWT validator with the matching key accepts the token later. | Input, Output |
| JWT validator | Validates a JSON Web Token: from Http authentication (type 2 JWT, or Bearer), or a token sent as a TextRecord. It checks the signature with a shared secret, a public key or the keys of an OpenID Connect provider (Entra ID, Auth0, Keycloak, ...), then the lifetime, issuer, audience and required claims, and puts the claims into the flow metadata. An invalid token raises an error that the Http listener answers with 401 (403 for a missing required claim). | Input, Output |
| Rest handler | Handles one REST operation (method + route) behind an Http listener: it accepts only matching requests, extracts route, query and body parameters into a typed record and emits it. Connect several Rest handlers to the same listener Output pin, one per operation; each request goes to the handler(s) whose route matches. It also serves an OpenAPI (swagger.json) document for all Rest handlers of the flow. | Input, Output, Validate |
| SOAP handler | Answers one SOAP operation behind an Http listener: it reads the request envelope (SOAP 1.1 or 1.2, document/literal wrapped) into a typed record, emits it, and sends what the flow returns to its Response pin back as the SOAP response, or a SOAP fault. Connect one SOAP handler per operation to the same listener Output pin; together they are one SOAP service, and they serve its WSDL at ?wsdl. | Input, Output, Validate, Response |
| Web socket client | Connects to a remote WebSocket server, sends every input record as a message and emits every message received from the server. One connection per component, kept open while the flow runs. | Input, Output, Start, OnConnect |
| Web socket listener | Embedded WebSocket server: accepts WebSocket connections on a port and path, emits every received message and sends messages back to a connected client. Use it for push or chat style endpoints; reply with the listener's Input pin or a Web socket response component. | Start, Output, Input, Authenticate |
| Web socket response | Sends a message back to the client connection that delivered the current message to a Web socket listener. The connection is taken from the WebSocketListener metadata, so place it in the branch that starts at the listener Output pin. | Input, Continue |
| Webhook receiver | Receives webhooks (HTTP callbacks other systems send when something happens). Place it right after an Http listener (on its Output pin). The listener owns the URL, port and TLS; this component does the webhook specific work: answers URL checks, checks the signature, drops repeated deliveries and answers the sender quickly. | Input, Output, Rejected |
| Webhook sender | Turns any record into a signed webhook request. Connect its Output to an Http client, which does the actual sending (auth, TLS, client certificates, timeouts). The signature formats are the same ones the Webhook receiver checks, so a Viaducta flow can send to another one. | Input, Output |