Overview
An owned model is a model you serve: a fine-tune you deployed on Fireworks, or your own OpenAI-compatible inference server. You register it once, and it becomes routable anywhere Verlon takes a model — gates, fallback chains, the model picker — with the same observability, cost tracking, and hot-swapping as a catalog model.Owned models are not BYOK. BYOK means your keys, our
catalog — your provider account serving the public models Verlon already
knows about. Owned models mean your model: something the catalog has never
heard of, registered with its own credential. Rotating a BYOK channel key
never affects an owned model, and deleting an owned model never touches your
catalog access.
Where a model can live
Together AI, Bedrock Custom Model Import, and SageMaker are planned; registering them is refused today rather than accepted and mis-billed.
Owned models are chat models for now. Embeddings arrive alongside embeddings support for the Fireworks channel; image and audio wait for their own pricing units.
Registering a model
From the dashboard, go to Models → Your Models → Your own models → Register a model. The form asks four questions.1
Name
A human name. Verlon derives the routing reference from it — “Support summarizer tune” becomes
custom:support-summarizer-tune. The reference is permanent; renaming means registering again.2
Where it lives
Fireworks, or a self-hosted URL. For Fireworks, the model id is the fully-qualified id from your account, like
accounts/your-org/models/your-tune-v1. For a self-hosted endpoint, it’s whatever model name your server exposes.3
Credential
Stored encrypted and scoped to this registration only — never shared with your channel keys, and never returned by the API. Self-hosted endpoints without auth can leave it empty.
4
Cost per 1M tokens
What this model costs you. See Declaring cost below.
Routing to an owned model
Reference it ascustom:<slug> anywhere a model id is expected:
custom:support-tune means your registration and nobody else’s.
Declaring cost
Verlon records a cost for every request — it feeds your logs, analytics, spending limits, and the model comparison view. The catalog knows what public models cost; it cannot know what your deployment costs you. So you declare it.- Input and output rates, in USD per 1M tokens.
- Cached input is optional. Left empty, cached tokens bill at the full input rate — which can only overstate your real bill, never hide spend.
- Reasoning tokens need no field. OpenAI-compatible servers report them inside the completion count, so your output rate already covers them.
$0, shown as owned · $0. For a server you already pay for by the hour, zero per-token cost is the honest answer — not a pricing error. If you’d rather see your infrastructure amortized per token, declare a rate that reflects it.
Self-hosted endpoints must be reachable from the internet
Verlon calls your endpoint from our servers. That has consequences worth knowing before you register one:localhostwill not work. Nothttp://localhost:11434/v1, not a private LAN address, not a VPN-only host — our servers cannot see them. Expose the server through a tunnel (Cloudflare Tunnel, ngrok, Tailscale Funnel) or put it behind a public hostname.- Private and reserved addresses are refused at registration, along with cloud metadata endpoints and URLs with credentials embedded in them.
- Redirects are not followed, and hostnames are re-resolved and checked at connection time — so give us the final URL.
- Use HTTPS and an auth token if the endpoint is public. Anything reachable by us is reachable by others.
Managing a registration
From Manage on any owned model you can:- Edit pricing — forward-looking, per the warning above.
- Replace the credential — rotating a key triggers a fresh reachability probe.
- Delete the registration — refused while any of your gates still routes to it. Repoint those gates first, so routing never dangles.

