{
  "openapi": "3.1.0",
  "info": {
    "title": "Tech Stack API",
    "version": "1.0.0",
    "description": "Detect the CMS, frameworks, analytics, payments, CDN and hosting behind any website.\n\nDetect what any website is built with, in one call: CMS, e-commerce platform, analytics and tag managers, payment providers, JavaScript frameworks and meta-frameworks, server-side language and framework, web server, CDN, hosting platform, marketing and CRM tools, live-chat, A/B testing, search, maps, video, fonts and anti-bot services — matched against a curated, self-maintained fingerprint ruleset of 108 technologies. Each lookup performs one live fetch of the target page and matches static evidence only: response headers, cookie names, script and stylesheet URLs, meta tags and anchored HTML markers. Every detection returns the exact evidence that matched (the header, cookie, script URL or marker) and a confidence level — detected from direct evidence, or implied from a certain relationship, such as WooCommerce implying WordPress and Next.js implying React — with framework versions captured where the site exposes them. Scan one site, or up to 10 concurrently in a batch with per-target errors reported inline; list the full detectable catalogue so you know exactly what a scan can and cannot find. Ideal for sales prospecting and lead enrichment (what does this prospect run?), competitor analysis, migration planning and market-share research. Non-public targets are refused, and the ruleset is this provider's own — no third-party detection service behind it.",
    "contact": {
      "name": "Data and APIs",
      "url": "https://dataandapis.com/contact"
    },
    "termsOfService": "https://dataandapis.com/terms-of-service",
    "license": {
      "name": "Data and APIs Terms of Service",
      "url": "https://dataandapis.com/terms-of-service"
    },
    "x-logo": {
      "url": "https://dataandapis.com/images/tech-stack.webp"
    }
  },
  "externalDocs": {
    "description": "Documentation, live tester and pricing",
    "url": "https://dataandapis.com/apis/tech-stack"
  },
  "servers": [
    {
      "url": "https://api-tech-stack.dataandapis.com"
    }
  ],
  "tags": [
    {
      "name": "Tools",
      "description": "Tech Stack API belongs to the Tools category of the Data and APIs catalog."
    }
  ],
  "paths": {
    "/v1/stack/{target}": {
      "get": {
        "operationId": "detectStack",
        "summary": "Detect Stack",
        "description": "Detect Stack endpoint of the Tech Stack API. Costs 10 tokens per call.",
        "externalDocs": {
          "url": "https://dataandapis.com/apis/tech-stack/detect-stack"
        },
        "parameters": [
          {
            "name": "target",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "www.allbirds.com"
          },
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "https://www.allbirds.com/products"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                },
                "example": {
                  "ok": true,
                  "url": "https://www.allbirds.com/",
                  "final_url": "https://www.allbirds.com/",
                  "status": 200,
                  "technologies": [
                    {
                      "name": "Cloudflare",
                      "category": "CDN",
                      "version": null,
                      "confidence": "detected",
                      "evidence": [
                        "header cf-ray: a3b7cd7f3c26d305-BOG"
                      ]
                    },
                    {
                      "name": "Shopify",
                      "category": "E-commerce",
                      "version": null,
                      "confidence": "detected",
                      "evidence": [
                        "script https://cdn.shopify.com/s/files/1/1104/4168/files/jsEncrypt.js?v=1756910700",
                        "html marker /Shopify\\.theme/"
                      ]
                    },
                    {
                      "name": "Shop Pay",
                      "category": "Payments",
                      "version": null,
                      "confidence": "detected",
                      "evidence": [
                        "script https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=2737373264&sho"
                      ]
                    },
                    {
                      "name": "Google Tag Manager",
                      "category": "Tag manager",
                      "version": null,
                      "confidence": "detected",
                      "evidence": [
                        "html marker /googletagmanager\\.com/ns\\.html/"
                      ]
                    }
                  ],
                  "by_category": {
                    "CDN": [
                      "Cloudflare"
                    ],
                    "E-commerce": [
                      "Shopify"
                    ],
                    "Payments": [
                      "Shop Pay"
                    ],
                    "Tag manager": [
                      "Google Tag Manager"
                    ]
                  },
                  "fetched_at": "2026-09-15T12:58:24.776Z"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid API key"
          },
          "402": {
            "description": "Subscription past due; the response carries a payment_url"
          },
          "429": {
            "description": "Monthly token allowance exhausted"
          }
        },
        "security": [
          {
            "ApiKey": []
          }
        ]
      }
    },
    "/v1/stack": {
      "post": {
        "operationId": "detectStackBatch",
        "summary": "Detect Stack Batch",
        "description": "Detect Stack Batch endpoint of the Tech Stack API. Costs 10 tokens per call.",
        "externalDocs": {
          "url": "https://dataandapis.com/apis/tech-stack/detect-stack-batch"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              },
              "example": {
                "targets": [
                  "stripe.com",
                  "www.allbirds.com",
                  "wordpress.org"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                },
                "example": {
                  "ok": true,
                  "count": 2,
                  "results": [
                    {
                      "url": "https://wordpress.org/",
                      "final_url": "https://wordpress.org/",
                      "status": 200,
                      "technologies": [
                        {
                          "name": "WordPress",
                          "category": "CMS",
                          "version": "7.2",
                          "confidence": "detected",
                          "evidence": [
                            "meta generator: WordPress 7.2-alpha-63620",
                            "script https://wordpress.org/wp-content/mu-plugins/pub-sync/blocks/language-suggest/build/front.js?ver=415c",
                            "link https://wordpress.org/wp-content/mu-plugins/pub-sync/global-fonts/Inter/Inter-latin.woff2"
                          ]
                        },
                        {
                          "name": "Google Fonts",
                          "category": "Fonts",
                          "version": null,
                          "confidence": "detected",
                          "evidence": [
                            "link https://fonts.googleapis.com"
                          ]
                        },
                        {
                          "name": "Google Tag Manager",
                          "category": "Tag manager",
                          "version": null,
                          "confidence": "detected",
                          "evidence": [
                            "html marker /googletagmanager\\.com/ns\\.html/"
                          ]
                        },
                        {
                          "name": "nginx",
                          "category": "Web server",
                          "version": null,
                          "confidence": "detected",
                          "evidence": [
                            "header server: nginx"
                          ]
                        }
                      ],
                      "by_category": {
                        "CMS": [
                          "WordPress"
                        ],
                        "Fonts": [
                          "Google Fonts"
                        ],
                        "Tag manager": [
                          "Google Tag Manager"
                        ],
                        "Web server": [
                          "nginx"
                        ]
                      },
                      "fetched_at": "2026-09-15T12:58:26.429Z"
                    },
                    {
                      "target": "localhost",
                      "error": "Target must be a public website."
                    }
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid API key"
          },
          "402": {
            "description": "Subscription past due; the response carries a payment_url"
          },
          "429": {
            "description": "Monthly token allowance exhausted"
          }
        },
        "security": [
          {
            "ApiKey": []
          }
        ]
      }
    },
    "/v1/technologies": {
      "get": {
        "operationId": "technologyCatalogue",
        "summary": "Technology Catalogue",
        "description": "Technology Catalogue endpoint of the Tech Stack API. Costs 10 tokens per call.",
        "externalDocs": {
          "url": "https://dataandapis.com/apis/tech-stack/technology-catalogue"
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                },
                "example": {
                  "ok": true,
                  "count": 108,
                  "technologies": [
                    {
                      "name": "Optimizely",
                      "category": "A/B testing",
                      "rules": 1
                    },
                    {
                      "name": "VWO",
                      "category": "A/B testing",
                      "rules": 1
                    },
                    {
                      "name": "Adobe Analytics",
                      "category": "Analytics",
                      "rules": 1
                    },
                    {
                      "name": "Amplitude",
                      "category": "Analytics",
                      "rules": 1
                    },
                    {
                      "name": "Cloudflare Web Analytics",
                      "category": "Analytics",
                      "rules": 1
                    },
                    {
                      "name": "Fathom",
                      "category": "Analytics",
                      "rules": 1
                    }
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid API key"
          },
          "402": {
            "description": "Subscription past due; the response carries a payment_url"
          },
          "429": {
            "description": "Monthly token allowance exhausted"
          }
        },
        "security": [
          {
            "ApiKey": []
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Api-Key",
        "description": "Create a free key at https://dataandapis.com/sign-up. 500 tokens a month on the Free plan; this API costs 10 tokens per call."
      }
    }
  },
  "security": [
    {
      "ApiKey": []
    }
  ]
}