- apis:
  - method: GET
    path: /api/v1/admin/access-logs
  - method: POST
    path: /api/v1/admin/api_key
  - method: GET
    path: /api/v1/admin/dashboard/stats
  - method: GET
    path: /api/v1/admin/me
  - method: GET
    path: /api/v1/admin/orgs
  - method: GET
    path: /api/v1/admin/orgs/{org_id}
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}
  - method: PATCH
    path: /api/v1/admin/orgs/{org_id}
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/access-logs
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/impersonation
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}/impersonation
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}/projects/{project_id}
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/salesforce
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/users
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/users
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/users/{user_id}
  - method: PUT
    path: /api/v1/admin/orgs/{org_id}/users/{user_id}
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}/users/{user_id}
  - method: POST
    path: /api/v1/admin/rbac/privilege/create
  - method: POST
    path: /api/v1/admin/rbac/privilege/delete/{id}
  - method: GET
    path: /api/v1/admin/rbac/privilege/list
  - method: GET
    path: /api/v1/admin/rbac/privilege/system-list
  - method: POST
    path: /api/v1/admin/rbac/privilege/update
  - method: POST
    path: /api/v1/admin/rbac/role-privilege/add
  - method: POST
    path: /api/v1/admin/rbac/role-privilege/create
  - method: POST
    path: /api/v1/admin/rbac/role-privilege/delete
  - method: GET
    path: /api/v1/admin/rbac/role-privilege/list/{role_id}
  - method: POST
    path: /api/v1/admin/rbac/role/create
  - method: POST
    path: /api/v1/admin/rbac/role/delete/{id}
  - method: GET
    path: /api/v1/admin/rbac/role/list
  - method: POST
    path: /api/v1/admin/rbac/role/update
  - method: GET
    path: /api/v1/admin/rbac/role/{id}
  - method: GET
    path: /api/v1/admin/roles
  - method: POST
    path: /api/v1/admin/roles
  - method: GET
    path: /api/v1/admin/roles/{role_id}
  - method: PUT
    path: /api/v1/admin/roles/{role_id}
  - method: DELETE
    path: /api/v1/admin/roles/{role_id}
  - method: GET
    path: /api/v1/admin/system-settings
  - method: PUT
    path: /api/v1/admin/system-settings
  - method: GET
    path: /api/v1/admin/users
  - method: POST
    path: /api/v1/admin/users
  - method: GET
    path: /api/v1/admin/users/{user_id}
  - method: PUT
    path: /api/v1/admin/users/{user_id}
  - method: DELETE
    path: /api/v1/admin/users/{user_id}
  repo: https://github.com/tidbcloud/account
  swagger_path: /admin/docs/swagger.json
- apis:
  - method: GET
    path: /api/v1/api-keys
  - method: POST
    path: /api/v1/api-keys
  - method: GET
    path: /api/v1/api-keys/list-by-resource
  - method: DELETE
    path: /api/v1/api-keys/{api_key_id}
  - method: PATCH
    path: /api/v1/api-keys/{api_key_id}
  - method: PATCH
    path: /api/v1/api-keys/{api_key_id}/permission/grant
  - method: PATCH
    path: /api/v1/api-keys/{api_key_id}/permission/recover
  - method: GET
    path: /api/v1/api-keys/{api_key_id}/resource
  - method: POST
    path: /api/v1/audit_log
  - method: POST
    path: /api/v1/audit_log/auth0
  - method: POST
    path: /api/v1/audit_log/payment_method
  - method: GET
    path: /api/v1/auth-method
  - method: GET
    path: /api/v1/auth/meta
  - method: PUT
    path: /api/v1/auth/meta
  - method: GET
    path: /api/v1/location/ip2location
  - method: GET
    path: /api/v1/login-user-roles
  - method: GET
    path: /api/v1/message/notice
  - method: POST
    path: /api/v1/metrics/login-metrics
  - method: GET
    path: /api/v1/my-ip
  - method: GET
    path: /api/v1/org/{company_name}
  - method: GET
    path: /api/v1/orgs
  - method: POST
    path: /api/v1/orgs
  - method: GET
    path: /api/v1/orgs/me
  - method: POST
    path: /api/v1/orgs/validate_thirdparty_token
  - method: POST
    path: /api/v1/orgs/verification-email
  - method: PUT
    path: /api/v1/orgs/{org_id}
  - method: POST
    path: /api/v1/orgs/{org_id}/acception
  - method: GET
    path: /api/v1/orgs/{org_id}/access-logs
  - method: GET
    path: /api/v1/orgs/{org_id}/api_keys
  - method: POST
    path: /api/v1/orgs/{org_id}/api_keys
  - method: DELETE
    path: /api/v1/orgs/{org_id}/api_keys/{api_key_id}
  - method: PATCH
    path: /api/v1/orgs/{org_id}/api_keys/{api_key_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/auth-method
  - method: GET
    path: /api/v1/orgs/{org_id}/auth-method/email-domain
  - method: GET
    path: /api/v1/orgs/{org_id}/auth-method/list
  - method: POST
    path: /api/v1/orgs/{org_id}/auth-method/status
  - method: POST
    path: /api/v1/orgs/{org_id}/auth-method/update
  - method: POST
    path: /api/v1/orgs/{org_id}/auth0-user
  - method: POST
    path: /api/v1/orgs/{org_id}/bind_third_party
  - method: POST
    path: /api/v1/orgs/{org_id}/cn-policy
  - method: GET
    path: /api/v1/orgs/{org_id}/exp-whitelist
  - method: POST
    path: /api/v1/orgs/{org_id}/opensso
  - method: POST
    path: /api/v1/orgs/{org_id}/poc-applications
  - method: GET
    path: /api/v1/orgs/{org_id}/projects
  - method: POST
    path: /api/v1/orgs/{org_id}/projects
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}
  - method: PATCH
    path: /api/v1/orgs/{org_id}/projects/{project_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/api_keys
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sql-user/create
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sql-user/delete
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sql-user/list
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sql-user/query
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sql-user/update
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/users
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/users
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/users/{user_id}
  - method: PATCH
    path: /api/v1/orgs/{org_id}/projects/{project_id}/users/{user_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/users
  - method: POST
    path: /api/v1/orgs/{org_id}/users
  - method: GET
    path: /api/v1/orgs/{org_id}/users/me
  - method: PUT
    path: /api/v1/orgs/{org_id}/users/me
  - method: DELETE
    path: /api/v1/orgs/{org_id}/users/{user_id}
  - method: PUT
    path: /api/v1/orgs/{org_id}/users/{user_id}
  - method: GET
    path: /api/v1/scope-users
  - method: GET
    path: /api/v1/user-roles
  - method: GET
    path: /api/v1/user/privileges
  - method: GET
    path: /inner/account-central/api/v1/apikey-jwt
  - method: GET
    path: /inner/account-central/api/v1/user-jwt
  repo: https://github.com/tidbcloud/account
  swagger_path: /central/docs/service.swagger.json
- apis:
  - method: POST
    path: /api/v1/billing/add_commodity_dimension
  - method: POST
    path: /api/v1/billing/add_commodity_edition
  - method: POST
    path: /api/v1/billing/add_sku_list
  - method: POST
    path: /api/v1/billing/add_sku_template
  - method: GET
    path: /api/v1/billing/auditlog
  - method: GET
    path: /api/v1/billing/billing_company
  - method: POST
    path: /api/v1/billing/create_commodity
  - method: GET
    path: /api/v1/billing/credit_risk_levels
  - method: POST
    path: /api/v1/billing/credit_risk_levels
  - method: GET
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}
  - method: PUT
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}
  - method: DELETE
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}
  - method: GET
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}/cost_quota
  - method: PUT
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}/cost_quota
  - method: GET
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}/risk_close_policy
  - method: PUT
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}/risk_close_policy
  - method: DELETE
    path: /api/v1/billing/credit_risk_levels/{credit_risk_level_id}/risk_close_policy
  - method: GET
    path: /api/v1/billing/credit_types
  - method: PUT
    path: /api/v1/billing/events
  - method: GET
    path: /api/v1/billing/global-discounts
  - method: POST
    path: /api/v1/billing/global-discounts
  - method: PUT
    path: /api/v1/billing/global-discounts/{discount_id}
  - method: DELETE
    path: /api/v1/billing/global-discounts/{discount_id}
  - method: POST
    path: /api/v1/billing/migrate_tasks/{name}
  - method: PUT
    path: /api/v1/billing/modify_commodity
  - method: PUT
    path: /api/v1/billing/modify_commodity_dimension
  - method: POST
    path: /api/v1/billing/modify_commodity_edition
  - method: POST
    path: /api/v1/billing/modify_commodity_sku_template
  - method: PUT
    path: /api/v1/billing/modify_sku_list
  - method: GET
    path: /api/v1/billing/opened_credits/tenant_ids
  - method: GET
    path: /api/v1/billing/packages
  - method: POST
    path: /api/v1/billing/packages
  - method: GET
    path: /api/v1/billing/packages/{package_id}
  - method: PUT
    path: /api/v1/billing/packages/{package_id}
  - method: DELETE
    path: /api/v1/billing/packages/{package_id}
  - method: PATCH
    path: /api/v1/billing/packages/{package_id}
  - method: GET
    path: /api/v1/billing/plans/ondemand/global-discounts
  - method: PUT
    path: /api/v1/billing/plans/ondemand/global-discounts
  - method: POST
    path: /api/v1/billing/query_commodities
  - method: GET
    path: /api/v1/billing/query_commodity_dimensions
  - method: GET
    path: /api/v1/billing/query_commodity_editions
  - method: GET
    path: /api/v1/billing/query_commodity_sku_templates
  - method: GET
    path: /api/v1/billing/query_sku_list
  - method: GET
    path: /api/v1/billing/spend_limits
  - method: GET
    path: /api/v1/billing/support_plan
  - method: PUT
    path: /api/v1/billing/support_plan/{support_plan_id}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/billing_company
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/billing_company
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/billing_info
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/billing_info
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages/{binded_package_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages/{binded_package_id}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages/{binded_package_id}/charge_credits
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/binded_packages/{binded_package_id}/charge_credits
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/binded_support_plan
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/binded_support_plan
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/binded_support_plan/private
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/binded_support_plan/public
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/binded_support_plan/public
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/closing
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/closing/actions/cancel
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/closing/reasons
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/closing/reasons/{reason}/actions/run
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/closing/reasons/{reason}/policies
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/commitment_invoices
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/contracts
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/contracts
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/contracts/{contract_id}
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/contracts/{contract_id}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/contracts/{contract_id}/actions/{action}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/contracts/{contract_id}/download
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/cost_quota
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/cost_quota
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer/bills_details/year/{year}/month/{month}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer/monthly_bills/year/{year}/month/{month}/export
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer/monthly_cost/year/{year}/month/{month}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer/monthly_cost/year/{year}/month/{month}/export
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/costexplorer/monthly_usage/dataapi/apps/{app_id}/year/{year}/month/{month}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/credit_risk_level
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/credit_risk_level
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/credits
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/credits
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/credits/{credit_id}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/credits/{credit_id}/actions/reclaim
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/credits_summary
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/discounts
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/discounts
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/discounts/{discount_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/discounts/{discount_id}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/internal/costexplorer
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/invoices
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/invoices
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/invoices/{invoice_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/invoices/{invoice_id}
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/invoices/{invoice_id}/confirm
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/invoices/{invoice_id}/modify
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/invoices/{invoice_id}/send
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/measures
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/measures/dryrun
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments/active
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/payments/active/{payment_type}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/customer
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/invoices
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/payment_methods
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/payment_methods/{payment_method_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/payment_methods/{payment_method_id}
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/payment_methods/{payment_method_id}/default
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/payment_methods/{payment_method_id}/validate
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/setup_intent
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/payments/stripe/setup_intent/confirm
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/payments/types
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/plans
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/plans/dev_tier/notify_dev_tier_cluster_created
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/plans/ondemand/discounts
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/plans/ondemand/discounts
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/plans/ondemand/effective-discounts
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/risk_close_policy
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits/info
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits/{spend_limit_setting_id}
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits/{spend_limit_setting_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits/{spend_limit_setting_id}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/spend_limits/{spend_limit_setting_id}/info
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}
  - method: PUT
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}
  - method: DELETE
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}/actions/accept
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}/actions/download
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}/actions/reject
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}/actions/submit
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/subcriptions/{subscription_id}/actions/suspend
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/submited_subcriptions
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/switch/card/validate/is_allowed
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/tenant_risk_close
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/tenant_risk_close/actions/cancel
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/tenant_risk_close/actions/run
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/users/contracts
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/users/contracts/{contract_id}
  - method: POST
    path: /api/v1/billing/tenants/{tenant_id}/users/contracts/{contract_id}/actions/{action}
  - method: GET
    path: /api/v1/billing/tenants/{tenant_id}/users/discounts
  - method: GET
    path: /api/v1/billing/unit_filters
  - method: GET
    path: /api/v1/billing/unit_filters/quick_selections/{target}
  - method: GET
    path: /api/v1/billing/units
  - method: POST
    path: /api/v1/billing/units
  - method: POST
    path: /api/v1/billing/units/_bulk
  - method: GET
    path: /api/v1/billing/units/{unit_key}
  - method: PUT
    path: /api/v1/billing/units/{unit_key}
  - method: DELETE
    path: /api/v1/billing/units/{unit_key}
  - method: POST
    path: /api/v1/billing/worker/run
  - method: POST
    path: /api/v1/billing/worker/subtask/run
  repo: https://github.com/tidbcloud/billing
  swagger_path: /docs/swagger.json
- apis: []
  repo: https://github.com/tidbcloud/core-svc
  swagger_path: /idl/pbgen/proto/core/core.swagger.json
- apis:
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws-cmek
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws-cmek
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws_account
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws_vpc_peerings
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws_vpc_peerings
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws_vpc_peerings/{id}
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/aws_vpc_peerings/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cidr/regions
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cloud_providers/query
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cluster_fee/query
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/names
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}
  - method: PATCH
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log/access_records
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log/access_records
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log/access_records/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log/plugin_status
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/audit_log/precheck
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/ca_cert
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connections
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connections
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/password
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/pause
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/privatelink_endpoints
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/privatelink_endpoints/{endpoint_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/privatelink_service
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/privatelink_service
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/privatelink_service
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/resume
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tidb_nodes
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tiflash_nodes
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tikv_nodes
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/traffic_filter
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/traffic_filter
  - method: PATCH
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/writable
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{id}/secondary_cluster_profiles
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clustersv2
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clustersv2/{cluster_id}/components
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cross_account_deployments
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cross_account_deployments
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cross_account_deployments/delegation_info
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cross_account_deployments/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/gcp_vpc_peerings
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/gcp_vpc_peerings
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/gcp_vpc_peerings/{id}
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/gcp_vpc_peerings/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/iam_roles
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/iam_roles
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/iam_roles/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/maintenance-tasks
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/maintenance-tasks/{task_id}/defer
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/maintenance-window
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/maintenance-window
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/node_profiles/query
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/privatelink_endpoints
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/recycle-bin
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/{provider}/cidr
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/{provider}/cidr
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/{provider}/cidr/validation/query
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/{provider}/{region}/cidr
  - method: POST
    path: /api/v1/test-token
  repo: https://github.com/tidbcloud/core-svc
  swagger_path: /idl/pbgen/proto/central/service.swagger.json
- apis:
  - method: POST
    path: /api/v1/admin/api/v1/admin/profile/query
  - method: POST
    path: /api/v1/admin/external-api/v1/orgs/profile/replace_node_and_sku
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/cluster-lifecycles
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/clusters
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}
  - method: PUT
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/components
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/dashboard_links
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/pause
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/resume
  - method: GET
    path: /api/v1/admin/providers
  - method: POST
    path: /api/v1/admin/providers
  - method: GET
    path: /api/v1/admin/providers/{provider}/regions
  - method: POST
    path: /api/v1/admin/providers/{provider}/regions
  - method: GET
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  - method: PUT
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  - method: DELETE
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  repo: https://github.com/tidbcloud/core-svc
  swagger_path: /portal/internal/admin/docs/swagger.json
- apis: []
  repo: https://github.com/tidbcloud/dataflow-service
  swagger_path: /idl/pbgen/proto/common/common.swagger.json
- apis:
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/tcu
  - method: GET
    path: /api/v1/changefeed/instance_types
  - method: GET
    path: /api/v1/dataflow/get-s3-bucket-region
  - method: POST
    path: /api/v1/dataflow/imports/apply-table-filters
  - method: GET
    path: /api/v1/dataflow/imports/data-type
  - method: POST
    path: /api/v1/dataflow/imports/preview
  - method: POST
    path: /api/v1/dataflow/imports/upload
  - method: DELETE
    path: /api/v1/orgs/{org_id}/clusters/{cluster_id}/replications/{rep_id}/type/{detach_type}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/cal_changefeed_fee
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/admin_profile
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/log-backups
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/options
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/pitr/ranges
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/restores/progress
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/schedules
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/schedules
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_pitr_ranges
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_restores
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}/restore
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/changefeeds/{changefeed_id}/scale
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/edit
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/test
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/start
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/stop
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/data-ingestion-profile
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/describeSchemaTable
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/enabled_dp_features
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/import-target-tables
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/local/table-columns
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-csv-file
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/schemas-meta
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/search-import-files
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate-target-table-empty
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/cancel
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/exit
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tcu
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/recycle-bin/{cluster_id}/backups
  - method: POST
    path: /debug-api/event-bus/consumer-DLQ
  repo: https://github.com/tidbcloud/dataflow-service
  swagger_path: /api/service.swagger.json
- apis:
  - method: POST
    path: /api/v1/cluster-client-secret
  - method: POST
    path: /api/v1/cluster-tables
  - method: POST
    path: /api/v1/cluster/execsql
  - method: POST
    path: /api/v1/cluster/load-data
  - method: POST
    path: /api/v1/db-connectivity
  - method: POST
    path: /api/v1/dm/jobprecheck
  - method: POST
    path: /api/v1/gcs/check_access
  - method: POST
    path: /api/v1/import/clear-empty-tables
  - method: POST
    path: /api/v1/import/estimate-src-data-size
  - method: POST
    path: /api/v1/import/lightning-precheck
  - method: POST
    path: /api/v1/import/lightning-source-preview
  - method: POST
    path: /api/v1/import/precheck-import-file
  - method: POST
    path: /api/v1/import/preview-csv-file
  - method: POST
    path: /api/v1/import/schemas-meta
  - method: POST
    path: /api/v1/import/search-import-files
  - method: POST
    path: /api/v1/nslookup
  - method: POST
    path: /api/v1/s3/check_access
  - method: POST
    path: /api/v1/source-tables
  - method: POST
    path: /api/v1/source/binlog-status
  - method: POST
    path: /api/v1/user-file
  repo: https://github.com/tidbcloud/dataflow-service
  swagger_path: /api/agent.swagger.json
- apis:
  - method: GET
    path: /api/v1/dataflow/dm/job-specs
  - method: GET
    path: /api/v1/dataflow/dm/supported-sources
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/cost
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/scale-up-down
  - method: PUT
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/status
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check/{id}
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check/{id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/quota
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/source-tables
  repo: https://github.com/tidbcloud/dataflow-service
  swagger_path: /api/dm.swagger.json
- apis:
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/conn-profiles
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/ip-white-list
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/validate/cluster
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/validate/remote
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/private-links
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/private-links/{id}
  repo: https://github.com/tidbcloud/dataflow-service
  swagger_path: /api/dataflow.swagger.json
- apis:
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/bot
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/status
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataapi/sample
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dbs/{db_name}/{table_name}/exist
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dbs/{db_name}/{table_name}/meta
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/meta
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/oplog
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sample/initialize
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/session
  - method: DELETE
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/session/{session_id}
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/settings
  - method: PUT
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/settings
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sqlfiles
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sqlfiles
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sqlfiles/{sql_file_id}
  - method: PUT
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sqlfiles/{sql_file_id}
  - method: DELETE
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/sqlfiles/{sql_file_id}
  - method: POST
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/statements
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/clusters/{cluster}/enter/audit
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/permission/entry
  - method: PUT
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/settings
  - method: GET
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/users
  - method: PUT
    path: /api/v1/dataapps/sqleditor/orgs/{org_id}/projects/{project_id}/users
  repo: https://github.com/tidbcloud/dataapps
  swagger_path: /docs/swagger.json
- apis:
  - method: GET
    path: /api/v1/audit/:org_id/audit_logs
  - method: PUT
    path: /api/v1/audit/:org_id/settings
  - method: GET
    path: /api/v1/audit/event_types
  - method: GET
    path: /api/v1/audit/org_id/settings
  repo: https://github.com/tidbcloud/auditservice
  swagger_path: /docs/swagger.json
- apis:
  - method: GET
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/databases
  - method: POST
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/databases
  - method: GET
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/vercel/connections
  - method: POST
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/vercel/connections
  - method: DELETE
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/vercel/connections
  - method: POST
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/dataapps/{data_app_id}/vercel/connections
  - method: DELETE
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/dataapps/{data_app_id}/vercel/connections
  - method: POST
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/serverless/clusters
  - method: GET
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/vercel/connections
  - method: POST
    path: /ecosystem/api/v1/vercel/access_token
  - method: GET
    path: /ecosystem/api/v1/vercel/integration/configurations/{configuration_id}/connections
  - method: GET
    path: /ecosystem/api/v1/vercel/integration/configurations/{configuration_id}/projects
  - method: POST
    path: /ecosystem/api/v1/vercel/webhooks
  repo: https://github.com/tidbcloud/ecosystem-service
  swagger_path: /docs/vercel/vercel_swagger.json
- apis:
  - method: GET
    path: /ecosystem/api/v1/connect/info
  repo: https://github.com/tidbcloud/ecosystem-service
  swagger_path: /docs/connect/connect_swagger.json
- apis:
  - method: GET
    path: /ecosystem/api/v1/integration/github/accounts
  - method: GET
    path: /ecosystem/api/v1/integration/github/exchange-token
  - method: GET
    path: /ecosystem/api/v1/integration/github/search-repo
  - method: GET
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/git/connections
  - method: POST
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/git/connections
  - method: DELETE
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/git/connections
  - method: GET
    path: /ecosystem/api/v1/orgs/{org_id}/projects/{project_id}/git/connections
  repo: https://github.com/tidbcloud/ecosystem-service
  swagger_path: /docs/git/git_swagger.json
- apis:
  - method: GET
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches
  - method: POST
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches
  - method: GET
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches/{branch_name}
  - method: DELETE
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches/{branch_name}
  repo: https://github.com/tidbcloud/ecosystem-service
  swagger_path: /pkg/branch/branch_openapi.swagger.json
- apis: []
  repo: https://github.com/tidbcloud/metrics-server
  swagger_path: /idl/pbgen/proto/core/core.swagger.json
- apis:
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations/datadog/api_key/validate
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations/newrelic/api_key/validate
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key/{key_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert/{user_alert_id}
  repo: https://github.com/tidbcloud/metrics-server
  swagger_path: /idl/pbgen/proto/central/service.swagger.json
- apis:
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations/datadog/api_key/validate
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/integrations/newrelic/api_key/validate
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/metrics_key/{key_id}
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert/{user_alert_id}
  repo: https://github.com/tidbcloud/metrics-server
  swagger_path: /central/docs/service.swagger.json
- apis:
  - method: GET
    path: /api/v1/dataservices/central/external/appexport/postman
  - method: POST
    path: /api/v1/dataservices/central/orgs/:org_id/projects/:project_id/apps/:app_id/auto/endpoints
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}
  - method: PUT
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}
  - method: DELETE
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/apikeys
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/apikeys
  - method: PUT
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/apikeys/{apikey_id}
  - method: DELETE
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/apikeys/{apikey_id}
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/authorize-url
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/clusters
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/clusters
  - method: DELETE
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/clusters/{cluster_id}
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/clusters/{cluster_id}/dbs
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/clusters/{cluster_id}/dbs/{db_name}/tables
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/config
  - method: PUT
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/config
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/diff
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/logs
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/logs/:log_id/deploy
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/logs/{log_id}
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/logs/{log_id}/diff
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/deploy/status
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/discard
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}
  - method: PUT
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}
  - method: DELETE
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}
  - method: PATCH
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/baseurl
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/discard
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/draft/diff
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/dump
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/example
  - method: PUT
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/offline
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/online
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/sessions
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/statements
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/test
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/version/{version}/status
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/endpoints/{endpoint_id}/versions
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/exportlink
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/github
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/github/link
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/github/unlink
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/oas
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/oas/authorize
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/oas/download
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/postmanstatus
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/repositories
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/repositories/{repo_id}/branches
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/apps/{app_id}/repositories/{repo_id}/validate
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/apps
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/external-apps/{external_app_id}/oas
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/list_dataapp_usage
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/preflight-request
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/preflight-request/{request_id}/repositories
  - method: GET
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/preflight-request/{request_id}/repositories/{repo_id}/branches
  - method: POST
    path: /api/v1/dataservices/central/orgs/{org_id}/projects/{project_id}/preflight-request/{request_id}/repositories/{repo_id}/validate
  repo: https://github.com/tidbcloud/dataservices
  swagger_path: /docs/swagger.json
- apis:
  - method: GET
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: POST
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert
  - method: DELETE
    path: /api/v1/orgs/{org_id}/projects/{project_id}/user_alert/{user_alert_id}
  repo: https://github.com/tidbcloud/internal-portal
  swagger_path: /idl/pbgen/proto/useralert/service.swagger.json
- apis:
  - method: POST
    path: /api/v1/admin/api/v1/admin/profile/query
  - method: POST
    path: /api/v1/admin/external-api/v1/orgs/profile/replace_node_and_sku
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/cluster-lifecycles
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/clusters
  - method: DELETE
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}
  - method: PUT
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/components
  - method: GET
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/dashboard_links
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/pause
  - method: POST
    path: /api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/resume
  - method: GET
    path: /api/v1/admin/providers
  - method: POST
    path: /api/v1/admin/providers
  - method: GET
    path: /api/v1/admin/providers/{provider}/regions
  - method: POST
    path: /api/v1/admin/providers/{provider}/regions
  - method: GET
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  - method: PUT
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  - method: DELETE
    path: /api/v1/admin/providers/{provider}/regions/{region_id}
  repo: https://github.com/tidbcloud/internal-portal
  swagger_path: /core-portal/admin/docs/swagger.json
- apis:
  - method: GET
    path: /ping
  - method: GET
    path: /healthz
  - method: POST
    path: /api/useralerts/v1/alert
  - method: GET
    path: /api/userdebug/v1/{organization}/features
  - method: GET
    path: /api/userdebug/v1/{organization}/authorizations
  - method: GET
    path: /api/userdebug/v1/{organization}/{cluster}/authorization
  - method: POST
    path: /api/userdebug/v1/{organization}/{cluster}/authorization
  - method: DELETE
    path: /api/userdebug/v1/{organization}/{cluster}/authorization
  - method: GET
    path: /api/userdebug/v1/{organization}/{cluster}/authorization/details/{auth_id}
  - method: GET
    path: /api/userdebug/v1/{organization}/{cluster}/authorization/records
  - method: GET
    path: /api/userdebug/v1/{organization}/{cluster}/authorization/records/{auth_id}
  repo: https://github.com/tidbcloud/internal-portal
  swagger_path: /api/swagger.yaml
- apis:
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/resource_limit
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/spend_limits
  - method: POST
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/spend_limits
  - method: PUT
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/spend_limits
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/spend_limits/details
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/clusters/{cluster_id}/spend_limits/predict
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/spend_limits
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/spend_limits/predict
  repo: https://github.com/tidbcloud/serverless-service
  swagger_path: /apidocs/billing.swagger.json
- apis:
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/branches
  - method: POST
    path: /api/v1/serverless/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/branches
  - method: GET
    path: /api/v1/serverless/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/branches/{branch_id}
  - method: DELETE
    path: /api/v1/serverless/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/branches/{branch_id}
  - method: PUT
    path: /api/v1/serverless/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/branches/{branch_id}/password
  repo: https://github.com/tidbcloud/serverless-service
  swagger_path: /apidocs/branch.swagger.json
- apis:
  - method: GET
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/imports
  - method: POST
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/imports
  - method: GET
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/imports/{id}
  - method: DELETE
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/imports/{id}
  - method: POST
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/upload_url
  repo: https://github.com/tidbcloud/serverless-service
  swagger_path: /apidocs/openapi/import.swagger.json
- apis:
  - method: POST
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches/{branch_name}/users
  - method: DELETE
    path: /api/internal/projects/{project_id}/clusters/{cluster_id}/branches/{branch_name}/users/{username}
  repo: https://github.com/tidbcloud/serverless-service
  swagger_path: /apidocs/openapi/user.swagger.json
- apis:
  - method: GET
    path: /api/v1beta/clusters/{cluster_id}/branches
  - method: POST
    path: /api/v1beta/clusters/{cluster_id}/branches
  - method: GET
    path: /api/v1beta/clusters/{cluster_id}/branches/{branch_id}
  - method: DELETE
    path: /api/v1beta/clusters/{cluster_id}/branches/{branch_id}
  repo: https://github.com/tidbcloud/serverless-service
  swagger_path: /apidocs/openapi/branch.swagger.json
- apis: []
  repo: https://github.com/tidbcloud/aipower
  swagger_path: /idl/pbgen/proto/api/service.swagger.json
- apis:
  - method: POST
    path: /api/v1/message/orgs/{org_id}/projects/{project_id}/bot
  repo: https://github.com/tidbcloud/aipower
  swagger_path: /docs/swagger.json
