Product schematicSwiss AI Control LayerOpenAI · Claude · Google

Change the URL, keep your tools, see the routes.

RouterLab sits between your SDKs, agents, workflows, and providers like OpenAI, Claude, Google, and open-source models to make routes, credits, usage, and costs visible.

IntegrationSchematic

RouterLab integration schematic

RouterLab API · CH / DE

Existing

App

OpenAI SDK

Existing

Agent

Claude Messages API

Existing

Workflow

Job / automation

Replace baseURL

from

api.openai.com/v1

to

api.routerlab.ch/v1

ROUTERLAB

API

Routes · credits · statuses

OpenAI

OpenAI SDK

Claude

Claude Messages API

Google

OpenAI-compatible

Open source

OpenAI-compatible

Dashboard usage

Visible return

Usage

1,248 req

Credits

CHF 42.80

Before / with RouterLab

The difference is not a new app. It is a control point.

The homepage explains why RouterLab exists. This page shows what changes in the technical flow.

Baseline

Without a central layer

  • OpenAI, Claude, and Google SDKs and keys are split
  • Costs scattered across tools
  • Routes are hard to explain
RouterLab

With RouterLab

  • One RouterLab URL on the client side
  • Named provider routes
  • Credits, usage, and catalog visible

Detailed flow

What happens when a request goes through RouterLab.

The sequence is deliberately short: keep integration simple, make routing observable.

01

The app keeps its SDK

OpenAI SDK, Claude Messages API, agent, or workflow keep their current logic.

02

The baseURL points to RouterLab

The main change is the endpoint, not a full rewrite.

03

RouterLab publishes the route

Provider, format, status, and route type stay explicit.

04

The dashboard attaches usage

Credits, costs, usage, and catalog return to one place.

Universal endpoint

One endpoint for your AI clients.

https://api.routerlab.ch/v1

OpenAI SDKClaude Messages APICH / DE

The goal is to change the entry point, then read routes and usage instead of guessing what happened.

OpenAI SDK

https://api.routerlab.ch/v1

Compatible
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.routerlab.ch/v1",
  apiKey: process.env.ROUTERLAB_API_KEY,
});

await client.chat.completions.create({
  model: "model-id-from-catalog",
  messages: [{ role: "user", content: "Route this request" }],
});

Claude Messages API

https://api.routerlab.ch

Compatible
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  baseURL: "https://api.routerlab.ch",
  apiKey: process.env.ROUTERLAB_API_KEY,
});

await client.messages.create({
  model: "claude-model-id-from-catalog",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Route this request" }],
});

Control

What RouterLab makes visible.

The modules are concrete: keys, credits, usage, and catalog. They exist to operate AI traffic, not decorate the page.

Keys

One RouterLab key

Apps keep one stable entry point without exposing every provider key.

Credits

Readable balance

Cost is tied to requests and the credit ledger.

Usage

Observed routes

The dashboard shows which provider answers, using which format, and at what cost.

Catalog

Published models

Providers, formats, and statuses stay visible when choosing a route.

Governance

Third-party routes stay readable.

RouterLab shows the role of the CH / DE layer, external providers, formats, and statuses without adding unverified legal promises.

CH / DE

Hosted in Switzerland & Germany

The RouterLab layer is positioned in CH / DE.

Readable

Explicit providers

Third-party providers remain named in routes.

RouteTable

Provider routes

ProviderFormatStatusRoute type
OpenAI
OpenAI SDKActiveThird-party route
Claude
Claude Messages APIActiveMessages route
Google
OpenAI-compatibleAvailableProvider route
Open source
OpenAI-compatibleActiveRouterLab catalog

Trial

Try the RouterLab endpoint with your tools.

Start with a trial key, then use the catalog to choose the right routes.