openapi: 3.1.0 info: title: CompleteDNS API v1 description: >- The CompleteDNS API v1 returns the historical nameserver record for a domain (legacy version). The service tracks nameserver changes and domain drops and returns chronologically ordered events for a queried domain. Authentication is via an API key passed as a query string parameter. CompleteDNS recommends using the v2 API for new integrations. version: v1 contact: name: CompleteDNS url: https://completedns.com/contact termsOfService: https://completedns.com/terms externalDocs: description: CompleteDNS API v1 Documentation url: https://completedns.com/api/documentation/v1 servers: - url: https://api.completedns.com/v1 description: CompleteDNS v1 production API tags: - name: NS History description: Nameserver history (legacy) for a domain security: - apiKey: [] paths: /ns-history/{domain}: get: operationId: getNsHistory summary: Get nameserver history for a domain description: >- Returns the full history of nameserver changes and drop events for the requested domain. Response includes drop count, change count, years tracked, TLD support flag, and a chronologically ordered list of events. tags: - NS History parameters: - name: domain in: path required: true description: The fully qualified domain to look up. schema: type: string example: youtube.com - name: key in: query required: true description: API key issued in the CompleteDNS account API section. schema: type: string responses: '200': description: Nameserver history record for the domain. headers: requestsLeft: description: Number of API requests remaining in the current quota. schema: type: integer content: application/json: schema: $ref: '#/components/schemas/NsHistoryResponse' '400': description: Invalid domain. '401': description: Missing or invalid API key. '403': description: IP restriction or quota exhausted. '404': description: Domain not tracked. components: securitySchemes: apiKey: type: apiKey in: query name: key schemas: NsHistoryResponse: type: object properties: drops: type: integer description: Total nameserver removal events recorded. changes: type: integer description: Total nameserver change events recorded. years: type: number description: Years of history tracked for the domain. supported: type: boolean description: Whether the queried TLD is supported. data: type: array items: $ref: '#/components/schemas/NsEvent' NsEvent: type: object properties: type: type: string enum: - started_tracking - ns_change - new_domain - deleted_domain date: type: string nameservers: type: array items: type: object properties: added_ns: type: string deleted_ns: type: string