{"openapi":"3.1.0","info":{"title":"OrbiDNS API","description":"\nOrbiDNS developer API.\n\n**Authentication** — send `Authorization: Bearer odns_…` (create keys in the dashboard). Each key has scopes.\n\n**Async DNS writes** — record writes return `202` with `status: \"pending\"`; poll the record until `active`\n(or `failed`). Records are never reported active before the DNS provider confirms.\n\n**Errors** — `{\"error\": {\"code\", \"message\", \"details\", \"request_id\"}}`.\n\n**Limits** — 120 requests/minute per key, plus the daily quota of your plan (`429 quota_exceeded`).\n","version":"1.0.0"},"paths":{"/api/auth/register":{"post":{"tags":["auth"],"summary":"Register","operationId":"register_api_auth_register_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/login":{"post":{"tags":["auth"],"summary":"Login","operationId":"login_api_auth_login_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/mfa/verify":{"post":{"tags":["auth"],"summary":"Mfa Verify","operationId":"mfa_verify_api_auth_mfa_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodeIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/logout":{"post":{"tags":["auth"],"summary":"Logout","operationId":"logout_api_auth_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/auth/me":{"get":{"tags":["auth"],"summary":"Me","operationId":"me_api_auth_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/auth/verify-email":{"post":{"tags":["auth"],"summary":"Verify Email","operationId":"verify_email_api_auth_verify_email_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/resend-verification":{"post":{"tags":["auth"],"summary":"Resend","operationId":"resend_api_auth_resend_verification_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/auth/forgot-password":{"post":{"tags":["auth"],"summary":"Forgot","operationId":"forgot_api_auth_forgot_password_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/reset-password":{"post":{"tags":["auth"],"summary":"Reset","operationId":"reset_api_auth_reset_password_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResetIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/profile":{"patch":{"tags":["account"],"summary":"Profile","operationId":"profile_api_account_profile_patch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/password":{"post":{"tags":["account"],"summary":"Change Password","operationId":"change_password_api_account_password_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordChangeIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/sessions":{"get":{"tags":["account"],"summary":"Sessions","operationId":"sessions_api_account_sessions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SessionOut"},"type":"array","title":"Response Sessions Api Account Sessions Get"}}}}}}},"/api/account/sessions/{session_id}":{"delete":{"tags":["account"],"summary":"Revoke Session","operationId":"revoke_session_api_account_sessions__session_id__delete","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/sessions/revoke-others":{"post":{"tags":["account"],"summary":"Revoke Others","operationId":"revoke_others_api_account_sessions_revoke_others_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/account/mfa/setup":{"post":{"tags":["account"],"summary":"Mfa Setup","operationId":"mfa_setup_api_account_mfa_setup_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/account/mfa/enable":{"post":{"tags":["account"],"summary":"Mfa Enable","operationId":"mfa_enable_api_account_mfa_enable_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodeIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/mfa/disable":{"post":{"tags":["account"],"summary":"Mfa Disable","operationId":"mfa_disable_api_account_mfa_disable_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MfaDisableIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/activity":{"get":{"tags":["account"],"summary":"Activity","operationId":"activity_api_account_activity_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AuditOut"},"title":"Response Activity Api Account Activity Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/delete":{"post":{"tags":["account"],"summary":"Delete Account","operationId":"delete_account_api_account_delete_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteAccountIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/webhooks":{"get":{"tags":["account"],"summary":"List Webhooks","operationId":"list_webhooks_api_account_webhooks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/WebhookOut"},"type":"array","title":"Response List Webhooks Api Account Webhooks Get"}}}}}},"post":{"tags":["account"],"summary":"Create Webhook","operationId":"create_webhook_api_account_webhooks_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/account/webhooks/{webhook_id}":{"delete":{"tags":["account"],"summary":"Delete Webhook","operationId":"delete_webhook_api_account_webhooks__webhook_id__delete","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Webhook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/domains":{"get":{"tags":["public"],"summary":"Domains","operationId":"domains_api_public_domains_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DomainOut"},"title":"Response Domains Api Public Domains Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/availability":{"get":{"tags":["public"],"summary":"Availability","description":"Check a label across every open domain (or one domain by name).","operationId":"availability_api_public_availability_get","parameters":[{"name":"label","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":63,"title":"Label"}},{"name":"domain","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Domain"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AvailabilityOut"},"title":"Response Availability Api Public Availability Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/plans":{"get":{"tags":["public"],"summary":"Plans","operationId":"plans_api_public_plans_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PlanOut"},"type":"array","title":"Response Plans Api Public Plans Get"}}}}}}},"/api/public/abuse":{"post":{"tags":["public"],"summary":"Report Abuse","operationId":"report_abuse_api_public_abuse_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbuseIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/contact":{"post":{"tags":["public"],"summary":"Contact","operationId":"contact_api_public_contact_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/public/status":{"get":{"tags":["public"],"summary":"Status","operationId":"status_api_public_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/health":{"get":{"tags":["health"],"summary":"Healthcheck","operationId":"healthcheck_api_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/domains":{"get":{"tags":["v1"],"summary":"List Domains","operationId":"list_domains_api_v1_domains_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DomainOut"},"title":"Response List Domains Api V1 Domains Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/domains/{domain_id}/availability":{"get":{"tags":["v1"],"summary":"Check","operationId":"check_api_v1_domains__domain_id__availability_get","parameters":[{"name":"domain_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Domain Id"}},{"name":"label","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":63,"title":"Label"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AvailabilityOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/plans":{"get":{"tags":["v1"],"summary":"Plans","operationId":"plans_api_v1_plans_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PlanOut"},"type":"array","title":"Response Plans Api V1 Plans Get"}}}}}}},"/api/v1/subdomains":{"get":{"tags":["v1"],"summary":"List Subdomains","operationId":"list_subdomains_api_v1_subdomains_get","parameters":[{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_SubdomainOut_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["v1"],"summary":"Create Subdomain","operationId":"create_subdomain_api_v1_subdomains_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubdomainIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubdomainOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subdomains/{sub_id}":{"get":{"tags":["v1"],"summary":"Get Subdomain","operationId":"get_subdomain_api_v1_subdomains__sub_id__get","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubdomainOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["v1"],"summary":"Delete Subdomain","operationId":"delete_subdomain_api_v1_subdomains__sub_id__delete","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subdomains/{sub_id}/history":{"get":{"tags":["v1"],"summary":"History","operationId":"history_api_v1_subdomains__sub_id__history_get","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOut"},"title":"Response History Api V1 Subdomains  Sub Id  History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subdomains/{sub_id}/records":{"get":{"tags":["v1"],"summary":"List Records","operationId":"list_records_api_v1_subdomains__sub_id__records_get","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RecordOut"},"title":"Response List Records Api V1 Subdomains  Sub Id  Records Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["v1"],"summary":"Create Record","operationId":"create_record_api_v1_subdomains__sub_id__records_post","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordIn"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subdomains/{sub_id}/records/{record_id}":{"get":{"tags":["v1"],"summary":"Get Record","operationId":"get_record_api_v1_subdomains__sub_id__records__record_id__get","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Record Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["v1"],"summary":"Update Record","operationId":"update_record_api_v1_subdomains__sub_id__records__record_id__put","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Record Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordUpdateIn"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["v1"],"summary":"Delete Record","operationId":"delete_record_api_v1_subdomains__sub_id__records__record_id__delete","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Record Id"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/subdomains/{sub_id}/records/{record_id}/propagation":{"get":{"tags":["v1"],"summary":"Propagation","operationId":"propagation_api_v1_subdomains__sub_id__records__record_id__propagation_get","parameters":[{"name":"sub_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sub Id"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Record Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/usage":{"get":{"tags":["v1"],"summary":"Usage","operationId":"usage_api_v1_usage_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":90,"minimum":1,"default":30,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/api-keys/scopes":{"get":{"tags":["v1"],"summary":"Scopes","operationId":"scopes_api_v1_api_keys_scopes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/api-keys":{"get":{"tags":["v1"],"summary":"List Keys","operationId":"list_keys_api_v1_api_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/APIKeyOut"},"type":"array","title":"Response List Keys Api V1 Api Keys Get"}}}}}},"post":{"tags":["v1"],"summary":"Create Key","operationId":"create_key_api_v1_api_keys_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyCreatedOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/api-keys/{key_id}":{"delete":{"tags":["v1"],"summary":"Revoke Key","operationId":"revoke_key_api_v1_api_keys__key_id__delete","parameters":[{"name":"key_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/stats":{"get":{"tags":["admin"],"summary":"Stats","operationId":"stats_api_admin_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/users":{"get":{"tags":["admin"],"summary":"Users","operationId":"users_api_admin_users_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}":{"get":{"tags":["admin"],"summary":"User Detail","operationId":"user_detail_api_admin_users__user_id__get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["admin"],"summary":"Patch User","operationId":"patch_user_api_admin_users__user_id__patch","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/revoke-sessions":{"post":{"tags":["admin"],"summary":"Revoke User Sessions","operationId":"revoke_user_sessions_api_admin_users__user_id__revoke_sessions_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/providers":{"get":{"tags":["admin"],"summary":"Providers","operationId":"providers_api_admin_providers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["admin"],"summary":"Create Provider","operationId":"create_provider_api_admin_providers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/providers/{pid}":{"patch":{"tags":["admin"],"summary":"Patch Provider","operationId":"patch_provider_api_admin_providers__pid__patch","parameters":[{"name":"pid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Pid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderPatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin"],"summary":"Delete Provider","operationId":"delete_provider_api_admin_providers__pid__delete","parameters":[{"name":"pid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Pid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/providers/{pid}/verify":{"post":{"tags":["admin"],"summary":"Verify Provider","operationId":"verify_provider_api_admin_providers__pid__verify_post","parameters":[{"name":"pid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Pid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/providers/{pid}/rotate":{"post":{"tags":["admin"],"summary":"Rotate Provider","operationId":"rotate_provider_api_admin_providers__pid__rotate_post","parameters":[{"name":"pid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Pid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenRotateIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/providers/reencrypt":{"post":{"tags":["admin"],"summary":"Reencrypt Credentials","description":"Re-encrypt every stored secret with the newest ENCRYPTION_KEYS entry (key rotation).","operationId":"reencrypt_credentials_api_admin_providers_reencrypt_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/domains":{"get":{"tags":["admin"],"summary":"Domains","operationId":"domains_api_admin_domains_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["admin"],"summary":"Create Domain","operationId":"create_domain_api_admin_domains_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/domains/{did}":{"patch":{"tags":["admin"],"summary":"Patch Domain","operationId":"patch_domain_api_admin_domains__did__patch","parameters":[{"name":"did","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Did"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainPatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin"],"summary":"Delete Domain","operationId":"delete_domain_api_admin_domains__did__delete","parameters":[{"name":"did","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Did"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/domains/{did}/verify":{"post":{"tags":["admin"],"summary":"Verify Domain","operationId":"verify_domain_api_admin_domains__did__verify_post","parameters":[{"name":"did","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Did"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/subdomains":{"get":{"tags":["admin"],"summary":"Subdomains","operationId":"subdomains_api_admin_subdomains_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"domain_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Domain Id"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/subdomains/{sid}/suspend":{"post":{"tags":["admin"],"summary":"Suspend Sub","operationId":"suspend_sub_api_admin_subdomains__sid__suspend_post","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReasonIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/subdomains/{sid}/unsuspend":{"post":{"tags":["admin"],"summary":"Unsuspend Sub","operationId":"unsuspend_sub_api_admin_subdomains__sid__unsuspend_post","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/subdomains/{sid}/release":{"post":{"tags":["admin"],"summary":"Release Sub","operationId":"release_sub_api_admin_subdomains__sid__release_post","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReasonIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/records":{"get":{"tags":["admin"],"summary":"Records","operationId":"records_api_admin_records_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/records/{rid}/resync":{"post":{"tags":["admin"],"summary":"Resync Record","operationId":"resync_record_api_admin_records__rid__resync_post","parameters":[{"name":"rid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Rid"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/jobs":{"get":{"tags":["admin"],"summary":"Jobs","operationId":"jobs_api_admin_jobs_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/jobs/{jid}/retry":{"post":{"tags":["admin"],"summary":"Retry Job","operationId":"retry_job_api_admin_jobs__jid__retry_post","parameters":[{"name":"jid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Jid"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/plans":{"get":{"tags":["admin"],"summary":"All Plans","operationId":"all_plans_api_admin_plans_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PlanOut"},"type":"array","title":"Response All Plans Api Admin Plans Get"}}}}}},"post":{"tags":["admin"],"summary":"Create Plan","operationId":"create_plan_api_admin_plans_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/plans/{pid}":{"patch":{"tags":["admin"],"summary":"Patch Plan","operationId":"patch_plan_api_admin_plans__pid__patch","parameters":[{"name":"pid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Pid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanPatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/subscriptions":{"get":{"tags":["admin"],"summary":"Subscriptions","operationId":"subscriptions_api_admin_subscriptions_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/usage":{"get":{"tags":["admin"],"summary":"Api Usage","operationId":"api_usage_api_admin_usage_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":1,"default":30,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/abuse":{"get":{"tags":["admin"],"summary":"Abuse","operationId":"abuse_api_admin_abuse_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/abuse/{rid}":{"patch":{"tags":["admin"],"summary":"Patch Abuse","operationId":"patch_abuse_api_admin_abuse__rid__patch","parameters":[{"name":"rid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Rid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbusePatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/reserved":{"get":{"tags":["admin"],"summary":"Reserved","operationId":"reserved_api_admin_reserved_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["admin"],"summary":"Add Reserved","operationId":"add_reserved_api_admin_reserved_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReservedIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/reserved/{rid}":{"delete":{"tags":["admin"],"summary":"Del Reserved","operationId":"del_reserved_api_admin_reserved__rid__delete","parameters":[{"name":"rid","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Rid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/audit":{"get":{"tags":["admin"],"summary":"Audit","operationId":"audit_api_admin_audit_get","parameters":[{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},{"name":"actor_user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Actor User Id"}},{"name":"target_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Since"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/email":{"get":{"tags":["admin"],"summary":"Email Cfg","operationId":"email_cfg_api_admin_email_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"put":{"tags":["admin"],"summary":"Put Email Cfg","operationId":"put_email_cfg_api_admin_email_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailCfgIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/email/test":{"post":{"tags":["admin"],"summary":"Test Email","operationId":"test_email_api_admin_email_test_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/settings":{"get":{"tags":["admin"],"summary":"Get Settings All","operationId":"get_settings_all_api_admin_settings_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/settings/{key}":{"put":{"tags":["admin"],"summary":"Put Setting","operationId":"put_setting_api_admin_settings__key__put","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Value"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"APIKeyCreatedOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"name":{"type":"string","title":"Name"},"prefix":{"type":"string","title":"Prefix"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At"},"request_count":{"type":"integer","title":"Request Count"},"revoked_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Revoked At"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"key":{"type":"string","title":"Key"}},"type":"object","required":["id","name","prefix","scopes","expires_at","last_used_at","request_count","revoked_at","created_at","key"],"title":"APIKeyCreatedOut"},"APIKeyIn":{"properties":{"name":{"type":"string","maxLength":100,"minLength":1,"title":"Name"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["name","scopes"],"title":"APIKeyIn"},"APIKeyOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"name":{"type":"string","title":"Name"},"prefix":{"type":"string","title":"Prefix"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At"},"request_count":{"type":"integer","title":"Request Count"},"revoked_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Revoked At"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","name","prefix","scopes","expires_at","last_used_at","request_count","revoked_at","created_at"],"title":"APIKeyOut"},"AbuseIn":{"properties":{"hostname":{"type":"string","maxLength":253,"minLength":3,"title":"Hostname"},"category":{"type":"string","title":"Category"},"description":{"type":"string","maxLength":5000,"minLength":10,"title":"Description"},"reporter_email":{"anyOf":[{"type":"string","format":"email"},{"type":"null"}],"title":"Reporter Email"}},"type":"object","required":["hostname","category","description"],"title":"AbuseIn"},"AbusePatch":{"properties":{"status":{"type":"string","enum":["open","investigating","resolved","dismissed"],"title":"Status"},"resolution":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Resolution"},"suspend_subdomain":{"type":"boolean","title":"Suspend Subdomain","default":false}},"type":"object","required":["status"],"title":"AbusePatch"},"AuditOut":{"properties":{"id":{"type":"integer","title":"Id"},"actor_user_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Actor User Id"},"actor_type":{"type":"string","title":"Actor Type"},"action":{"type":"string","title":"Action"},"target_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Type"},"target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"},"owner_user_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Owner User Id"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request Id"},"details":{"additionalProperties":true,"type":"object","title":"Details"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","actor_user_id","actor_type","action","target_type","target_id","owner_user_id","ip","request_id","details","created_at"],"title":"AuditOut"},"AvailabilityOut":{"properties":{"domain":{"type":"string","title":"Domain"},"label":{"type":"string","title":"Label"},"fqdn":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fqdn"},"available":{"type":"boolean","title":"Available"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"}},"type":"object","required":["domain","label","fqdn","available","reason"],"title":"AvailabilityOut"},"CodeIn":{"properties":{"code":{"type":"string","maxLength":8,"minLength":6,"title":"Code"}},"type":"object","required":["code"],"title":"CodeIn"},"ContactIn":{"properties":{"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"},"email":{"type":"string","format":"email","title":"Email"},"subject":{"type":"string","maxLength":200,"minLength":1,"title":"Subject"},"message":{"type":"string","maxLength":5000,"minLength":10,"title":"Message"}},"type":"object","required":["name","email","subject","message"],"title":"ContactIn"},"DeleteAccountIn":{"properties":{"password":{"type":"string","maxLength":256,"title":"Password"},"confirm":{"type":"string","const":"DELETE","title":"Confirm"}},"type":"object","required":["password","confirm"],"title":"DeleteAccountIn"},"DomainIn":{"properties":{"name":{"type":"string","maxLength":253,"minLength":3,"title":"Name"},"provider_id":{"type":"string","format":"uuid","title":"Provider Id"},"namespace_strategy":{"type":"string","enum":["shared_zone","delegated_zone"],"title":"Namespace Strategy","default":"shared_zone"},"registration_enabled":{"type":"boolean","title":"Registration Enabled","default":true},"min_label_length":{"type":"integer","title":"Min Label Length","default":3},"max_label_length":{"type":"integer","title":"Max Label Length","default":63},"allowed_record_types":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Record Types"},"description":{"type":"string","maxLength":500,"title":"Description","default":""}},"type":"object","required":["name","provider_id"],"title":"DomainIn"},"DomainOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"name":{"type":"string","title":"Name"},"registration_enabled":{"type":"boolean","title":"Registration Enabled"},"min_label_length":{"type":"integer","title":"Min Label Length"},"max_label_length":{"type":"integer","title":"Max Label Length"},"allowed_record_types":{"items":{"type":"string"},"type":"array","title":"Allowed Record Types"},"description":{"type":"string","title":"Description"}},"type":"object","required":["id","name","registration_enabled","min_label_length","max_label_length","allowed_record_types","description"],"title":"DomainOut"},"DomainPatch":{"properties":{"namespace_strategy":{"anyOf":[{"type":"string","enum":["shared_zone","delegated_zone"]},{"type":"null"}],"title":"Namespace Strategy"},"registration_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Registration Enabled"},"min_label_length":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Min Label Length"},"max_label_length":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Label Length"},"allowed_record_types":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Allowed Record Types"},"description":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string","enum":["active","disabled"]},{"type":"null"}],"title":"Status"}},"type":"object","title":"DomainPatch"},"EmailCfgIn":{"properties":{"host":{"type":"string","maxLength":253,"title":"Host"},"port":{"type":"integer","maximum":65535.0,"minimum":1.0,"title":"Port"},"username":{"type":"string","maxLength":253,"title":"Username","default":""},"password":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Password"},"from":{"type":"string","maxLength":320,"title":"From"},"starttls":{"type":"boolean","title":"Starttls","default":true}},"type":"object","required":["host","port","from"],"title":"EmailCfgIn"},"EmailIn":{"properties":{"email":{"type":"string","format":"email","title":"Email"}},"type":"object","required":["email"],"title":"EmailIn"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"JobOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"operation":{"type":"string","title":"Operation"},"record_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Record Id"},"record_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Label"},"status":{"type":"string","title":"Status"},"attempts":{"type":"integer","title":"Attempts"},"max_attempts":{"type":"integer","title":"Max Attempts"},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"completed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Completed At"}},"type":"object","required":["id","operation","record_id","status","attempts","max_attempts","last_error","created_at","completed_at"],"title":"JobOut"},"LoginIn":{"properties":{"email":{"type":"string","format":"email","title":"Email"},"password":{"type":"string","maxLength":256,"title":"Password"}},"type":"object","required":["email","password"],"title":"LoginIn"},"MfaDisableIn":{"properties":{"password":{"type":"string","maxLength":256,"title":"Password"},"code":{"type":"string","maxLength":8,"minLength":6,"title":"Code"}},"type":"object","required":["password","code"],"title":"MfaDisableIn"},"Page_SubdomainOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SubdomainOut"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"offset":{"type":"integer","title":"Offset"},"limit":{"type":"integer","title":"Limit"}},"type":"object","required":["items","total","offset","limit"],"title":"Page[SubdomainOut]"},"PasswordChangeIn":{"properties":{"current_password":{"type":"string","maxLength":256,"title":"Current Password"},"new_password":{"type":"string","maxLength":256,"title":"New Password"}},"type":"object","required":["current_password","new_password"],"title":"PasswordChangeIn"},"PlanIn":{"properties":{"code":{"type":"string","pattern":"^[a-z0-9_-]{2,32}$","title":"Code"},"name":{"type":"string","maxLength":64,"minLength":1,"title":"Name"},"description":{"type":"string","maxLength":500,"title":"Description","default":""},"price_cents":{"type":"integer","minimum":0.0,"title":"Price Cents"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","title":"Currency","default":"USD"},"interval":{"type":"string","enum":["month","year"],"title":"Interval","default":"month"},"max_subdomains":{"type":"integer","maximum":100000.0,"minimum":0.0,"title":"Max Subdomains"},"max_records_per_zone":{"type":"integer","maximum":100000.0,"minimum":0.0,"title":"Max Records Per Zone"},"api_requests_per_day":{"type":"integer","maximum":100000000.0,"minimum":0.0,"title":"Api Requests Per Day"},"history_days":{"type":"integer","maximum":3650.0,"minimum":1.0,"title":"History Days"},"features":{"items":{"type":"string"},"type":"array","title":"Features","default":[]},"is_active":{"type":"boolean","title":"Is Active","default":true},"is_default":{"type":"boolean","title":"Is Default","default":false},"sort_order":{"type":"integer","title":"Sort Order","default":0}},"type":"object","required":["code","name","price_cents","max_subdomains","max_records_per_zone","api_requests_per_day","history_days"],"title":"PlanIn"},"PlanOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"code":{"type":"string","title":"Code"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"price_cents":{"type":"integer","title":"Price Cents"},"currency":{"type":"string","title":"Currency"},"interval":{"type":"string","title":"Interval"},"max_subdomains":{"type":"integer","title":"Max Subdomains"},"max_records_per_zone":{"type":"integer","title":"Max Records Per Zone"},"api_requests_per_day":{"type":"integer","title":"Api Requests Per Day"},"history_days":{"type":"integer","title":"History Days"},"features":{"items":{"type":"string"},"type":"array","title":"Features"},"is_default":{"type":"boolean","title":"Is Default"}},"type":"object","required":["id","code","name","description","price_cents","currency","interval","max_subdomains","max_records_per_zone","api_requests_per_day","history_days","features","is_default"],"title":"PlanOut"},"PlanPatch":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Description"},"price_cents":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Price Cents"},"currency":{"anyOf":[{"type":"string","pattern":"^[A-Z]{3}$"},{"type":"null"}],"title":"Currency"},"interval":{"anyOf":[{"type":"string","enum":["month","year"]},{"type":"null"}],"title":"Interval"},"max_subdomains":{"anyOf":[{"type":"integer","maximum":100000.0,"minimum":0.0},{"type":"null"}],"title":"Max Subdomains"},"max_records_per_zone":{"anyOf":[{"type":"integer","maximum":100000.0,"minimum":0.0},{"type":"null"}],"title":"Max Records Per Zone"},"api_requests_per_day":{"anyOf":[{"type":"integer","maximum":100000000.0,"minimum":0.0},{"type":"null"}],"title":"Api Requests Per Day"},"history_days":{"anyOf":[{"type":"integer","maximum":3650.0,"minimum":1.0},{"type":"null"}],"title":"History Days"},"features":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Features"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"},"is_default":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Default"},"sort_order":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sort Order"}},"type":"object","title":"PlanPatch"},"ProfileIn":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Name"},"notify_dns_events":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Notify Dns Events"},"notify_security":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Notify Security"}},"type":"object","title":"ProfileIn"},"ProviderIn":{"properties":{"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"},"type":{"type":"string","enum":["cloudflare","memory"],"title":"Type"},"account_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Account Id"},"api_token":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Api Token"}},"type":"object","required":["name","type"],"title":"ProviderIn"},"ProviderPatch":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Name"},"account_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Account Id"},"is_active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Active"}},"type":"object","title":"ProviderPatch"},"ReasonIn":{"properties":{"reason":{"type":"string","maxLength":500,"minLength":3,"title":"Reason"}},"type":"object","required":["reason"],"title":"ReasonIn"},"RecordIn":{"properties":{"type":{"type":"string","enum":["A","AAAA","CNAME","TXT","MX","SRV","CAA"],"title":"Type"},"name":{"type":"string","maxLength":253,"title":"Name","default":"@"},"content":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Content"},"ttl":{"type":"integer","title":"Ttl","default":1},"priority":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Priority"},"proxied":{"type":"boolean","title":"Proxied","default":false},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data"},"comment":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Comment"}},"type":"object","required":["type"],"title":"RecordIn"},"RecordOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"subdomain_id":{"type":"string","format":"uuid","title":"Subdomain Id"},"type":{"type":"string","title":"Type"},"name":{"type":"string","title":"Name"},"content":{"type":"string","title":"Content"},"ttl":{"type":"integer","title":"Ttl"},"priority":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Priority"},"proxied":{"type":"boolean","title":"Proxied"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"},"status":{"type":"string","title":"Status"},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"propagated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Propagated At"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","subdomain_id","type","name","content","ttl","priority","proxied","data","comment","status","last_error","propagated_at","created_at","updated_at"],"title":"RecordOut"},"RecordUpdateIn":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":253},{"type":"null"}],"title":"Name"},"content":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Content"},"ttl":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttl"},"priority":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Priority"},"proxied":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Proxied"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data"},"comment":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Comment"}},"type":"object","title":"RecordUpdateIn"},"RegisterIn":{"properties":{"email":{"type":"string","format":"email","title":"Email"},"password":{"type":"string","maxLength":256,"minLength":1,"title":"Password"},"name":{"type":"string","maxLength":120,"title":"Name","default":""},"accept_terms":{"type":"boolean","title":"Accept Terms"}},"type":"object","required":["email","password","accept_terms"],"title":"RegisterIn"},"ReservedIn":{"properties":{"label":{"type":"string","maxLength":63,"minLength":1,"title":"Label"},"domain_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Domain Id"},"reason":{"type":"string","maxLength":255,"title":"Reason","default":""}},"type":"object","required":["label"],"title":"ReservedIn"},"ResetIn":{"properties":{"token":{"type":"string","maxLength":1000,"title":"Token"},"password":{"type":"string","maxLength":256,"title":"Password"}},"type":"object","required":["token","password"],"title":"ResetIn"},"SessionOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Agent"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"last_seen_at":{"type":"string","format":"date-time","title":"Last Seen At"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"},"current":{"type":"boolean","title":"Current","default":false}},"type":"object","required":["id","ip","user_agent","created_at","last_seen_at","expires_at"],"title":"SessionOut"},"SubdomainIn":{"properties":{"domain_id":{"type":"string","format":"uuid","title":"Domain Id"},"label":{"type":"string","maxLength":63,"minLength":1,"title":"Label"}},"type":"object","required":["domain_id","label"],"title":"SubdomainIn"},"SubdomainOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"label":{"type":"string","title":"Label"},"fqdn":{"type":"string","title":"Fqdn"},"domain_id":{"type":"string","format":"uuid","title":"Domain Id"},"status":{"type":"string","title":"Status"},"status_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Reason"},"namespace":{"type":"string","enum":["shared_zone","delegated_zone"],"title":"Namespace"},"name_servers":{"items":{"type":"string"},"type":"array","title":"Name Servers","default":[]},"record_count":{"type":"integer","title":"Record Count","default":0},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","label","fqdn","domain_id","status","status_reason","namespace","created_at"],"title":"SubdomainOut"},"TokenIn":{"properties":{"token":{"type":"string","maxLength":1000,"title":"Token"}},"type":"object","required":["token"],"title":"TokenIn"},"TokenRotateIn":{"properties":{"api_token":{"type":"string","maxLength":500,"minLength":10,"title":"Api Token"}},"type":"object","required":["api_token"],"title":"TokenRotateIn"},"UserOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"email":{"type":"string","title":"Email"},"name":{"type":"string","title":"Name"},"role":{"type":"string","title":"Role"},"status":{"type":"string","title":"Status"},"email_verified":{"type":"boolean","title":"Email Verified"},"mfa_enabled":{"type":"boolean","title":"Mfa Enabled"},"notify_dns_events":{"type":"boolean","title":"Notify Dns Events"},"notify_security":{"type":"boolean","title":"Notify Security"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","email","name","role","status","email_verified","mfa_enabled","notify_dns_events","notify_security","created_at"],"title":"UserOut"},"UserPatch":{"properties":{"status":{"anyOf":[{"type":"string","enum":["active","suspended","banned"]},{"type":"null"}],"title":"Status"},"reason":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Reason"},"role":{"anyOf":[{"type":"string","enum":["customer","admin","super_admin"]},{"type":"null"}],"title":"Role"},"plan_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Plan Id"},"name":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Name"}},"type":"object","title":"UserPatch"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WebhookIn":{"properties":{"url":{"type":"string","maxLength":2048,"title":"Url"},"events":{"items":{"type":"string","enum":["dns.record.synced","dns.record.failed"]},"type":"array","title":"Events"}},"type":"object","required":["url","events"],"title":"WebhookIn"},"WebhookOut":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"url":{"type":"string","title":"Url"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"is_active":{"type":"boolean","title":"Is Active"},"last_delivery_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Delivery At"},"last_status":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Status"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","url","events","is_active","last_delivery_at","last_status","created_at"],"title":"WebhookOut"}}}}