mirror of
https://github.com/stack-auth/stack.git
synced 2026-07-20 21:29:36 +08:00
Moves `queryAnalytics` from the admin app to the server app so backend code can call it without needing an over-privileged admin key. All existing dashboard pages that ran queries internally are updated to use `useServerApp()` instead of `useAdminApp()`. ## What changed - **Backend**: New `POST /api/v1/analytics/query` and `POST /api/v1/analytics/query/timing` endpoints on the **server** app (previously admin-only) - **Dashboard**: `queryAnalytics` calls in Queries, Query Analytics, Session Replays, and Sign-up Rules pages switched from `adminApp` → `serverApp` - **Docs**: Added SDK + REST API usage example under the Queries section of the Analytics guide - **REST API reference**: New `Run analytics query` and `Get analytics query timing` endpoints visible under Server API > Analytics ## Docs — Analytics › Queries section New paragraph + code snippet showing `hexclaveServerApp.queryAnalytics()` from backend code. | | Light | Dark | |---|---|---| | **Before** |  |  | | **After** |  |  | <details> <summary>Full-page overview (both themes)</summary> | Light | Dark | |---|---| |  |  | </details> ## REST API reference — new Server API endpoints `POST /analytics/query` and `POST /analytics/query/timing` now appear under **Server API > Analytics** in the Mintlify reference. | Light | Dark | |---|---| |  |  | <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added public server-access analytics query support, including a query timing endpoint for performance details. * Enriched API documentation for analytics queries and results. * **Bug Fixes** * Switched analytics querying across the dashboard and E2E tests to use the correct public route and server access flow. * Increased the long-request warning threshold for the analytics query endpoint. * **Documentation** * Updated OpenAPI specs and the analytics guide with REST endpoint details and examples. * **Breaking Changes** * Removed analytics query support from the admin client-side flow; use the server-access method instead. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Stack Auth Documentation
This is the documentation site for Stack Auth, built with Next.js and Fumadocs.
Development
pnpm dev
The docs server runs on port 8104 by default (or ${NEXT_PUBLIC_HEXCLAVE_PORT_PREFIX}04).
Project Structure
Content (/content)
| Directory | Description |
|---|---|
content/docs/ |
Main documentation (guides, SDK reference, components) |
content/api/ |
REST API reference documentation |
App Routes (/src/app)
| Route | Description |
|---|---|
/docs |
Main documentation pages |
/api |
API reference pages (rendered from OpenAPI specs) |
/docs-embed |
Embedded docs for dashboard companion widget |
/api-embed |
Embedded API docs for dashboard companion widget |
/mcp-browser |
MCP documentation browser |
/handler/[...stack] |
Stack Auth handler route |
/api/search |
Search API endpoint |
/api/chat |
AI documentation chat endpoint |
/llms.txt |
LLM-friendly documentation (plain text) |
/llms.mdx |
LLM-friendly documentation (MDX format) |
SDK Route Handlers
These routes serve SDK-specific documentation:
/js/[...path]- JavaScript SDK/next/[...path]- Next.js SDK/react/[...path]- React SDK/python/[...path]- Python SDK/rest-api/[...path]- REST API
Key Files
| File | Description |
|---|---|
lib/source.ts |
Content source adapter using Fumadocs loader() |
source.config.ts |
Fumadocs MDX configuration (frontmatter schema, etc.) |
app/layout.config.tsx |
Shared layout options |
lib/platform-config.ts |
Platform/framework configuration for code examples |
Components (/src/components)
| Directory | Description |
|---|---|
api/ |
API playground components |
chat/ |
AI chat interface |
layout/ |
Layout UI components (search, navigation) |
layouts/ |
Page layouts (docs, API) |
mdx/ |
Custom MDX components |
stack-auth/ |
Stack Auth demo components |
ui/ |
Base UI components (button, etc.) |
OpenAPI Specs (/openapi)
Contains OpenAPI JSON specifications organized by access level:
client-*.json- Client-side API endpointsserver-*.json- Server-side API endpointsadmin-*.json- Admin API endpointswebhooks-*.json- Webhook event schemas
Scripts
# Generate API docs from OpenAPI specs
pnpm generate-openapi-docs
# Clear generated docs
pnpm clear-docs