Everything between a person and a model.
Janus Edge is an OpenAI-compatible gateway with the governance IT needs and the transparency users expect. Here is what ships in the box.
Explore actual Janus screens below. All screenshots use demo identities and synthetic usage; click any image to view it full size.
Identity and access
Enterprise sign-in
Generic OIDC (Authorization Code + PKCE) with Okta, Entra ID, Authentik, Keycloak, AD FS. Accounts are created on first sign-in; groups refresh from token claims every time.
SCIM provisioning Business
Push users, groups and teams from your IdP. Deprovisioned people lose access immediately, and their keys with them.
Explicit grants
Signing in grants nothing. Administrators grant models to a person, a group, a team or everyone; grants compose with OR. Display names hide provider naming churn.
Local accounts, LDAP, multiple IdPs Business
Local accounts with TOTP for labs and break-glass; LDAP/AD bind with group mapping; several OIDC providers side by side.
Self-service token provisioning
Users mint their own API tokens from the portal, scoped to exactly the models and teams they've been granted. Expiry, rotation and revocation are one click; admins see every token and who holds it.
Service tokens
Non-human identities for CI pipelines, agents and internal apps: owned by a team, budgeted, model-scoped, and fully attributed in reports and audit — never a shared personal key.
Teams and service tokens
Team-scoped keys with their own quotas and model lists for CI, agents and internal apps. Personal keys for people.
Policy rules
Block by user agent, header, IP, forwarded-for chain and more — AND/OR with negation — before a request costs anything.
Inspect model access by person, group, team, or service identity instead of sharing provider keys.
Actual Janus interface · Demo identities and synthetic usage
Proxying
Managed models
Administrators curate the catalog: which upstream models exist, what they're called internally, who may use them, and what they cost. New models are an explicit enable — nothing appears for users until it's approved.
Every provider
OpenAI, Anthropic, AWS Bedrock, Google Vertex, Ollama, Hugging Face TEI, and any OpenAI-compatible server (vLLM, llama.cpp, LM Studio). Add an upstream, run discovery, grant models.
Every modality
Chat, completions, embeddings, images, TTS and STT, Responses, Assistants, threads, files, moderation. SSE streamed without buffering; multipart passed byte-for-byte.
Protocol translation
Anthropic and Bedrock upstreams behind the OpenAI wire format, including tool calls, prompt caching and streaming — clients need no changes.
Managed aliases and fallbacks Business
Publish chat-default, point it at any model, and change the target without touching a client. Fall back automatically when the target is unhealthy.
Health and discovery
Reachability probes per upstream, model discovery with context windows and prices, health badges that reflect real traffic.
Large bodies
Bodies up to 32 MB inspected for routing; larger uploads relayed unbuffered. Adapters that must rewrite refuse with a clear 413 rather than truncating.
Review model status, provider, pricing, context windows, and grants across your upstreams.
Actual Janus interface · Demo identities and synthetic usage
Metering and cost
Real metering
Tokens in, out, cached, cache-written (5-minute and 1-hour writes billed separately), cost at the rate in force, latency, time-to-first-byte, bytes, modality, finish reason, status, user agent, source IP.
Rate cards
Prices discovered from providers where published, editable per model with audit trail. Historical requests keep the rate that applied when they ran.
Quotas
Input tokens, output tokens, spend or request count over calendar or rolling windows; per person or team; optionally per model. Warnings at 80% and 95%; refusal with a reset time.
Usage tracking by team
Every request is attributed to a user, a team and a token. Roll costs up by team or department for chargeback, compare spend across models, and spot the runaway script before the invoice does.
Reporting
Built-in cost, usage and adoption reports with CSV export; scheduled email delivery and audit export on Business.
Dashboards
Personal, team, organization and admin views. The People page filters by group, team, role and status with URL-synced search.
Reports Business
Scheduled cost and usage reports by team, model and person, delivered by email or pulled from the API; classification reports for guardrail activity.
Prompts never stored
By default Janus Edge keeps metadata only. Bodies are captured only in an explicit, time-boxed, filtered troubleshooting session, encrypted at rest if asked, purged with one button.
Compare periods, explore model and user mix, and export a frozen result to CSV, XLSX, PDF, or JSON.
Actual Janus interface · Demo identities and synthetic usage
Track utilization, reset times, and breach behavior for individual and team limits.
Actual Janus interface · Demo identities and synthetic usage
Compare team activity and recorded cost, with the underlying report data available for review.
Actual Janus interface · Demo identities and synthetic usage
Security gateway
Prompt-injection detection
Run Prompt Guard 2 (or any TEI text classifier) on ingress. Observe in Community; block, redact or flag in Business.
Content safety
Llama Guard 4 on vLLM classifies requests and responses against S1–S14 categories. Egress checks stream-aware.
Password and token redaction / blocking
Built-in detectors for passwords, API keys, cloud credentials and tokens in prompts. Choose per rule: redact before the request leaves your network, or block it outright and tell the user why. Nothing sensitive reaches the provider.
Audit log
Append-only record of every administrative action and policy decision; export to your SIEM Business.
Troubleshooting captures Business
Rules-builder filter (include / require / exclude), retention limits, tar.gz download with a JSONL index for Athena or DuckDB.
Alerting Business
Email and webhook alerts for quota breaches, upstream failures, replication lag and guardrail spikes; Prometheus rules included.
Filter historical findings by policy, detector, severity, and action. Investigate without exposing prompt contents.
Actual Janus interface · Demo identities and synthetic usage
Operations
Single binary
Go backend with the React admin UI embedded. Versioned Linux archives, a Python installer, a Docker image, and a source-built Compose evaluation example. See the installation guide for availability and prerequisites.
SQLite or PostgreSQL
Embedded SQLite for evaluation only; PostgreSQL for production. Migrations are versioned; back up with database tools and preserve the encryption key. See backup and restore guidance.
High availability Business
Multiple stateless replicas behind your load balancer, sharing one database. Plan database availability, disruption budgets, and workload placement for your deployment.
Observability
Prometheus /metrics, structured JSON logs, OTLP traces, /healthz and /readyz that tolerate transient IdP blips.
Air-gap ready Enterprise
Offline Linux archives and signed license files. JANUS_OFFLINE=true disables update checks and license sync; configured providers can still receive traffic. See offline installation.
Source-available
Read and audit every line under the Elastic License 2.0. Release images are built from the published tag.
Organization-wide usage, spend, model review, and team activity in one administrative view.
Actual Janus interface · Demo identities and synthetic usage