BuiltWith Domain API

The Domain API from BuiltWith — 4 operation(s) for domain.

Operations 5

GET /v22/api.json Domain API (v22) - lookup #
POST /v22/api.json Domain API (v22) - legacy bulk lookup (POST) #
POST /v22/domain/bulk Bulk Domain API - submit #
GET /v22/domain/bulk/{job_id} Bulk Domain API - poll status #
GET /v22/domain/bulk/{job_id}/result Bulk Domain API - retrieve results #

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/builtwith-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

builtwith-domain-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BuiltWith API (from llms.txt + samples) Domain API
  version: '2026-05-08'
  description: OpenAPI spec generated from https://api.builtwith.com/llms.txt and sample payloads under https://api.builtwith.com/samples/*.json (where available). Endpoints not covered by a sample file use a generic JSON schema.
servers:
- url: https://api.builtwith.com
security:
- ApiKeyQuery: []
tags:
- name: Domain
paths:
  /v22/api.json:
    get:
      operationId: domain_lookup_v22
      tags:
      - Domain
      summary: Domain API (v22) - lookup
      description: Technology + metadata for a domain. Sample schema inferred from /samples/domain_api_v22.json.
      parameters:
      - $ref: '#/components/parameters/lookup'
      - $ref: '#/components/parameters/nopii'
      - $ref: '#/components/parameters/nometa'
      - $ref: '#/components/parameters/noattr'
      - $ref: '#/components/parameters/fdrange'
      - $ref: '#/components/parameters/ldrange'
      - $ref: '#/components/parameters/liveonly'
      - $ref: '#/components/parameters/hidetext'
      - $ref: '#/components/parameters/hidedl'
      - $ref: '#/components/parameters/ip'
      - $ref: '#/components/parameters/trust'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainApiV22Response'
    post:
      operationId: domain_bulk_v22_legacy
      tags:
      - Domain
      summary: Domain API (v22) - legacy bulk lookup (POST)
      description: Legacy POST form retained for compatibility. New high-volume lookups should use POST /v22/domain/bulk.
      deprecated: true
      parameters:
      - $ref: '#/components/parameters/nopii'
      - $ref: '#/components/parameters/nometa'
      - $ref: '#/components/parameters/noattr'
      - $ref: '#/components/parameters/fdrange'
      - $ref: '#/components/parameters/ldrange'
      - $ref: '#/components/parameters/liveonly'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DomainBulkRequest'
            examples:
              bulk_lookup:
                value:
                  lookups:
                  - example.com
                  - builtwith.com
                  options:
                    nopii: true
                    nometa: false
                    noattr: false
                    liveonly: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DomainApiV22Response'
  /v22/domain/bulk:
    post:
      operationId: domain_bulk_submit_v22
      tags:
      - Domain
      summary: Bulk Domain API - submit
      description: Submits a high-volume Domain API lookup job. Use WhoAmI account.max_batch_size.domain_bulk_submit for the current maximum.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DomainBulkRequest'
            examples:
              bulk_submit:
                value:
                  lookups:
                  - example.com
                  - builtwith.com
                  options:
                    noMeta: false
                    noPii: true
                    hideText: false
                    hideDL: false
                    liveOnly: false
      responses:
        '200':
          description: Small batch completed synchronously.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainApiV22Response'
        '202':
          description: Bulk job queued.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainBulkJobResponse'
  /v22/domain/bulk/{job_id}:
    get:
      operationId: domain_bulk_status_v22
      tags:
      - Domain
      summary: Bulk Domain API - poll status
      parameters:
      - $ref: '#/components/parameters/job_id'
      responses:
        '200':
          description: Bulk job status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainBulkJobResponse'
  /v22/domain/bulk/{job_id}/result:
    get:
      operationId: domain_bulk_result_v22
      tags:
      - Domain
      summary: Bulk Domain API - retrieve results
      description: Returns Domain API JSON results. Results are deleted after first successful access.
      parameters:
      - $ref: '#/components/parameters/job_id'
      responses:
        '200':
          description: Domain API results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainApiV22Response'
components:
  parameters:
    hidetext:
      name: HIDETEXT
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    noattr:
      name: NOATTR
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    ldrange:
      name: LDRANGE
      in: query
      required: false
      schema:
        type: string
      description: Domain API option. Exact format not specified in llms.txt.
    trust:
      name: TRUST
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    nometa:
      name: NOMETA
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    nopii:
      name: NOPII
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    fdrange:
      name: FDRANGE
      in: query
      required: false
      schema:
        type: string
      description: Domain API option. Exact format not specified in llms.txt.
    lookup:
      name: LOOKUP
      in: query
      required: true
      schema:
        type: string
      description: Primary lookup value, typically a root domain (e.g. example.com).
    ip:
      name: IP
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    job_id:
      name: job_id
      in: path
      required: true
      schema:
        type: string
      description: Bulk Domain API job identifier.
    liveonly:
      name: LIVEONLY
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
    hidedl:
      name: HIDEDL
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Domain API option.
  schemas:
    DomainPath:
      type: object
      properties:
        Technologies:
          type: array
          items:
            $ref: '#/components/schemas/TechnologyDetection'
        FirstIndexed:
          type: integer
          format: int64
          description: Epoch milliseconds.
        LastIndexed:
          type: integer
          format: int64
          description: Epoch milliseconds.
        Domain:
          type: string
        Url:
          type: string
        SubDomain:
          type: string
      additionalProperties: true
    DomainApiV22ResultsItem:
      type: object
      required:
      - Result
      properties:
        Result:
          $ref: '#/components/schemas/DomainApiV22Result'
      additionalProperties: true
    DomainBulkJobResponse:
      type: object
      properties:
        job_id:
          type: string
        status:
          type: string
        created_utc:
          type: string
          format: date-time
        completed_utc:
          type: string
          format: date-time
        result_url:
          type: string
        count:
          type: integer
          format: int32
        sync_max:
          type: integer
          format: int32
      additionalProperties: true
    DomainApiV22Response:
      type: object
      required:
      - Results
      properties:
        Results:
          type: array
          items:
            $ref: '#/components/schemas/DomainApiV22ResultsItem'
      additionalProperties: true
    TechnologyDetection:
      type: object
      properties:
        Name:
          type: string
        Description:
          type: string
        Link:
          type: string
        Parent:
          type: string
        Tag:
          type: string
        FirstDetected:
          type: integer
          format: int64
          description: Epoch milliseconds.
        LastDetected:
          type: integer
          format: int64
          description: Epoch milliseconds.
        IsPremium:
          description: String boolean in sample payloads (e.g. "No").
          type: string
        Categories:
          type: array
          items:
            type: string
      additionalProperties: true
    DomainApiV22Result:
      type: object
      properties:
        SpendHistory:
          type: array
          items:
            $ref: '#/components/schemas/SpendPoint'
        IsDB:
          description: String boolean in sample payloads (e.g. "True").
          type: string
        Spend:
          type: integer
          format: int64
        Paths:
          type: array
          items:
            $ref: '#/components/schemas/DomainPath'
      additionalProperties: true
    DomainBulkRequest:
      type: object
      additionalProperties: false
      required:
      - lookups
      properties:
        lookups:
          type: array
          items:
            type: string
          minItems: 1
          description: List of root domains to look up.
        options:
          type: object
          additionalProperties: true
          description: Optional flags/options.
          properties:
            noMeta:
              type: boolean
            noPii:
              type: boolean
            hideText:
              type: boolean
            hideDL:
              type: boolean
            liveOnly:
              type: boolean
            noattr:
              type: boolean
            fdrange:
              type: string
            ldrange:
              type: string
    SpendPoint:
      type: object
      required:
      - D
      - S
      properties:
        D:
          description: Epoch milliseconds.
          type: integer
          format: int64
        S:
          type: integer
          format: int64
      additionalProperties: false
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: KEY
      description: BuiltWith API key (KEY).
    BearerAuth:
      type: http
      scheme: bearer
      description: BuiltWith API key or temporary bw- agent token in the Authorization header.
externalDocs:
  description: 'Source: BuiltWith llms.txt'
  url: https://api.builtwith.com/llms.txt
x-mcp:
  endpoint: https://api.builtwith.com/mcp
  server: builtwith
  version: 1.3.0
  transport: streamable-http
  tools:
  - domain-lookup
  - domain-api
  - domain-api-json
  - change-api
  - relationships-api
  - free-api
  - company-to-url
  - tags-api
  - recommendations-api
  - redirects-api
  - keywords-api
  - keywords-search-api
  - trends-api
  - product-api
  - trust-api
  - financial-api
  - social-api
  - payment-balance
  - payment-config
  - payment-purchase
  - vector-api
  - ask-api
  - ask-api-json
  resources:
  - ui://widget/domain-technologies.html
  - ui://widget/ask-sites.html
  prompts:
  - analyze-tech-stack
  - find-related-websites
  - get-technology-recommendations
  - research-company
  - check-domain-trust
  - discover-technologies-by-concept
x-live-feed-websocket:
  tag: LiveFeed
  servers:
  - url: wss://sync.builtwith.com
  connection_endpoints:
  - wss://sync.builtwith.com/wss/new?KEY=YOUR_KEY
  - wss://sync.builtwith.com/wss/channel/{TECH}?KEY=YOUR_KEY
  commands:
  - action: subscribe
    payload:
      action: subscribe
      channel: Shopify
  - action: unsubscribe
    payload:
      action: unsubscribe
      channel: Shopify
  - action: list_subscriptions
    payload:
      action: list_subscriptions