{"openapi":"3.1.0","info":{"title":"Free Name Finder API","version":"1.13.0","summary":"Source-backed domain, pricing, aftermarket, and public-identity evidence.","description":"API v1 preserves source scope and uncertainty. A not-found registration or public profile is never an unsupported claim of availability."},"servers":[{"url":"/","description":"Current Free Name Finder service"}],"tags":[{"name":"Service"},{"name":"Accounts"},{"name":"Projects"},{"name":"Domains"},{"name":"Identities"},{"name":"Catalog"},{"name":"Evidence"},{"name":"Operations"}],"paths":{"/api/v1/openapi.json":{"get":{"tags":["Service"],"operationId":"getOpenApiDocument","summary":"Get this OpenAPI contract","responses":{"200":{"description":"OpenAPI 3.1 document.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenApiDocument"}}}}}}},"/api/v1/health":{"get":{"tags":["Service"],"operationId":"getHealth","summary":"Check service health and schema versions","responses":{"200":{"description":"Service is ready.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Health"}}}}}}},"/api/v1/capabilities":{"get":{"tags":["Evidence"],"operationId":"getCapabilities","summary":"List enabled search surfaces and provider states","responses":{"200":{"description":"Current capabilities.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Capabilities"}}}}}}},"/api/v1/sources":{"get":{"tags":["Evidence"],"operationId":"getSources","summary":"Explain every live, configured, researched, or restricted source","responses":{"200":{"description":"Evidence source catalog.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sources"}}}}}}},"/api/v1/admin/operations":{"get":{"tags":["Operations"],"operationId":"getAdminOperations","summary":"Read sanitized live and historical service operations","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Administrator operations snapshot.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminOperations"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"Administrator access required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/admin/providers/{providerId}/state":{"parameters":[{"name":"providerId","in":"path","required":true,"schema":{"type":"string"}}],"put":{"tags":["Operations"],"operationId":"setProviderState","summary":"Pause or resume one provider","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["paused"],"additionalProperties":false,"properties":{"paused":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Provider state changed.","content":{"application/json":{"schema":{"type":"object","required":["providerId","paused"],"additionalProperties":false,"properties":{"providerId":{"type":"string"},"paused":{"type":"boolean"}}}}}},"400":{"description":"Invalid provider state.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"Administrator access required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Provider not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/auth/session":{"get":{"tags":["Accounts"],"operationId":"getSession","summary":"Get the current optional account session","responses":{"200":{"description":"Current authentication and project summaries.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSession"}}}}}}},"/api/v1/auth/register":{"post":{"tags":["Accounts"],"operationId":"registerAccount","summary":"Create a local alpha account","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Credentials"}}}},"responses":{"201":{"description":"Account created and signed in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSession"}}}},"400":{"description":"Invalid credentials.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Username already exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"Too many attempts.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/auth/login":{"post":{"tags":["Accounts"],"operationId":"loginAccount","summary":"Sign in to a local alpha account","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Credentials"}}}},"responses":{"200":{"description":"Signed in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSession"}}}},"401":{"description":"Invalid credentials.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"Too many attempts.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/auth/logout":{"post":{"tags":["Accounts"],"operationId":"logoutAccount","summary":"End the current session","responses":{"200":{"description":"Signed out.","content":{"application/json":{"schema":{"type":"object","required":["authenticated"],"properties":{"authenticated":{"const":false}},"additionalProperties":false}}}}}}},"/api/v1/account/export":{"get":{"tags":["Accounts"],"operationId":"exportAccount","summary":"Export lists, watches, changes, and search history without credentials or sessions","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Portable account export.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountExport"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/account/history":{"get":{"tags":["Accounts"],"operationId":"getSearchHistory","summary":"Get synced search history","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Search history.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchHistory"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"put":{"tags":["Accounts"],"operationId":"mergeSearchHistory","summary":"Merge browser search history into the account","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchHistoryWrite"}}}},"responses":{"200":{"description":"Merged search history.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchHistory"}}}},"400":{"description":"Invalid search history.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"delete":{"tags":["Accounts"],"operationId":"clearSearchHistory","summary":"Clear synced search history","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Search history cleared.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteResult"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/account/settings":{"get":{"tags":["Accounts"],"operationId":"getAccountSettings","summary":"Get monitoring preferences","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Current account settings.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountSettingsEnvelope"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"patch":{"tags":["Accounts"],"operationId":"updateAccountSettings","summary":"Update monitoring preferences","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountSettingsWrite"}}}},"responses":{"200":{"description":"Updated account settings.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountSettingsEnvelope"}}}},"400":{"description":"Invalid settings.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/account/password":{"put":{"tags":["Accounts"],"operationId":"changeAccountPassword","summary":"Change the password and revoke every other session","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordChange"}}}},"responses":{"200":{"description":"Password changed and session rotated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSession"}}}},"400":{"description":"Invalid password.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Current password is incorrect.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/account":{"delete":{"tags":["Accounts"],"operationId":"deleteAccount","summary":"Permanently delete the account and all synced data","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountDelete"}}}},"responses":{"200":{"description":"Account deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteResult"}}}},"400":{"description":"Username confirmation is incorrect.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Current password is incorrect.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/projects":{"get":{"tags":["Projects"],"operationId":"listProjects","summary":"List projects owned by the signed-in account","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Project summaries.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectList"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"post":{"tags":["Projects"],"operationId":"createProject","summary":"Create or adopt a project","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectWrite"}}}},"responses":{"201":{"description":"Project created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectEnvelope"}}}},"400":{"description":"Invalid project.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/projects/{projectId}":{"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"get":{"tags":["Projects"],"operationId":"getProject","summary":"Get one owned project","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Complete project.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectEnvelope"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Project not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"put":{"tags":["Projects"],"operationId":"updateProject","summary":"Save a versioned project","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectWrite"}}}},"responses":{"200":{"description":"Project saved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectEnvelope"}}}},"400":{"description":"Invalid project.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Project version conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"delete":{"tags":["Projects"],"operationId":"deleteProject","summary":"Delete an owned project","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Project deleted.","content":{"application/json":{"schema":{"type":"object","required":["deleted"],"properties":{"deleted":{"const":true}},"additionalProperties":false}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Project not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/watches":{"get":{"tags":["Projects"],"operationId":"listWatches","summary":"List durable account watches and recent changes","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Account watches.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchList"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"post":{"tags":["Projects"],"operationId":"createWatch","summary":"Create a domain or identity watch and record its baseline","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchWrite"}}}},"responses":{"201":{"description":"Watch created and checked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchCheckEnvelope"}}}},"400":{"description":"Invalid watch.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/watches/{watchId}":{"parameters":[{"name":"watchId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"put":{"tags":["Projects"],"operationId":"updateWatch","summary":"Change cadence or pause a watch","security":[{"cookieAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchUpdate"}}}},"responses":{"200":{"description":"Watch updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchEnvelope"}}}},"400":{"description":"Invalid watch.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Watch not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"delete":{"tags":["Projects"],"operationId":"deleteWatch","summary":"Stop and delete a watch","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Watch deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteResult"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Watch not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/watches/{watchId}/check":{"parameters":[{"name":"watchId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"post":{"tags":["Projects"],"operationId":"checkWatch","summary":"Refresh one watched asset now","security":[{"cookieAuth":[]}],"responses":{"200":{"description":"Watch checked.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchCheckEnvelope"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Watch not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"502":{"description":"Watch check failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/changes":{"get":{"tags":["Projects"],"operationId":"listChanges","summary":"List material watched-asset changes and current watches","security":[{"cookieAuth":[]}],"parameters":[{"name":"unread","in":"query","schema":{"type":"boolean","default":false}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}}],"responses":{"200":{"description":"Account change inbox.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeList"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/changes/read":{"post":{"tags":["Projects"],"operationId":"markChangesRead","summary":"Mark selected or all change events as read","security":[{"cookieAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChangesRead"}}}},"responses":{"200":{"description":"Read state updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChangesResult"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/deliveries":{"get":{"tags":["Projects"],"operationId":"listDeliveries","summary":"List durable outbound change-delivery jobs and receipts","security":[{"cookieAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}}],"responses":{"200":{"description":"Account delivery history.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryList"}}}},"401":{"description":"Authentication required.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/check":{"get":{"tags":["Domains"],"operationId":"checkDomain","summary":"Check one complete domain","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string","examples":["example.com"]}},{"name":"mode","in":"query","schema":{"type":"string","enum":["full","registry"],"default":"full"}}],"responses":{"200":{"description":"Reconciled evidence for the domain.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainResult"}}}},"400":{"description":"The supplied name is invalid for this operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"502":{"description":"A required upstream lookup could not be completed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/explore":{"get":{"tags":["Domains"],"operationId":"exploreName","summary":"Stream one name across a bounded extension set","description":"Returns Server-Sent Events named meta, result, done, or problem. Each result event contains a DomainResult.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","examples":["northstar"]}},{"name":"group","in":"query","schema":{"type":"string","enum":["popular","startup","classic"],"default":"popular"}},{"name":"tlds","in":"query","description":"Optional comma-separated override of 1–32 extensions.","schema":{"type":"string"}},{"name":"mode","in":"query","schema":{"type":"string","enum":["full","registry"],"default":"full"}}],"responses":{"200":{"description":"Server-Sent Event stream.","content":{"text/event-stream":{"schema":{"type":"string"}}}},"400":{"description":"The supplied name or extension set is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/identities/check":{"get":{"tags":["Identities"],"operationId":"checkIdentity","summary":"Resolve one name in a connected identity namespace","parameters":[{"name":"namespace","in":"query","required":true,"schema":{"type":"string","enum":["github","bluesky","youtube"]}},{"name":"name","in":"query","required":true,"schema":{"type":"string","examples":["octocat"]}}],"responses":{"200":{"description":"A scoped public-identity observation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityResult"}}}},"400":{"description":"The supplied name is invalid for this operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"502":{"description":"A required upstream lookup could not be completed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/extensions":{"get":{"tags":["Catalog"],"operationId":"getExtensions","summary":"Get the live extension catalog and relevance ranking","parameters":[{"name":"q","in":"query","schema":{"type":"string"}},{"name":"group","in":"query","schema":{"type":"string"}},{"name":"category","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Ranked extension catalog.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtensionCatalog"}}}},"502":{"description":"The upstream extension catalog is unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}},"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"fnf_session"}},"schemas":{"OpenApiDocument":{"type":"object","required":["openapi","info","paths","components"],"additionalProperties":true},"Problem":{"type":"object","required":["error"],"properties":{"error":{"type":"string"},"message":{"type":"string"}},"additionalProperties":false},"Health":{"type":"object","required":["ok","service","apiVersion","resultSchemaVersion","phase"],"additionalProperties":false,"properties":{"ok":{"const":true},"service":{"const":"free-name-finder"},"apiVersion":{"const":"v1"},"resultSchemaVersion":{"type":"integer","minimum":1},"phase":{"type":"string"}}},"Credentials":{"type":"object","required":["username","password"],"additionalProperties":false,"properties":{"username":{"type":"string","minLength":3,"maxLength":32},"password":{"type":"string","minLength":10,"maxLength":128,"format":"password"}}},"Account":{"type":"object","required":["id","username","role","createdAt"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"username":{"type":"string"},"role":{"type":"string","enum":["member","admin"]},"createdAt":{"type":"string","format":"date-time"}}},"ProjectSummary":{"type":"object","required":["id","name","version","nameCount","assetCount","createdAt","updatedAt"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"version":{"type":"integer","minimum":1},"nameCount":{"type":"integer","minimum":0},"assetCount":{"type":"integer","minimum":0},"createdAt":{"type":["string","null"],"format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}}},"Project":{"type":"object","required":["id","name","version","nameCount","assetCount","createdAt","updatedAt","workspace"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"version":{"type":"integer","minimum":1},"nameCount":{"type":"integer","minimum":0},"assetCount":{"type":"integer","minimum":0},"createdAt":{"type":["string","null"],"format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"workspace":{"type":"object","additionalProperties":true}}},"ProjectWrite":{"type":"object","required":["workspace"],"additionalProperties":false,"properties":{"expectedVersion":{"type":"integer","minimum":1},"workspace":{"type":"object","additionalProperties":true}}},"ProjectList":{"type":"object","required":["projects"],"additionalProperties":false,"properties":{"projects":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSummary"}}}},"ProjectEnvelope":{"type":"object","required":["project"],"additionalProperties":false,"properties":{"project":{"$ref":"#/components/schemas/Project"}}},"WatchEvent":{"type":"object","required":["eventType","previousStatus","status","summary","sources","observedAt","readAt"],"additionalProperties":false,"properties":{"eventType":{"type":"string","enum":["baseline","change"]},"previousStatus":{"type":["string","null"]},"status":{"type":"string"},"summary":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}},"observedAt":{"type":"string","format":"date-time"},"readAt":{"type":["string","null"],"format":"date-time"}}},"WatchSnapshot":{"type":["object","null"],"additionalProperties":false,"properties":{"status":{"type":"string"},"grade":{"type":"string"},"summary":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}},"observedAt":{"type":"string","format":"date-time"}}},"Watch":{"type":"object","required":["id","projectId","kind","namespace","subject","cadenceHours","enabled","lastStatus","lastCheckedAt","nextCheckAt","lastError","snapshot","events","createdAt","updatedAt"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"projectId":{"type":["string","null"],"format":"uuid"},"kind":{"type":"string","enum":["domain","identity"]},"namespace":{"type":"string"},"subject":{"type":"string"},"cadenceHours":{"type":"integer","enum":[6,12,24,72,168]},"enabled":{"type":"boolean"},"lastStatus":{"type":["string","null"]},"lastCheckedAt":{"type":["string","null"],"format":"date-time"},"nextCheckAt":{"type":"string","format":"date-time"},"lastError":{"type":["string","null"]},"snapshot":{"$ref":"#/components/schemas/WatchSnapshot"},"events":{"type":"array","items":{"$ref":"#/components/schemas/WatchEvent"}},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}}},"WatchWrite":{"type":"object","required":["kind","subject"],"additionalProperties":false,"properties":{"kind":{"type":"string","enum":["domain","identity"]},"namespace":{"type":"string"},"subject":{"type":"string"},"projectId":{"type":["string","null"],"format":"uuid"},"cadenceHours":{"type":"integer","enum":[6,12,24,72,168]}}},"WatchUpdate":{"type":"object","additionalProperties":false,"properties":{"cadenceHours":{"type":"integer","enum":[6,12,24,72,168]},"enabled":{"type":"boolean"}}},"WatchList":{"type":"object","required":["watches"],"additionalProperties":false,"properties":{"watches":{"type":"array","items":{"$ref":"#/components/schemas/Watch"}}}},"WatchEnvelope":{"type":"object","required":["watch"],"additionalProperties":false,"properties":{"watch":{"$ref":"#/components/schemas/Watch"}}},"WatchCheckEnvelope":{"type":"object","required":["watch","changed"],"additionalProperties":false,"properties":{"watch":{"$ref":"#/components/schemas/Watch"},"changed":{"type":"boolean"}}},"Change":{"type":"object","required":["id","watchId","projectId","kind","namespace","subject","previousStatus","status","summary","sources","observedAt","readAt"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"watchId":{"type":"string","format":"uuid"},"projectId":{"type":["string","null"],"format":"uuid"},"kind":{"type":"string","enum":["domain","identity"]},"namespace":{"type":"string"},"subject":{"type":"string"},"previousStatus":{"type":["string","null"]},"status":{"type":"string"},"summary":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}},"observedAt":{"type":"string","format":"date-time"},"readAt":{"type":["string","null"],"format":"date-time"}}},"ChangeList":{"type":"object","required":["unreadCount","changes","watches"],"additionalProperties":false,"properties":{"unreadCount":{"type":"integer","minimum":0},"changes":{"type":"array","items":{"$ref":"#/components/schemas/Change"}},"watches":{"type":"array","items":{"$ref":"#/components/schemas/Watch"}}}},"MarkChangesRead":{"type":"object","additionalProperties":false,"properties":{"eventIds":{"type":"array","maxItems":100,"items":{"type":"string","format":"uuid"}}}},"MarkChangesResult":{"type":"object","required":["marked","readAt","unreadCount"],"additionalProperties":false,"properties":{"marked":{"type":"integer","minimum":0},"readAt":{"type":"string","format":"date-time"},"unreadCount":{"type":"integer","minimum":0}}},"DeleteResult":{"type":"object","required":["deleted"],"additionalProperties":false,"properties":{"deleted":{"const":true}}},"AccountSettings":{"type":"object","required":["changeAlerts","outboundChangeAlerts","defaultWatchCadenceHours","updatedAt"],"additionalProperties":false,"properties":{"changeAlerts":{"type":"boolean"},"outboundChangeAlerts":{"type":"boolean"},"defaultWatchCadenceHours":{"type":"integer","enum":[6,12,24,72,168]},"updatedAt":{"type":"string","format":"date-time"}}},"AccountSettingsEnvelope":{"type":"object","required":["settings"],"additionalProperties":false,"properties":{"settings":{"$ref":"#/components/schemas/AccountSettings"}}},"AccountSettingsWrite":{"type":"object","additionalProperties":false,"properties":{"changeAlerts":{"type":"boolean"},"outboundChangeAlerts":{"type":"boolean"},"defaultWatchCadenceHours":{"type":"integer","enum":[6,12,24,72,168]}}},"PasswordChange":{"type":"object","required":["currentPassword","newPassword"],"additionalProperties":false,"properties":{"currentPassword":{"type":"string","format":"password"},"newPassword":{"type":"string","minLength":10,"maxLength":128,"format":"password"}}},"AccountDelete":{"type":"object","required":["currentPassword","confirmation"],"additionalProperties":false,"properties":{"currentPassword":{"type":"string","format":"password"},"confirmation":{"type":"string"}}},"AuthSession":{"type":"object","required":["authenticated","account","settings","projects"],"additionalProperties":false,"properties":{"authenticated":{"type":"boolean"},"account":{"anyOf":[{"$ref":"#/components/schemas/Account"},{"type":"null"}]},"settings":{"anyOf":[{"$ref":"#/components/schemas/AccountSettings"},{"type":"null"}]},"projects":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSummary"}}}},"SearchHistoryEntry":{"type":"object","required":["query","kind","searchedAt"],"additionalProperties":false,"properties":{"query":{"type":"string","minLength":2,"maxLength":253},"kind":{"type":"string","enum":["name","domain"]},"searchedAt":{"type":"string","format":"date-time"}}},"SearchHistory":{"type":"object","required":["entries"],"additionalProperties":false,"properties":{"entries":{"type":"array","maxItems":500,"items":{"$ref":"#/components/schemas/SearchHistoryEntry"}}}},"SearchHistoryWrite":{"type":"object","required":["entries"],"additionalProperties":false,"properties":{"entries":{"type":"array","maxItems":500,"items":{"$ref":"#/components/schemas/SearchHistoryEntry"}}}},"AccountExport":{"type":"object","required":["schemaVersion","exportedAt","account","settings","projects","watches","deliveries","searchHistory"],"additionalProperties":false,"properties":{"schemaVersion":{"const":4},"exportedAt":{"type":"string","format":"date-time"},"account":{"$ref":"#/components/schemas/Account"},"settings":{"$ref":"#/components/schemas/AccountSettings"},"projects":{"type":"array","items":{"$ref":"#/components/schemas/Project"}},"watches":{"type":"array","items":{"$ref":"#/components/schemas/Watch"}},"deliveries":{"type":"array","items":{"$ref":"#/components/schemas/Delivery"}},"searchHistory":{"type":"array","maxItems":500,"items":{"$ref":"#/components/schemas/SearchHistoryEntry"}}}},"DeliveryAttempt":{"type":"object","required":["attemptNumber","state","errorCode","detail","receiptId","attemptedAt","completedAt"],"additionalProperties":false,"properties":{"attemptNumber":{"type":"integer","minimum":1},"state":{"type":"string","enum":["delivered","retry","failed"]},"errorCode":{"type":["string","null"]},"detail":{"type":["string","null"]},"receiptId":{"type":["string","null"]},"attemptedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time"}}},"Delivery":{"type":"object","required":["id","eventId","adapterId","state","attempts","nextAttemptAt","lastError","receiptId","deliveredAt","createdAt","updatedAt","history"],"additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid"},"eventId":{"type":"string","format":"uuid"},"adapterId":{"type":"string"},"state":{"type":"string","enum":["pending","retry","delivered","failed","cancelled"]},"attempts":{"type":"integer","minimum":0},"nextAttemptAt":{"type":"string","format":"date-time"},"lastError":{"type":["string","null"]},"receiptId":{"type":["string","null"]},"deliveredAt":{"type":["string","null"],"format":"date-time"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"history":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryAttempt"}}}},"DeliveryList":{"type":"object","required":["deliveries"],"additionalProperties":false,"properties":{"deliveries":{"type":"array","items":{"$ref":"#/components/schemas/Delivery"}}}},"Cache":{"type":"object","required":["hit","ageMs"],"properties":{"hit":{"type":"boolean"},"ageMs":{"type":"number","minimum":0}},"additionalProperties":false},"Domain":{"type":"object","required":["input","ascii","unicode","tld"],"additionalProperties":false,"properties":{"input":{"type":"string"},"ascii":{"type":"string"},"unicode":{"type":"string"},"tld":{"type":"string"}}},"Assurance":{"type":"object","required":["level","label","meaning"],"additionalProperties":false,"properties":{"level":{"type":"string","enum":["authoritative_positive","authoritative_negative","retail_confirmation","unverified"]},"label":{"type":"string"},"meaning":{"type":"string"}}},"Observation":{"type":"object","required":["providerId","kind","source","outcome","result","authority","checkedAt"],"additionalProperties":true,"properties":{"providerId":{"type":"string"},"kind":{"type":"string"},"source":{"type":"string"},"outcome":{"type":"string","enum":["registered","registration_not_found","registrable","reserved","premium","not_available","standard_price","pricing_unavailable","aftermarket_listed","aftermarket_not_found","dns_records_present","dns_records_absent","unsupported","timeout","rate_limited","malformed_response","request_failed"]},"result":{"type":"string"},"authority":{"type":"string"},"checkedAt":{"type":"string","format":"date-time"},"referenceUrl":{"type":"string","format":"uri"},"latencyMs":{"type":"number","minimum":0},"data":{"type":"object","additionalProperties":true}}},"Projection":{"type":"object","required":["years","billedYears","total","complete"],"additionalProperties":false,"properties":{"years":{"type":"integer","minimum":1},"billedYears":{"type":"integer","minimum":1},"total":{"type":["number","null"],"minimum":0},"complete":{"type":"boolean"}}},"Offer":{"type":"object","required":["providerId","providerName","basis","currency","registration","renewal","transfer","minimumYears","projections"],"additionalProperties":true,"properties":{"providerId":{"type":"string"},"providerName":{"type":"string"},"basis":{"type":"string","enum":["exact_domain","standard_tld"]},"currency":{"type":"string"},"registration":{"type":["number","null"],"minimum":0},"renewal":{"type":["number","null"],"minimum":0},"transfer":{"type":["number","null"],"minimum":0},"minimumYears":{"type":"integer","minimum":1},"premium":{"type":"boolean"},"observedAt":{"type":"string","format":"date-time"},"projections":{"type":"array","items":{"$ref":"#/components/schemas/Projection"}}}},"BestOffer":{"type":["object","null"],"required":["providerId","providerName","basis","total"],"additionalProperties":false,"properties":{"providerId":{"type":"string"},"providerName":{"type":"string"},"basis":{"type":"string"},"total":{"type":"number","minimum":0}}},"Comparison":{"type":"object","required":["horizons","currencies"],"additionalProperties":false,"properties":{"horizons":{"type":"array","items":{"type":"integer"}},"currencies":{"type":"array","items":{"type":"object","required":["currency","horizons"],"additionalProperties":false,"properties":{"currency":{"type":"string"},"horizons":{"type":"array","items":{"type":"object","required":["years","best","exactQuoteCount","estimateCount"],"additionalProperties":false,"properties":{"years":{"type":"integer"},"best":{"$ref":"#/components/schemas/BestOffer"},"exactQuoteCount":{"type":"integer","minimum":0},"estimateCount":{"type":"integer","minimum":0}}}}}}}}},"AftermarketListing":{"type":"object","required":["providerId","providerName","marketplace","domain","listingId","listingType","currency","price","currentBid","minimumOffer","bidCount","auctionEndsAt","observedAt","url","environment","disclosure"],"additionalProperties":false,"properties":{"providerId":{"type":"string"},"providerName":{"type":"string"},"marketplace":{"type":"string"},"domain":{"type":"string"},"listingId":{"type":["string","null"]},"listingType":{"type":"string","enum":["auction","closeout","fixed_price","make_offer","lease_to_own","broker","unknown"]},"currency":{"type":"string"},"price":{"type":["number","null"]},"currentBid":{"type":["number","null"]},"minimumOffer":{"type":["number","null"]},"bidCount":{"type":["integer","null"]},"auctionEndsAt":{"type":["string","null"],"format":"date-time"},"observedAt":{"type":"string","format":"date-time"},"url":{"type":["string","null"],"format":"uri"},"environment":{"type":"string"},"disclosure":{"type":"string"}}},"EvidenceSummary":{"type":"object","required":["grade","supportingSources","observedSources","contradictionCount","providers","meaning"],"additionalProperties":false,"properties":{"grade":{"type":"string","enum":["corroborated","confirmed","provisional","scoped_absence","conflicted","unverified"]},"supportingSources":{"type":"integer","minimum":0},"observedSources":{"type":"integer","minimum":0},"contradictionCount":{"type":"integer","minimum":0},"providers":{"type":"array","items":{"type":"string"}},"meaning":{"type":"string"}}},"DomainResult":{"type":"object","required":["schemaVersion","domain","status","verification","assurance","summary","evidenceSummary","commercial","conflicts","observations","offers","comparison","aftermarket","aftermarketSummary","checkedAt","durationMs","cache","limitations"],"additionalProperties":true,"properties":{"schemaVersion":{"const":1},"domain":{"$ref":"#/components/schemas/Domain"},"status":{"type":"string","enum":["registered","registrable","not_registrable","probably_unregistered","indeterminate"]},"verification":{"type":"string"},"assurance":{"$ref":"#/components/schemas/Assurance"},"summary":{"type":"string"},"evidenceSummary":{"$ref":"#/components/schemas/EvidenceSummary"},"registration":{"type":"object","additionalProperties":true},"commercial":{"type":"object","required":["premium"],"properties":{"premium":{"type":"boolean"}},"additionalProperties":false},"conflicts":{"type":"array","items":{"type":"string"}},"observations":{"type":"array","items":{"$ref":"#/components/schemas/Observation"}},"offers":{"type":"array","items":{"$ref":"#/components/schemas/Offer"}},"comparison":{"$ref":"#/components/schemas/Comparison"},"aftermarket":{"type":"array","items":{"$ref":"#/components/schemas/AftermarketListing"}},"aftermarketSummary":{"type":"object","required":["count","byType","marketplaces"],"properties":{"count":{"type":"integer"},"byType":{"type":"object","additionalProperties":{"type":"integer"}},"marketplaces":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"checkedAt":{"type":"string","format":"date-time"},"durationMs":{"type":"number","minimum":0},"cache":{"$ref":"#/components/schemas/Cache"},"limitations":{"type":"array","items":{"type":"string"}}}},"IdentityCandidate":{"type":"object","required":["input","normalized","display"],"properties":{"input":{"type":"string"},"normalized":{"type":"string"},"display":{"type":"string"}},"additionalProperties":false},"IdentityObservation":{"type":"object","required":["providerId","namespace","candidate","outcome","authority","method","checkedAt","documentationUrl","limitations"],"additionalProperties":true,"properties":{"providerId":{"type":"string"},"namespace":{"type":"string"},"candidate":{"$ref":"#/components/schemas/IdentityCandidate"},"outcome":{"type":"string","enum":["claimed","not_found","claimable","reserved","invalid","restricted","rate_limited","unknown"]},"authority":{"type":"string"},"method":{"type":"string"},"checkedAt":{"type":"string","format":"date-time"},"documentationUrl":{"type":["string","null"],"format":"uri"},"limitations":{"type":"array","items":{"type":"string"}},"latencyMs":{"type":"number"},"canonicalUrl":{"type":"string","format":"uri"},"profile":{"type":"object","additionalProperties":true},"data":{"type":"object","additionalProperties":true}}},"IdentityResult":{"type":"object","required":["schemaVersion","namespace","candidate","status","verification","claimability","summary","evidenceSummary","observations","checkedAt","canonicalUrl","profile","cache"],"additionalProperties":false,"properties":{"schemaVersion":{"const":1},"namespace":{"type":"string"},"candidate":{"$ref":"#/components/schemas/IdentityCandidate"},"status":{"type":"string","enum":["claimed","not_found","claimable","reserved","invalid","restricted","rate_limited","unknown"]},"verification":{"type":"string"},"claimability":{"type":"string","enum":["confirmed","not_inferred"]},"summary":{"type":"string"},"evidenceSummary":{"$ref":"#/components/schemas/EvidenceSummary"},"observations":{"type":"array","items":{"$ref":"#/components/schemas/IdentityObservation"}},"checkedAt":{"type":"string","format":"date-time"},"canonicalUrl":{"type":["string","null"],"format":"uri"},"profile":{"type":["object","null"],"additionalProperties":true},"cache":{"$ref":"#/components/schemas/Cache"}}},"Provider":{"type":"object","required":["id","name","state"],"additionalProperties":true,"properties":{"id":{"type":"string"},"name":{"type":"string"},"kind":{"type":["string","null"]},"state":{"type":"string"},"authority":{"type":["string","null"]},"confirms":{"type":"array","items":{"type":"string"}},"doesNotConfirm":{"type":"array","items":{"type":"string"}},"method":{"type":["string","null"]},"description":{"type":["string","null"]},"freshness":{"type":["string","null"]},"documentationUrl":{"type":["string","null"],"format":"uri"},"creditUrl":{"type":["string","null"],"format":"uri"},"configuration":{"type":["string","null"]},"runtime":{"type":"object","additionalProperties":true}}},"Capabilities":{"type":"object","required":["apiVersion","resultSchemaVersion","exactDomain","accounts","exploration","identityNamespaces","providers"],"additionalProperties":false,"properties":{"apiVersion":{"const":"v1"},"resultSchemaVersion":{"type":"integer"},"exactDomain":{"type":"boolean"},"accounts":{"type":"object","additionalProperties":true},"exploration":{"type":"object","additionalProperties":true},"identityNamespaces":{"type":"array","items":{"type":"object","additionalProperties":true}},"providers":{"type":"array","items":{"$ref":"#/components/schemas/Provider"}}}},"SourceSummary":{"type":"object","required":["total","live","credentialReady","researched","restricted","healthy","degraded","waiting"],"additionalProperties":false,"properties":{"total":{"type":"integer","minimum":0},"live":{"type":"integer","minimum":0},"credentialReady":{"type":"integer","minimum":0},"researched":{"type":"integer","minimum":0},"restricted":{"type":"integer","minimum":0},"healthy":{"type":"integer","minimum":0},"degraded":{"type":"integer","minimum":0},"waiting":{"type":"integer","minimum":0}}},"Sources":{"type":"object","required":["updatedAt","principles","api","summary","providers"],"additionalProperties":false,"properties":{"updatedAt":{"type":"string","format":"date"},"principles":{"type":"array","items":{"type":"string"}},"api":{"type":"object","required":["version","stability","openapiUrl"],"additionalProperties":false,"properties":{"version":{"type":"string"},"stability":{"type":"string"},"openapiUrl":{"type":"string"}}},"summary":{"$ref":"#/components/schemas/SourceSummary"},"providers":{"type":"array","items":{"$ref":"#/components/schemas/Provider"}}}},"AdminOperations":{"type":"object","required":["current","history"],"additionalProperties":false,"properties":{"current":{"type":"object","additionalProperties":true},"history":{"type":"array","items":{"type":"object","additionalProperties":true}}}},"ExtensionCatalog":{"type":"object","required":["updatedAt","source","documentationUrl","count","taxonomy","extensions"],"additionalProperties":false,"properties":{"updatedAt":{"type":"string","format":"date-time"},"source":{"type":"string"},"documentationUrl":{"type":"string","format":"uri"},"count":{"type":"integer","minimum":0},"taxonomy":{"type":"object","additionalProperties":true},"extensions":{"type":"array","items":{"type":"object","additionalProperties":true}}}}}}}