docs: document embedded-user AI billing and correct SCIM audit log events - #11535
docs: document embedded-user AI billing and correct SCIM audit log events#11535keydunov wants to merge 1 commit into
Conversation
…ents - AI Tokens: embedded users (Analytics Chat, Creator Mode, embedded dashboards) aren't billed as seats, so as of CUB-3784 their AI token spend is no longer covered by per-seat grants — it draws from token packages / on-demand overage instead. Document this so admins aren't surprised by embedded usage showing up as overage on their bill. - Audit Log: SCIM group writes used to log a single generic "Updated group via SCIM" event. Membership changes now get specific titles (Added/Removed/Updated group membership via SCIM); add the three new event names to the event types table.
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
Claude finished @keydunov's task in 1m 18s —— View job Review: 1 blocking, 2 accuracy questionsDocs-only, additive, well-scoped. One broken internal link needs fixing before merge; two claims in the new section contradict or extend what the rest of the page says and should be verified against the billing code. The audit-log change looks clean. Full review — findings, verification notes, and checklistTodos
Findings1. Broken internal link —
2. Free-tier bullet contradicts the Free tier section ( New text: "embedded users share the account's free tier allowance". Existing text at 3. Contract-customer overage is an unsupported extension ( "draws from token packages first, then continues as on-demand overage" attaches on-demand billing to contract customers, but the page's On-demand consumption section is scoped under Per-seat token grants and says billing goes "through the credit card on file" — not the usual contract-customer path. If true, it belongs in Token packages as well, since it applies to non-embedded usage too. Not issues / verified clean
Not verifiedThe underlying behavior claims ( |
|
|
||
| ## Embedded users | ||
|
|
||
| AI token spend by [embedded](/embedding/iframe) end users — through Analytics |
There was a problem hiding this comment.
Broken internal link. /embedding/iframe isn't a page — docs-mintlify/embedding/iframe/ has no index.mdx, the path isn't in docs.json nav, and there's no redirect for it (only /embedding/private-embedding, /embedding/signed-embedding, /embedding/creator-mode). Every other page links either to /embedding (the group index) or to a concrete leaf like /embedding/iframe/dashboards.
Since the sentence covers Analytics Chat, Creator Mode, and dashboards, /embedding is the right target:
| AI token spend by [embedded](/embedding/iframe) end users — through Analytics | |
| AI token spend by [embedded](/embedding) end users — through Analytics |
| - **On-demand customers**: embedded AI spend is billed directly as [on-demand | ||
| consumption](#on-demand-consumption), subject to the account's on-demand | ||
| spending limit if one is set. | ||
| - **Free plan**: embedded users share the account's [free tier](#free-tier) |
There was a problem hiding this comment.
This contradicts the Free tier section three lines above, which says the allowance is per user ("Each user on a free plan receives an individual monthly token allowance"), not an account-level pool. "share the account's free tier allowance" tells a reader there's one shared bucket.
Worth confirming against the billing code which of the two is actually true, then making both sections agree. If the grant really is per-user, something like "embedded users draw from the free tier allowance" (dropping "the account's" and "share") avoids implying a pool.
| - **Contract customers**: embedded AI spend draws from [token | ||
| packages](#token-packages) first, then continues as on-demand overage. |
There was a problem hiding this comment.
Nit / accuracy check: "then continues as on-demand overage" links contract customers to a mechanism the page frames as on-demand-plan-only — On-demand consumption is nested under Per-seat token grants and says usage "is billed through the credit card on file", which typically isn't how contract customers pay.
If contract overage is real, it's a notable billing fact that deserves a sentence in the Token packages section too (what happens when the pool runs dry applies to non-embedded usage as well). If it isn't, this bullet should say spend is blocked / requires another package instead.
Summary
Found while cross-checking recent
cubejs-enterprisechanges againstdocs-mintlifyfor undocumented customer-facing behavior.admin/account-billing/ai-tokens.mdx): as of CUB-3784, embedded end users (Analytics Chat, Creator Mode, embedded dashboards) — who aren't billed as seats — have their AI token spend routed to its own set of usage dimensions with no per-seat grant coverage. It now draws from token packages / on-demand overage instead. Added an "Embedded users" section so admins aren't surprised by embedded usage appearing as overage on their bill.admin/monitoring/audit-log.mdx): a SCIM group write used to log one genericUpdated group via SCIMevent regardless of what changed. Membership changes now emit specific titles (Added group members via SCIM,Removed group members via SCIM,Updated group membership via SCIM). Added the three new event names to the event types table.Both are small, additive edits to existing pages — no new pages, no nav changes.
Test plan
cubejs-enterprisecommits that introduced them (2a1f5072billing dimension routing,9bf3b548SCIM audit log titles)docs-mintlify🤖 Generated with Claude Code
https://claude.ai/code/session_01AxYWsCS56fWz5N1P3n4Znn
Generated by Claude Code