Introduction to Weik.io

Learn about Weik.io, the open source integration and automation platform

Weik.io is an open-source platform for connecting systems such as CRMs, legacy databases, and third-party APIs without custom glue code. It handles integrations, API management, file transfers, and event routing in a single platform.

What Weik.io does

Instead of writing custom glue code for every connection, you can use Weik.io to handle:

  • Integrations: Connect systems using Apache Camel patterns.
  • API management: Create, deploy, and manage REST APIs.
  • File transfers: Schedule and monitor file movements with Rclone.
  • Event processing: Route CloudEvents using NATS messaging.

Platform components

Weik.io splits the work across six main parts:

  • Backend: The control center. It handles REST APIs, state, and configuration.
  • Agent: The worker. It runs the integrations (using Apache Camel and Rclone).
  • UI: The web dashboard for monitoring and management.
  • CLI: The command-line tool for deployments and automation.
  • APIM: The API gateway, built on Microsoft YARP.
  • NATS: The message broker that connects the components.

Configuration

You configure Weik.io using:

  • YAML files, when you want to define things declaratively.
  • The REST API, for programmatic control.
  • The CLI, for terminal operations.

It also includes logging, monitoring, and OpenTelemetry support out of the box.

Deployment options

Open source

Self-hosted deployment with source code access. You can run it on your own infrastructure or a local machine using Docker Compose.

Get StartedDocker Compose Setup

Cloud

A managed service where Weik.io handles updates and monitoring. Plans start at €49/month.

Get Started

Cloud Enterprise

A managed service with an SLA. Weik.io deploys it directly into your Azure account and provides enterprise-grade support.

Get Started

See Deployment Options for a detailed comparison.

Use cases

You can use Weik.io to:

  • Connect ERP and business systems without writing custom connectors from scratch.
  • Set up an API gateway to add authentication and rate limiting to internal APIs.
  • Keep databases in sync on a schedule.
  • Automate file transfers between legacy FTP servers and cloud storage.
  • Route events between microservices.

Example integration

Here is a basic integration that polls a database and sends data to an API:

- from:
    uri: "timer:sync?period=300000"
    steps:
      - to:
          uri: "sql:SELECT * FROM orders WHERE status = 'pending'"
      - marshal:
          json: {}
      - to:
          uri: "https://api.example.com/orders"

This runs every 5 minutes, reads pending orders from a SQL database, converts the rows to JSON, and sends them to an API with an HTTP POST request.

Next steps