Relay

Pull any API on a schedule, keep just the bits you need, and serve them back as your own clean API.

Contents

    What is Relay

    I wanted a tool to mess about with APIs and easily transform them into the shape I wanted for my projects. For example, when building Watts Up I needed seven days of aggregated PV generation data, but without the fluff, without revealing too much private information, and in a simple response shape.

    I wasn't satisfied with tools like Node-RED and n8n: they have steep learning curves and aren't really designed for simple tasks like this.

    Try me

    Click through building an endpoint from a free sunrise and sunset API: tick sunrise and sunset, turn them into simple times, and publish. It's a demo, so nothing is sent anywhere; the response is a real one, captured on 28 September 2026.

    Setup

    Deploy with Docker, setting these environment variables:

    • ADMIN_PASSWORD: the dashboard password.
    • APP_SECRET: encrypts the tokens and secrets you enter in the dashboard.
    • PUBLIC_BASE_URL: where your endpoints are reached from outside, e.g. https://api.themisto.app.
    • TZ: your time zone, e.g. Europe/London.
    • ADMIN_HOST_PORT: the dashboard's port. It's separate so you never expose the dashboard to the outside web.
    • PUBLIC_HOST_PORT: the port your endpoints are served on. Forward this one with a proxy like Nginx Proxy Manager or Caddy.

    Also map a volume to /data, where Relay keeps its database and backups.

    Once it's running and healthy, try:

    curl http://<your-ip>:<PUBLIC_HOST_PORT>/healthz