Schemas
User
idemailnameis_adminis_ownerThe initial admin; can't lose the admin role or be suspended.
balance_nanoBalance in nano-USD (1 USD = 1_000_000_000); can be negative.
disabled_atSet while the account is suspended.
disabled_reasonlast_login_atmfa_enabledemail_verifiedcreated_atUserDetail
Last 30 days in the site time zone; only days with requests.
Top 10 models of the last 30 days by cost.
UserTopup
order_idamount_idrcredit_nanoCredit granted, nano-USD.
statusenvironmentpaid_atcreated_atBalanceEntry
kindinitial is the starting balance set when an admin created the user; usage is one row per day.
amount_nanoSigned change in nano-USD; deductions are negative.
referenceOrder id, coupon code, referred user's email (commission), the admin's note, or the day's request count (usage).
actor_emailThe admin who made the change (admin_credit, initial).
created_atUserKey
idnamekey_prefixMasked display form, e.g. sk-****-a1b2.
credit_limit_nanoSpending limit in nano-USD; null for none.
usage_nanoSpend so far, nano-USD.
allowed_modelsexpires_atallowed_ipsredact_secretslast_used_atrevoked_atcreated_atUserRequest
idmodel_slugapi_key_namenull for playground requests or deleted keys.
prompt_tokenscompletion_tokenscost_nanoBilled cost, nano-USD.
latency_msstatus_codesourceerror_typecreated_atVirtualKey
idnamekey_prefixuser_idemailOwner email.
user_nameuser_disabledThe owner is suspended (the key doesn't work).
statuscredit_limit_nanoSpending limit in nano-USD.
budget_periodHow often the credit limit resets; null for a lifetime limit.
usage_nanonano-USD.
allowed_modelsallowed_ipsmax_parallelredact_secretsexpires_atlast_used_atrevoked_atcreated_atRequestLog
iduser_iduser_emailmodel_slugprovider_slugapi_key_idapi_key_nameapi_key_prefixprompt_tokenscompletion_tokenscached_tokenscost_nanoBilled cost, nano-USD.
latency_msttft_msTime to first token.
tpsOutput tokens per second after the first token.
status_codestreamedsourceerror_typeerror_messageFirst 200 characters; the detail has the full message.
created_atWhen the request finished.
RequestLogDetail
iduser_iduser_emailupstream_idThe provider's response id.
model_slugprovider_slugapi_key_idapi_key_nameapi_key_prefixsourcestreamedstatus_codefinish_reasonprompt_tokenscompletion_tokenscached_tokenscache_write_tokensreasoning_tokenscost_nanoBilled cost, nano-USD.
upstream_cost_nanoWhat Sumopod charged, nano-USD, when recorded.
cost_breakdownPer-component cost details (JSON), when recorded.
latency_msttft_mstpsrequest_paramsRequest parameters (JSON, e.g. temperature, max_tokens); never prompt content. May be cleared by retention.
error_typeerror_messageclient_ipuser_agentstarted_atcreated_at minus the latency.
created_atKeyRef
idnamekey_prefixuser_iduser_emailrevokedLogFilterOptions
modelsModel slugs seen in the period.
providerserror_typesThe filtered user, if any.
The filtered user's keys (revoked included); empty without a user filter.
The filtered key, if any.
AdminModel
idslugModel id used in API requests, e.g. anthropic/claude-sonnet-4.5.
namedescriptionowned_bycontext_lengthprompt_price_nanoSell price per 1M prompt tokens, nano-USD.
completion_price_nanoSell price per 1M completion tokens, nano-USD.
cache_read_price_nanoSell price per 1M cached prompt tokens, nano-USD; null bills them at the prompt price.
cost_prompt_price_nanoSumopod cost per 1M prompt tokens, nano-USD.
cost_completion_price_nanoSumopod cost per 1M completion tokens, nano-USD.
cost_cache_read_price_nanoSumopod cost per 1M cached tokens, nano-USD.
is_activeOffered to users.
upstream_availableStill listed by Sumopod.
synced_atreasoningAdmin override; null = automatic.
visionAdmin override; null = automatic.
probed_reasoningProbe result; null = not probed or inconclusive.
probed_visionprobed_atsupports_reasoningEffective value (override, else automatic).
supports_visionauto_reasoningWhat automatic mode resolves to (probe, else name-based).
auto_visionmodeAdmin override; null = detected.
auto_modeeffective_modeReportPeriod
keyfromnull for all.
totopup_idrPaid top-ups (by paid time).
topup_credit_nanoCredit from paid top-ups, nano-USD.
topupstopup_usersDistinct users with a paid top-up.
createdTop-up requests created in the period.
created_idrpendingOf those created, currently pending.
failedexpiredcoupon_nanoCoupon credit redeemed, nano-USD.
affiliate_nanoAffiliate rewards paid, nano-USD.
admin_credit_nanoNet admin balance changes incl. starting balances, nano-USD (can be negative).
usage_nanoWhat users were billed for requests, nano-USD.
requestsnew_usersFinanceReport
tzenvnull when both environments are counted.
generated_atIn order today, yesterday, week, month, all.
The last 30 days, oldest first, every day present.
Up to 10 largest positive balances.
open_pendingUnpaid top-ups right now, whatever their age.
open_pending_idrPayment
order_iduser_idemailnameamount_idrcredit_nanoCredit granted when paid, nano-USD.
statusenvironmentpayment_idThe gateway's payment id.
paid_atcreated_atPaymentDetail
order_iduser_idemailnameamount_idrcredit_nanoCredit granted when paid, nano-USD.
statusenvironmentpayment_idThe gateway's payment id.
paid_atcreated_atpayment_link_urlpayment_codeQRIS payload.
create_responseThe gateway's raw reply when the payment was created (JSON or null; may be cleared by retention).
webhook_payloadThe last webhook received for this order (JSON or null; may be cleared by retention).
Analytics
bucketUp to 100 models by revenue.
Up to 100 users by revenue.
Coupon
idcodecredit_nanoCredit per redemption, nano-USD (1 USD = 1_000_000_000).
max_redemptionsnull = unlimited.
redeemed_countexpires_atis_activedescriptioncreated_by_emailcreated_atAffiliate
idemailreferral_codereferralsSign-ups attributed to this user.
paying_referralsReferrals that earned this user a commission.
commission_nanoCommission earned, nano-USD.
referred_topups_idrCompleted top-ups of referred users, IDR.
AffiliateSettings
enabledcommission_percentShare of each paid top-up of a referred user credited to the referrer.
commission_monthsCommission is paid on top-ups within this many months of the referral.
referee_bonus_percentExtra credit for the referred user on their first paid top-up.
AiSettings
base_urlSumopod AI base URL (fixed by the server configuration).
api_key_hintMasked key, e.g. sk-****-a1b2; null when not set.
PaymentCredentialsInput
api_keywebhook_tokenwebhook_signing_secretPaymentCredentialsView
base_urlThe gateway URL for this environment (fixed).
webhook_urlURL to register with Sumopod: <site URL>/api/webhooks/sumopod/<env>.
api_key_hintMasked; null when not set.
webhook_token_hintwebhook_signing_secret_hintPaymentSettings
enabledenvironmentpayment_methodFixed.
idr_per_usdHow many IDR buy 1 USD of credit.
min_topup_idrmax_topup_idrAuthSettings
email_password_enabledregistration_enabledWhen off, only existing accounts can sign in.
google_enabledgoogle_client_idgoogle_client_secret_hintMasked; null when not set.
google_redirect_uriRedirect URI to register with Google (read-only).
require_email_verificationNew email/password sign-ups must confirm their address.
email_readySMTP is set up, so verification and reset emails can go out (read-only).
block_disposable_emailsblock_email_aliasesRefuse +tag aliases and Gmail dot variants of an existing account.
blocked_email_domainsExtra domains to refuse (subdomains included).
turnstile_enabledCloudflare Turnstile on sign-in, sign-up and password reset.
turnstile_site_keyturnstile_secret_key_hintMasked; null when not set.
LimitsSettings
key_rpmRequests per minute per API key without its own limit; also the playground's.
user_rpmRequests per minute per user across all their keys; also the highest per-key limit a user can set.
user_max_parallelAI requests in progress at once per user.
RetentionSettings
request_logs_daysDeletes request log rows (usage history, analytics and reports go with them; balances are unaffected).
request_details_daysClears client IP, user agent, request parameters and error messages, keeping tokens and cost.
audit_logs_daysDeletes audit entries, except admin credit and starting balance entries (balance history).
payment_payloads_daysClears raw gateway responses and webhook payloads stored on top-ups.
RetentionRunResult
started_atfinished_atskippedAnother instance was already running the cleanup.
request_logs_deletedrequest_details_clearedaudit_logs_deletedpayment_payloads_clearedemail_tokens_deletedExpired email verification / reset tokens removed.
RetentionView
request_logs_daysDeletes request log rows (usage history, analytics and reports go with them; balances are unaffected).
request_details_daysClears client IP, user agent, request parameters and error messages, keeping tokens and cost.
audit_logs_daysDeletes audit entries, except admin credit and starting balance entries (balance history).
payment_payloads_daysClears raw gateway responses and webhook payloads stored on top-ups.
The last cleanup run, if any.
BrandingSettings
site_namesite_urlStored value; empty means the server's PUBLIC_URL is used.
default_urlPUBLIC_URL from the server environment (read-only).
icon_urlVersioned public icon URL (/api/branding/icon?v=N); null uses the built-in logo.
timezoneIANA time zone for usage dates and charts.
SmtpSecurity
starttls (usually port 587), tls (usually 465) or none (local test servers only).
EmailTemplateKey
EmailTemplate
keygroupvariablesPlaceholders: the common ones (SiteName, SiteURL, Email, Name) first, then this email's own.
subjectbodyHTML.
enabledoptionalNotifications can be turned off; account emails cannot.
customizedDiffers from the built-in default.
EmailSettings
providerenabledsender_emailsender_namesmtp_hostDefaults to smtp.sumopod.com.
smtp_portDefaults to 465.
smtp_usernamesmtp_password_hint•••••••• when a password is stored, else null.
smtp_securitystarttls (usually port 587), tls (usually 465) or none (local test servers only).
AdminApiKeyInput
nameread_onlyOnly GET/HEAD requests allowed.
expires_atMust be in the future; null never expires.
allowed_ipsIP addresses or CIDR ranges (e.g. 203.0.113.7, 10.0.0.0/8, 2001:db8::/32); empty or null allows any.
AdminApiKey
idnamekey_prefixe.g. sk-admin-****a1b2.
read_onlyexpires_atallowed_ipslast_used_atlast_used_ipowner_emailcreated_atAuditEntry
idactor_idactor_emailactiontarget_typetarget_iddetailsAction-specific details; admin_api_key holds the key id when an admin API key was used.
ipcreated_at