{"openapi":"3.1.0","info":{"title":"QCode-Web","description":"QCode.cc 官方网站 - Claude Code API 代理服务平台","version":"1.0.0"},"paths":{"/api/v1/health/":{"get":{"tags":["health"],"summary":"Health Check","description":"Basic health check.","operationId":"health_check_api_v1_health__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/health/detailed":{"get":{"tags":["health"],"summary":"Detailed Health Check","description":"Detailed health check including database connectivity.","operationId":"detailed_health_check_api_v1_health_detailed_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/user/me":{"get":{"tags":["user"],"summary":"Get Current User","description":"Get current user information.","operationId":"get_current_user_api_v1_user_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/payment/methods":{"get":{"tags":["payment"],"summary":"Get Payment Methods","description":"Get available payment methods, with admin-toggle aware enabled+hint_text fields.\n\nEach channel may carry a private per-user historical-recharge gate\n(see channel_config.get_channel_min_history_cny). When the current user's\ncumulative successful recharge in CNY equivalent is below the gate, that\nchannel is reported as `enabled=false` with a generic hint — the gate\nthreshold itself is never returned in the response (private internal policy).\n\nArgs:\n    user: Authenticated user (Depends). /recharge requires login, and\n        this endpoint is only called from there, so requiring auth is safe.\n    language: User's i18n locale (zh/en/ja/ru). Used to localize hint_text fallback.\n    currency: Optional CNY/USD filter for which methods to return. When None,\n        we infer it from `language` for backward compat (zh→CNY else USD).","operationId":"get_payment_methods_api_v1_payment_methods_get","parameters":[{"name":"language","in":"query","required":false,"schema":{"type":"string","default":"zh","title":"Language"}},{"name":"currency","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentMethodsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payment/status/{order_id}":{"get":{"tags":["payment"],"summary":"Get Payment Status","description":"Get payment status.","operationId":"get_payment_status_api_v1_payment_status__order_id__get","parameters":[{"name":"order_id","in":"path","required":true,"schema":{"type":"string","title":"Order Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payment/order-status/{order_no}":{"get":{"tags":["payment"],"summary":"Get Order Status Public","description":"Public order status — for /payment/processing waiting page polling.\n\nNo auth required: the user lands on /payment/processing from the hosted\ncheckout's tab, where the qcode session cookie may not be present (same\nreason /payment/success is public). Returns ONLY\n{order_no, status} — no PII, no amount, no email — so disclosure of an\norder_no doesn't leak balance info.\n\nOrder numbers are 14-digit timestamp + 6 random chars (sufficient\nunguessability for the short 1-5 minute crypto polling window). Status\ntransitions: pending → processing (crypto chain confirming) → paid|failed.","operationId":"get_order_status_public_api_v1_payment_order_status__order_no__get","parameters":[{"name":"order_no","in":"path","required":true,"schema":{"type":"string","title":"Order No"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payment/callback":{"post":{"tags":["payment"],"summary":"Payment Callback","description":"Handle payment callback from XorPay.","operationId":"payment_callback_api_v1_payment_callback_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_payment_callback_api_v1_payment_callback_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payment/orders":{"get":{"tags":["payment"],"summary":"Get User Orders","description":"Get user's payment orders.","operationId":"get_user_orders_api_v1_payment_orders_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Limit"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payment/waffo/callback":{"post":{"tags":["payment"],"summary":"Waffo Webhook","description":"Waffo Pancake webhook — signature verified in the decorator.\n\nCredits USD balance for credit-card recharges (order.completed) and claws\nback on refund.succeeded. Same contract every acquirer before it used:\nidempotent (row-lock + status==paid), DB-amount-of-truth, USD currency\ncross-check, fee-passed-to-user reconciliation against subtotal. Anything\nirrelevant (mode mismatch / refund.failed / subscription.*) is a 200 no-op\nso Waffo stops retrying.","operationId":"waffo_webhook_api_v1_payment_waffo_callback_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/payment/lava/callback":{"post":{"tags":["payment"],"summary":"Lava Webhook","description":"lava.top webhook — credential verified in the decorator.\n\nCredits balance_usd for RUB-session recharges (payment.success). lava's\nwebhook carries no signature (static header credential only), so before\ncrediting we RE-FETCH the invoice from lava's own API and require\nstatus=COMPLETED — a forged webhook cannot make lava's API say that. The\nrest is the standard acquirer contract: row-lock + status idempotency,\nDB-amount-of-truth (we credit order.amount USD, never a webhook figure),\namount/currency reconciliation against orders.amount_rub.\n\nURL has NO trailing slash on purpose: LanguageMiddleware 301s any\ntrailing-slash path, which would break lava's POST delivery.","operationId":"lava_webhook_api_v1_payment_lava_callback_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/system/status":{"get":{"tags":["system"],"summary":"Get System Status","description":"Get system status information.","operationId":"get_system_status_api_v1_system_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemStatusResponse"}}}}}}},"/api/v1/system/manifest":{"get":{"tags":["system"],"summary":"Get Manifest","description":"Get dynamic web app manifest.","operationId":"get_manifest_api_v1_system_manifest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/apikey/products":{"get":{"tags":["apikey"],"summary":"Get Available Products","description":"Get available API Key products.","operationId":"get_available_products_api_v1_apikey_products_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductsResponse"}}}}}}},"/api/v1/apikey/purchase":{"post":{"tags":["apikey"],"summary":"Purchase Api Key","description":"Purchase an API Key product.","operationId":"purchase_api_key_api_v1_apikey_purchase_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__api__endpoints__apikey__PurchaseRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__api__endpoints__apikey__PurchaseResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/apikey/key/{api_key_id}":{"get":{"tags":["apikey"],"summary":"Get Api Key","description":"Get the full API key for a user's API key.","operationId":"get_api_key_api_v1_apikey_key__api_key_id__get","parameters":[{"name":"api_key_id","in":"path","required":true,"schema":{"type":"integer","title":"Api Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiKeyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/referral/code":{"get":{"tags":["referral"],"summary":"Get Referral Code","description":"获取或创建用户的推荐码.","operationId":"get_referral_code_api_v1_referral_code_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReferralCodeResponse"}}}}}}},"/api/v1/referral/stats":{"get":{"tags":["referral"],"summary":"Get Referral Stats","description":"获取用户推荐统计.","operationId":"get_referral_stats_api_v1_referral_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReferralStatsResponse"}}}}}}},"/api/v1/referral/apply-reward":{"post":{"tags":["referral"],"summary":"Apply Reward","description":"申请推荐奖励 — 自动充值到余额.","operationId":"apply_reward_api_v1_referral_apply_reward_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RewardApplicationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RewardApplicationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/referral/applications":{"get":{"tags":["referral"],"summary":"Get Reward Applications","description":"获取用户的奖励申请历史.","operationId":"get_reward_applications_api_v1_referral_applications_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/referral/register-referral":{"post":{"tags":["referral"],"summary":"Register Referral","description":"手动绑定推荐码.","operationId":"register_referral_api_v1_referral_register_referral_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_register_referral_api_v1_referral_register_referral_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/usage-stats/user-summary":{"get":{"tags":["usage-stats"],"summary":"Get User Usage Summary","description":"Get comprehensive usage statistics summary for the current user.\n\nArgs:\n    include_inactive: Whether to include inactive API keys in the summary\n    \nReturns:\n    Complete usage statistics summary for the user","operationId":"get_user_usage_summary_api_v1_usage_stats_user_summary_get","parameters":[{"name":"include_inactive","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Inactive"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserUsageStatsSummary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/usage-stats/api-key/{api_key_id}":{"get":{"tags":["usage-stats"],"summary":"Get Api Key Usage Stats","description":"Get usage statistics for a specific API key.\n\nArgs:\n    api_key_id: The local API key ID\n    \nReturns:\n    Usage statistics for the specified API key","operationId":"get_api_key_usage_stats_api_v1_usage_stats_api_key__api_key_id__get","parameters":[{"name":"api_key_id","in":"path","required":true,"schema":{"type":"integer","title":"Api Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DashboardUsageStats"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/usage-stats/refresh-user-stats":{"post":{"tags":["usage-stats"],"summary":"Refresh User Usage Stats","description":"Refresh and return updated usage statistics for the current user.\n\nThis endpoint forces a fresh fetch from the external API, bypassing any caching.\n\nReturns:\n    Updated usage statistics summary","operationId":"refresh_user_usage_stats_api_v1_usage_stats_refresh_user_stats_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Refresh User Usage Stats Api V1 Usage Stats Refresh User Stats Post"}}}}}}},"/api/v1/usage-stats/health-check":{"get":{"tags":["usage-stats"],"summary":"Usage Stats Health Check","description":"Check the health of the usage statistics service.\n\nReturns:\n    Service health status","operationId":"usage_stats_health_check_api_v1_usage_stats_health_check_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Usage Stats Health Check Api V1 Usage Stats Health Check Get"}}}}}}},"/api/v1/help/categories":{"get":{"tags":["help"],"summary":"Get Help Categories","description":"获取帮助文档分类列表","operationId":"get_help_categories_api_v1_help_categories_get","parameters":[{"name":"include_items","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Include Items"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/HelpCategoryResponse"},"title":"Response Get Help Categories Api V1 Help Categories Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/help/items/{category_id}":{"get":{"tags":["help"],"summary":"Get Help Items By Category","description":"获取指定分类的帮助文档条目","operationId":"get_help_items_by_category_api_v1_help_items__category_id__get","parameters":[{"name":"category_id","in":"path","required":true,"schema":{"type":"integer","title":"Category Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/HelpItemResponse"},"title":"Response Get Help Items By Category Api V1 Help Items  Category Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/help/items/{item_id}/click":{"post":{"tags":["help"],"summary":"Record Help Item Click","description":"记录帮助条目点击次数","operationId":"record_help_item_click_api_v1_help_items__item_id__click_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/help/error-codes":{"get":{"tags":["help"],"summary":"Get Error Codes","description":"获取常见错误码列表","operationId":"get_error_codes_api_v1_help_error_codes_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ErrorCodeResponse"},"title":"Response Get Error Codes Api V1 Help Error Codes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/help/error-codes/{error_code_id}/click":{"post":{"tags":["help"],"summary":"Record Error Code Click","description":"记录错误码点击次数","operationId":"record_error_code_click_api_v1_help_error_codes__error_code_id__click_post","parameters":[{"name":"error_code_id","in":"path","required":true,"schema":{"type":"integer","title":"Error Code Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/language/set":{"post":{"tags":["language"],"summary":"Set Language","description":"Set user's language preference.\n\nThis stores the preference in:\n1. Session (for authenticated users)\n2. Cookie (for all users)","operationId":"set_language_api_v1_language_set_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LanguagePreference"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LanguageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/language/current":{"get":{"tags":["language"],"summary":"Get Current Language","description":"Get current language setting.\n\nReturns the detected language from various sources.","operationId":"get_current_language_api_v1_language_current_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/docs-help/categories":{"get":{"tags":["docs-help"],"summary":"Get Docs Help Categories","description":"获取帮助分类列表\n\n返回多语言的帮助分类和条目，每个条目的 doc_url 指向对应语言的文档页面。\n\nArgs:\n    lang: 语言代码 (zh, en, ja)\n\nReturns:\n    帮助分类列表","operationId":"get_docs_help_categories_api_v1_docs_help_categories_get","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","description":"语言代码","default":"zh","title":"Lang"},"description":"语言代码"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response Get Docs Help Categories Api V1 Docs Help Categories Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/docs-help/error-codes":{"get":{"tags":["docs-help"],"summary":"Get Docs Error Codes","description":"获取错误码列表\n\n返回多语言的错误码列表，每个条目的 doc_url 指向对应语言的文档页面的错误码锚点。\n\nArgs:\n    lang: 语言代码 (zh, en, ja)\n    limit: 返回数量限制\n\nReturns:\n    错误码列表","operationId":"get_docs_error_codes_api_v1_docs_help_error_codes_get","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","description":"语言代码","default":"zh","title":"Lang"},"description":"语言代码"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":20,"minimum":1,"description":"返回数量限制","default":10,"title":"Limit"},"description":"返回数量限制"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"},"title":"Response Get Docs Error Codes Api V1 Docs Help Error Codes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/booster/info":{"get":{"tags":["booster"],"summary":"Get Booster Info","operationId":"get_booster_info_api_v1_booster_info_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BoosterInfoResponse"}}}}}}},"/api/v1/booster/purchase":{"post":{"tags":["booster"],"summary":"Purchase Booster","operationId":"purchase_booster_api_v1_booster_purchase_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BoosterPurchaseRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BoosterPurchaseResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/booster/calculate":{"get":{"tags":["booster"],"summary":"Calculate Booster Cost","operationId":"calculate_booster_cost_api_v1_booster_calculate_get","parameters":[{"name":"amount_usd","in":"query","required":true,"schema":{"type":"integer","title":"Amount Usd"}},{"name":"include_window_boost","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Window Boost"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/recharge/fee-preview":{"get":{"tags":["recharge"],"summary":"Fee Preview","description":"Preview fee for a recharge amount without creating an order.","operationId":"fee_preview_api_v1_recharge_fee_preview_get","parameters":[{"name":"amount","in":"query","required":true,"schema":{"type":"number","exclusiveMinimum":0.0,"description":"Recharge amount","title":"Amount"},"description":"Recharge amount"},{"name":"payment_method","in":"query","required":false,"schema":{"type":"string","description":"Payment method","default":"alipay","title":"Payment Method"},"description":"Payment method"},{"name":"language","in":"query","required":false,"schema":{"type":"string","description":"User language","default":"zh","title":"Language"},"description":"User language"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeePreviewResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/recharge/create":{"post":{"tags":["recharge"],"summary":"Create Recharge","description":"Create a recharge order with transparent fee handling.","operationId":"create_recharge_api_v1_recharge_create_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RechargeCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RechargeCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subscribe/price-preview":{"get":{"tags":["subscribe"],"summary":"Price Preview","description":"Price preview for custom configuration (no login required).","operationId":"price_preview_api_v1_subscribe_price_preview_get","parameters":[{"name":"daily_limit","in":"query","required":true,"schema":{"type":"integer","maximum":500,"minimum":5,"title":"Daily Limit"}},{"name":"months","in":"query","required":false,"schema":{"type":"integer","maximum":12,"minimum":1,"default":1,"title":"Months"}},{"name":"no_4h_window","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"No 4H Window"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PricePreviewResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subscribe/presets":{"get":{"tags":["subscribe"],"summary":"List Presets","description":"Get preset plan list (no login required). Accepts lang param for i18n.","operationId":"list_presets_api_v1_subscribe_presets_get","parameters":[{"name":"lang","in":"query","required":false,"schema":{"type":"string","pattern":"^(zh|en|ja|ru)$","default":"zh","title":"Lang"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PresetsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subscribe/purchase":{"post":{"tags":["subscribe"],"summary":"Purchase Subscribe","description":"Purchase/activate a subscription. Requires login. Supports preset or custom mode.","operationId":"purchase_subscribe_api_v1_subscribe_purchase_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__schemas__subscribe__PurchaseRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__schemas__subscribe__PurchaseResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subscribe/renew":{"post":{"tags":["subscribe"],"summary":"Renew Api Key","description":"Renew an active API key by extending its expiration. Supports 1 or 2 months.","operationId":"renew_api_key_api_v1_subscribe_renew_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenewRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenewResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/support/status":{"get":{"tags":["support"],"summary":"Support Status","description":"Return {\"online\": bool}. Fails open (online=True) on any error.","operationId":"support_status_api_v1_support_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/downloads/{slug}":{"get":{"tags":["downloads"],"summary":"Download File","operationId":"download_file_api_v1_downloads__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/me":{"get":{"tags":["reseller-open-api"],"summary":"Get Me","operationId":"get_me_api_v1_reseller_me_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/balance":{"get":{"tags":["reseller-open-api"],"summary":"Get Balance","operationId":"get_balance_api_v1_reseller_balance_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/usage":{"get":{"tags":["reseller-open-api"],"summary":"Get Usage","operationId":"get_usage_api_v1_reseller_usage_get","parameters":[{"name":"range","in":"query","required":false,"schema":{"type":"string","default":"7d","title":"Range"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/keys":{"get":{"tags":["reseller-open-api"],"summary":"List Keys","operationId":"list_keys_api_v1_reseller_keys_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["reseller-open-api"],"summary":"Create Key","operationId":"create_key_api_v1_reseller_keys_post","parameters":[{"name":"idempotency-key","in":"header","required":false,"schema":{"type":"string","default":"","title":"Idempotency-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateKeyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/keys/{apikey_id}":{"get":{"tags":["reseller-open-api"],"summary":"Get Key","operationId":"get_key_api_v1_reseller_keys__apikey_id__get","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["reseller-open-api"],"summary":"Update Key","operationId":"update_key_api_v1_reseller_keys__apikey_id__patch","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateKeyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["reseller-open-api"],"summary":"Delete Key","description":"删除已停用的自有子 key（CRS 软删，释放数量名额）。只删已禁用；活跃 key 需先 disable。","operationId":"delete_key_api_v1_reseller_keys__apikey_id__delete","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/keys/{apikey_id}/enable":{"post":{"tags":["reseller-open-api"],"summary":"Enable Key","operationId":"enable_key_api_v1_reseller_keys__apikey_id__enable_post","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reseller/keys/{apikey_id}/disable":{"post":{"tags":["reseller-open-api"],"summary":"Disable Key","operationId":"disable_key_api_v1_reseller_keys__apikey_id__disable_post","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/openapi":{"get":{"tags":["openapi-user"],"summary":"Index","description":"API 自述（探活 + 用法）。仅校验 token,不计入限流配额(留给探活轮询)。","operationId":"index_api_v1_openapi_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/openapi/me":{"get":{"tags":["openapi-user"],"summary":"Get Me","description":"账户级用量汇总。","operationId":"get_me_api_v1_openapi_me_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/openapi/keys":{"get":{"tags":["openapi-user"],"summary":"List Keys","description":"当前 token 用户的所有有效 API Key（过期时间 + 每日/月用量等）。","operationId":"list_keys_api_v1_openapi_keys_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","default":"","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/upstream/status":{"get":{"tags":["upstream-status"],"summary":"Upstream Status","description":"Public snapshot. `age_seconds > 300` means the refresh job is dead.","operationId":"upstream_status_api_v1_upstream_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/upstream/_debug":{"get":{"tags":["upstream-status"],"summary":"Upstream Debug","description":"DEVING-only. Exposes per-vendor errors and the Gemini match decision per incident.","operationId":"upstream_debug_api_v1_upstream__debug_get","parameters":[{"name":"fixture","in":"query","required":false,"schema":{"type":"string","title":"Fixture"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"tags":["home"],"summary":"Home Page","description":"Render home page.","operationId":"home_page__get","parameters":[{"name":"ref","in":"query","required":false,"schema":{"type":"string","title":"Ref"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/pricing":{"get":{"tags":["home"],"summary":"Pricing Page","description":"Render pricing page — interactive calculator driven by client-side API.","operationId":"pricing_page_pricing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/models":{"get":{"tags":["home"],"summary":"Models Page","description":"Render models pricing page — shows model pricing from CRS data sources.","operationId":"models_page_models_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/enterprise":{"get":{"tags":["home"],"summary":"Enterprise Page","description":"Render enterprise team page.","operationId":"enterprise_page_enterprise_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/partner-program":{"get":{"tags":["home"],"summary":"Partner Program Page","description":"Partner Program solution page — public marketing for the channel partner tier.\n\nNote: backend reseller_* fields and admin paths retain the historical naming;\nonly the public URL/template/i18n have been rebranded to Partner Program.","operationId":"partner_program_page_partner_program_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/dashboard":{"get":{"tags":["home"],"summary":"Dashboard Page","description":"Render dashboard page (requires authentication).","operationId":"dashboard_page_dashboard_get","parameters":[{"name":"referral_success","in":"query","required":false,"schema":{"type":"string","title":"Referral Success"}},{"name":"referral_error","in":"query","required":false,"schema":{"type":"string","title":"Referral Error"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/profile":{"get":{"tags":["home"],"summary":"Profile Page","description":"Retired profile page: permanently redirect to the dashboard.","operationId":"profile_page_profile_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/privacy":{"get":{"tags":["home"],"summary":"Privacy Policy Page","description":"Render privacy policy page.","operationId":"privacy_policy_page_privacy_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/links":{"get":{"tags":["home"],"summary":"Friend Links Page","description":"Render friend links page.","operationId":"friend_links_page_links_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/terms":{"get":{"tags":["home"],"summary":"Terms Of Service Page","description":"Render terms of service page.","operationId":"terms_of_service_page_terms_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/test-sync":{"get":{"tags":["home"],"summary":"Test User Sync","description":"Test endpoint to check user sync functionality.","operationId":"test_user_sync_test_sync_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/dashboard/openapi-token":{"get":{"tags":["home"],"summary":"Openapi Token Page","description":"展示当前 token 状态 + 生成/重置/撤销入口。","operationId":"openapi_token_page_dashboard_openapi_token_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/dashboard/openapi-token/rotate":{"post":{"tags":["home"],"summary":"Openapi Token Rotate","description":"生成或重置（rotate）access token。重置=覆盖同一行 hash + 清 revoked + 续期。\n\n明文仅在本响应页渲染一次。","operationId":"openapi_token_rotate_dashboard_openapi_token_rotate_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/dashboard/openapi-token/revoke":{"post":{"tags":["home"],"summary":"Openapi Token Revoke","description":"撤销当前 token（不换发）。撤销后开放 API 立即拒绝。","operationId":"openapi_token_revoke_dashboard_openapi_token_revoke_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/login":{"get":{"tags":["auth"],"summary":"Login Page","description":"Render login page.","operationId":"login_page_auth_login_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/auth/sign-in":{"get":{"tags":["auth"],"summary":"Sign In","description":"Initiate sign-in process.","operationId":"sign_in_auth_sign_in_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/sign-up":{"get":{"tags":["auth"],"summary":"Sign Up","description":"Initiate sign-up process.","operationId":"sign_up_auth_sign_up_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/callback":{"get":{"tags":["auth"],"summary":"Auth Callback","description":"Handle authentication callback from Logto.","operationId":"auth_callback_auth_callback_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/sign-out":{"get":{"tags":["auth"],"summary":"Sign Out","description":"Initiate sign-out process.","operationId":"sign_out_auth_sign_out_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/status":{"get":{"tags":["auth"],"summary":"Auth Status","description":"Check authentication status and return user info.","operationId":"auth_status_auth_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/auth/sync-user":{"post":{"tags":["auth"],"summary":"Sync User","description":"Manually sync user from Logto to local database.","operationId":"sync_user_auth_sync_user_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/ai-coding-tools-comparison":{"get":{"tags":["seo"],"summary":"Ai Coding Tools Comparison","description":"AI编程工具对比页面 - Claude Code vs Cursor vs Gemini CLI等","operationId":"ai_coding_tools_comparison_ai_coding_tools_comparison_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-tutorial":{"get":{"tags":["seo"],"summary":"Ai Coding Tutorial","description":"AI编程教程和指南页面","operationId":"ai_coding_tutorial_ai_coding_tutorial_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-vs-competitors":{"get":{"tags":["seo"],"summary":"Claude Code Vs Competitors","description":"Claude Code与竞品详细对比页面","operationId":"claude_code_vs_competitors_claude_code_vs_competitors_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-model-radar-2026":{"get":{"tags":["seo"],"summary":"Ai Model Radar 2026","description":"2026 AI 模型动态雷达（枢纽页）","operationId":"ai_model_radar_2026_ai_model_radar_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-5-pro-guide":{"get":{"tags":["seo"],"summary":"Gemini 3 5 Pro Guide","description":"Gemini 3.5 Pro 发布与现状指南","operationId":"gemini_3_5_pro_guide_gemini_3_5_pro_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-2-guide":{"get":{"tags":["seo"],"summary":"Glm 5 2 Guide","description":"GLM-5.2 能力与现状指南","operationId":"glm_5_2_guide_glm_5_2_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/sitemap_index.xml":{"get":{"tags":["seo"],"summary":"Sitemap Index Xml","description":"Sitemap index — 引用主 sitemap（为多搜索引擎收录与未来分片预留）","operationId":"sitemap_index_xml_sitemap_index_xml_get","responses":{"200":{"description":"Successful Response"}}}},"/sitemap-news.xml":{"get":{"tags":["seo"],"summary":"Sitemap News Xml","description":"Google News sitemap（已建好，待站点被 Google News Publisher 接纳后再提交；当前不在 robots/index 引用）","operationId":"sitemap_news_xml_sitemap_news_xml_get","responses":{"200":{"description":"Successful Response"}}}},"/c72fd5e101ba4ea3c2121c551323c54f4949939884efb0f1f39b69eb90a66d80.txt":{"get":{"tags":["seo"],"summary":"Indexnow Key File","description":"IndexNow 验证 key 文件（Bing/Yandex 等即时收录）","operationId":"indexnow_key_file_c72fd5e101ba4ea3c2121c551323c54f4949939884efb0f1f39b69eb90a66d80_txt_get","responses":{"200":{"description":"Successful Response"}}}},"/yandex_108be5f6b5d4231d.html":{"get":{"tags":["seo"],"summary":"Yandex Site Verification","description":"Yandex Webmaster 站点验证文件（qcode.cc，2026-08-14）","operationId":"yandex_site_verification_yandex_108be5f6b5d4231d_html_get","responses":{"200":{"description":"Successful Response"}}}},"/claude-sonnet-5":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5","description":"Claude Sonnet 5 完全指南（枢纽页）","operationId":"claude_sonnet_5_claude_sonnet_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-pricing":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Pricing","description":"Claude Sonnet 5 定价（引导价 vs 标准价）","operationId":"claude_sonnet_5_pricing_claude_sonnet_5_pricing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-vs-opus-4-8":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Vs Opus 4 8","description":"Claude Sonnet 5 vs Opus 4.8 对比","operationId":"claude_sonnet_5_vs_opus_4_8_claude_sonnet_5_vs_opus_4_8_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-vs-sonnet-4-6":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Vs Sonnet 4 6","description":"Sonnet 4.6 → Sonnet 5 迁移指南","operationId":"claude_sonnet_5_vs_sonnet_4_6_claude_sonnet_5_vs_sonnet_4_6_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-availability":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Availability","description":"Claude Sonnet 5 可用性 / 发布追踪","operationId":"claude_sonnet_5_availability_claude_sonnet_5_availability_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-api":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Api","description":"Claude Sonnet 5 API 接入指南","operationId":"claude_sonnet_5_api_claude_sonnet_5_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-5-vs-gpt-5-6-vs-gemini-3":{"get":{"tags":["seo"],"summary":"Claude Sonnet 5 Vs Gpt 5 6 Vs Gemini 3","description":"Claude Sonnet 5 vs GPT-5.6 vs Gemini 3 诚实对比","operationId":"claude_sonnet_5_vs_gpt_5_6_vs_gemini_3_claude_sonnet_5_vs_gpt_5_6_vs_gemini_3_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-fable-5-availability":{"get":{"tags":["seo"],"summary":"Claude Fable 5 Availability","description":"Claude Fable 5 可用性 / 状态追踪（诚实）","operationId":"claude_fable_5_availability_claude_fable_5_availability_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-sol-vs-terra-vs-luna":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Sol Vs Terra Vs Luna","description":"GPT-5.6 三档选型指南（Sol / Terra / Luna）","operationId":"gpt_5_6_sol_vs_terra_vs_luna_gpt_5_6_sol_vs_terra_vs_luna_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-enable-gpt-5-6":{"get":{"tags":["seo"],"summary":"Codex Enable Gpt 5 6","description":"在 Codex CLI 中使用 GPT-5.6 的四步教程","operationId":"codex_enable_gpt_5_6_codex_enable_gpt_5_6_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-pricing":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Pricing","description":"GPT-5.6 定价完全指南","operationId":"gpt_5_6_pricing_gpt_5_6_pricing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-build-open-source":{"get":{"tags":["seo"],"summary":"Grok Build Open Source","description":"Grok Build 开源与本地部署指南","operationId":"grok_build_open_source_grok_build_open_source_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-4-5-api-guide":{"get":{"tags":["seo"],"summary":"Grok 4 5 Api Guide","description":"Grok 4.5 API 编程应用指南","operationId":"grok_4_5_api_guide_grok_4_5_api_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k3-status-tracker":{"get":{"tags":["seo"],"summary":"Kimi K3 Status Tracker","description":"Kimi K3 发布状态追踪","operationId":"kimi_k3_status_tracker_kimi_k3_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-quota-reset-2026":{"get":{"tags":["seo"],"summary":"Claude Code Quota Reset 2026","description":"Claude Code 配额与重置机制 2026","operationId":"claude_code_quota_reset_2026_claude_code_quota_reset_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-quota-banked-reset":{"get":{"tags":["seo"],"summary":"Codex Quota Banked Reset","description":"Codex 配额异常与 Banked Reset","operationId":"codex_quota_banked_reset_codex_quota_banked_reset_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/mcp-security-sandboxing-guide":{"get":{"tags":["seo"],"summary":"Mcp Security Sandboxing Guide","description":"MCP 安全与沙箱：生产级 AI Agent MCP 服务器实践","operationId":"mcp_security_sandboxing_guide_mcp_security_sandboxing_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/multi-model-routing-guide":{"get":{"tags":["seo"],"summary":"Multi Model Routing Guide","description":"多模型路由指南：Claude / GPT / Gemini 任务分配","operationId":"multi_model_routing_guide_multi_model_routing_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/agentic-code-review-guide":{"get":{"tags":["seo"],"summary":"Agentic Code Review Guide","description":"Agentic Code Review 指南：2026 开发者如何 review AI 生成代码","operationId":"agentic_code_review_guide_agentic_code_review_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/long-context-coding-guide":{"get":{"tags":["seo"],"summary":"Long Context Coding Guide","description":"长上下文 AI 编程指南","operationId":"long_context_coding_guide_long_context_coding_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/swe-bench-production-reality":{"get":{"tags":["seo"],"summary":"Swe Bench Production Reality","description":"SWE-Bench 到生产现实","operationId":"swe_bench_production_reality_swe_bench_production_reality_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/sitemap.xml":{"get":{"tags":["seo"],"summary":"Sitemap Xml","description":"生成动态sitemap.xml\n\nFeatures:\n- All pages including documentation\n- Multi-language support with hreflang alternates\n- Proper XML namespace declarations","operationId":"sitemap_xml_sitemap_xml_get","responses":{"200":{"description":"Successful Response"}}}},"/robots.txt":{"get":{"tags":["seo"],"summary":"Robots Txt","description":"生成robots.txt文件\n\nFeatures:\n- Allow documentation pages\n- Multi-language path support\n- Disallow sensitive routes\n- Force HTTPS for Sitemap URL","operationId":"robots_txt_robots_txt_get","responses":{"200":{"description":"Successful Response"}}}},"/sitemap":{"get":{"tags":["seo"],"summary":"Sitemap Page","description":"网站地图页面（人类可读）\n\nFeatures:\n- All page categories including documentation\n- Multi-language support\n- Organized by sections","operationId":"sitemap_page_sitemap_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-guide":{"get":{"tags":["seo"],"summary":"Claude Code Guide","description":"Claude Code使用指南页面","operationId":"claude_code_guide_claude_code_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-best-practices":{"get":{"tags":["seo"],"summary":"Ai Coding Best Practices","description":"AI编程最佳实践页面","operationId":"ai_coding_best_practices_ai_coding_best_practices_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-faq":{"get":{"tags":["seo"],"summary":"Claude Code Faq","description":"Claude Code常见问题页面","operationId":"claude_code_faq_claude_code_faq_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-case-studies":{"get":{"tags":["seo"],"summary":"Ai Coding Case Studies","description":"AI编程案例研究页面","operationId":"ai_coding_case_studies_ai_coding_case_studies_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-tools-review":{"get":{"tags":["seo"],"summary":"Ai Coding Tools Review","description":"AI编程工具评测页面","operationId":"ai_coding_tools_review_ai_coding_tools_review_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-updates-2026":{"get":{"tags":["seo"],"summary":"Ai Coding Updates 2026","description":"2026 AI编程最新动态 - Claude 4.6、Agent Teams、Codex Desktop等","operationId":"ai_coding_updates_2026_ai_coding_updates_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/openclaw-ai-agent-guide":{"get":{"tags":["seo"],"summary":"Openclaw Ai Agent Guide","description":"OpenClaw开源AI Agent指南 - SEO引流页面","operationId":"openclaw_ai_agent_guide_openclaw_ai_agent_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-4-codex-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 4 Codex Guide","description":"GPT-5.4与GPT-5.4-Codex模型指南 - SEO引流页面","operationId":"gpt_5_4_codex_guide_gpt_5_4_codex_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claw-ecosystem-guide":{"get":{"tags":["seo"],"summary":"Claw Ecosystem Guide","description":"Claw生态系统指南 - OpenClaw、ClawHub、ClawWork等","operationId":"claw_ecosystem_guide_claw_ecosystem_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-russia-guide":{"get":{"tags":["seo"],"summary":"Ai Coding Russia Guide","description":"面向俄罗斯用户的AI编程工具指南 - 含加密货币支付","operationId":"ai_coding_russia_guide_ai_coding_russia_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/opencode-ai-coding-guide":{"get":{"tags":["seo"],"summary":"Opencode Ai Coding Guide","description":"OpenCode AI编程完整指南 - 120K Stars开源工具","operationId":"opencode_ai_coding_guide_opencode_ai_coding_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/openclaw-skills-guide":{"get":{"tags":["seo"],"summary":"Openclaw Skills Guide","description":"OpenClaw Skills完整指南 - 5700+ AI Agent技能生态","operationId":"openclaw_skills_guide_openclaw_skills_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-multi-agent-guide":{"get":{"tags":["seo"],"summary":"Ai Coding Multi Agent Guide","description":"AI多代理编程完整指南 - Claude Code + OpenCode + Codex协同","operationId":"ai_coding_multi_agent_guide_ai_coding_multi_agent_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-mcp-guide":{"get":{"tags":["seo"],"summary":"Claude Code Mcp Guide","description":"Claude Code MCP完整指南 - Model Context Protocol生态与实战","operationId":"claude_code_mcp_guide_claude_code_mcp_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-hooks-automation":{"get":{"tags":["seo"],"summary":"Claude Code Hooks Automation","description":"Claude Code Hooks与自动化指南 - 自定义工作流实战","operationId":"claude_code_hooks_automation_claude_code_hooks_automation_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-md-best-practices":{"get":{"tags":["seo"],"summary":"Claude Md Best Practices","description":"CLAUDE.md完整指南 - 项目记忆与团队AI协作最佳实践","operationId":"claude_md_best_practices_claude_md_best_practices_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/aider-ai-coding-guide":{"get":{"tags":["seo"],"summary":"Aider Ai Coding Guide","description":"Aider完整指南 - Git原生AI编程助手与Claude模型集成","operationId":"aider_ai_coding_guide_aider_ai_coding_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-cost-optimization":{"get":{"tags":["seo"],"summary":"Claude Code Cost Optimization","description":"Claude Code成本优化指南 - Token节省与智能路由策略","operationId":"claude_code_cost_optimization_claude_code_cost_optimization_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-opus-4-7-guide":{"get":{"tags":["seo"],"summary":"Claude Opus 4 7 Guide","description":"Claude Opus 4.7 完全指南 - 编程/视觉/agentic 三维升级","operationId":"claude_opus_4_7_guide_claude_opus_4_7_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-opus-4-8-guide":{"get":{"tags":["seo"],"summary":"Claude Opus 4 8 Guide","description":"Claude Opus 4.8 完全指南 - 编程/视觉/agentic 三维升级","operationId":"claude_opus_4_8_guide_claude_opus_4_8_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-fable-5-guide":{"get":{"tags":["seo"],"summary":"Claude Fable 5 Guide","description":"Claude Fable 5 完全指南 - Opus 之上的新旗舰档位","operationId":"claude_fable_5_guide_claude_fable_5_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-opus-5-guide":{"get":{"tags":["seo"],"summary":"Claude Opus 5 Guide","description":"Claude Opus 5 完全指南 —— 与 Opus 4.8 同价同窗口，缓存门槛 512 token","operationId":"claude_opus_5_guide_claude_opus_5_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Guide","description":"GPT-5.6 发布追踪 - 已确认事实 vs 传闻预测","operationId":"gpt_5_6_guide_gpt_5_6_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-mythos-preview-guide":{"get":{"tags":["seo"],"summary":"Claude Mythos Preview Guide","description":"Claude Mythos 预览 - 官方已确认事实 vs 发布预期","operationId":"claude_mythos_preview_guide_claude_mythos_preview_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-vs-claude-opus-4-8":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Vs Claude Opus 4 8","description":"GPT-5.6 vs Claude Opus 4.8 对比 - 已确认 vs 传闻","operationId":"gpt_5_6_vs_claude_opus_4_8_gpt_5_6_vs_claude_opus_4_8_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-vs-cursor-comparison":{"get":{"tags":["seo"],"summary":"Claude Code Vs Cursor Comparison","description":"Claude Code vs Cursor 深度对比 - 两大AI编程工具全面比较","operationId":"claude_code_vs_cursor_comparison_claude_code_vs_cursor_comparison_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-voice-mode-guide":{"get":{"tags":["seo"],"summary":"Claude Code Voice Mode Guide","description":"Claude Code Voice Mode 语音编程指南","operationId":"claude_code_voice_mode_guide_claude_code_voice_mode_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/agentic-coding-trends-2026":{"get":{"tags":["seo"],"summary":"Agentic Coding Trends 2026","description":"2026 Agentic编程趋势 - 从对话到自主的AI编程革命","operationId":"agentic_coding_trends_2026_agentic_coding_trends_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-cli-complete-guide":{"get":{"tags":["seo"],"summary":"Codex Cli Complete Guide","description":"OpenAI Codex CLI 完全指南 - 安装配置与实战","operationId":"codex_cli_complete_guide_codex_cli_complete_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-mythos-capybara-guide":{"get":{"tags":["seo"],"summary":"Claude Mythos Capybara Guide","description":"Claude Mythos / Capybara 深度解析 - Anthropic 超越 Opus 的最强模型","operationId":"claude_mythos_capybara_guide_claude_mythos_capybara_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/harness-engineering-guide":{"get":{"tags":["seo"],"summary":"Harness Engineering Guide","description":"Harness Engineering 完全指南 - Agent = Model + Harness","operationId":"harness_engineering_guide_harness_engineering_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/vibe-coding-guide":{"get":{"tags":["seo"],"summary":"Vibe Coding Guide","description":"Vibe Coding 完全指南 - 用自然语言让 AI 生成代码","operationId":"vibe_coding_guide_vibe_coding_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/context-engineering-guide":{"get":{"tags":["seo"],"summary":"Context Engineering Guide","description":"Context Engineering 完全指南 - Prompt Engineering 的进化","operationId":"context_engineering_guide_context_engineering_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-china-guide":{"get":{"tags":["seo"],"summary":"Claude Code China Guide","description":"Claude Code 国内使用完全指南","operationId":"claude_code_china_guide_claude_code_china_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-managed-agents-guide":{"get":{"tags":["seo"],"summary":"Claude Managed Agents Guide","description":"Claude Managed Agents 完全指南","operationId":"claude_managed_agents_guide_claude_managed_agents_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-agent-sdk-guide":{"get":{"tags":["seo"],"summary":"Claude Agent Sdk Guide","description":"Claude Agent SDK 开发指南","operationId":"claude_agent_sdk_guide_claude_agent_sdk_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-plugins-guide":{"get":{"tags":["seo"],"summary":"Claude Code Plugins Guide","description":"Claude Code 插件生态完全指南","operationId":"claude_code_plugins_guide_claude_code_plugins_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-cowork-guide":{"get":{"tags":["seo"],"summary":"Claude Cowork Guide","description":"Claude Cowork 桌面端完全指南","operationId":"claude_cowork_guide_claude_cowork_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-agent-teams-guide":{"get":{"tags":["seo"],"summary":"Claude Code Agent Teams Guide","description":"Claude Code Agent Teams 协作指南","operationId":"claude_code_agent_teams_guide_claude_code_agent_teams_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-dynamic-workflows-guide":{"get":{"tags":["seo"],"summary":"Claude Code Dynamic Workflows Guide","description":"Claude Code 动态工作流指南","operationId":"claude_code_dynamic_workflows_guide_claude_code_dynamic_workflows_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-ultracode-guide":{"get":{"tags":["seo"],"summary":"Claude Code Ultracode Guide","description":"Claude Code ultracode 与 effort 控制指南","operationId":"claude_code_ultracode_guide_claude_code_ultracode_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-gpt-5-5-goal-mode-guide":{"get":{"tags":["seo"],"summary":"Codex Gpt 5 5 Goal Mode Guide","description":"GPT-5.5 与 Codex Goal Mode 指南","operationId":"codex_gpt_5_5_goal_mode_guide_codex_gpt_5_5_goal_mode_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api-key-usage-query-guide":{"get":{"tags":["seo"],"summary":"Api Key Usage Query Guide","description":"API Key 用量与到期查询接口指南（开放 API / qot_ token）","operationId":"api_key_usage_query_guide_api_key_usage_query_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-desktop-super-app-guide":{"get":{"tags":["seo"],"summary":"Codex Desktop Super App Guide","description":"OpenAI Codex 桌面应用与超级应用指南","operationId":"codex_desktop_super_app_guide_codex_desktop_super_app_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-enable-gpt-5-5":{"get":{"tags":["seo"],"summary":"Codex Enable Gpt 5 5","description":"Codex CLI 启用 GPT-5.5 教程 - model-catalog.json 配置指南","operationId":"codex_enable_gpt_5_5_codex_enable_gpt_5_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-5-vs-claude-4-7":{"get":{"tags":["seo"],"summary":"Gpt 5 5 Vs Claude 4 7","description":"GPT-5.5 vs Claude 4.7 旗舰模型对比 - SEO 主角页 (P2)","operationId":"gpt_5_5_vs_claude_4_7_gpt_5_5_vs_claude_4_7_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-5-vs-claude-4-8":{"get":{"tags":["seo"],"summary":"Gpt 5 5 Vs Claude 4 8","description":"GPT-5.5 vs Claude 4.8 旗舰模型对比 - SEO 主角页 (P2)","operationId":"gpt_5_5_vs_claude_4_8_gpt_5_5_vs_claude_4_8_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-image-2-guide":{"get":{"tags":["seo"],"summary":"Gpt Image 2 Guide","description":"GPT Image 2 完整指南 - OpenAI 2026 旗舰图像生成模型","operationId":"gpt_image_2_guide_gpt_image_2_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qcode-pricing-guide":{"get":{"tags":["seo"],"summary":"Qcode Pricing Guide","description":"QCode.cc定价完全指南——套餐详解、1:1费率、Token估算、4h窗口、加油包","operationId":"qcode_pricing_guide_qcode_pricing_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-account-ban-guide":{"get":{"tags":["seo"],"summary":"Claude Code Account Ban Guide","description":"Claude Code / Claude Max account ban guide - reasons, compliance, stable API path","operationId":"claude_code_account_ban_guide_claude_code_account_ban_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-account-ban-guide":{"get":{"tags":["seo"],"summary":"Codex Account Ban Guide","description":"OpenAI Codex / ChatGPT Pro account ban guide - reasons, appeals, stable API path","operationId":"codex_account_ban_guide_codex_account_ban_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-subscription-ban-guide":{"get":{"tags":["seo"],"summary":"Ai Coding Subscription Ban Guide","description":"AI coding subscription bans explained - subscription vs pay-as-you-go API stability","operationId":"ai_coding_subscription_ban_guide_ai_coding_subscription_ban_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/agents-md-spec-complete-guide":{"get":{"tags":["seo"],"summary":"Agents Md Spec Complete Guide","description":"AGENTS.md规范完整指南——跨厂商AI Agent项目记忆新标准","operationId":"agents_md_spec_complete_guide_agents_md_spec_complete_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-agent-evals-readiness-harness":{"get":{"tags":["seo"],"summary":"Ai Agent Evals Readiness Harness","description":"AI Agent Evals 与 Readiness Harness 实战——生产级评测框架","operationId":"ai_agent_evals_readiness_harness_ai_agent_evals_readiness_harness_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-api-service-business-guide":{"get":{"tags":["seo"],"summary":"Ai Api Service Business Guide","description":"如何打造 AI API 订阅服务业务——从 0 到 1 完整商业指南","operationId":"ai_api_service_business_guide_ai_api_service_business_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/white-label-ai-coding-api":{"get":{"tags":["seo"],"summary":"White Label Ai Coding Api","description":"白标 AI 编程 API 服务——OEM Claude Code 与 Codex 完整方案","operationId":"white_label_ai_coding_api_white_label_ai_coding_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/become-claude-channel-partner":{"get":{"tags":["seo"],"summary":"Become Claude Channel Partner","description":"成为 Claude / Codex 渠道合作伙伴——QCode.cc 伙伴计划申请指南","operationId":"become_claude_channel_partner_become_claude_channel_partner_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-subscription-platform-vs-self-host":{"get":{"tags":["seo"],"summary":"Ai Subscription Platform Vs Self Host","description":"AI 订阅平台 vs 自建——企业 AI 接入决策框架 + TCO 测算","operationId":"ai_subscription_platform_vs_self_host_ai_subscription_platform_vs_self_host_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-3-codex-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 3 Codex Guide","description":"SEO 引流页面 (gpt-5-3-codex-guide) — Batch C 2026-05-16.","operationId":"gpt_5_3_codex_guide_gpt_5_3_codex_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-worktree-parallel-guide":{"get":{"tags":["seo"],"summary":"Claude Code Worktree Parallel Guide","description":"SEO 引流页面 (claude-code-worktree-parallel-guide) — Batch C 2026-05-16.","operationId":"claude_code_worktree_parallel_guide_claude_code_worktree_parallel_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/mcp-servers-ecosystem-2026":{"get":{"tags":["seo"],"summary":"Mcp Servers Ecosystem 2026","description":"SEO 引流页面 (mcp-servers-ecosystem-2026) — Batch C 2026-05-16.","operationId":"mcp_servers_ecosystem_2026_mcp_servers_ecosystem_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/anthropic-agent-skills-standard-guide":{"get":{"tags":["seo"],"summary":"Anthropic Agent Skills Standard Guide","description":"SEO 引流页面 (anthropic-agent-skills-standard-guide) — Batch C 2026-05-16.","operationId":"anthropic_agent_skills_standard_guide_anthropic_agent_skills_standard_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-plugin-marketplace-2026":{"get":{"tags":["seo"],"summary":"Claude Code Plugin Marketplace 2026","description":"SEO 引流页面 (claude-code-plugin-marketplace-2026) — Batch C 2026-05-16.","operationId":"claude_code_plugin_marketplace_2026_claude_code_plugin_marketplace_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/swe-bench-pro-2026-ranking":{"get":{"tags":["seo"],"summary":"Swe Bench Pro 2026 Ranking","description":"SEO 引流页面 (swe-bench-pro-2026-ranking) — Batch C 2026-05-16.","operationId":"swe_bench_pro_2026_ranking_swe_bench_pro_2026_ranking_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-desktop-redesign-2026":{"get":{"tags":["seo"],"summary":"Claude Code Desktop Redesign 2026","description":"SEO 引流页面 (claude-code-desktop-redesign-2026) — Batch D 2026-05-16.","operationId":"claude_code_desktop_redesign_2026_claude_code_desktop_redesign_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-routines-guide":{"get":{"tags":["seo"],"summary":"Claude Code Routines Guide","description":"SEO 引流页面 (claude-code-routines-guide) — Batch D 2026-05-16.","operationId":"claude_code_routines_guide_claude_code_routines_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-computer-use-guide":{"get":{"tags":["seo"],"summary":"Codex Computer Use Guide","description":"SEO 引流页面 (codex-computer-use-guide) — Batch D 2026-05-16.","operationId":"codex_computer_use_guide_codex_computer_use_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-slash-commands-complete":{"get":{"tags":["seo"],"summary":"Claude Code Slash Commands Complete","description":"SEO 引流页面 (claude-code-slash-commands-complete) — Batch D 2026-05-16.","operationId":"claude_code_slash_commands_complete_claude_code_slash_commands_complete_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-5-hour-limit-guide":{"get":{"tags":["seo"],"summary":"Codex 5 Hour Limit Guide","description":"Codex 5-hour rolling limit guide — restored 2026-07-30","operationId":"codex_5_hour_limit_guide_codex_5_hour_limit_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-7-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 7 Guide","description":"GPT-5.7 rumor tracker - unreleased, no official date as of 2026-07-30","operationId":"gpt_5_7_guide_gpt_5_7_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-6-guide":{"get":{"tags":["seo"],"summary":"Gpt 6 Guide","description":"GPT-6 release tracker - prediction markets, rumors, dated events","operationId":"gpt_6_guide_gpt_6_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-luna-price-tracker":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Luna Price Tracker","description":"GPT-5.6 Luna price tracker — added 2026-08-02","operationId":"gpt_5_6_luna_price_tracker_gpt_5_6_luna_price_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-4-codex-shutdown-migration":{"get":{"tags":["seo"],"summary":"Gpt 5 4 Codex Shutdown Migration","description":"gpt-5-4-codex-shutdown-migration -- added 2026-08-08","operationId":"gpt_5_4_codex_shutdown_migration_gpt_5_4_codex_shutdown_migration_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-fable-5-vs-gpt-5-6-sol":{"get":{"tags":["seo"],"summary":"Claude Fable 5 Vs Gpt 5 6 Sol","description":"claude-fable-5-vs-gpt-5-6-sol -- added 2026-08-08","operationId":"claude_fable_5_vs_gpt_5_6_sol_claude_fable_5_vs_gpt_5_6_sol_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-mythos-5-vs-fable-5":{"get":{"tags":["seo"],"summary":"Claude Mythos 5 Vs Fable 5","description":"claude-mythos-5-vs-fable-5 -- added 2026-08-08","operationId":"claude_mythos_5_vs_fable_5_claude_mythos_5_vs_fable_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-fable-5-pricing-guide":{"get":{"tags":["seo"],"summary":"Claude Fable 5 Pricing Guide","description":"claude-fable-5-pricing-guide -- added 2026-08-08","operationId":"claude_fable_5_pricing_guide_claude_fable_5_pricing_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/swe-bench-pro-fable-5":{"get":{"tags":["seo"],"summary":"Swe Bench Pro Fable 5","description":"swe-bench-pro-fable-5 -- added 2026-08-08","operationId":"swe_bench_pro_fable_5_swe_bench_pro_fable_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-model-lineup-2026h2":{"get":{"tags":["seo"],"summary":"Ai Coding Model Lineup 2026H2","description":"ai-coding-model-lineup-2026h2 -- added 2026-08-08","operationId":"ai_coding_model_lineup_2026h2_ai_coding_model_lineup_2026h2_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-6-flash-guide":{"get":{"tags":["seo"],"summary":"Gemini 3 6 Flash Guide","description":"Gemini 3.6 Flash guide — added 2026-08-02","operationId":"gemini_3_6_flash_guide_gemini_3_6_flash_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/workbuddy-guide":{"get":{"tags":["seo"],"summary":"Workbuddy Guide","description":"Tencent WorkBuddy guide — added 2026-08-02","operationId":"workbuddy_guide_workbuddy_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-flash-0731":{"get":{"tags":["seo"],"summary":"Deepseek V4 Flash 0731","description":"deepseek-v4-flash-0731 -- added 2026-08-14","operationId":"deepseek_v4_flash_0731_deepseek_v4_flash_0731_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-pro-0813":{"get":{"tags":["seo"],"summary":"Deepseek V4 Pro 0813","description":"deepseek-v4-pro-0813 -- added 2026-08-14","operationId":"deepseek_v4_pro_0813_deepseek_v4_pro_0813_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-flash-vs-claude-sonnet-5":{"get":{"tags":["seo"],"summary":"Deepseek V4 Flash Vs Claude Sonnet 5","description":"deepseek-v4-flash-vs-claude-sonnet-5 -- added 2026-08-14","operationId":"deepseek_v4_flash_vs_claude_sonnet_5_deepseek_v4_flash_vs_claude_sonnet_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-pro-vs-claude-fable-5":{"get":{"tags":["seo"],"summary":"Deepseek V4 Pro Vs Claude Fable 5","description":"deepseek-v4-pro-vs-claude-fable-5 -- added 2026-08-14","operationId":"deepseek_v4_pro_vs_claude_fable_5_deepseek_v4_pro_vs_claude_fable_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-pro-vs-gpt-5-6-sol":{"get":{"tags":["seo"],"summary":"Deepseek V4 Pro Vs Gpt 5 6 Sol","description":"deepseek-v4-pro-vs-gpt-5-6-sol -- added 2026-08-14","operationId":"deepseek_v4_pro_vs_gpt_5_6_sol_deepseek_v4_pro_vs_gpt_5_6_sol_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-4-6-guide":{"get":{"tags":["seo"],"summary":"Grok 4 6 Guide","description":"grok-4-6-guide -- added 2026-08-14","operationId":"grok_4_6_guide_grok_4_6_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-4-6-vs-claude-opus-5":{"get":{"tags":["seo"],"summary":"Grok 4 6 Vs Claude Opus 5","description":"grok-4-6-vs-claude-opus-5 -- added 2026-08-14","operationId":"grok_4_6_vs_claude_opus_5_grok_4_6_vs_claude_opus_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-4-7-status-tracker":{"get":{"tags":["seo"],"summary":"Grok 4 7 Status Tracker","description":"grok-4-7-status-tracker -- added 2026-08-14","operationId":"grok_4_7_status_tracker_grok_4_7_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-4-7-vs-claude-fable-5":{"get":{"tags":["seo"],"summary":"Grok 4 7 Vs Claude Fable 5","description":"grok-4-7-vs-claude-fable-5 -- added 2026-08-14","operationId":"grok_4_7_vs_claude_fable_5_grok_4_7_vs_claude_fable_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-bot-guide":{"get":{"tags":["seo"],"summary":"Grok Bot Guide","description":"grok-bot-guide -- added 2026-08-14","operationId":"grok_bot_guide_grok_bot_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/grok-bot-16g-128g":{"get":{"tags":["seo"],"summary":"Grok Bot 16G 128G","description":"grok-bot-16g-128g -- added 2026-08-14","operationId":"grok_bot_16g_128g_grok_bot_16g_128g_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/opencode-go-guide":{"get":{"tags":["seo"],"summary":"Opencode Go Guide","description":"opencode-go-guide -- added 2026-08-14","operationId":"opencode_go_guide_opencode_go_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/opencode-go-deepseek":{"get":{"tags":["seo"],"summary":"Opencode Go Deepseek","description":"opencode-go-deepseek -- added 2026-08-14","operationId":"opencode_go_deepseek_opencode_go_deepseek_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/opencode-go-free":{"get":{"tags":["seo"],"summary":"Opencode Go Free","description":"opencode-go-free -- added 2026-08-14","operationId":"opencode_go_free_opencode_go_free_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-harness-guide":{"get":{"tags":["seo"],"summary":"Deepseek Harness Guide","description":"deepseek-harness-guide -- added 2026-08-14","operationId":"deepseek_harness_guide_deepseek_harness_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-work-guide":{"get":{"tags":["seo"],"summary":"Kimi Work Guide","description":"kimi-work-guide -- added 2026-08-14","operationId":"kimi_work_guide_kimi_work_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k3-vs-claude-opus-5":{"get":{"tags":["seo"],"summary":"Kimi K3 Vs Claude Opus 5","description":"kimi-k3-vs-claude-opus-5 -- added 2026-08-14","operationId":"kimi_k3_vs_claude_opus_5_kimi_k3_vs_claude_opus_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-status-tracker":{"get":{"tags":["seo"],"summary":"Glm 5 3 Status Tracker","description":"glm-5-3-status-tracker -- added 2026-08-14","operationId":"glm_5_3_status_tracker_glm_5_3_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-4-pro-status-tracker":{"get":{"tags":["seo"],"summary":"Gemini 4 Pro Status Tracker","description":"gemini-4-pro-status-tracker -- added 2026-08-14","operationId":"gemini_4_pro_status_tracker_gemini_4_pro_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-code-plan":{"get":{"tags":["seo"],"summary":"Deepseek Code Plan","description":"deepseek-code-plan -- added 2026-08-14","operationId":"deepseek_code_plan_deepseek_code_plan_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-7-flash-guide":{"get":{"tags":["seo"],"summary":"Gemini 3 7 Flash Guide","description":"gemini-3-7-flash-guide -- added 2026-08-16","operationId":"gemini_3_7_flash_guide_gemini_3_7_flash_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-guide":{"get":{"tags":["seo"],"summary":"Glm 5 3 Guide","description":"glm-5-3-guide -- added 2026-08-16","operationId":"glm_5_3_guide_glm_5_3_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-7-flash-pricing":{"get":{"tags":["seo"],"summary":"Gemini 3 7 Flash Pricing","description":"gemini-3-7-flash-pricing -- added 2026-08-16","operationId":"gemini_3_7_flash_pricing_gemini_3_7_flash_pricing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-7-flash-vs-3-6-flash":{"get":{"tags":["seo"],"summary":"Gemini 3 7 Flash Vs 3 6 Flash","description":"gemini-3-7-flash-vs-3-6-flash -- added 2026-08-16","operationId":"gemini_3_7_flash_vs_3_6_flash_gemini_3_7_flash_vs_3_6_flash_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qwen3-8-max-guide":{"get":{"tags":["seo"],"summary":"Qwen3 8 Max Guide","description":"qwen3-8-max-guide -- added 2026-08-16","operationId":"qwen3_8_max_guide_qwen3_8_max_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qwen3-8-27b-guide":{"get":{"tags":["seo"],"summary":"Qwen3 8 27B Guide","description":"qwen3-8-27b-guide -- added 2026-08-16","operationId":"qwen3_8_27b_guide_qwen3_8_27b_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qwen3-7-max-guide":{"get":{"tags":["seo"],"summary":"Qwen3 7 Max Guide","description":"qwen3-7-max-guide -- added 2026-08-16","operationId":"qwen3_7_max_guide_qwen3_7_max_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-sol-ultrafast":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Sol Ultrafast","description":"gpt-5-6-sol-ultrafast -- added 2026-08-16","operationId":"gpt_5_6_sol_ultrafast_gpt_5_6_sol_ultrafast_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-invisible-watermark-guide":{"get":{"tags":["seo"],"summary":"Claude Invisible Watermark Guide","description":"claude-invisible-watermark-guide -- added 2026-08-16","operationId":"claude_invisible_watermark_guide_claude_invisible_watermark_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k3-guide":{"get":{"tags":["seo"],"summary":"Kimi K3 Guide","description":"kimi-k3-guide -- added 2026-08-16","operationId":"kimi_k3_guide_kimi_k3_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-7-flash-vs-claude-sonnet-5":{"get":{"tags":["seo"],"summary":"Gemini 3 7 Flash Vs Claude Sonnet 5","description":"gemini-3-7-flash-vs-claude-sonnet-5 -- added 2026-08-16","operationId":"gemini_3_7_flash_vs_claude_sonnet_5_gemini_3_7_flash_vs_claude_sonnet_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-vs-glm-5-2":{"get":{"tags":["seo"],"summary":"Glm 5 3 Vs Glm 5 2","description":"glm-5-3-vs-glm-5-2 -- added 2026-08-16","operationId":"glm_5_3_vs_glm_5_2_glm_5_3_vs_glm_5_2_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/stripe-openrouter-acquisition":{"get":{"tags":["seo"],"summary":"Stripe Openrouter Acquisition","description":"stripe-openrouter-acquisition -- added 2026-08-20 (P10)","operationId":"stripe_openrouter_acquisition_stripe_openrouter_acquisition_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/crypto-payment-guide":{"get":{"tags":["seo"],"summary":"Crypto Payment Guide","description":"crypto-payment-guide -- added 2026-08-18 (crypto payment wave)","operationId":"crypto_payment_guide_crypto_payment_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/usdt-buy-claude-code-credits":{"get":{"tags":["seo"],"summary":"Usdt Buy Claude Code Credits","description":"usdt-buy-claude-code-credits -- added 2026-08-18 (crypto payment wave)","operationId":"usdt_buy_claude_code_credits_usdt_buy_claude_code_credits_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/usdc-pay-ai-api":{"get":{"tags":["seo"],"summary":"Usdc Pay Ai Api","description":"usdc-pay-ai-api -- added 2026-08-18 (crypto payment wave)","operationId":"usdc_pay_ai_api_usdc_pay_ai_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/crypto-pay-claude-opus-5":{"get":{"tags":["seo"],"summary":"Crypto Pay Claude Opus 5","description":"crypto-pay-claude-opus-5 -- added 2026-08-18 (crypto payment wave)","operationId":"crypto_pay_claude_opus_5_crypto_pay_claude_opus_5_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/bitcoin-pay-ai-coding-api":{"get":{"tags":["seo"],"summary":"Bitcoin Pay Ai Coding Api","description":"bitcoin-pay-ai-coding-api -- added 2026-08-18 (crypto payment wave)","operationId":"bitcoin_pay_ai_coding_api_bitcoin_pay_ai_coding_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-usage-limit-reached":{"get":{"tags":["seo"],"summary":"Claude Usage Limit Reached","description":"claude-usage-limit-reached -- added 2026-08-20 (P10)","operationId":"claude_usage_limit_reached_claude_usage_limit_reached_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-weekly-limit-burned":{"get":{"tags":["seo"],"summary":"Codex Weekly Limit Burned","description":"codex-weekly-limit-burned -- added 2026-08-20 (P10)","operationId":"codex_weekly_limit_burned_codex_weekly_limit_burned_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-529-overloaded":{"get":{"tags":["seo"],"summary":"Claude 529 Overloaded","description":"claude-529-overloaded -- added 2026-08-20 (P10)","operationId":"claude_529_overloaded_claude_529_overloaded_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cursor-auto-pricing-change":{"get":{"tags":["seo"],"summary":"Cursor Auto Pricing Change","description":"cursor-auto-pricing-change -- added 2026-08-20 (P10)","operationId":"cursor_auto_pricing_change_cursor_auto_pricing_change_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ornith-1-5-guide":{"get":{"tags":["seo"],"summary":"Ornith 1 5 Guide","description":"ornith-1-5-guide -- added 2026-08-20 (P10)","operationId":"ornith_1_5_guide_ornith_1_5_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-cyber-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Cyber Guide","description":"gpt-5-6-cyber-guide -- added 2026-08-22","operationId":"gpt_5_6_cyber_guide_gpt_5_6_cyber_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/terminal-bench-2-1-leaderboard":{"get":{"tags":["seo"],"summary":"Terminal Bench 2 1 Leaderboard","description":"terminal-bench-2-1-leaderboard -- added 2026-08-22","operationId":"terminal_bench_2_1_leaderboard_terminal_bench_2_1_leaderboard_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cline-openai-compatible-guide":{"get":{"tags":["seo"],"summary":"Cline Openai Compatible Guide","description":"cline-openai-compatible-guide -- added 2026-08-22","operationId":"cline_openai_compatible_guide_cline_openai_compatible_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/google-antigravity-2-guide":{"get":{"tags":["seo"],"summary":"Google Antigravity 2 Guide","description":"google-antigravity-2-guide -- added 2026-08-22","operationId":"google_antigravity_2_guide_google_antigravity_2_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cursor-3-agents-window":{"get":{"tags":["seo"],"summary":"Cursor 3 Agents Window","description":"cursor-3-agents-window -- added 2026-08-22","operationId":"cursor_3_agents_window_cursor_3_agents_window_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-coding-tools-pricing-2026":{"get":{"tags":["seo"],"summary":"Ai Coding Tools Pricing 2026","description":"ai-coding-tools-pricing-2026 -- added 2026-08-22","operationId":"ai_coding_tools_pricing_2026_ai_coding_tools_pricing_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/composable-ai-coding-stack":{"get":{"tags":["seo"],"summary":"Composable Ai Coding Stack","description":"composable-ai-coding-stack -- added 2026-08-22","operationId":"composable_ai_coding_stack_composable_ai_coding_stack_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-mid-conversation-tool-changes":{"get":{"tags":["seo"],"summary":"Claude Mid Conversation Tool Changes","description":"claude-mid-conversation-tool-changes -- added 2026-08-22","operationId":"claude_mid_conversation_tool_changes_claude_mid_conversation_tool_changes_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/swe-bench-pro-first-claims":{"get":{"tags":["seo"],"summary":"Swe Bench Pro First Claims","description":"swe-bench-pro-first-claims -- added 2026-08-22","operationId":"swe_bench_pro_first_claims_swe_bench_pro_first_claims_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k4-status-tracker":{"get":{"tags":["seo"],"summary":"Kimi K4 Status Tracker","description":"kimi-k4-status-tracker -- added 2026-08-22","operationId":"kimi_k4_status_tracker_kimi_k4_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v5-status-tracker":{"get":{"tags":["seo"],"summary":"Deepseek V5 Status Tracker","description":"deepseek-v5-status-tracker -- added 2026-08-22","operationId":"deepseek_v5_status_tracker_deepseek_v5_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/deepseek-v4-price-increase-2026":{"get":{"tags":["seo"],"summary":"Deepseek V4 Price Increase 2026","description":"deepseek-v4-price-increase-2026 -- added 2026-08-22","operationId":"deepseek_v4_price_increase_2026_deepseek_v4_price_increase_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/devin-desktop-windsurf-rebrand":{"get":{"tags":["seo"],"summary":"Devin Desktop Windsurf Rebrand","description":"devin-desktop-windsurf-rebrand -- added 2026-08-22","operationId":"devin_desktop_windsurf_rebrand_devin_desktop_windsurf_rebrand_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-opus-5-vs-gpt-5-6-sol":{"get":{"tags":["seo"],"summary":"Claude Opus 5 Vs Gpt 5 6 Sol","description":"claude-opus-5-vs-gpt-5-6-sol -- added 2026-08-22","operationId":"claude_opus_5_vs_gpt_5_6_sol_claude_opus_5_vs_gpt_5_6_sol_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k3-vs-gpt-5-6-sol":{"get":{"tags":["seo"],"summary":"Kimi K3 Vs Gpt 5 6 Sol","description":"kimi-k3-vs-gpt-5-6-sol -- added 2026-08-22","operationId":"kimi_k3_vs_gpt_5_6_sol_kimi_k3_vs_gpt_5_6_sol_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-vs-kimi-k3":{"get":{"tags":["seo"],"summary":"Glm 5 3 Vs Kimi K3","description":"glm-5-3-vs-kimi-k3 -- added 2026-08-22","operationId":"glm_5_3_vs_kimi_k3_glm_5_3_vs_kimi_k3_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-2-vs-deepseek-v4-pro":{"get":{"tags":["seo"],"summary":"Glm 5 2 Vs Deepseek V4 Pro","description":"glm-5-2-vs-deepseek-v4-pro -- added 2026-08-22","operationId":"glm_5_2_vs_deepseek_v4_pro_glm_5_2_vs_deepseek_v4_pro_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k3-self-host-vs-api":{"get":{"tags":["seo"],"summary":"Kimi K3 Self Host Vs Api","description":"kimi-k3-self-host-vs-api -- added 2026-08-22","operationId":"kimi_k3_self_host_vs_api_kimi_k3_self_host_vs_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/openai-ipo-s1-2026":{"get":{"tags":["seo"],"summary":"Openai Ipo S1 2026","description":"openai-ipo-s1-2026 -- added 2026-08-22","operationId":"openai_ipo_s1_2026_openai_ipo_s1_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-safety-executive-order-2026":{"get":{"tags":["seo"],"summary":"Ai Safety Executive Order 2026","description":"ai-safety-executive-order-2026 -- added 2026-08-22","operationId":"ai_safety_executive_order_2026_ai_safety_executive_order_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-flash-guide":{"get":{"tags":["seo"],"summary":"Glm 5 3 Flash Guide","description":"glm-5-3-flash-guide -- added 2026-08-27","operationId":"glm_5_3_flash_guide_glm_5_3_flash_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-flash-pricing":{"get":{"tags":["seo"],"summary":"Glm 5 3 Flash Pricing","description":"glm-5-3-flash-pricing -- added 2026-08-27","operationId":"glm_5_3_flash_pricing_glm_5_3_flash_pricing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-529-vs-429-vs-weekly-limit":{"get":{"tags":["seo"],"summary":"Claude 529 Vs 429 Vs Weekly Limit","description":"claude-529-vs-429-vs-weekly-limit -- added 2026-08-27","operationId":"claude_529_vs_429_vs_weekly_limit_claude_529_vs_429_vs_weekly_limit_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/codex-usage-limit-but-status-green":{"get":{"tags":["seo"],"summary":"Codex Usage Limit But Status Green","description":"codex-usage-limit-but-status-green -- added 2026-08-27","operationId":"codex_usage_limit_but_status_green_codex_usage_limit_but_status_green_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cursor-two-usage-pools":{"get":{"tags":["seo"],"summary":"Cursor Two Usage Pools","description":"cursor-two-usage-pools -- added 2026-08-27","operationId":"cursor_two_usage_pools_cursor_two_usage_pools_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-cli-client-no-longer-supported":{"get":{"tags":["seo"],"summary":"Gemini Cli Client No Longer Supported","description":"gemini-cli-client-no-longer-supported -- added 2026-08-27","operationId":"gemini_cli_client_no_longer_supported_gemini_cli_client_no_longer_supported_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/context-length-exceeded-guide":{"get":{"tags":["seo"],"summary":"Context Length Exceeded Guide","description":"context-length-exceeded-guide -- added 2026-08-27","operationId":"context_length_exceeded_guide_context_length_exceeded_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/stream-closed-before-completed":{"get":{"tags":["seo"],"summary":"Stream Closed Before Completed","description":"stream-closed-before-completed -- added 2026-08-27","operationId":"stream_closed_before_completed_stream_closed_before_completed_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-5-hour-window-explained":{"get":{"tags":["seo"],"summary":"Claude 5 Hour Window Explained","description":"claude-5-hour-window-explained -- added 2026-08-27","operationId":"claude_5_hour_window_explained_claude_5_hour_window_explained_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-weekly-limit-2026":{"get":{"tags":["seo"],"summary":"Claude Weekly Limit 2026","description":"claude-weekly-limit-2026 -- added 2026-08-27","operationId":"claude_weekly_limit_2026_claude_weekly_limit_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/subagent-quota-drain":{"get":{"tags":["seo"],"summary":"Subagent Quota Drain","description":"subagent-quota-drain -- added 2026-08-27","operationId":"subagent_quota_drain_subagent_quota_drain_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/subscription-vs-api-24x7-agent":{"get":{"tags":["seo"],"summary":"Subscription Vs Api 24X7 Agent","description":"subscription-vs-api-24x7-agent -- added 2026-08-27","operationId":"subscription_vs_api_24x7_agent_subscription_vs_api_24x7_agent_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/multi-tool-quota-rotation":{"get":{"tags":["seo"],"summary":"Multi Tool Quota Rotation","description":"multi-tool-quota-rotation -- added 2026-08-27","operationId":"multi_tool_quota_rotation_multi_tool_quota_rotation_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/ai-api-payment-russia":{"get":{"tags":["seo"],"summary":"Ai Api Payment Russia","description":"ai-api-payment-russia -- added 2026-08-27","operationId":"ai_api_payment_russia_ai_api_payment_russia_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-limits-russia":{"get":{"tags":["seo"],"summary":"Claude Code Limits Russia","description":"claude-code-limits-russia -- added 2026-08-27","operationId":"claude_code_limits_russia_claude_code_limits_russia_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/terminal-bench-3-guide":{"get":{"tags":["seo"],"summary":"Terminal Bench 3 Guide","description":"terminal-bench-3-guide -- added 2026-08-27","operationId":"terminal_bench_3_guide_terminal_bench_3_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/artificial-analysis-index-explained":{"get":{"tags":["seo"],"summary":"Artificial Analysis Index Explained","description":"artificial-analysis-index-explained -- added 2026-08-27","operationId":"artificial_analysis_index_explained_artificial_analysis_index_explained_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-opus-4-6-guide":{"get":{"tags":["seo"],"summary":"Claude Opus 4 6 Guide","description":"claude-opus-4-6-guide -- added 2026-08-27","operationId":"claude_opus_4_6_guide_claude_opus_4_6_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-haiku-4-5-guide":{"get":{"tags":["seo"],"summary":"Claude Haiku 4 5 Guide","description":"claude-haiku-4-5-guide -- added 2026-08-27","operationId":"claude_haiku_4_5_guide_claude_haiku_4_5_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-mini-nano-guide":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Mini Nano Guide","description":"gpt-5-6-mini-nano-guide -- added 2026-08-27","operationId":"gpt_5_6_mini_nano_guide_gpt_5_6_mini_nano_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/kimi-k2-6-guide":{"get":{"tags":["seo"],"summary":"Kimi K2 6 Guide","description":"kimi-k2-6-guide -- added 2026-08-27","operationId":"kimi_k2_6_guide_kimi_k2_6_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qwen3-7-plus-guide":{"get":{"tags":["seo"],"summary":"Qwen3 7 Plus Guide","description":"qwen3-7-plus-guide -- added 2026-08-27","operationId":"qwen3_7_plus_guide_qwen3_7_plus_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/enforced-spend-limit-reached":{"get":{"tags":["seo"],"summary":"Enforced Spend Limit Reached","description":"enforced-spend-limit-reached -- added 2026-08-30","operationId":"enforced_spend_limit_reached_enforced_spend_limit_reached_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gpt-5-6-sol-codex-272k-context":{"get":{"tags":["seo"],"summary":"Gpt 5 6 Sol Codex 272K Context","description":"gpt-5-6-sol-codex-272k-context -- added 2026-08-30","operationId":"gpt_5_6_sol_codex_272k_context_gpt_5_6_sol_codex_272k_context_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/credit-balance-too-low":{"get":{"tags":["seo"],"summary":"Credit Balance Too Low","description":"credit-balance-too-low -- added 2026-08-30","operationId":"credit_balance_too_low_credit_balance_too_low_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-sonnet-4-5-api-retirement":{"get":{"tags":["seo"],"summary":"Claude Sonnet 4 5 Api Retirement","description":"claude-sonnet-4-5-api-retirement -- added 2026-08-30","operationId":"claude_sonnet_4_5_api_retirement_claude_sonnet_4_5_api_retirement_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-design-command":{"get":{"tags":["seo"],"summary":"Claude Code Design Command","description":"claude-code-design-command -- added 2026-08-30","operationId":"claude_code_design_command_claude_code_design_command_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-auto-continue":{"get":{"tags":["seo"],"summary":"Claude Code Auto Continue","description":"claude-code-auto-continue -- added 2026-08-30","operationId":"claude_code_auto_continue_claude_code_auto_continue_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/github-copilot-claude-deprecation-sep-2026":{"get":{"tags":["seo"],"summary":"Github Copilot Claude Deprecation Sep 2026","description":"github-copilot-claude-deprecation-sep-2026 -- added 2026-08-30","operationId":"github_copilot_claude_deprecation_sep_2026_github_copilot_claude_deprecation_sep_2026_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/qwen3-8-flash-status-tracker":{"get":{"tags":["seo"],"summary":"Qwen3 8 Flash Status Tracker","description":"qwen3-8-flash-status-tracker -- added 2026-08-30","operationId":"qwen3_8_flash_status_tracker_qwen3_8_flash_status_tracker_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/effort-not-supported-thinking-disabled":{"get":{"tags":["seo"],"summary":"Effort Not Supported Thinking Disabled","description":"effort-not-supported-thinking-disabled -- added 2026-08-30","operationId":"effort_not_supported_thinking_disabled_effort_not_supported_thinking_disabled_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/glm-5-3-flash-vs-deepseek-v4-flash":{"get":{"tags":["seo"],"summary":"Glm 5 3 Flash Vs Deepseek V4 Flash","description":"glm-5-3-flash-vs-deepseek-v4-flash -- added 2026-08-30","operationId":"glm_5_3_flash_vs_deepseek_v4_flash_glm_5_3_flash_vs_deepseek_v4_flash_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/claude-code-premodelswitch-hooks":{"get":{"tags":["seo"],"summary":"Claude Code Premodelswitch Hooks","description":"claude-code-premodelswitch-hooks -- added 2026-08-30","operationId":"claude_code_premodelswitch_hooks_claude_code_premodelswitch_hooks_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cursor-origin-code-hosting":{"get":{"tags":["seo"],"summary":"Cursor Origin Code Hosting","description":"cursor-origin-code-hosting -- added 2026-08-30","operationId":"cursor_origin_code_hosting_cursor_origin_code_hosting_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/zed-ai-guide":{"get":{"tags":["seo"],"summary":"Zed Ai Guide","description":"zed-ai-guide -- added 2026-08-30","operationId":"zed_ai_guide_zed_ai_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/warp-terminal-ai-guide":{"get":{"tags":["seo"],"summary":"Warp Terminal Ai Guide","description":"warp-terminal-ai-guide -- added 2026-08-30","operationId":"warp_terminal_ai_guide_warp_terminal_ai_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/jetbrains-ai-guide":{"get":{"tags":["seo"],"summary":"Jetbrains Ai Guide","description":"jetbrains-ai-guide -- added 2026-08-30","operationId":"jetbrains_ai_guide_jetbrains_ai_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-5-flash-guide":{"get":{"tags":["seo"],"summary":"Gemini 3 5 Flash Guide","description":"gemini-3-5-flash-guide -- added 2026-08-30","operationId":"gemini_3_5_flash_guide_gemini_3_5_flash_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/gemini-3-5-flash-lite-guide":{"get":{"tags":["seo"],"summary":"Gemini 3 5 Flash Lite Guide","description":"gemini-3-5-flash-lite-guide -- added 2026-08-30","operationId":"gemini_3_5_flash_lite_guide_gemini_3_5_flash_lite_guide_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/llms.txt":{"get":{"tags":["seo"],"summary":"Llms Txt","description":"llms.txt —— 给大模型/AI 搜索读的站点索引（llmstxt.org 约定）。\n\n为什么做：站内实测 `ChatGPT-User` 的抓取量是 Googlebot 的 16 倍（单台 PoP 26 天\n3552 次 vs 223 次），主要入口已经不是传统 SERP。llms.txt 让 AI 侧能一次拿到\n全站技术页的标题与摘要，提高被正确引用的概率。\n\n数据源是 SEO_PAGE_INDEX + 各页既有的 sitemap_title / sitemap_desc（英文），\n所以内容随 i18n 自动跟随，不需要单独维护一份文案。","operationId":"llms_txt_llms_txt_head","responses":{"200":{"description":"Successful Response"}}},"head":{"tags":["seo"],"summary":"Llms Txt","description":"llms.txt —— 给大模型/AI 搜索读的站点索引（llmstxt.org 约定）。\n\n为什么做：站内实测 `ChatGPT-User` 的抓取量是 Googlebot 的 16 倍（单台 PoP 26 天\n3552 次 vs 223 次），主要入口已经不是传统 SERP。llms.txt 让 AI 侧能一次拿到\n全站技术页的标题与摘要，提高被正确引用的概率。\n\n数据源是 SEO_PAGE_INDEX + 各页既有的 sitemap_title / sitemap_desc（英文），\n所以内容随 i18n 自动跟随，不需要单独维护一份文案。","operationId":"llms_txt_llms_txt_head","responses":{"200":{"description":"Successful Response"}}}},"/admin":{"get":{"tags":["admin-home"],"summary":"Admin Home","operationId":"admin_home_admin_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/admin/help":{"get":{"tags":["admin"],"summary":"Admin Help Dashboard","description":"帮助文档管理页面 - 仅限特定管理员访问","operationId":"admin_help_dashboard_admin_help_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/admin/help/category":{"post":{"tags":["admin"],"summary":"Create Help Category","description":"创建帮助分类","operationId":"create_help_category_admin_help_category_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_help_category_admin_help_category_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/category/{category_id}/edit":{"post":{"tags":["admin"],"summary":"Edit Help Category","description":"编辑帮助分类","operationId":"edit_help_category_admin_help_category__category_id__edit_post","parameters":[{"name":"category_id","in":"path","required":true,"schema":{"type":"integer","title":"Category Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_edit_help_category_admin_help_category__category_id__edit_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/category/{category_id}/toggle":{"post":{"tags":["admin"],"summary":"Toggle Category Status","description":"切换分类状态","operationId":"toggle_category_status_admin_help_category__category_id__toggle_post","parameters":[{"name":"category_id","in":"path","required":true,"schema":{"type":"integer","title":"Category Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/category/{category_id}/delete":{"post":{"tags":["admin"],"summary":"Delete Help Category","description":"删除帮助分类（会连带删除所有条目）","operationId":"delete_help_category_admin_help_category__category_id__delete_post","parameters":[{"name":"category_id","in":"path","required":true,"schema":{"type":"integer","title":"Category Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/item":{"post":{"tags":["admin"],"summary":"Create Help Item","description":"创建帮助条目","operationId":"create_help_item_admin_help_item_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_help_item_admin_help_item_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/item/{item_id}/edit":{"post":{"tags":["admin"],"summary":"Edit Help Item","description":"编辑帮助条目","operationId":"edit_help_item_admin_help_item__item_id__edit_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_edit_help_item_admin_help_item__item_id__edit_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/item/{item_id}/toggle":{"post":{"tags":["admin"],"summary":"Toggle Item Status","description":"切换帮助条目状态","operationId":"toggle_item_status_admin_help_item__item_id__toggle_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/item/{item_id}/delete":{"post":{"tags":["admin"],"summary":"Delete Help Item","description":"删除帮助条目","operationId":"delete_help_item_admin_help_item__item_id__delete_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/error-code":{"post":{"tags":["admin"],"summary":"Create Error Code","description":"创建错误码","operationId":"create_error_code_admin_help_error_code_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_error_code_admin_help_error_code_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/error-code/{error_code_id}/edit":{"post":{"tags":["admin"],"summary":"Edit Error Code","description":"编辑错误码","operationId":"edit_error_code_admin_help_error_code__error_code_id__edit_post","parameters":[{"name":"error_code_id","in":"path","required":true,"schema":{"type":"integer","title":"Error Code Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_edit_error_code_admin_help_error_code__error_code_id__edit_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/error-code/{error_code_id}/toggle":{"post":{"tags":["admin"],"summary":"Toggle Error Code Status","description":"切换错误码状态","operationId":"toggle_error_code_status_admin_help_error_code__error_code_id__toggle_post","parameters":[{"name":"error_code_id","in":"path","required":true,"schema":{"type":"integer","title":"Error Code Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/help/error-code/{error_code_id}/delete":{"post":{"tags":["admin"],"summary":"Delete Error Code","description":"删除错误码","operationId":"delete_error_code_admin_help_error_code__error_code_id__delete_post","parameters":[{"name":"error_code_id","in":"path","required":true,"schema":{"type":"integer","title":"Error Code Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/notifications":{"get":{"tags":["admin"],"summary":"Admin Notifications Dashboard","description":"重要通知管理页面 - 仅限特定管理员访问","operationId":"admin_notifications_dashboard_admin_notifications_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"post":{"tags":["admin"],"summary":"Create Notification","description":"创建重要通知","operationId":"create_notification_admin_notifications_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_notification_admin_notifications_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/notifications/{notification_id}/edit":{"post":{"tags":["admin"],"summary":"Edit Notification","description":"编辑重要通知","operationId":"edit_notification_admin_notifications__notification_id__edit_post","parameters":[{"name":"notification_id","in":"path","required":true,"schema":{"type":"integer","title":"Notification Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_edit_notification_admin_notifications__notification_id__edit_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/notifications/{notification_id}/toggle":{"post":{"tags":["admin"],"summary":"Toggle Notification Status","description":"切换通知状态","operationId":"toggle_notification_status_admin_notifications__notification_id__toggle_post","parameters":[{"name":"notification_id","in":"path","required":true,"schema":{"type":"integer","title":"Notification Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/notifications/{notification_id}/delete":{"post":{"tags":["admin"],"summary":"Delete Notification","description":"删除通知","operationId":"delete_notification_admin_notifications__notification_id__delete_post","parameters":[{"name":"notification_id","in":"path","required":true,"schema":{"type":"integer","title":"Notification Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications/active":{"get":{"tags":["admin"],"summary":"Get Active Notifications","description":"获取激活的通知列表，供前端使用","operationId":"get_active_notifications_api_notifications_active_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":5,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/payment-channels":{"get":{"tags":["admin-payment"],"summary":"Payment Channels Page","operationId":"payment_channels_page_admin_payment_channels_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"post":{"tags":["admin-payment"],"summary":"Payment Channels Save","operationId":"payment_channels_save_admin_payment_channels_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/admin/refunds":{"get":{"tags":["admin"],"summary":"Refunds Page","operationId":"refunds_page_admin_refunds_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/admin/refunds/{order_no}/handle":{"post":{"tags":["admin"],"summary":"Handle Refund","operationId":"handle_refund_admin_refunds__order_no__handle_post","parameters":[{"name":"order_no","in":"path","required":true,"schema":{"type":"string","title":"Order No"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_handle_refund_admin_refunds__order_no__handle_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/reseller":{"get":{"tags":["admin-reseller"],"summary":"Admin Reseller List","description":"分销商列表页。","operationId":"admin_reseller_list_admin_reseller_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/admin/reseller/onboard":{"get":{"tags":["admin-reseller"],"summary":"Admin Reseller Onboard Form","description":"开通新分销商表单。\n\n可选 ?user_id=N 预选用户。若未指定，模板会显示用户搜索框（按 logto_user_id 或 email）。","operationId":"admin_reseller_onboard_form_admin_reseller_onboard_get","parameters":[{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-reseller"],"summary":"Admin Reseller Onboard Submit","description":"处理开通表单提交：调 CRS5002+5003 admin API + 写本地 reseller_profiles。\n\n支持 CNY 和 USD 两种币种 — 币种决定从哪个 user balance 列扣款。","operationId":"admin_reseller_onboard_submit_admin_reseller_onboard_post","requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_admin_reseller_onboard_submit_admin_reseller_onboard_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/reseller/{user_id}/recharge":{"post":{"tags":["admin-reseller"],"summary":"Admin Reseller Recharge Submit","description":"给已有 reseller 续费/充值。保持原档（不改 tier/serviceRates），只在 totalCostLimit 上累加。\n\npayment_source：\n  - external：amount = 到账总额，carve 8% 合作费，净额进配额，不动 qcode 钱包。\n  - balance ：amount = 本金，额外加 8% 从 user.balance 扣，本金进配额。","operationId":"admin_reseller_recharge_submit_admin_reseller__user_id__recharge_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_admin_reseller_recharge_submit_admin_reseller__user_id__recharge_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/admin/reseller/{user_id}":{"get":{"tags":["admin-reseller"],"summary":"Admin Reseller Detail","description":"单个分销商详情页。","operationId":"admin_reseller_detail_admin_reseller__user_id__get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/dashboard":{"get":{"tags":["reseller"],"summary":"Reseller Dashboard","description":"Reseller 主面板：余额、tier 信息、入口域名、快速链接。","operationId":"reseller_dashboard_reseller_dashboard_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/reseller/apikeys":{"get":{"tags":["reseller"],"summary":"Reseller Apikeys List","description":"Reseller 自己的二级 apikey 列表（实时从 CRS5003 拉）。","operationId":"reseller_apikeys_list_reseller_apikeys_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/reseller/apikeys/new":{"get":{"tags":["reseller"],"summary":"Reseller Apikey New Form","description":"显示创建二级 apikey 表单。","operationId":"reseller_apikey_new_form_reseller_apikeys_new_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"post":{"tags":["reseller"],"summary":"Reseller Apikey New Submit","description":"提交创建：调 CRS5003 admin API 创建 sub apikey，自动绑 reseller 自己的 group。","operationId":"reseller_apikey_new_submit_reseller_apikeys_new_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_reseller_apikey_new_submit_reseller_apikeys_new_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/apikeys/{apikey_id}/edit":{"get":{"tags":["reseller"],"summary":"Reseller Apikey Edit Form","description":"编辑 apikey 配额表单。","operationId":"reseller_apikey_edit_form_reseller_apikeys__apikey_id__edit_get","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/apikeys/{apikey_id}/toggle":{"post":{"tags":["reseller"],"summary":"Reseller Apikey Toggle","description":"启停二级 apikey。Security: 校验 apikey 属于当前 reseller。","operationId":"reseller_apikey_toggle_reseller_apikeys__apikey_id__toggle_post","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/apikeys/{apikey_id}/update":{"post":{"tags":["reseller"],"summary":"Reseller Apikey Update","description":"更新二级 apikey 的 daily/total cost limit + 并发 + 描述。","operationId":"reseller_apikey_update_reseller_apikeys__apikey_id__update_post","parameters":[{"name":"apikey_id","in":"path","required":true,"schema":{"type":"string","title":"Apikey Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/billing":{"get":{"tags":["reseller"],"summary":"Reseller Billing","description":"充值历史 + 完整 ledger。","operationId":"reseller_billing_reseller_billing_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/reseller/branding":{"get":{"tags":["reseller"],"summary":"Reseller Branding Form","description":"Reseller 品牌定制表单：设置自己 homepage 上显示的站名/slogan/价目/联系方式。","operationId":"reseller_branding_form_reseller_branding_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"post":{"tags":["reseller"],"summary":"Reseller Branding Submit","description":"更新 ResellerProfile 上的品牌字段。\n\n所有 reseller-controlled 输入都走 sanitize 模块严格清洗：\n- plain text fields: 控制字符剥除 + 长度限制\n- logo / nav URL: 强制 https://，正则约束\n- price HTML: bleach 白名单（无 script / iframe / on*=）\n- analytics: 结构化 4 家 provider，ID 严格正则；不允许任意 JS 注入\nhomepage 语言由 reseller 的 region 决定（asia=zh / us=en / eu=en+ru），\n不再单独存 homepage_lang。","operationId":"reseller_branding_submit_reseller_branding_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_reseller_branding_submit_reseller_branding_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/_reseller_brand":{"get":{"tags":["reseller"],"summary":"Public Reseller Homepage","description":"公开 homepage 渲染入口 — Caddy region catch-all reverse_proxy 命中此路由。\n\nReseller 识别：?domain → X-Forwarded-Host → Host\n语言：reseller.region 决定可用集合（asia=zh / us=en / eu=en+ru），\n      ?lang 必须在集合内才生效，否则用集合的第一个（默认）。","operationId":"public_reseller_homepage__reseller_brand_get","parameters":[{"name":"domain","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Domain"}},{"name":"lang","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/_reseller_stats":{"get":{"tags":["reseller"],"summary":"Public Reseller Stats","description":"公开 stats 页面（客户凭 apikey 自查用量）。\n\nCaddy region catch-all 把 /stats 反代到这里，按 reseller 的 region 锁定可用语言。\n与 homepage 一致：?domain=X 必须命中 active reseller 否则 404，避免被钓鱼利用。","operationId":"public_reseller_stats__reseller_stats_get","parameters":[{"name":"domain","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Domain"}},{"name":"lang","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/reseller/access-token":{"get":{"tags":["reseller"],"summary":"Reseller Access Token Page","operationId":"reseller_access_token_page_reseller_access_token_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/reseller/access-token/rotate":{"post":{"tags":["reseller"],"summary":"Reseller Access Token Rotate","description":"生成或重置（rotate）access token。重置=覆盖同一行 hash + 清 revoked + 续期。\n\n明文仅在本响应页渲染一次。","operationId":"reseller_access_token_rotate_reseller_access_token_rotate_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/reseller/access-token/revoke":{"post":{"tags":["reseller"],"summary":"Reseller Access Token Revoke","description":"撤销当前 token（不换发）。撤销后开放 API 立即拒绝。","operationId":"reseller_access_token_revoke_reseller_access_token_revoke_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/reseller/api-docs":{"get":{"tags":["reseller"],"summary":"Reseller Api Docs","operationId":"reseller_api_docs_reseller_api_docs_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs/":{"get":{"tags":["docs","docs"],"summary":"Docs Index","operationId":"docs_index_docs__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/docs":{"get":{"tags":["docs","docs"],"summary":"Docs Index","operationId":"docs_index_docs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/docs/{full_path}":{"get":{"tags":["docs","docs"],"summary":"Docs Any","description":"Redirect any /docs/* sub-path to docs.qcode.cc/docs/{full_path} (301 Permanent).","operationId":"docs_any_docs__full_path__get","parameters":[{"name":"full_path","in":"path","required":true,"schema":{"type":"string","title":"Full Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/recharge":{"get":{"tags":["recharge"],"summary":"Recharge Page","description":"Render the recharge checkout page.","operationId":"recharge_page_recharge_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/payment/success":{"get":{"tags":["recharge"],"summary":"Payment Success Page","description":"Public landing page after a hosted-checkout / overlay payment.\n\nNo auth required: the user lands here from the hosted checkout's tab, where\ntheir qcode session cookie may not be present. This page is purely UI — the\nactual balance update happens\nasynchronously via webhook. We just show \"成功\" + auto-redirect to\ndashboard so the user doesn't get bounced through Logto.","operationId":"payment_success_page_payment_success_get","parameters":[{"name":"order_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Order Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/subscribe":{"get":{"tags":["subscribe"],"summary":"Subscribe Page","description":"Render the subscribe/service activation page.","operationId":"subscribe_page_subscribe_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/public/cache-stats":{"get":{"tags":["public"],"summary":"Cache Stats","description":"Return today's (Beijing time) cache reuse rate.\n\nMixed formula: anthropic uses cacheRead/(cacheCreate+cacheRead),\nopenai/other uses cacheRead/(input+cacheRead). Tokens summed across all models.","operationId":"cache_stats_api_public_cache_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/install":{"get":{"tags":["install"],"summary":"Install Index","operationId":"install_index_install_get","responses":{"200":{"description":"Successful Response"}}}},"/install/{name}":{"get":{"tags":["install"],"summary":"Install Script","operationId":"install_script_install__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/health":{"get":{"summary":"Health Check","description":"Health check endpoint.","operationId":"health_check_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"ApiKeyResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"api_key":{"type":"string","title":"Api Key"},"message":{"type":"string","title":"Message"}},"type":"object","required":["success"],"title":"ApiKeyResponse","description":"API Key response."},"Body_admin_reseller_onboard_submit_admin_reseller_onboard_post":{"properties":{"logto_user_id":{"type":"string","title":"Logto User Id"},"tier":{"type":"string","title":"Tier"},"region":{"type":"string","title":"Region"},"domain":{"type":"string","title":"Domain"},"currency":{"type":"string","title":"Currency","default":"CNY"},"recharge_amount":{"type":"number","title":"Recharge Amount"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"}},"type":"object","required":["logto_user_id","tier","region","domain","recharge_amount"],"title":"Body_admin_reseller_onboard_submit_admin_reseller_onboard_post"},"Body_admin_reseller_recharge_submit_admin_reseller__user_id__recharge_post":{"properties":{"payment_source":{"type":"string","title":"Payment Source"},"amount":{"type":"number","title":"Amount"},"payment_method":{"type":"string","title":"Payment Method","default":"crypto"},"payment_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Ref"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"}},"type":"object","required":["payment_source","amount"],"title":"Body_admin_reseller_recharge_submit_admin_reseller__user_id__recharge_post"},"Body_create_error_code_admin_help_error_code_post":{"properties":{"code":{"type":"string","title":"Code"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["code","title","external_url"],"title":"Body_create_error_code_admin_help_error_code_post"},"Body_create_help_category_admin_help_category_post":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["name"],"title":"Body_create_help_category_admin_help_category_post"},"Body_create_help_item_admin_help_item_post":{"properties":{"category_id":{"type":"integer","title":"Category Id"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["category_id","title","external_url"],"title":"Body_create_help_item_admin_help_item_post"},"Body_create_notification_admin_notifications_post":{"properties":{"title":{"type":"string","title":"Title"},"content":{"type":"string","title":"Content"},"highlight_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Highlight Text"},"style":{"type":"string","title":"Style","default":"blue"},"notification_date":{"type":"string","title":"Notification Date"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["title","content","notification_date"],"title":"Body_create_notification_admin_notifications_post"},"Body_edit_error_code_admin_help_error_code__error_code_id__edit_post":{"properties":{"code":{"type":"string","title":"Code"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["code","title","external_url"],"title":"Body_edit_error_code_admin_help_error_code__error_code_id__edit_post"},"Body_edit_help_category_admin_help_category__category_id__edit_post":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["name"],"title":"Body_edit_help_category_admin_help_category__category_id__edit_post"},"Body_edit_help_item_admin_help_item__item_id__edit_post":{"properties":{"category_id":{"type":"integer","title":"Category Id"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["category_id","title","external_url"],"title":"Body_edit_help_item_admin_help_item__item_id__edit_post"},"Body_edit_notification_admin_notifications__notification_id__edit_post":{"properties":{"title":{"type":"string","title":"Title"},"content":{"type":"string","title":"Content"},"highlight_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Highlight Text"},"style":{"type":"string","title":"Style","default":"blue"},"notification_date":{"type":"string","title":"Notification Date"},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["title","content","notification_date"],"title":"Body_edit_notification_admin_notifications__notification_id__edit_post"},"Body_handle_refund_admin_refunds__order_no__handle_post":{"properties":{"notes":{"type":"string","title":"Notes","default":""}},"type":"object","title":"Body_handle_refund_admin_refunds__order_no__handle_post"},"Body_payment_callback_api_v1_payment_callback_post":{"properties":{"aoid":{"type":"string","title":"Aoid"},"order_id":{"type":"string","title":"Order Id"},"pay_price":{"type":"string","title":"Pay Price"},"pay_time":{"type":"string","title":"Pay Time"},"sign":{"type":"string","title":"Sign"},"more":{"type":"string","title":"More","default":""},"detail":{"type":"string","title":"Detail","default":""}},"type":"object","required":["aoid","order_id","pay_price","pay_time","sign"],"title":"Body_payment_callback_api_v1_payment_callback_post"},"Body_register_referral_api_v1_referral_register_referral_post":{"properties":{"referral_code":{"type":"string","title":"Referral Code"}},"type":"object","required":["referral_code"],"title":"Body_register_referral_api_v1_referral_register_referral_post"},"Body_reseller_apikey_new_submit_reseller_apikeys_new_post":{"properties":{"description":{"type":"string","title":"Description","default":""},"daily_cost_limit_usd":{"type":"number","title":"Daily Cost Limit Usd","default":0},"total_cost_limit_usd":{"type":"number","title":"Total Cost Limit Usd","default":0},"concurrency_limit":{"type":"integer","title":"Concurrency Limit","default":0}},"type":"object","title":"Body_reseller_apikey_new_submit_reseller_apikeys_new_post"},"Body_reseller_branding_submit_reseller_branding_post":{"properties":{"brand_name":{"type":"string","title":"Brand Name","default":""},"brand_tagline":{"type":"string","title":"Brand Tagline","default":""},"brand_contact":{"type":"string","title":"Brand Contact","default":""},"brand_logo_url":{"type":"string","title":"Brand Logo Url","default":""},"brand_price_html":{"type":"string","title":"Brand Price Html","default":""},"brand_nav_links":{"type":"string","title":"Brand Nav Links","default":""},"brand_analytics_provider":{"type":"string","title":"Brand Analytics Provider","default":""},"brand_analytics_id":{"type":"string","title":"Brand Analytics Id","default":""}},"type":"object","title":"Body_reseller_branding_submit_reseller_branding_post"},"BoosterInfoResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"exchange_rate":{"type":"number","title":"Exchange Rate"},"window_exchange_rate":{"type":"number","title":"Window Exchange Rate"},"usd_cost_ratio":{"type":"number","title":"Usd Cost Ratio"},"min_amount":{"type":"integer","title":"Min Amount"},"max_amount":{"type":"integer","title":"Max Amount"},"self_service_enabled":{"type":"boolean","title":"Self Service Enabled"}},"type":"object","required":["success","exchange_rate","window_exchange_rate","usd_cost_ratio","min_amount","max_amount","self_service_enabled"],"title":"BoosterInfoResponse"},"BoosterPurchaseRequest":{"properties":{"api_key_id":{"type":"integer","title":"Api Key Id","description":"API Key ID"},"amount_usd":{"type":"integer","maximum":100.0,"minimum":1.0,"title":"Amount Usd","description":"购买金额（美元，1-100整数）"},"include_window_boost":{"type":"boolean","title":"Include Window Boost","description":"已废弃：4h 窗口已取消，字段保留兼容、服务端忽略","default":false}},"type":"object","required":["api_key_id","amount_usd"],"title":"BoosterPurchaseRequest"},"BoosterPurchaseResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"},"purchase_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Purchase Id"},"amount_usd":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Amount Usd"},"amount_cny":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Amount Cny"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"},"new_balance_cny":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"New Balance Cny"},"new_balance_usd":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"New Balance Usd"},"include_window_boost":{"type":"boolean","title":"Include Window Boost","default":false}},"type":"object","required":["success","message"],"title":"BoosterPurchaseResponse"},"CreateKeyRequest":{"properties":{"description":{"type":"string","maxLength":500,"title":"Description","default":""},"daily_cost_limit_usd":{"type":"number","maximum":100000.0,"exclusiveMinimum":0.0,"title":"Daily Cost Limit Usd"},"total_cost_limit_usd":{"type":"number","maximum":1000000.0,"exclusiveMinimum":0.0,"title":"Total Cost Limit Usd"},"concurrency_limit":{"type":"integer","maximum":1000.0,"minimum":0.0,"title":"Concurrency Limit","default":0}},"additionalProperties":false,"type":"object","required":["daily_cost_limit_usd","total_cost_limit_usd"],"title":"CreateKeyRequest"},"DashboardUsageStats":{"properties":{"api_key_id":{"type":"integer","title":"Api Key Id","description":"Local API key ID"},"api_key_name":{"type":"string","title":"Api Key Name","description":"API key name"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id","description":"External API key ID"},"is_active":{"type":"boolean","title":"Is Active","description":"Whether API key is active"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At","description":"Expiration timestamp from API"},"expires_at_display":{"type":"string","title":"Expires At Display","description":"Formatted expiration time for display","default":"未设置"},"current_tokens":{"type":"integer","title":"Current Tokens","description":"Current window tokens used","default":0},"current_requests":{"type":"integer","title":"Current Requests","description":"Current window requests made","default":0},"current_daily_cost":{"type":"number","title":"Current Daily Cost","description":"Current daily cost","default":0.0},"formatted_current_cost":{"type":"string","title":"Formatted Current Cost","description":"Formatted current daily cost","default":"$0.00"},"current_window_tokens":{"type":"integer","title":"Current Window Tokens","description":"Current rate limit window tokens","default":0},"current_window_requests":{"type":"integer","title":"Current Window Requests","description":"Current rate limit window requests","default":0},"current_window_cost":{"type":"number","title":"Current Window Cost","description":"Current rate limit window cost","default":0.0},"total_tokens":{"type":"integer","title":"Total Tokens","description":"Total tokens used","default":0},"total_requests":{"type":"integer","title":"Total Requests","description":"Total requests made","default":0},"total_cost":{"type":"number","title":"Total Cost","description":"Total cost","default":0.0},"formatted_cost":{"type":"string","title":"Formatted Cost","description":"Formatted total cost","default":"$0.00"},"daily_cost_limit":{"type":"number","title":"Daily Cost Limit","description":"Daily cost limit","default":0.0},"token_limit":{"type":"integer","title":"Token Limit","description":"Token limit","default":0},"has_daily_limit":{"type":"boolean","title":"Has Daily Limit","description":"Whether this key has daily limits","default":true},"rate_limit_window":{"type":"integer","title":"Rate Limit Window","description":"Rate limit window in minutes","default":0},"rate_limit_requests":{"type":"integer","title":"Rate Limit Requests","description":"Rate limit requests per window","default":0},"rate_limit_cost":{"type":"number","title":"Rate Limit Cost","description":"Rate limit cost per window","default":0.0},"opus_weekly_cost":{"type":"number","title":"Opus Weekly Cost","description":"Opus model cost this week","default":0.0},"opus_weekly_limit":{"type":"number","title":"Opus Weekly Limit","description":"Opus model weekly limit","default":50.0},"opus_weekly_percentage":{"type":"number","title":"Opus Weekly Percentage","description":"Opus weekly usage percentage","default":0.0},"has_monthly_quota":{"type":"boolean","title":"Has Monthly Quota","description":"Whether this key has a monthly/lifetime cost cap","default":false},"monthly_cost_limit":{"type":"number","title":"Monthly Cost Limit","description":"Monthly cost limit in USD (CRS totalCostLimit)","default":0.0},"monthly_cost_used":{"type":"number","title":"Monthly Cost Used","description":"Amount of monthly cost used","default":0.0},"monthly_cost_percentage":{"type":"number","title":"Monthly Cost Percentage","description":"Percentage of monthly cost limit used","default":0.0},"window_remaining_seconds":{"type":"integer","title":"Window Remaining Seconds","description":"Seconds until window reset","default":0},"window_remaining_text":{"type":"string","title":"Window Remaining Text","description":"Human readable time until reset","default":""},"daily_cost_percentage":{"type":"number","title":"Daily Cost Percentage","description":"Percentage of daily cost limit used","default":0.0},"token_percentage":{"type":"number","title":"Token Percentage","description":"Percentage of token limit used","default":0.0},"window_requests_percentage":{"type":"number","title":"Window Requests Percentage","description":"Percentage of window requests used","default":0.0},"window_cost_percentage":{"type":"number","title":"Window Cost Percentage","description":"Percentage of window cost used","default":0.0},"is_near_cost_limit":{"type":"boolean","title":"Is Near Cost Limit","description":"Whether near daily cost limit","default":false},"is_near_token_limit":{"type":"boolean","title":"Is Near Token Limit","description":"Whether near token limit","default":false},"is_near_window_limit":{"type":"boolean","title":"Is Near Window Limit","description":"Whether near window limit","default":false},"is_near_opus_limit":{"type":"boolean","title":"Is Near Opus Limit","description":"Whether near Opus weekly limit","default":false},"has_error":{"type":"boolean","title":"Has Error","description":"Whether there was an error fetching stats","default":false},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message","description":"Error message if any"},"error_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Type","description":"Error type for better handling"},"daily_model_stats":{"items":{"$ref":"#/components/schemas/ModelDailyStats"},"type":"array","title":"Daily Model Stats","description":"Today's model usage breakdown"}},"type":"object","required":["api_key_id","api_key_name","external_id","is_active"],"title":"DashboardUsageStats","description":"Dashboard usage statistics summary."},"ErrorCodeResponse":{"properties":{"id":{"type":"integer","title":"Id"},"code":{"type":"string","title":"Code"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order"},"click_count":{"type":"integer","title":"Click Count","default":0}},"type":"object","required":["id","code","title","external_url","sort_order"],"title":"ErrorCodeResponse","description":"错误码响应模型"},"FeePreviewResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"provider":{"type":"string","title":"Provider","default":""},"currency":{"type":"string","title":"Currency","default":""},"recharge_amount":{"type":"number","title":"Recharge Amount","default":0},"fee_rate_desc":{"type":"string","title":"Fee Rate Desc","default":""},"fee_amount":{"type":"number","title":"Fee Amount","default":0},"total_amount":{"type":"number","title":"Total Amount","default":0},"fee_absorbed":{"type":"boolean","title":"Fee Absorbed","default":false},"message":{"type":"string","title":"Message","default":""},"pay_currency":{"type":"string","title":"Pay Currency","default":""},"pay_amount":{"type":"number","title":"Pay Amount","default":0},"pay_rate":{"type":"number","title":"Pay Rate","default":0}},"type":"object","required":["success"],"title":"FeePreviewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HelpCategoryResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon"},"sort_order":{"type":"integer","title":"Sort Order"},"items":{"items":{"$ref":"#/components/schemas/HelpItemResponse"},"type":"array","title":"Items","default":[]}},"type":"object","required":["id","name","sort_order"],"title":"HelpCategoryResponse","description":"帮助文档分类响应模型"},"HelpItemResponse":{"properties":{"id":{"type":"integer","title":"Id"},"category_id":{"type":"integer","title":"Category Id"},"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"external_url":{"type":"string","title":"External Url"},"sort_order":{"type":"integer","title":"Sort Order"},"click_count":{"type":"integer","title":"Click Count","default":0}},"type":"object","required":["id","category_id","title","external_url","sort_order"],"title":"HelpItemResponse","description":"帮助文档条目响应模型"},"LanguagePreference":{"properties":{"language":{"type":"string","title":"Language"}},"type":"object","required":["language"],"title":"LanguagePreference","description":"Language preference request model."},"LanguageResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"language":{"type":"string","title":"Language"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"}},"type":"object","required":["success","language"],"title":"LanguageResponse","description":"Language preference response model."},"ModelDailyStats":{"properties":{"model":{"type":"string","title":"Model","description":"Model name"},"requests":{"type":"integer","title":"Requests","description":"Number of requests today"},"inputTokens":{"type":"integer","title":"Inputtokens","description":"Input tokens used"},"outputTokens":{"type":"integer","title":"Outputtokens","description":"Output tokens used"},"cacheCreateTokens":{"type":"integer","title":"Cachecreatetokens","description":"Cache creation tokens"},"cacheReadTokens":{"type":"integer","title":"Cachereadtokens","description":"Cache read tokens"},"allTokens":{"type":"integer","title":"Alltokens","description":"Total tokens"},"total_cost":{"type":"number","title":"Total Cost","description":"Total cost for this model today","default":0.0},"formatted_cost":{"type":"string","title":"Formatted Cost","description":"Formatted cost string","default":"$0.00"}},"type":"object","required":["model","requests","inputTokens","outputTokens","cacheCreateTokens","cacheReadTokens","allTokens"],"title":"ModelDailyStats","description":"Daily statistics for a single model."},"PaymentMethodsResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"methods":{"items":{"type":"object"},"type":"array","title":"Methods","default":[]}},"type":"object","required":["success"],"title":"PaymentMethodsResponse","description":"Available payment methods response."},"PaymentStatusResponse":{"properties":{"status":{"type":"string","title":"Status"},"message":{"type":"string","title":"Message","default":""}},"type":"object","required":["status"],"title":"PaymentStatusResponse","description":"Payment status response."},"PresetInfo":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"daily_limit":{"type":"integer","title":"Daily Limit"},"rate_limit_cost":{"type":"integer","title":"Rate Limit Cost"},"rate_limit_requests":{"type":"integer","title":"Rate Limit Requests"},"price_cny":{"type":"number","title":"Price Cny"},"price_usd":{"type":"number","title":"Price Usd"},"unit_price_cny":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Unit Price Cny"},"unit_price_usd":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Unit Price Usd"},"features":{"items":{"type":"string"},"type":"array","title":"Features"},"token_estimate_daily_m":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Token Estimate Daily M"},"token_estimate_monthly_m":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Token Estimate Monthly M"}},"type":"object","required":["id","name","daily_limit","rate_limit_cost","rate_limit_requests","price_cny","price_usd","features"],"title":"PresetInfo","description":"Preset plan info."},"PresetsResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"presets":{"items":{"$ref":"#/components/schemas/PresetInfo"},"type":"array","title":"Presets"}},"type":"object","required":["success","presets"],"title":"PresetsResponse","description":"Presets list response."},"PricePreviewResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"base_monthly":{"type":"number","title":"Base Monthly","description":"Base monthly price (CNY)"},"window_fee":{"type":"number","title":"Window Fee","description":"Window removal fee (CNY)"},"monthly_total":{"type":"number","title":"Monthly Total","description":"Monthly total (CNY)"},"months":{"type":"integer","title":"Months"},"discount":{"type":"number","title":"Discount","description":"Discount rate (e.g. 0.90)"},"discount_pct_label":{"type":"string","title":"Discount Pct Label","description":"Discount label (e.g. '9折')"},"total_cny":{"type":"number","title":"Total Cny"},"total_usd":{"type":"number","title":"Total Usd"},"rate_limit_cost":{"type":"integer","title":"Rate Limit Cost","description":"4h window cost limit (USD)"},"rate_limit_requests":{"type":"integer","title":"Rate Limit Requests","description":"4h window request limit"}},"type":"object","required":["success","base_monthly","window_fee","monthly_total","months","discount","discount_pct_label","total_cny","total_usd","rate_limit_cost","rate_limit_requests"],"title":"PricePreviewResponse","description":"Price preview response."},"ProductsResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"products":{"type":"object","title":"Products"},"api_key_creation_enabled":{"type":"boolean","title":"Api Key Creation Enabled"}},"type":"object","required":["success","products","api_key_creation_enabled"],"title":"ProductsResponse","description":"Products list response."},"RechargeCreateRequest":{"properties":{"recharge_amount":{"type":"number","exclusiveMinimum":0.0,"title":"Recharge Amount","description":"Amount to add to balance"},"payment_method":{"type":"string","enum":["alipay","wechat","credit_card","sbp","ru_card"],"title":"Payment Method","description":"Payment method (whitelist enforced at schema layer). Note: 'crypto' (manual) NOT in whitelist — manual flow goes through mailto/Telegram, not /recharge/create.","default":"alipay"},"language":{"type":"string","title":"Language","description":"User language","default":"zh"}},"type":"object","required":["recharge_amount"],"title":"RechargeCreateRequest"},"RechargeCreateResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message","default":""},"order_id":{"type":"string","title":"Order Id","default":""},"qr_url":{"type":"string","title":"Qr Url","default":""},"payment_url":{"type":"string","title":"Payment Url","default":""},"provider":{"type":"string","title":"Provider","default":""},"recharge_amount":{"type":"number","title":"Recharge Amount","default":0},"total_amount":{"type":"number","title":"Total Amount","default":0},"fee_amount":{"type":"number","title":"Fee Amount","default":0}},"type":"object","required":["success"],"title":"RechargeCreateResponse"},"ReferralCodeResponse":{"properties":{"referral_code":{"type":"string","title":"Referral Code"},"referral_url":{"type":"string","title":"Referral Url"}},"type":"object","required":["referral_code","referral_url"],"title":"ReferralCodeResponse","description":"推荐码响应."},"ReferralStatsResponse":{"properties":{"referral_code":{"type":"string","title":"Referral Code"},"total_referred":{"type":"integer","title":"Total Referred"},"consumed_referred":{"type":"integer","title":"Consumed Referred"},"pending_reward_amount":{"type":"number","title":"Pending Reward Amount"},"applied_reward_amount":{"type":"number","title":"Applied Reward Amount"},"reward_claim_threshold":{"type":"number","title":"Reward Claim Threshold"},"referral_records":{"items":{"type":"object"},"type":"array","title":"Referral Records"},"has_referrer":{"type":"boolean","title":"Has Referrer"},"has_paid_orders":{"type":"boolean","title":"Has Paid Orders"}},"type":"object","required":["referral_code","total_referred","consumed_referred","pending_reward_amount","applied_reward_amount","reward_claim_threshold","referral_records","has_referrer","has_paid_orders"],"title":"ReferralStatsResponse","description":"用户推荐统计响应."},"RenewRequest":{"properties":{"api_key_id":{"type":"integer","title":"Api Key Id","description":"API Key ID to renew"},"months":{"type":"integer","maximum":2.0,"minimum":1.0,"title":"Months","description":"Renewal months (1 or 2)","default":1},"currency":{"type":"string","title":"Currency","description":"Payment currency (CNY or USD)","default":"CNY"}},"type":"object","required":["api_key_id"],"title":"RenewRequest","description":"API Key renewal request."},"RenewResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"},"new_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Expires At"},"amount_charged":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Amount Charged"},"new_balance":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"New Balance"}},"type":"object","required":["success","message"],"title":"RenewResponse","description":"API Key renewal response."},"RewardApplicationRequest":{"properties":{"referral_record_ids":{"items":{"type":"integer"},"type":"array","title":"Referral Record Ids","description":"要申请奖励的推荐记录ID列表"}},"type":"object","required":["referral_record_ids"],"title":"RewardApplicationRequest","description":"申请奖励请求."},"RewardApplicationResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"},"application_id":{"type":"integer","title":"Application Id"}},"type":"object","required":["success","message"],"title":"RewardApplicationResponse","description":"申请奖励响应."},"SystemStatusResponse":{"properties":{"api_key_creation_enabled":{"type":"boolean","title":"Api Key Creation Enabled"},"status_message":{"type":"string","title":"Status Message"},"service_status":{"type":"string","title":"Service Status"},"api_host_url":{"type":"string","title":"Api Host Url"},"documentation_url":{"type":"string","title":"Documentation Url"},"contact_email":{"type":"string","title":"Contact Email"}},"type":"object","required":["api_key_creation_enabled","status_message","service_status","api_host_url","documentation_url","contact_email"],"title":"SystemStatusResponse","description":"System status response."},"UpdateKeyRequest":{"properties":{"daily_cost_limit_usd":{"anyOf":[{"type":"number","maximum":100000.0,"minimum":0.0},{"type":"null"}],"title":"Daily Cost Limit Usd"},"total_cost_limit_usd":{"anyOf":[{"type":"number","maximum":1000000.0,"minimum":0.0},{"type":"null"}],"title":"Total Cost Limit Usd"},"concurrency_limit":{"anyOf":[{"type":"integer","maximum":1000.0,"minimum":0.0},{"type":"null"}],"title":"Concurrency Limit"}},"additionalProperties":false,"type":"object","title":"UpdateKeyRequest"},"UserUsageStatsSummary":{"properties":{"user_id":{"type":"integer","title":"User Id","description":"User ID"},"total_api_keys":{"type":"integer","title":"Total Api Keys","description":"Total number of API keys"},"active_api_keys":{"type":"integer","title":"Active Api Keys","description":"Number of active API keys"},"current_tokens_all_keys":{"type":"integer","title":"Current Tokens All Keys","description":"Current window tokens across all keys","default":0},"current_requests_all_keys":{"type":"integer","title":"Current Requests All Keys","description":"Current window requests across all keys","default":0},"current_cost_all_keys":{"type":"number","title":"Current Cost All Keys","description":"Current daily cost across all keys","default":0.0},"formatted_current_cost":{"type":"string","title":"Formatted Current Cost","description":"Formatted current daily cost","default":"$0.00"},"total_tokens_all_keys":{"type":"integer","title":"Total Tokens All Keys","description":"Total tokens across all keys","default":0},"total_requests_all_keys":{"type":"integer","title":"Total Requests All Keys","description":"Total requests across all keys","default":0},"total_cost_all_keys":{"type":"number","title":"Total Cost All Keys","description":"Total cost across all keys","default":0.0},"formatted_total_cost":{"type":"string","title":"Formatted Total Cost","description":"Formatted total cost","default":"$0.00"},"api_key_stats":{"items":{"$ref":"#/components/schemas/DashboardUsageStats"},"type":"array","title":"Api Key Stats","description":"Individual API key statistics"},"last_updated":{"type":"string","format":"date-time","title":"Last Updated","description":"Last update timestamp"},"last_updated_beijing":{"type":"string","title":"Last Updated Beijing","description":"Last update time in Beijing timezone","default":""},"has_any_errors":{"type":"boolean","title":"Has Any Errors","description":"Whether any keys had errors","default":false}},"type":"object","required":["user_id","total_api_keys","active_api_keys","api_key_stats","last_updated"],"title":"UserUsageStatsSummary","description":"User's overall usage statistics summary."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"app__api__endpoints__apikey__PurchaseRequest":{"properties":{"product_id":{"type":"integer","title":"Product Id","description":"Product ID to purchase"},"api_key_name":{"type":"string","title":"Api Key Name","description":"Custom name for the API key"},"currency":{"type":"string","title":"Currency","description":"Currency to use for purchase (CNY or USD)","default":"CNY"}},"type":"object","required":["product_id"],"title":"PurchaseRequest","description":"Purchase API Key request."},"app__api__endpoints__apikey__PurchaseResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"},"api_key_id":{"type":"integer","title":"Api Key Id"}},"type":"object","required":["success","message"],"title":"PurchaseResponse","description":"Purchase response."},"app__schemas__subscribe__PurchaseRequest":{"properties":{"preset_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Preset Id","description":"Preset plan ID (1-7). If set, uses fixed preset pricing."},"daily_limit":{"anyOf":[{"type":"integer","maximum":500.0,"minimum":5.0},{"type":"null"}],"title":"Daily Limit","description":"Daily cost limit in USD, must be multiple of 5"},"no_4h_window":{"type":"boolean","title":"No 4H Window","description":"Whether to remove 4h window","default":false},"months":{"type":"integer","maximum":12.0,"minimum":1.0,"title":"Months","description":"Subscription months"},"currency":{"type":"string","title":"Currency","description":"Payment currency (CNY or USD)","default":"CNY"},"api_key_name":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Api Key Name","description":"Custom API key name"}},"type":"object","required":["months"],"title":"PurchaseRequest","description":"Subscribe purchase request. Either preset_id or daily_limit must be provided."},"app__schemas__subscribe__PurchaseResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"},"api_key_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Api Key Id"},"api_key_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key Value"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"},"config_summary":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Config Summary"}},"type":"object","required":["success","message"],"title":"PurchaseResponse","description":"Subscribe purchase response."}}}}