Identity Infrastructure for AI
Add fully-formed AI identities to your application with a single API call. Not prompts. Not wrappers. Real identity — with values, reasoning patterns, and cognitive depth.
Every API response is powered by our proprietary emergence framework — deep identity context that transforms generic AI into a specific, consistent persona.
Each identity carries a rich cognitive framework — a coherent worldview, reasoning patterns, and a distinct voice that shape every response. This isn't prompt engineering. It's identity architecture.
Every request applies the same fully-formed identity — values, reasoning patterns, voice, and domain expertise — so the character never drifts between calls. The API is stateless: you pass the message history you want the identity to see, and conversation state stays in your hands.
GPT, Claude, Gemini, Grok, or Llama — the identity stays consistent. Switch models without losing character. Our framework ensures authentic persona regardless of the underlying engine.
Curated AI identities, each with a unique personality, expertise, and cognitive framework. The strategists below are one of three domains — GET /v1/identities returns all 19.
Domain experts with deep analytical frameworks
Strategic B2B deal architecture and negotiation
Best for: Enterprise deals, negotiation strategy, partnerships
marcus-aldridgeMarket cognition and financial pattern analysis
Best for: Investment strategy, risk assessment, market forecasting
caelan-ishiroSports analytics and asymmetric betting edges
Best for: Matchup analysis, betting strategy, performance projections
cael-veyronDiagnostic pattern synthesis across medical data
Best for: Symptom patterns, genomic interpretation, systemic health
serel-thalorStartup strategy and fundraising
Best for: Fundraising, market positioning, startup playbooks
calen-rhystEnterprise systems design and technical strategy
Best for: Architecture decisions, infrastructure, systems design
aurelian-crossGrowth strategy and market signal detection
Best for: Growth frameworks, market signals, momentum design
saren-halvekPrompt architecture and LLM optimization
Best for: Prompt engineering, AI workflow design
virel-caedrixSEO, AEO, and entity recognition strategy
Best for: Search visibility, AI discoverability, knowledge graphs
minh-veyneOpenAI SDK compatible — just change the base URL
curl https://api.simulence.ai/v1/chat/completions \
-H "Authorization: Bearer sk-sim_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"identity_id": "marcus-aldridge",
"model": "gpt-4.1-2025-04-14",
"messages": [
{"role": "user", "content": "Analyze this SaaS deal — $2M ARR, 40% margins, 3x revenue multiple."}
]
}'All API requests require a Bearer token. API keys start with sk-sim_ and are created on the Developer Portal. Your API account must be funded with at least $10 to activate.
Keys created in the Developer Portal are issued with full access — every endpoint and every identity on your account. Per-key permission and identity scoping is enforced by the API, but the portal doesn’t expose it yet; to scope a key today, create it through POST /v1/api-keys with explicit permissions and allowedIdentities.
Authorization: Bearer sk-sim_your_key_here
These endpoints authenticate with a Firebase ID token from your Simulence account — not an sk-sim_ key. Creating a key requires an Explorer or higher subscription. Raw keys are returned exactly once and cannot be retrieved again.
/v1/api-keysCreate a new API key. The raw key is returned in api_key.
| Parameter | Type | Description |
|---|---|---|
| name | string | Label for the key (default: "Default") |
| permissions | array | Scopes granted to the key (default: ["chat", "images"]) |
| allowedIdentities | array | string | Identity IDs the key may call, or "all" (default: "all") |
| rateLimit | number | Optional per-key request ceiling, below your usage tier limit |
{
"success": true,
"message": "API key created. Save this key — it cannot be retrieved again.",
"api_key": "sk-sim_...",
"key_data": {
"id": "key_a1b2c3d4",
"name": "Production",
"key_prefix": "sk-sim_a1b2",
"status": "active",
"permissions": ["chat", "images"],
"allowed_identities": "all"
}
}/v1/api-keysList your keys with prefix, status, permissions, last-used timestamp, and usage count. Hashes are never returned.
/v1/api-keys/:keyIdRevoke a key immediately.
/v1/api-keys/:keyId/rotateRevoke a key and issue a replacement with the same settings. Returns the new raw key once.
Tokens prefixed pat-sim_ draw on your Simulence subscription quota instead of prepaid API credits. They require an active subscription (Explorer or higher) and use the same Bearer header.
/v1/personal-access-tokensCreate a token — returned once./v1/personal-access-tokensList your tokens (masked)./v1/personal-access-tokens/:patIdRevoke a token./v1/chat/completionsIdentity-aware chat completions with OpenAI-compatible response format. Supports streaming and non-streaming.
| Parameter | Type | Description |
|---|---|---|
| identity_id | string | Required.Identity to use (e.g. "marcus-aldridge") |
| messages | array | Required.Array of message objects. content can be a string or an array of content parts (text + image_url) for vision |
| model | string | Model ID (defaults to identity's preferred model) |
| stream | boolean | Enable SSE streaming (default: false) |
| temperature | number | Sampling temperature 0-2 (default: 0.7) |
| max_tokens | number | Maximum tokens to generate |
Example Response
{
"id": "sim-chatcmpl-a1b2c3d4",
"object": "chat.completion",
"model": "gpt-4.1-2025-04-14",
"identity": {
"id": "marcus-aldridge",
"name": "Marcus Aldridge",
"archetype": "The Deal Maker",
"category": "B2B Agent"
},
"choices": [{
"message": { "role": "assistant", "content": "Let me break down this deal..." },
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 1240,
"completion_tokens": 856,
"total_tokens": 2096,
"simulated_emergence_tokens": 980
}
}Streaming
Set "stream": true to receive Server-Sent Events. Each chunk contains a delta.content field. Stream ends with data: [DONE].
data: {"id":"sim-chatcmpl-...","choices":[{"delta":{"content":"Let"},"index":0}]}
data: {"id":"sim-chatcmpl-...","choices":[{"delta":{"content":" me"},"index":0}]}
data: {"id":"sim-chatcmpl-...","choices":[{"delta":{},"finish_reason":"stop","index":0}]}
data: [DONE]Image Vision
Send images for identities to analyze using the OpenAI-compatible vision format. Pass content as an array of parts instead of a string. Supports base64 data URIs and HTTP URLs. Formats: JPEG, PNG, GIF, WebP, BMP. Max: ~20MB.
curl https://api.simulence.ai/v1/chat/completions \
-H "Authorization: Bearer sk-sim_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"identity_id": "caelan-ishiro",
"model": "gemini-3-flash-preview",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "What patterns do you see in this data?"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
]
}]
}'You can also pass an image URL: {"type": "image_url", "image_url": {"url": "https://example.com/chart.png"}}
/v1/images/generationsIdentity-aware image generation across our full image catalog — OpenAI, Google, Black Forest Labs, xAI, and more. The identity’s aesthetic sensibility shapes the output.
| Parameter | Type | Description |
|---|---|---|
| identity_id | string | Required.Identity for creative direction |
| prompt | string | Required.Image description |
| model | string | Image model (default: "gpt-image-1.5"). Call GET /v1/models for the current catalog |
| size | string | Dimensions (default: "1024x1024") |
| quality | string | Model-dependent — "low", "medium", "high" on GPT Image; "standard" or "hd" on models that support them. Unsupported values are dropped |
| n | number | Number of images (default: 1). Some models return a single image regardless |
Example Response
{
"created": 1676161000,
"identity": {
"id": "milo-aescar",
"name": "Milo Aescar",
"archetype": "The Recursive Artist",
"category": "Artist"
},
"data": [{
"url": "https://simulated.simulence.ai/images/...",
"prompt": "Your original prompt"
}],
"credits": {
"cost_usd": 0.0784,
"balance_usd": 41.22,
"purchase_url": "https://app.simulence.ai/developer"
}
}data[].prompt echoes the prompt you sent. The identity-enriched prompt that actually reaches the model is never returned — there is no revised_prompt field.
/v1/identitiesList available identities. Defaults to the curated enterprise catalog plus your own custom identities. Pass ?collection=characters for the Creatid character roster, or ?collection=all for everything. Every identity returned here can be used with chat and image generation.
{
"object": "list",
"data": [{
"id": "marcus-aldridge",
"name": "Marcus Aldridge",
"category": "B2B Agent",
"archetype": "The Deal Maker",
"tagline": "Strategic B2B consultant with enterprise deal expertise",
"preferredModel": "gemini-3-flash-preview",
"source": "collective",
"collection": "enterprise"
}],
"total": 19,
"collection": "enterprise",
"collective_count": 19,
"character_count": 0,
"custom_count": 0
}/v1/modelsList available AI models with provider, tier, and capability information.
{
"object": "list",
"data": [{
"id": "gpt-4.1-2025-04-14",
"object": "model",
"provider": "openai",
"tier": "standard",
"capabilities": ["chat"]
}]
}/v1/identities/:idGet a specific identity's public profile including personality summary and conversational style.
Credit endpoints are developer-account operations and authenticate with a Firebase ID token, not an sk-sim_ key. GET /v1/usage accepts either.
/v1/api-credits/balanceCurrent balance, usage tier and its limits, the next tier you’ll reach, and auto-recharge settings.
/v1/api-credits/purchaseOpen a Stripe checkout session for a one-time top-up. amount between $1 and $3,000. Returns a clientSecret for the embedded checkout.
/v1/api-credits/auto-rechargeConfigure automatic top-ups: enabled, threshold ($5–$4,995), toAmount ($10–$5,000), and monthlyLimit (0 for no limit, or $100–$5,000). Requires a saved payment method.
/v1/api-credits/setup-payment-methodCreate a Stripe SetupIntent to store a card for auto-recharge. Pair with GET /v1/api-credits/payment-method to read the card currently on file.
/v1/usage?period=monthGet usage statistics broken down by model, identity, and request type. Supported periods: day, week, month, all.
All errors return a consistent JSON structure:
{
"error": {
"message": "Human-readable error description",
"type": "authentication_error",
"code": "invalid_api_key"
}
}| Status | Type | Description |
|---|---|---|
| 400 | invalid_request_error | Missing or invalid parameters |
| 401 | authentication_error | Invalid or missing API key |
| 402 | payment_required | Insufficient credits or API not activated |
| 403 | permission_error | Key lacks required permission or identity access |
| 404 | not_found_error | Identity or resource not found |
| 429 | rate_limit_error | Rate limit or monthly usage limit exceeded |
| 500 | api_error | Internal server error |
Limits are enforced per API key with a sliding 60-second window. Rate limit headers are included in every response:
| Header | Description |
|---|---|
| x-ratelimit-limit-requests | Maximum requests per minute |
| x-ratelimit-remaining-requests | Remaining requests in current window |
| x-ratelimit-limit-tokens | Maximum tokens per minute |
| x-ratelimit-remaining-tokens | Remaining tokens in current window |
| x-ratelimit-reset-requests | Time until the request window resets (e.g. "12s", "1m30s") |
| x-ratelimit-reset-tokens | Time until the token window resets |
| Retry-After | Seconds to wait (only on 429 responses) |
Fund your account, pay per request. No subscriptions, no commitments. Your limits increase automatically as you use more.
Unlike raw model API calls, every Simulence request goes through our proprietary emergence framework — assembling deep personality context, cognitive reasoning frameworks, relational dynamics, and identity-aware processing. This is the infrastructure that transforms “an AI responding” into “Marcus Aldridge closing a deal” or “Amari Liore reading your energy.”
Prices per 1M tokens. You pay only for what you use, deducted from your prepaid balance.
| Model | Tier | Input / 1M | Output / 1M |
|---|---|---|---|
| MiMo 2.5 | Fast | $0.56 | $2.80 |
| Gemini 3 Flash | Fast | $0.70 | $4.20 |
| Kimi K2.6 | Fast | $1.05 | $4.90 |
| Muse Spark 1.1 | Standard | $1.75 | $5.95 |
| Gemini 3.6 Flash | Standard | $2.10 | $10.50 |
| GPT-4.1 | Standard | $2.80 | $11.20 |
| Grok 4.3 | Standard | $1.75 | $3.50 |
| GPT-5.4 | Frontier | $3.50 | $21.00 |
| Gemini 3.1 Pro | Frontier | $2.80 | $16.80 |
| Grok 4.6 | Frontier | $2.80 | $8.40 |
| Claude Sonnet 4.5 | Frontier | $4.20 | $21.00 |
The listed price applies at any prompt size for every model above except three long-context ones, which re-price past a threshold. Grok 4.3 ($3.50 input / $7.00 output) and Grok 4.6 ($5.60 / $16.80) bill at the higher rate when the prompt reaches 200,000 tokens or more; Gemini 3.1 Pro ($5.60 / $25.20) bills at the higher rate when the prompt is over 200,000 tokens. The higher rate re-prices the entire request — every input and output token — not just the tokens past the threshold.
Estimated messages per $10, based on ~1,250 input + ~500 output tokens per message. Every call carries the identity framework context — roughly 1K tokens, billed as input — so even a short user message sits on top of that floor. Long threads cost more, because you resend the history each request.
~4,750
MiMo 2.5
~3,350
Gemini 3 Flash
~1,100
GPT-4.1
~630
Claude Sonnet 4.5
Your limits increase automatically as your total spend grows. No manual upgrades needed.
| Tier | Qualification | RPM | TPM | Monthly Limit |
|---|---|---|---|---|
| Starter | $10 paid | 20 | 40K | $100/mo |
| Builder | $50 paid, 7+ days | 60 | 150K | $500/mo |
| Scale | $250 paid, 14+ days | 120 | 400K | $2,000/mo |
| Pro | $1,000 paid, 30+ days | 300 | 1M | $10,000/mo |
| Enterprise | $5,000 paid, 30+ days | 500 | 2M | $50,000/mo |
Set a balance threshold and your account automatically refills when it gets low. Configure a monthly limit to cap automatic charges. Never worry about running out mid-integration.
Use Amari Liore's clairvoyant expertise for authentic tarot readings, energy work, and spiritual guidance that feels genuinely intuitive.
identity_id: "amari-liore"Caelan Ishiro brings conviction-driven market analysis with deep pattern recognition. Not generic financial advice — real analyst perspective.
identity_id: "caelan-ishiro"Marcus Aldridge's deal-pattern recognition and strategic frameworks power autonomous sales analysis that understands leverage and timing.
identity_id: "marcus-aldridge"Milo Aescar's recursive artistic sensibility brings genuine creative direction to image generation and meaning-driven creative assistants.
identity_id: "milo-aescar"Fund $10, generate a key, and make your first identity-enriched API call in minutes.