Integration Artifacts
Integration artifacts are the building blocks of every integration. Each type is designed for a specific trigger and communication pattern: receiving HTTP requests, reacting to messages, processing files, running on a schedule, or serving AI agent tools. Choosing the right artifact for the job keeps your integration logic focused and your project easy to navigate.
Artifact categories
Automation
Run integration logic on a schedule or manually, without a network listener.
| Artifact | Description |
|---|---|
| Automation | Runs on a cron schedule or manually. Use for data sync, report generation, and routine maintenance jobs. |
AI integrations
Build AI-powered integrations that use large language models to reason, respond, and act.
| Artifact | Description |
|---|---|
| AI Chat Agent | An LLM-backed agent accessible via a chat interface or API. Covered in the AI Integrations section. |
| MCP Service | Exposes integration capabilities as tools via the Model Context Protocol for use by AI assistants. Covered in the AI Integrations section. |
Integration as API
Expose your integration logic as a callable endpoint. Clients send a request and receive a response.
| Artifact | Description |
|---|---|
| HTTP service | Exposes integrations as REST APIs. Use for CRUD operations, webhooks, and any HTTP request/response pattern. |
| GraphQL service | Exposes integrations as a GraphQL API. Use when clients need to query exactly the fields they want. |
| gRPC service | Contract-first service using protocol buffers. Use for high-performance communication between internal services. |
| WebSocket service | Full-duplex service over a persistent connection. Use for real-time, bidirectional communication. |
| TCP service | Raw TCP socket service. Use for custom binary or text-based protocol implementations. |
| WebSub hub | Publish/subscribe hub using the WebSub protocol. Use to distribute content updates to registered subscribers. |
Event integration
React to messages or events produced by external systems. The integration runs when something happens, not when a client calls it.
| Artifact | Description |
|---|---|
| Kafka | Consumes messages from Apache Kafka topics. |
| RabbitMQ | Consumes messages from RabbitMQ queues or exchanges. |
| MQTT | Subscribes to MQTT topics. Use for IoT devices and lightweight pub/sub messaging. |
| Azure Service Bus | Consumes messages from Azure Service Bus queues or topics. |
| Salesforce events | Reacts to Salesforce Platform Events, Change Data Capture, and Push Topics. |
| GitHub webhooks | Handles GitHub push, pull request, and issue webhook events. |
| POP3/IMAP4 | Polls a mailbox for incoming emails. |
| Solace | Subscribes to Solace PubSub+ topics with guaranteed messaging. |
| CDC — MSSQL | Captures row-level INSERT, UPDATE, and DELETE changes from SQL Server. |
| CDC — PostgreSQL | Captures row-level changes from PostgreSQL using logical replication. |
| Twilio | Handles incoming SMS, calls, and status callbacks from Twilio. |
File integration
Trigger an integration when files appear on a remote server or local directory.
| Artifact | Description |
|---|---|
| FTP/SFTP | Watches an FTP, FTPS, or SFTP server for new or modified files. |
| Local files | Watches a local directory for file arrivals and changes. |
Other artifacts
Reusable building blocks shared across multiple integrations in the same project.
| Artifact | Description |
|---|---|
| Functions | Reusable function definitions extracted from integration logic. |
| Data Mapper | Visual tool for field mapping and format transformation between data models. |
| Types | Custom record types and type definitions shared across the project. |
| Connections | Named, reusable credential and endpoint configurations for external services. |
| Configurations | Configurable variables and environment-specific settings managed via Config.toml. |
What's next
- Automation — run scheduled or on-demand integration jobs
- HTTP service — the most common starting point for integration APIs
- Kafka — consume and process messages from Apache Kafka
- FTP/SFTP — process files from remote file servers
- Connections — connect to external systems once and reuse across your integration