Cyble Domain API

The domain API from Cyble — 8 operation(s) for domain.

Operations 8

POST /v1/domain/count Get domains count
POST /v1/domain/search Search domains
POST /v1/domain/subdomain/count Fetch the total no. of subdomain records
POST /v1/domain/subdomain/search Fetch the subdomain record
GET /v1/domain/whois/{domain-name} Fetch the domain whois record details
GET /v1/domain/whois/{domain-name}/historical Fetch all the domain whois historical records
GET /v1/domain/whois/{domain-name}/is-expired Get the expiry for a particular domain
GET /v1/domain/whois/{domain-name}/is-registered Fetch all the domain whois historical records

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cyble-domain-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cyble-domain-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Odin Domain API
  description: ODIN APIs to search across IP Services, CVEs, Exposed Files/Buckets, Domains and more
  contact: {}
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: '1.0'
servers:
- url: https://api.odin.io/
tags:
- name: domain
paths:
  /v1/domain/count:
    post:
      tags:
      - domain
      summary: Get domains count
      description: Get count of domain records based on query
      requestBody:
        description: Query
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/dns.DNSCountRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/dns.APIResponse'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/dns.Data'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
      x-codegen-request-body-name: query
  /v1/domain/search:
    post:
      tags:
      - domain
      summary: Search domains
      description: Search domains based on the query
      requestBody:
        description: Query
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dns.DomainRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/eshandler.DNS'
                    pagination:
                      $ref: '#/components/schemas/dns.SearchPagination'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
      x-codegen-request-body-name: query
  /v1/domain/subdomain/count:
    post:
      tags:
      - domain
      summary: Fetch the total no. of subdomain records
      description: Returns the count of subdomain records based on domain
      requestBody:
        description: Query
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/dns.DNSCountRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/dns.APIResponse'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/dns.Data'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
      security:
      - ApiKeyAuth: []
      x-codegen-request-body-name: query
  /v1/domain/subdomain/search:
    post:
      tags:
      - domain
      summary: Fetch the subdomain record
      description: Returns the subdomain records based on query
      requestBody:
        description: Query
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dns.DomainRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        type: string
                    pagination:
                      $ref: '#/components/schemas/dns.SearchPagination'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dns.ErrorResponse'
      security:
      - ApiKeyAuth: []
      x-codegen-request-body-name: query
  /v1/domain/whois/{domain-name}:
    get:
      tags:
      - domain
      summary: Fetch the domain whois record details
      description: Provides extensive details about the domain whois record like name servers, domain status, registrar, etc.
      parameters:
      - name: domain-name
        in: path
        description: domain
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/schema.APIResponse'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/schema.DomainWhoisResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
        '408':
          description: Request Timeout
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
      security:
      - ApiKeyAuth: []
  /v1/domain/whois/{domain-name}/historical:
    get:
      tags:
      - domain
      summary: Fetch all the domain whois historical records
      description: Provides historical details about the domain whois record like name servers, domain status, registrar, etc
      parameters:
      - name: domain-name
        in: path
        description: domain
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    ' meta':
                      $ref: '#/components/schemas/schema.PaginationMeta'
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/schema.DomainWhoisResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
        '408':
          description: Request Timeout
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
      security:
      - ApiKeyAuth: []
  /v1/domain/whois/{domain-name}/is-expired:
    get:
      tags:
      - domain
      summary: Get the expiry for a particular domain
      description: Provides historical details about the domain whois record like name servers, domain status, registrar, etc
      parameters:
      - name: domain-name
        in: path
        description: domain
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/schema.DomainWhoisResponse'
                    meta:
                      $ref: '#/components/schemas/schema.PaginationMeta'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
        '408':
          description: Request Timeout
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
      security:
      - ApiKeyAuth: []
  /v1/domain/whois/{domain-name}/is-registered:
    get:
      tags:
      - domain
      summary: Fetch all the domain whois historical records
      description: Provides historical details about the domain whois record like name servers, domain status, registrar, etc
      parameters:
      - name: domain-name
        in: path
        description: domain
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/schema.DomainWhoisResponse'
                    meta:
                      $ref: '#/components/schemas/schema.PaginationMeta'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
        '408':
          description: Request Timeout
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
      security:
      - ApiKeyAuth: []
components:
  schemas:
    schema.DomainWhoisResponse:
      type: object
      properties:
        administrative_contact:
          $ref: '#/components/schemas/schema.Contact'
        audited_fields:
          $ref: '#/components/schemas/schema.Audit'
        billing_contact:
          $ref: '#/components/schemas/schema.Contact'
        created_date:
          type: string
        domain_name:
          type: string
        domain_status:
          type: array
          items:
            type: string
        expires_date:
          type: string
        name_servers:
          type: array
          items:
            type: string
        raw_data:
          type: string
          description: IngestedAt            time.Time  `json:"ingested_at"`
        registrant_contact:
          $ref: '#/components/schemas/schema.Contact'
        registrar:
          $ref: '#/components/schemas/schema.Registrar'
        technical_contact:
          $ref: '#/components/schemas/schema.Contact'
        tld:
          type: string
        updated_date:
          type: string
    schema.Registrar:
      type: object
      properties:
        id:
          type: string
          description: Adjusted field name for clarity
        name:
          type: string
        url:
          type: string
        whois:
          type: string
    schema.Audit:
      type: object
      properties:
        created_at:
          type: string
        expires_date:
          type: string
        is_modified:
          type: boolean
          description: is audit logic applied (update in dates to fix invalid values)
        updated_at:
          type: string
    schema.Contact:
      type: object
      properties:
        address:
          type: string
        city:
          type: string
        company:
          type: string
        country:
          type: string
        country_code:
          type: string
        email:
          type: string
        email_domain:
          type: string
        fax:
          type: string
        name:
          type: string
        phone:
          type: string
        state:
          type: string
        zip:
          type: string
    schema.APIResponse:
      type: object
      properties:
        data:
          type: object
        message:
          type: string
        meta:
          type: object
        success:
          type: boolean
    dns.Data:
      type: object
      properties:
        count:
          type: integer
    schema.PaginationMeta:
      type: object
      properties:
        limit:
          type: integer
        pageState:
          type: string
    dns.SearchPagination:
      type: object
      properties:
        last:
          type: array
          items:
            type: object
        limit:
          type: integer
        start:
          type: array
          items:
            type: object
        total:
          type: integer
    dns.DNSCountRequest:
      type: object
      properties:
        domain:
          type: string
        keyword:
          type: string
        publishedAfter:
          type: string
        publishedBefore:
          type: string
    eshandler.EXTDNSName:
      type: object
      properties:
        domain:
          type: string
        fld:
          type: string
        subdomain:
          type: string
        tld:
          type: string
    dns.ErrorResponse:
      type: object
      properties:
        message:
          type: string
        success:
          type: boolean
    dns.APIResponse:
      type: object
      properties:
        data:
          type: object
        pagination:
          type: object
        success:
          type: boolean
    eshandler.DNS:
      type: object
      properties:
        added_at:
          type: string
        domain:
          type: string
        ext_dns_name:
          $ref: '#/components/schemas/eshandler.EXTDNSName'
        subdomain:
          type: string
    dns.DomainRequest:
      required:
      - limit
      type: object
      properties:
        domain:
          type: string
        keyword:
          type: string
        limit:
          type: integer
        publishedAfter:
          type: string
        publishedBefore:
          type: string
        start:
          type: array
          items:
            type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: X-API-Key
      in: header
x-original-swagger-version: '2.0'