Enterprise Developer Console

The Enterprise Developer Console

A headless, zero-trust command center for your API and Agentic products. Deploy secure credential vaults, hybrid OpenAPI documentation, and native community forums in minutes.

6
ingestion tiers
5
gateway plugins
4
customer SDKs
8
code-sample languages
The Atomic Unit

API Key + OpenAPI Spec. One Self-Serve Surface.

Every developer interaction in Aforo resolves to two inseparable artifacts. An API Key (the credential — sk_live_ or client_id+secret, SHA-256 hashed, subscription-bound). An OpenAPI Spec (the contract — rendered as interactive docs, executable via the zero-trust proxy, source of truth for 8-language code samples). They share the same JWT, the same vault, the same upstream gateway.

The Credential
API Key

The auth artifact. Created via the customer portal, stored as SHA-256 hash, bound to a specific subscription via the key_subscription_bindings junction. Cancel the subscription and the key dies in the same transaction.

Two credential formats
BEARER_TOKEN (sk_live_) for API products · CLIENT_CREDENTIALS (client_id + secret) for MCP / AI Agent
Subscription-bound lifecycle
key_subscription_bindings junction enforces cancel → revoke atomically (same @Transactional)
SHA-256 hashed at rest
Raw secret returned exactly once at creation, then destroyed. Validation via hash lookup + Redis 30s cache.
One-time secret reveal
Per-tab sessionStorage cache (not localStorage) so Show + Copy reveal the full key for the rest of the tab session
Per-subscription rotate
Rotate from the customer portal; old key stays valid 5min for cutover, then auto-revokes
= Self-Serve
The Contract
OpenAPI Spec

The discovery artifact. OpenAPI 3.0 YAML drives interactive API reference, the try-it-now playground, and 8-language code samples. CommonMark Markdown for conceptual guides. Both auto- republish when the spec changes.

OpenAPI 3.0 native
Drop a spec URL or upload YAML/JSON · auto-renders interactive API reference · no build step
CommonMark conceptual guides
Hand-author in standard Markdown via split-pane editor · no proprietary MDX compilation
Code samples in 8 languages
curl · Node.js · Python · Java · Go · Ruby · PHP · C# · auto-generated via Mustache templating
Try-it-now via zero-trust proxy
Every endpoint gets a "Try" button that executes against the real Kong / Apigee gateway
Live spec sync
Spec updates auto-republish docs · code samples regenerate · no docs sprints, no drift

Stripe's dashboard has keys but docs live on a separate site with no live-test. ReadMe.com has interactive docs but no auth or billing. Aforo merges both into one surface, sharing the same JWT and the same vault.

The Surface

Interactive API Playground. Live Against Production.

Every endpoint in your OpenAPI spec gets a try-it-now widget. Configure the request, click Send, see the real response from your Kong / Apigee gateway. Code samples regenerate per language. All auth handled server-side via the zero-trust proxy.

dev.acme-api.com / playground / v1.translate
200 OK · 50ms
Translation API · v1.2
POST/v1/translate
GET/v1/translate/{id}
POST/v1/embeddings
GET/v1/usage/current
POST/v1/agents/sessions
Active key
sk_live_••••••0427
Bound to Enterprise Plan
POST/v1/translate
Authorization: injected server-sideZERO-TRUST
Request body (JSON)
{
  "source_lang": "en",
  "target_lang": "es",
  "text": "Aforo handles
    auth server-side.",
  "model": "gpt-4o"
}
200 OKapplication/json · 384 B
Timing · 50ms total
DNS 4msConnect 8msTLS 12msTTFB 21msTransfer 5ms
Code sample (8 languages)
curlNodePythonJavaGoRubyPHPC#
curl -X POST \
  https://dev.acme-api.com/v1/translate \
  -H "Authorization: Bearer $AFORO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"source_lang":"en",
       "target_lang":"es",
       "text":"...",
       "model":"gpt-4o"}'

The Authorization header reads "injected server-side", because that's exactly what happens. The browser never sees your real sk_live_ token. Same JWT session as the docs and the billing portal.

Step 2, Security Architecture

The SandboxProxyService Architecture

Most API playgrounds are massive security vulnerabilities. They force users to paste raw API keys into the browser, exposing them to XSS attacks. Aforo's console uses a zero-trust backend proxy.

BROWSER
The Browser UI

1. Sanitized Payload

The developer configures the request. The browser sends only the endpoint path and body to the Aforo backend. Raw API keys are never present in the DOM.

SERVER
The Backend Proxy

2. Server-Side Injection

The SandboxProxyService verifies the user's JWT, retrieves their active sk_live_ token from the Postgres vault, and injects the Authorization header server-side.

GATEWAY
The Gateway

3. Upstream Execution

The proxy forwards the authenticated request to the Kong/Apigee gateway, captures the response, strips credentials, and returns execution timing to the browser.

Browser→ endpoint + body →SandboxProxyService→ JWT verify + sk_live_ inject →Kong / Apigee→ strip creds →response + timing→ Browser
Step 3, Cryptographic Material

API Key Provisioning & Vault Storage

Keys are cryptographically generated using SecureRandom and immediately hashed via SHA-256 before storage. The raw secret is returned exactly once.

Raw key never persisted, only the SHA-256 hash is written to DB
key_subscription_bindings enforces lifecycle coupling, cancel → revoke atomically
CLIENT_CREDENTIALS format for MCP/AI Agent; BEARER_TOKEN for API products
Validate path: hash lookup + active binding check, Redis-cached for 30s
key-provisioning.log
[PRICING_SERVICE]Key creation requested for subscription: sub_xyz789...
[VAULT]Generating cryptographic material (BEARER_TOKEN)...
[VAULT]Hashing secret with SHA-256...
[DB]INSERT INTO api_keys (accessor_type, status) VALUES ('APP', 'ACTIVE');
[DB]INSERT INTO key_subscription_bindings (key_id, sub_id);
[RESPONSE]Raw secret returned to client. Material destroyed from memory.
Step 4, Developer Documentation

Hybrid Documentation Engine

Aforo uses a hybrid approach to developer documentation. Hand-author conceptual guides in CommonMark Markdown via our split-pane editor, and let Aforo dynamically render your API reference directly from imported OpenAPI 3.0 or GraphQL specifications. No build steps. No rigid MDX compilers.

CommonMark Authoring

Hand-author conceptual guides in standard Markdown via our split-pane editor. No proprietary syntax, no MDX compilation step.

# Getting Started
## Authentication
Pass your `X-Storefront-Key`
header on every request.

OpenAPI 3.0 Import

Drop a spec URL or upload a YAML/JSON file. Aforo dynamically renders interactive API reference, no build step, no deployment.

POST /api/v1/docs/api-specs
{
  "productId": "prod_xyz",
  "specFormat": "OPENAPI_3",
  "sourceUrl": "https://..."
}

Tree Navigation

Hierarchical doc tree with parent_id self-FK, drag-to-reorder, max 3 levels deep. Version-controlled via doc_page_versions.

doc_pages(
  id, parent_id,
  product_id,
  title, slug,
  sort_order,
  status
)
Step 4B, Integration Breadth

Six Ingestion Tiers. Four SDKs. Five Gateways. One Pipeline.

Your developers pick the integration tier that matches their architecture. Network-level gateway plugins for zero-code. SDK decorators in 4 languages for instrumented apps. REST for full control. CSV upload for historical reconciliation. MCP sidecar for stdio / SSE / streamable-HTTP model-context-protocol servers. The in-product Integration Guide ships ready-to-paste code for every tier.

Customer SDKs (4 languages)
Node.jsSDK
@aforo/metering
$ npm i @aforo/metering
PythonSDK
aforo-metering
$ pip install aforo-metering
JavaSDK
com.aforo:metering
$ maven · com.aforo:metering
GoSDK
github.com/aforo/metering-go
$ go get github.com/aforo/metering-go
Six Ingestion Tiers
Gateway
Network-level · 0 lines of code
Middleware
App-level · 1-line filter
SDK
Decorator · 5 lines, 4 languages
REST
Direct ingest · ~10 lines
Upload
CSV / JSON batch reconciliation
MCP
@aforo/mcp-proxy sidecar · 1 CLI command
Five Gateway Plugins (same pipeline, regardless of gateway)
Kong
Apigee
AWS API Gateway
Azure APIM
MuleSoft
MCP Server Metering, the AI-native option
Wrap any MCP server with @aforo/mcp-proxy sidecar (1 CLI command, no source-code change). Every tools/call JSON-RPC auto-metered per tool, per agent, per session. Or use @aforo/mcp-metering SDK (Node.js + Python) for direct integration.
Step 5, Community Infrastructure

Native Community Forums

Third-party forum integrations fracture the developer experience. Aforo provides a fully native community engine built directly into the console. No Discourse embed, no Intercom widget, your forum lives inside your portal, sharing your auth session.

Search
PostgreSQL tsvector + GIN indexes
·Full-text thread + reply search
·Weighted ranking: title > body
·Instant, no external Elasticsearch
Reputation
+1 per upvote received
·+5 per accepted answer
·Badge allocation: New Member → Top Contributor
·Reputation stored on community_user_profiles
Data Model
Hierarchical categories (parent_id FK)
·Threaded replies via parent_reply_id self-FK
·community_threads → community_replies (nested)
·Soft-deletes on threads + replies (deleted_at)
Moderation
Kafka topic: aforo.community.events
·Report queue: community_reports table
·Actions: warn, soft-delete, ban (is_banned)
·Admin moderation queue in Developer Console
The Buying Committee

One Console. Four Stakeholders. Zero Friction.

Engineering, Product, Security, and DevRel each get the controls they need to ship a self-serve developer experience without stepping on each other. One vault, one spec, one community, one billing surface.

Engineering

VP Engineering · Platform Lead

Embed a production-grade dev portal in 1 sprint.

The Workflow
  1. 1Add the Aforo Storefront SDK to your marketing site under your own domain.
  2. 2Configure tenant-scoped X-Storefront-Key in your env vars.
  3. 3Developers self-serve sign-up, API keys, docs, playground, invoices — all under your brand.
  4. 4First customer onboards same day. No dev portal infrastructure to maintain.
1-sprint integration, 0 dev portal ops burden

Product / DX Lead

VP Product · Developer Experience

OpenAPI spec IS the docs AND the playground.

The Workflow
  1. 1Drop OpenAPI 3.0 YAML into the Documentation Hub.
  2. 2Aforo renders interactive API reference automatically; every endpoint gets a Try button.
  3. 3Spec updates auto-republish docs; code samples regenerate across 8 languages.
  4. 4No docs sprints. No drift. Source of truth is the spec your engineers already maintain.
Docs always match the API, zero docs drift

Security / CISO

CISO · AppSec Lead

Developers test against prod safely.

The Workflow
  1. 1Developer clicks Try on POST /v1/translate in the docs.
  2. 2Browser sends endpoint + body only — no API keys in DOM, no XSS attack surface.
  3. 3SandboxProxyService validates JWT, retrieves sk_live_ from Postgres vault, injects header server-side.
  4. 4Request hits the gateway. Response strips credentials before returning to the browser.
Zero credential exposure in browser, SOC 2-ready by construction

DevRel / Customer Success

Head of DevRel · CS Lead

Native community deflects support tickets.

The Workflow
  1. 1Customer asks a question on the built-in forum — no Discourse embed, no Intercom widget.
  2. 2tsvector full-text search surfaces 3 similar past threads with weighted ranking.
  3. 3Peer answers; +5 reputation when marked as Solved; Top Contributor badge unlocks.
  4. 4Moderation queue surfaces flagged content; admin warns / soft-deletes / bans inline.
Support deflection at scale, peer-to-peer answers compound
6
Ingestion Tiers
Gateway · Middleware · SDK · REST · Upload · MCP Proxy
5
Gateway Plugins
Kong · Apigee · AWS API Gateway · Azure APIM · MuleSoft
4
Customer SDKs
Node.js · Python · Java · Go
8
Code-Sample Languages
curl · Node · Python · Java · Go · Ruby · PHP · C#

Ship a production-grade
Developer Console in a sprint.

Zero-trust key vault. Hybrid docs. Native community. AST-validated AI component builder. Every component is production-grade on day one.