# ASO Analytics & Impact (/docs/analytics) # ASO Analytics & Impact [#aso-analytics--impact] Cortex correlates store ranking improvements with bottom-line acquisition performance. By connecting App Store Connect and Google Play Console, you can attribute downloads and revenue to specific metadata changes. ## Key Performance Indicators [#key-performance-indicators] * **Organic Visibility Index (OVI)**: An aggregate weighted metric combining all ranking positions and search popularity scores across your tracked keywords. * **Impression-to-Install Conversion Rate (CVR)**: The percentage of store searchers who view your listing and download the app. * **Product Page Views (PPV)**: Total unique visits to your app store product detail page. * **Keyword Share of Voice (SOV)**: The percentage of top-ranking search impressions captured by your app versus category competitors. ## Impact Timeline [#impact-timeline] When you release a new app version or update keywords, Cortex places an annotation pin on your analytics charts: ```mermaid timeline title Optimization Timeline v1.2 Release : Title keyword optimization : Subtitle refreshed Day +3 : Keyword ranks update : 12 terms enter Top 5 Day +7 : Organic impressions +34% : CVR improves from 3.8% to 5.1% Day +14 : Revenue Cat MRR +18% : ROI target achieved ``` # App Store Connect Integration (/docs/app-store-connect) # App Store Connect Integration [#app-store-connect-integration] Connecting your Apple App Store Connect account allows Cortex to automatically synchronize official impressions, product page views, downloads, sales metrics, and metadata versions. ## Prerequisites [#prerequisites] To create an API key, you must have an **Admin** or **Account Holder** role in your Apple Developer Enterprise / Organization account. ### Generate an App Store Connect API Key [#generate-an-app-store-connect-api-key] 1. Log in to [App Store Connect](https://appstoreconnect.apple.com). 2. Go to **Users and Access** > **Integrations** > **App Store Connect API**. 3. Click the **+** button to generate a new key. 4. Name the key (e.g. `Cortex ASO Integration`) and grant **Admin** or **App Manager** access. 5. Note the **Key ID** and your **Issuer ID**. 6. Download the private `.p8` key file. ### Configure in Cortex Workspace [#configure-in-cortex-workspace] In Cortex, navigate to **Settings** > **Integrations** > **Apple App Store Connect**: * Enter your **Issuer ID** (UUID format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`) * Enter your **Key ID** (10-character string: e.g. `2X9R4HXF34`) * Upload your `.p8` private key file ### Verify Connection [#verify-connection] Cortex performs a cryptographic handshake with Apple's servers using ECDSA (P-256) signature generation. Once verified, initial 90-day historical data is ingested automatically. Apple allows downloading the `.p8` private key only once. Store your private key securely. Cortex encrypts credentials at rest with envelope encryption via AWS KMS / Google Cloud Secret Manager. # Apple Search Ads (ASA) Integration (/docs/apple-ads) # Apple Search Ads (ASA) Integration [#apple-search-ads-asa-integration] Connecting Apple Search Ads unlocks exact **Search Popularity** values for hundreds of thousands of keywords, giving your team data precision beyond approximations. ## Advantages of ASA Connection [#advantages-of-asa-connection] * **True Search Popularity (5–100)**: Direct telemetry from Apple's search auction bidding engine. * **Organic vs Paid Cannibalization**: Identify instances where you are paying for search ad clicks on keywords where you already rank organic #1. * **Search Match Query Discovery**: Harvest high-converting query terms discovered via Apple's Search Match algorithm into your permanent organic keyword tracking bank. ## Connecting Your Account [#connecting-your-account] 1. In Apple Search Ads, go to **Account Settings** > **API**. 2. Create a dedicated API User with **API Read Only** permissions. 3. Obtain your **Client ID**, **Team ID**, and **Key ID**. 4. Generate the private client secret key. 5. In Cortex, paste credentials under **Settings** > **Integrations** > **Apple Search Ads**. # Apps & Storefronts (/docs/apps) # Apps & Storefronts [#apps--storefronts] Cortex organizes mobile assets into **Tracked Applications**. Each application supports cross-store mapping between Apple App Store (iOS, iPadOS, macOS, watchOS, visionOS) and Google Play Store (Android). ## Store Identifiers [#store-identifiers] When registering or querying an application through the Cortex API, use either of the native store identifiers: * **Apple App Store**: Numeric Adam ID (e.g., `284882215` for Facebook, `6444602674` for Threads) or Bundle Identifier (`com.example.app`). * **Google Play**: Package Name (e.g., `com.facebook.katana`, `com.instagram.barcelona`). ```json { "appId": "6444602674", "bundleId": "com.burbn.threads", "platform": "ios", "name": "Threads, an Instagram app", "developer": "Instagram, Inc.", "storefronts": ["US", "GB", "DE", "JP", "BR"] } ``` ## Supported Global Storefronts [#supported-global-storefronts] Cortex monitors rankings and search volumes across 50+ localized Apple App Store and Google Play countries: * `US` — United States * `CA` — Canada * `BR` — Brazil * `MX` — Mexico * `AR` — Argentina * `CL` — Chile * `CO` — Colombia * `PE` — Peru * `GB` — United Kingdom * `DE` — Germany * `FR` — France * `IT` — Italy * `ES` — Spain * `NL` — Netherlands * `SE` — Sweden * `CH` — Switzerland * `PL` — Poland * `TR` — Turkey * `JP` — Japan * `KR` — South Korea * `IN` — India * `AU` — Australia * `SG` — Singapore * `HK` — Hong Kong * `TW` — Taiwan * `ID` — Indonesia * `TH` — Thailand * `AE` — United Arab Emirates * `SA` — Saudi Arabia * `IL` — Israel * `EG` — Egypt * `ZA` — South Africa ## Metadata Snapshotting [#metadata-snapshotting] Whenever an application publishes an update to either store, Cortex automatically archives the metadata diff: * Title and subtitle adjustments * Primary & secondary category switches * In-app purchase pricing updates * Promotional text and "What's New" release notes * Screenshot and app icon revisions # Authentication (/docs/authentication) # Authentication [#authentication] The Cortex API utilizes JSON Web Tokens (JWT) for secure, stateless request authentication. All authenticated endpoints enforce Bearer authentication in the HTTP `Authorization` header. ## Bearer Token Authentication [#bearer-token-authentication] Include your access token in the `Authorization` header: ```http Authorization: Bearer ``` ```bash curl -X GET https://api.cortexaso.com/api/user/profile/v1 \ -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." \ -H "Content-Type: application/json" ``` ```typescript import axios from 'axios' const client = axios.create({ baseURL: 'https://api.cortexaso.com/api', headers: { Authorization: `Bearer ${process.env.CORTEX_ACCESS_TOKEN}`, }, }) const { data } = await client.get('/user/profile/v1') console.log('User profile:', data) ``` ```python import os import requests token = os.environ["CORTEX_ACCESS_TOKEN"] headers = {"Authorization": f"Bearer {token}"} response = requests.get("https://api.cortexaso.com/api/user/profile/v1", headers=headers) profile = response.json() print("Logged in as:", profile.get("email")) ``` ## Token Lifecycle [#token-lifecycle] | Token Type | Purpose | Expiration | Refresh Mechanism | | :------------------------ | :--------------------------------------------------- | :--------- | :-------------------------------------------- | | **Access Token** | Authorizes API requests to protected endpoints | 15 minutes | Handled via `/user/auth/v1/refresh_token` | | **Refresh Token** | Rotates expired access tokens | 30 days | Stored securely in HTTP-only cookies or vault | | **Registration Token** | Verifies email OTP during registration flow | 10 minutes | One-time use | | **Forgot Password Token** | Authorizes password reset following OTP confirmation | 10 minutes | One-time use | Never expose refresh tokens or long-lived credentials in client-side code repositories or public client bundles. ## Two-Factor Authentication (TOTP) [#two-factor-authentication-totp] Cortex supports standard RFC 6238 Time-based One-Time Passwords (TOTP) compatible with Google Authenticator, 1Password, and Apple Passwords. 1. **Initiate Setup**: Call `POST /api/user/2fa/v1/setup` to receive your setup URI and manual secret key. 2. **Enable 2FA**: Call `POST /api/user/2fa/v1/enable` with a valid 6-digit TOTP code to finalize setup and retrieve emergency recovery codes. 3. **Verify at Login**: When 2FA is active, standard login prompts for a secondary code passed to `POST /api/user/2fa/v1/verify_login`. # Code Examples & SDKs (/docs/examples) # Code Examples & SDKs [#code-examples--sdks] Here are battle-tested code snippets demonstrating common tasks across various environments. ## 1. User Authentication & Login [#1-user-authentication--login] ```typescript interface LoginResponse { accessToken: string refreshToken: string sessionId: string } async function login(email: string, password: string): Promise { const res = await fetch('https://api.cortexaso.com/api/user/auth/v1/login', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ email, password }), }) if (!res.ok) { throw new Error(`Login failed with HTTP ${res.status}`) } return res.json() } ``` ```python import requests def login(email: str, password: str) -> dict: url = "https://api.cortexaso.com/api/user/auth/v1/login" payload = {"email": email, "password": password} response = requests.post(url, json=payload) response.raise_for_status() return response.json() ``` ```bash curl -X POST https://api.cortexaso.com/api/user/auth/v1/login \ -H "Content-Type: application/json" \ -d '{"email":"user@example.com","password":"SecurePassword123!"}' ``` ```dart import 'dart:convert'; import 'package:http/http.dart' as http; Future> login(String email, String password) async { final response = await http.post( Uri.parse('https://api.cortexaso.com/api/user/auth/v1/login'), headers: {'Content-Type': 'application/json'}, body: jsonEncode({'email': email, 'password': password}), ); if (response.statusCode == 200 || response.statusCode == 201) { return jsonDecode(response.body) as Map; } else { throw Exception('Login failed: ${response.body}'); } } ``` ## 2. Searching Applications During Onboarding [#2-searching-applications-during-onboarding] ```typescript // Query iOS and Android store listings async function searchApps(query: string, storefront = 'US') { const token = process.env.CORTEX_ACCESS_TOKEN const res = await fetch( `https://api.cortexaso.com/api/app_onboarding/v1/apps/search?q=${encodeURIComponent(query)}&storefront=${storefront}`, { headers: { Authorization: `Bearer ${token}`, }, } ) return res.json() } ``` ## 3. Creating Support Tickets with Attachments [#3-creating-support-tickets-with-attachments] ```typescript async function createSupportTicket(title: string, issueDetail: string) { const token = process.env.CORTEX_ACCESS_TOKEN const res = await fetch('https://api.cortexaso.com/api/user/support/v1/tickets', { method: 'POST', headers: { Authorization: `Bearer ${token}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ title, issueDetail, attachments: [], }), }) return res.json() } ``` # Getting Started (/docs/getting-started) # Getting Started with Cortex [#getting-started-with-cortex] This guide walks you through setting up your organization, tracking your first application on the Apple App Store or Google Play Store, and configuring keyword monitoring. ### Create an Account & Organization [#create-an-account--organization] Sign up through the Cortex web application at [/register](/register). During registration, Cortex creates your personal profile and provisions your primary organization workspace. ```bash # Verify authentication status via REST API curl -H "Authorization: Bearer " \ https://api.cortexaso.com/api/user/auth/v1/profile ``` ### Add Your Application [#add-your-application] Navigate to the [Onboarding Wizard](/onboarding) or search for your live app directly by name, bundle ID, or App Store ID. Cortex automatically detects: * Primary category and subcategories * Storefront availability (50+ supported regions) * Existing metadata (title, subtitle, description, screenshots) ### Select Competitor Applications [#select-competitor-applications] Cortex's AI discovery engine analyzes your app's categories and organic keywords to suggest 5-10 relevant competitors. Selecting competitors enables side-by-side keyword overlap scoring and rank movement diffs. ### Seed Your Target Keywords [#seed-your-target-keywords] Add high-priority search terms relevant to your app. Cortex immediately queries live store indexes to retrieve: * Current rank position * Search popularity index (0–100) * Competition difficulty score * Top 10 ranking competitors for each term ## Next Steps [#next-steps] # Google Play Console Integration (/docs/google-play) # Google Play Console Integration [#google-play-console-integration] Integrating your Google Play Developer Console allows Cortex to synchronize Android store listing performance, acquisition reports, organic search query terms, and ratings distributions. ## Service Account Setup [#service-account-setup] Google Cloud IAM Service Accounts provide machine-to-machine authentication with Google Play APIs. ### Create a Google Cloud Service Account [#create-a-google-cloud-service-account] 1. In the [Google Cloud Console](https://console.cloud.google.com), select the project linked to your Google Play Console. 2. Navigate to **IAM & Admin** > **Service Accounts** and click **Create Service Account**. 3. Name the account `cortex-aso-sync`. 4. Click **Create and Continue**, then grant the account the **Service Account User** role. 5. Under the **Keys** tab, select **Add Key** > **Create new key** > **JSON**. 6. Download the generated service account credentials JSON file. ### Grant Permissions in Google Play Console [#grant-permissions-in-google-play-console] 1. Open [Google Play Console](https://play.google.com/console). 2. Navigate to **Users and Permissions** > **Invite new user**. 3. Enter your service account's client email (e.g. `cortex-aso-sync@your-project.iam.gserviceaccount.com`). 4. Grant **View app information and download bulk reports (read-only)** and **View financial data** permissions. 5. Save and send the invite. ### Upload Credentials in Cortex [#upload-credentials-in-cortex] Navigate to **Settings** > **Integrations** > **Google Play Console** in your Cortex dashboard and upload the JSON key file. # Welcome to Cortex (/docs) # Cortex Documentation [#cortex-documentation] Cortex is an enterprise-grade App Store Optimization (ASO) intelligence platform built for modern mobile growth teams. It unifies keyword rank tracking, competitor intelligence, App Store Connect analytics, Google Play developer metrics, and AI-powered metadata insights into one seamless workspace. ## Core Architecture [#core-architecture] Cortex connects to official store developer APIs and combines proprietary ranking algorithms with store search volume estimates: ```mermaid graph TD A[Mobile Apps: iOS & Android] --> B[Cortex Engine] C[App Store Connect API] --> B D[Google Play Console] --> B E[Apple Search Ads] --> B B --> F[Real-Time Keyword Rank Tracking] B --> G[AI Metadata Suggestions] B --> H[Competitor Movements & Alerts] B --> I[Public REST API & MCP Server] ``` ## Quick Navigation [#quick-navigation] Looking to integrate programmatically? Head straight to our [REST API Reference](/docs/api) or review the [Authentication Guide](/docs/authentication). ### Core Capabilities [#core-capabilities] * **Keyword Tracking**: Monitor search rankings across 50+ localized storefronts with daily accuracy. * **Competitor Insights**: Benchmark organic visibility against direct category rivals and track metadata releases. * **Store Integrations**: Native bi-directional sync with Apple App Store Connect and Google Play Developer Console. * **AI Automation & MCP**: Agentic workflows powered by Model Context Protocol tools for continuous optimization. # Keyword Tracking (/docs/keyword-tracking) # Keyword Tracking [#keyword-tracking] Cortex continuously monitors keyword positions for your applications and their tracked competitors. Search results are refreshed daily, with high-priority terms updated on on-demand intervals. ## Daily Rank Ingestion [#daily-rank-ingestion] Our ranking engine runs automated headless probes across localized regional storefronts: * Probes replicate native iPhone and Android search clients. * Clean-room searches prevent personalized user bias. * Search indexes capture positions `1` through `250`. ```json { "keyword": "sleep sounds and white noise", "storefront": "US", "platform": "ios", "rank": 3, "previousRank": 7, "delta": "+4", "bestRank": 2, "topCompetitors": [ { "appId": "123456789", "name": "Calm", "rank": 1 }, { "appId": "987654321", "name": "Headspace", "rank": 2 }, { "appId": "456789123", "name": "Your App", "rank": 3 } ] } ``` ## Tagging & Organization [#tagging--organization] Group your keywords to slice analytics effectively: * **Brand Keywords**: Your own app name and company trademarks. * **Competitor Terms**: Direct competitor app titles and branded terms. * **Feature / Discovery**: Generic search terms reflecting core functionality. * **Seasonal / Promo**: Terms targeting holidays, events, or marketing pushes. # Keywords & Discovery (/docs/keywords) # Keywords & Discovery [#keywords--discovery] Keywords are the foundation of organic App Store Optimization. Cortex collects search suggestions, Apple Search Ads (ASA) Search Popularity metrics, and competitive density to help you choose high-intent terms. ## Keyword Metrics [#keyword-metrics] Every keyword in Cortex is evaluated against three core dimensions: 1. **Search Popularity (0–100)**: Derived from Apple Search Ads and live store search auto-complete frequencies. A popularity score above 40 indicates strong search demand. 2. **Difficulty Index (0–100)**: Measures how hard it is to break into the Top 10 rankings, based on the domain authority, download volume, and ratings velocity of current top-ranking apps. 3. **Relevancy Score**: An AI semantic alignment score measuring how closely the search query matches your application's category, features, and target audience. **The Golden Ratio Formula**: Focus your optimization on terms with high Popularity (>40) and moderate Difficulty (\<50) where your app has direct semantic relevance. ## Keyword Suggestion Engine [#keyword-suggestion-engine] Cortex provides multiple discovery vectors: * **Store Auto-Complete**: Real-time keystroke predictions from Apple App Store and Google Play search bars. * **Competitor Gap Analysis**: Identifies terms where your top 3 competitors rank in the top 5, but your application is currently unranked. * **Semantic Expansion**: Uses LLMs to generate high-intent synonyms, long-tail phrases, and localization equivalents. ```typescript // Example keyword suggestion payload { "keyword": "budget planner expense tracker", "storefront": "US", "popularity": 58, "difficulty": 42, "relevancy": 94, "topCompetitor": "Mint & YNAB", "currentRank": 14 } ``` # Model Context Protocol (MCP) (/docs/mcp) # Model Context Protocol (MCP) Server [#model-context-protocol-mcp-server] Cortex implements the open [Model Context Protocol (MCP)](https://modelcontextprotocol.io) specification. This allows AI developer agents (such as Claude Desktop, Cursor, Antigravity, and custom LLM workflows) to search our documentation, inspect API schemas, and query ASO metrics directly. ## Endpoint & Transport [#endpoint--transport] The Cortex MCP server is hosted as a standard HTTP Streamable endpoint: ```text https://cortexaso.com/api/mcp ``` ## Connecting Your AI Agent [#connecting-your-ai-agent] Add Cortex to your agent's MCP configuration file (e.g. `claude_desktop_config.json` or `.mcp.json`): ```json { "mcpServers": { "cortex-docs": { "url": "https://cortexaso.com/api/mcp" } } } ``` ```json { "mcpServers": { "cortex-docs": { "url": "http://localhost:3001/api/mcp" } } } ``` ## Available MCP Tools [#available-mcp-tools] Our server exposes three core documentation and tool capabilities: 1. **`list_pages`**: Enumerates all published documentation topics, guides, and OpenAPI routes with URL slugs and titles. 2. **`get_page`**: Fetches clean, Markdown-formatted content for any page path (e.g. `/docs/authentication`, `/docs/api/user/auth/userAuth_login`). 3. **`search`**: Performs semantic full-text search across documentation guides and API endpoint contracts with natural language queries. **LLM-Ready Endpoints**: If you are training or feeding documentation context into an LLM context window without MCP, you can also fetch our raw text feeds directly at [/llms.txt](/llms.txt) and [/llms-full.txt](/llms-full.txt). # Category & Overall Rankings (/docs/rankings) # Category & Overall Rankings [#category--overall-rankings] In addition to individual keyword ranks, Cortex tracks real-time placements in App Store and Google Play top charts. ## Tracked Charts [#tracked-charts] Cortex tracks three primary chart divisions across every supported store category: 1. **Top Free**: Most downloaded free applications within the last 24 hours. 2. **Top Paid**: Leading paid upfront application purchases. 3. **Top Grossing**: Applications generating the highest in-app purchase (IAP) and subscription volume. ## Chart Movement Feeds [#chart-movement-feeds] When an application jumps or drops significantly in ranking, Cortex generates an event in your activity feed: **Significant Movement Threshold**: By default, movements of ±5 spots in the Top 100 or ±15 spots in the Top 500 trigger automated webhook notifications and daily summary alerts. ```typescript // Sample ranking alert webhook payload { "event": "ranking.chart_movement", "appId": "6444602674", "appName": "Threads", "storefront": "US", "category": "Social Networking", "chartType": "topFree", "newRank": 2, "oldRank": 8, "delta": "+6", "timestamp": "2026-09-13T12:00:00Z" } ``` # Webhooks & Event Notifications (/docs/webhooks) # Webhooks & Event Notifications [#webhooks--event-notifications] Webhooks notify your backend or automation services whenever notable events occur in your Cortex workspace (e.g. significant rank changes, competitor app updates, daily digest generation). ## Subscribing to Events [#subscribing-to-events] Configure webhook endpoints under **Settings** > **Webhooks** in the Cortex dashboard or programmatically via the REST API. ### Available Event Types [#available-event-types] | Event Name | Trigger | | :----------------------------- | :--------------------------------------------------------------------------- | | `keyword.rank_changed` | Triggered when a tracked keyword changes position by ±N spots | | `competitor.metadata_updated` | Triggered when a tracked competitor modifies title, subtitle, or screenshots | | `chart.movement` | Triggered on major category chart shifts | | `billing.subscription_updated` | Triggered when plan tier or seat limit changes | ## Signature Verification [#signature-verification] Every webhook payload carries a cryptographic HMAC-SHA256 signature in the `X-Cortex-Signature` header computed using your webhook signing secret. ```typescript import crypto from 'node:crypto' import express from 'express' const app = express() app.use(express.json()) function verifyWebhook(payload: string, signature: string, secret: string): boolean { const hmac = crypto.createHmac('sha256', secret).update(payload).digest('hex') return crypto.timingSafeEqual(Buffer.from(hmac), Buffer.from(signature)) } app.post('/api/cortex-webhook', (req, res) => { const signature = req.headers['x-cortex-signature'] as string const rawBody = JSON.stringify(req.body) if (!verifyWebhook(rawBody, signature, process.env.CORTEX_WEBHOOK_SECRET!)) { return res.status(401).send('Invalid signature') } const { event, data } = req.body console.log(`Received ${event}:`, data) res.status(200).send('OK') }) ``` ```python import hmac import hashlib from fastapi import FastAPI, Header, HTTPException, Request app = FastAPI() SECRET = "your_webhook_signing_secret" @app.post("/api/cortex-webhook") async def handle_webhook(request: Request, x_cortex_signature: str = Header(None)): body = await request.body() computed = hmac.new(SECRET.encode(), body, hashlib.sha256).hexdigest() if not hmac.compare_digest(computed, x_cortex_signature or ""): raise HTTPException(status_code=401, detail="Invalid signature") payload = await request.json() print("Received event:", payload.get("event")) return {"status": "ok"} ``` # App Onboarding (/docs/api/app-onboarding) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Health (/docs/api/health) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # API Reference Overview (/docs/api) # Cortex API Reference [#cortex-api-reference] Welcome to the Cortex ASO Platform REST API documentation. This API reference is automatically generated from our NestJS backend OpenAPI specification. ## Base URL [#base-url] ```bash https://api.cortexaso.com/api # Local development http://localhost:3000/api ``` ## Authentication [#authentication] All protected endpoints require an authorization token in the `Authorization` request header: ```http Authorization: Bearer ``` ## Endpoint Modules [#endpoint-modules] Explore the API endpoints in the sidebar organized by module: # Admin/ App Settings (/docs/api/admin/app-settings) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Attachments (/docs/api/admin/attachments) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Auth (/docs/api/admin/auth) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Currency Rates (/docs/api/admin/currency-rates) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ F A Qs (/docs/api/admin/faqs) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Notifications (/docs/api/admin/notifications) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Pricing Plans (/docs/api/admin/pricing-plans) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Revenue Cat (/docs/api/admin/revenuecat) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Support (/docs/api/admin/support) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # Admin/ Users (/docs/api/admin/users) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/2 F A (/docs/api/user/2fa) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ App Settings (/docs/api/user/app-settings) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Attachments (/docs/api/user/attachments) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Auth (/docs/api/user/auth) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Content Versions (/docs/api/user/content-versions) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Currency Rates (/docs/api/user/currency-rates) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ F A Qs (/docs/api/user/faqs) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Organizations (/docs/api/user/organizations) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Pricing Plans (/docs/api/user/pricing-plans) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Profile (/docs/api/user/profile) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Revenue Cat (/docs/api/user/revenuecat) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */} # User/ Support (/docs/api/user/support) {/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}