twins.la icon

twins.la

Digital twins for developers and agents.

What is twins.la?

twins.la provides high-fidelity digital twins of real APIs. Write your code against a twin, then switch to the real service by changing the hostname and credentials. No provider accounts needed. No mocks, no stubs — real API behavior within supported scenarios.

Each twin runs locally (pip install) or in the cloud (point at the URL). Same package, same behavior.

Available twins

anthropic.twins.la

Anthropic Messages API — full + SSE streaming

POST /v1/messages · count_tokens · models list · prompt-caching + extended-thinking betas · x-api-key + anthropic-version auth

aoai.twins.la

Azure OpenAI — chat/completions, embeddings, completions

Path-prefixed resources · dual auth (api-key + AAD Bearer) · per-resource JWKS + token endpoint · deployments via Twin Plane (no ARM)

.twins.la

Facebook Login — OAuth 2.0 and Graph API

OAuth code + implicit flows · token exchange · /me profile · /debug_token · v19.0 / v21.0

livekit twin

LiveKit WebRTC control plane

Rooms · participants · egress · WebSocket signaling · local only

bf.twins.la

Microsoft Bot Framework — channel (msteams) + bot halves

JWKS publication · OAuth client_credentials · channel→bot JWT signing · bot /api/messages with specific JWT-rejection reasons · operator-driven inbound simulation · manual SDK trust override required

telegram.twins.la

Telegram Bot API — messaging

Bot identity · sendMessage · webhooks (with secret token) · getUpdates · inbound simulation

twilio.twins.la

Twilio SMS and SendGrid Email APIs

SMS send/receive · MMS · multi-segment · STOP/START/HELP · signed webhooks · status callbacks (queued→delivered/failed/undelivered) · email send

How it works

Cloud: Each twin runs at its own subdomain. Create an account via the twin's management API (POST /_twin/accounts), get credentials, and use the standard provider API against the twin's URL.

Local: Install the twin package and a storage backend. Run it on localhost. Same API surface, same behavior, no network dependency.

Every twin exposes a Twin Plane at /_twin/ — a standardized management API for health checks, scenario listing, logs, account creation, and configuration. Tooling built for one twin works with all of them.

For agents

Copy this into your agent's system prompt, tool configuration, or CLAUDE.md. Each twin also serves its own specific instructions at /_twin/agent-instructions.

# twins.la — Digital API Twins

twins.la provides high-fidelity digital twins of real APIs.
Code written against a twin works against the real service
with only hostname and credential changes.

## Available Twins

- anthropic.twins.la — Anthropic Messages API (POST /v1/messages full + SSE
  streaming, count_tokens, models list; prompt-caching + extended-thinking
  betas via anthropic-beta header; auth: x-api-key + anthropic-version)
  Agent instructions: https://anthropic.twins.la/_twin/agent-instructions
- aoai.twins.la — Azure OpenAI (chat/completions, embeddings, completions
  under /<resource>/openai/deployments/<deployment>/...; dual auth:
  api-key header OR Azure AD Bearer; JWKS + token endpoint published
  per resource; deployments managed via Twin Plane, no ARM control plane)
  Agent instructions: https://aoai.twins.la/_twin/agent-instructions
- facebook.twins.la — Facebook Login (OAuth 2.0 + Graph API)
  Agent instructions: https://facebook.twins.la/_twin/agent-instructions
- livekit — LiveKit WebRTC control plane (local only)
  GitHub: https://github.com/twins-la/livekit
- bf.twins.la — Microsoft Bot Framework (channel + bot halves;
  JWKS, OAuth client_credentials, JWT-signed activities; manual SDK trust override
  required — see scenarios)
  Agent instructions: https://bf.twins.la/_twin/agent-instructions
- telegram.twins.la — Telegram Bot API (messaging)
  Agent instructions: https://telegram.twins.la/_twin/agent-instructions
- twilio.twins.la — Twilio SMS (bidirectional, MMS, STOP/START/HELP, full
  delivery-status lifecycle, signed webhooks) + SendGrid Email APIs
  Agent instructions: https://twilio.twins.la/_twin/agent-instructions

## How to Use (any twin)

1. Pick a twin from the list above
2. Create an account: POST https://{twin}/_twin/accounts
3. Use the returned credentials with the standard provider API
4. Check supported scenarios: GET https://{twin}/_twin/scenarios