{
  "service": "builtwith",
  "displayName": "BuiltWith",
  "categories": [
    "Data",
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "BUILTWITH_API_KEY",
      "description": "BuiltWith API key sent with the KEY query parameter. Sign up or log in to view your API key: https://api.builtwith.com/domain-api",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://builtwith.com",
  "actions": [
    {
      "id": "builtwith.get_domain_recommendations",
      "service": "builtwith",
      "name": "get_domain_recommendations",
      "description": "Retrieve BuiltWith technology recommendations for one or more root domains.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "minLength": 1,
            "description": "The root domain or comma-separated list of root domains for recommendations."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup"
        ],
        "description": "The input payload for retrieving BuiltWith recommendations."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "domain": {
                  "type": "string",
                  "description": "The domain used to build the recommendation set."
                },
                "compiled": {
                  "type": "string",
                  "description": "The raw compilation timestamp string returned by BuiltWith."
                },
                "recommendations": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "The recommended technology name."
                      },
                      "link": {
                        "type": "string",
                        "description": "The URL for the recommended technology."
                      },
                      "tag": {
                        "type": "string",
                        "description": "The BuiltWith top-level tag for the recommendation."
                      },
                      "categories": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1,
                          "description": "A category label for the recommendation."
                        },
                        "description": "The BuiltWith categories assigned to the recommendation."
                      },
                      "stars": {
                        "type": "integer",
                        "description": "The BuiltWith star rating for the recommendation."
                      },
                      "match": {
                        "type": "number",
                        "description": "The BuiltWith relevance score for the recommendation."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "name",
                      "link",
                      "tag",
                      "categories",
                      "stars",
                      "match"
                    ],
                    "description": "One BuiltWith recommendation."
                  },
                  "description": "The technology recommendations returned by BuiltWith."
                }
              },
              "additionalProperties": false,
              "required": [
                "domain",
                "recommendations"
              ],
              "description": "One BuiltWith recommendations result."
            },
            "description": "The recommendation result sets returned by BuiltWith."
          }
        },
        "additionalProperties": false,
        "required": [
          "results"
        ],
        "description": "The BuiltWith recommendations response."
      }
    },
    {
      "id": "builtwith.lookup_domain_profile",
      "service": "builtwith",
      "name": "lookup_domain_profile",
      "description": "Retrieve a BuiltWith technology profile for a domain while excluding personally identifiable information by default.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "minLength": 1,
            "description": "The domain or URL to inspect with BuiltWith."
          },
          "includeLiveOnly": {
            "type": "boolean",
            "description": "Whether to restrict the response to live technologies only."
          },
          "includeMeta": {
            "type": "boolean",
            "description": "Whether to include the sanitized BuiltWith metadata block."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup"
        ],
        "description": "The input payload for looking up a BuiltWith domain profile."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "lookup": {
                  "type": "string",
                  "description": "The lookup value resolved by BuiltWith."
                },
                "firstIndexed": {
                  "type": "integer",
                  "description": "The epoch timestamp in milliseconds when the lookup was first indexed."
                },
                "lastIndexed": {
                  "type": "integer",
                  "description": "The epoch timestamp in milliseconds when the lookup was last indexed."
                },
                "salesRevenue": {
                  "type": "number",
                  "description": "The sales revenue estimate returned by BuiltWith."
                },
                "isDb": {
                  "type": "string",
                  "description": "The BuiltWith record source indicator, such as `True` or `False`."
                },
                "spend": {
                  "type": "number",
                  "description": "The technology spend estimate returned by BuiltWith."
                },
                "spendHistory": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "date": {
                        "type": "integer",
                        "description": "The epoch timestamp in milliseconds for the spend history point."
                      },
                      "spend": {
                        "type": "number",
                        "description": "The spend value returned for the history point."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "date",
                      "spend"
                    ],
                    "description": "One BuiltWith spend history entry."
                  },
                  "description": "The BuiltWith spend history timeline for the lookup."
                },
                "paths": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "domain": {
                        "type": "string",
                        "description": "The root domain for the indexed path."
                      },
                      "url": {
                        "type": "string",
                        "description": "The path or aggregate URL label returned by BuiltWith."
                      },
                      "subdomain": {
                        "type": "string",
                        "description": "The subdomain label for the indexed path."
                      },
                      "firstIndexed": {
                        "type": "integer",
                        "description": "The epoch timestamp in milliseconds when this path was first indexed."
                      },
                      "lastIndexed": {
                        "type": "integer",
                        "description": "The epoch timestamp in milliseconds when this path was last indexed."
                      },
                      "technologies": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string",
                              "description": "The technology name detected by BuiltWith."
                            },
                            "description": {
                              "type": "string",
                              "description": "The BuiltWith description for the detected technology."
                            },
                            "link": {
                              "type": "string",
                              "description": "The reference URL for the detected technology."
                            },
                            "parent": {
                              "type": "string",
                              "description": "The parent technology name when BuiltWith provides one."
                            },
                            "tag": {
                              "type": "string",
                              "description": "The BuiltWith top-level technology tag."
                            },
                            "categories": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A BuiltWith category label for the technology."
                              },
                              "description": "The BuiltWith categories assigned to the technology."
                            },
                            "firstDetected": {
                              "type": "integer",
                              "description": "The epoch timestamp in milliseconds when the technology was first detected."
                            },
                            "lastDetected": {
                              "type": "integer",
                              "description": "The epoch timestamp in milliseconds when the technology was last detected."
                            },
                            "isPremium": {
                              "type": "string",
                              "description": "Whether BuiltWith marks the technology as premium coverage."
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "name"
                          ],
                          "description": "One technology entry returned by BuiltWith."
                        },
                        "description": "The technologies detected for this path."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "domain",
                      "url",
                      "technologies"
                    ],
                    "description": "One BuiltWith indexed path entry."
                  },
                  "description": "The indexed paths returned by BuiltWith."
                },
                "meta": {
                  "type": "object",
                  "properties": {
                    "companyName": {
                      "type": "string",
                      "description": "The company name returned by BuiltWith."
                    },
                    "country": {
                      "type": "string",
                      "description": "The ISO country code returned by BuiltWith."
                    },
                    "state": {
                      "type": "string",
                      "description": "The state or region returned by BuiltWith."
                    },
                    "city": {
                      "type": "string",
                      "description": "The city returned by BuiltWith."
                    },
                    "postcode": {
                      "type": "string",
                      "description": "The postcode returned by BuiltWith."
                    },
                    "vertical": {
                      "type": "string",
                      "description": "The BuiltWith vertical classification."
                    },
                    "majestic": {
                      "type": "integer",
                      "description": "The Majestic rank returned by BuiltWith."
                    },
                    "aRank": {
                      "type": "integer",
                      "description": "The Alexa rank returned by BuiltWith."
                    },
                    "qRank": {
                      "type": "integer",
                      "description": "The Quantcast rank returned by BuiltWith."
                    },
                    "umbrella": {
                      "type": "integer",
                      "description": "The Umbrella rank returned by BuiltWith."
                    },
                    "social": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A social profile URL returned by BuiltWith."
                      },
                      "description": "The social profile URLs returned by BuiltWith."
                    }
                  },
                  "additionalProperties": false,
                  "description": "The sanitized metadata block returned by BuiltWith."
                },
                "attributes": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "number",
                    "description": "A numeric attribute value."
                  },
                  "description": "The numeric attribute counters returned by BuiltWith."
                }
              },
              "additionalProperties": false,
              "required": [
                "lookup",
                "firstIndexed",
                "lastIndexed",
                "paths"
              ],
              "description": "One normalized BuiltWith domain profile result."
            },
            "description": "The normalized domain profile results returned by BuiltWith."
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string",
                  "description": "The error message returned by BuiltWith."
                },
                "code": {
                  "type": "integer",
                  "description": "The numeric error code returned by BuiltWith."
                }
              },
              "additionalProperties": false,
              "required": [
                "message"
              ],
              "description": "One error entry returned by BuiltWith."
            },
            "description": "The BuiltWith errors returned with the response."
          }
        },
        "additionalProperties": false,
        "required": [
          "results",
          "errors"
        ],
        "description": "The normalized BuiltWith domain profile response."
      }
    },
    {
      "id": "builtwith.lookup_domain_summary",
      "service": "builtwith",
      "name": "lookup_domain_summary",
      "description": "Retrieve the BuiltWith Free API technology group summary for a root domain.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "minLength": 1,
            "description": "The root domain to summarize with the BuiltWith Free API."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup"
        ],
        "description": "The input payload for looking up a BuiltWith domain summary."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string",
            "description": "The root domain returned by BuiltWith."
          },
          "firstIndexed": {
            "type": "integer",
            "description": "The epoch timestamp in milliseconds when the domain was first indexed."
          },
          "lastIndexed": {
            "type": "integer",
            "description": "The epoch timestamp in milliseconds when the domain was last indexed."
          },
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "The BuiltWith technology group name."
                },
                "live": {
                  "type": "integer",
                  "description": "The count of live technologies in the group."
                },
                "dead": {
                  "type": "integer",
                  "description": "The count of historical technologies in the group."
                },
                "latest": {
                  "type": "integer",
                  "description": "The epoch timestamp in milliseconds of the latest technology detection."
                },
                "oldest": {
                  "type": "integer",
                  "description": "The epoch timestamp in milliseconds of the earliest technology detection."
                },
                "categories": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "The BuiltWith category name."
                      },
                      "live": {
                        "type": "integer",
                        "description": "The count of live technologies in the category."
                      },
                      "dead": {
                        "type": "integer",
                        "description": "The count of historical technologies in the category."
                      },
                      "latest": {
                        "type": "integer",
                        "description": "The epoch timestamp in milliseconds of the latest technology detection."
                      },
                      "oldest": {
                        "type": "integer",
                        "description": "The epoch timestamp in milliseconds of the earliest technology detection."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "name",
                      "live",
                      "dead",
                      "latest",
                      "oldest"
                    ],
                    "description": "One BuiltWith category snapshot."
                  },
                  "description": "The categories contained in the group."
                }
              },
              "additionalProperties": false,
              "required": [
                "name",
                "live",
                "dead",
                "latest",
                "oldest",
                "categories"
              ],
              "description": "One BuiltWith technology group snapshot."
            },
            "description": "The technology groups returned by BuiltWith."
          }
        },
        "additionalProperties": false,
        "required": [
          "domain",
          "firstIndexed",
          "lastIndexed",
          "groups"
        ],
        "description": "The BuiltWith Free API summary response."
      }
    },
    {
      "id": "builtwith.lookup_redirect_history",
      "service": "builtwith",
      "name": "lookup_redirect_history",
      "description": "Retrieve the inbound and outbound redirect history for a root domain from BuiltWith.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "minLength": 1,
            "description": "The root domain to inspect for redirect history."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup"
        ],
        "description": "The input payload for looking up BuiltWith redirect history."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "description": "The root domain returned by BuiltWith."
          },
          "inbound": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "domain": {
                  "type": "string",
                  "description": "The redirect source or destination domain."
                },
                "firstDetected": {
                  "type": "string",
                  "description": "The ISO timestamp when the redirect was first detected."
                },
                "lastDetected": {
                  "type": "string",
                  "description": "The ISO timestamp when the redirect was last detected."
                }
              },
              "additionalProperties": false,
              "required": [
                "domain",
                "firstDetected",
                "lastDetected"
              ],
              "description": "One BuiltWith redirect history record."
            },
            "description": "The domains redirecting to the lookup domain."
          },
          "outbound": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "domain": {
                  "type": "string",
                  "description": "The redirect source or destination domain."
                },
                "firstDetected": {
                  "type": "string",
                  "description": "The ISO timestamp when the redirect was first detected."
                },
                "lastDetected": {
                  "type": "string",
                  "description": "The ISO timestamp when the redirect was last detected."
                }
              },
              "additionalProperties": false,
              "required": [
                "domain",
                "firstDetected",
                "lastDetected"
              ],
              "description": "One BuiltWith redirect history record."
            },
            "description": "The domains the lookup domain redirects to."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup",
          "inbound",
          "outbound"
        ],
        "description": "The BuiltWith redirect history response."
      }
    },
    {
      "id": "builtwith.lookup_social_profiles",
      "service": "builtwith",
      "name": "lookup_social_profiles",
      "description": "Map one or more social profile URLs to BuiltWith root domain matches.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "lookup": {
            "type": "string",
            "minLength": 1,
            "description": "The social profile URL or comma-separated BuiltWith social lookup string."
          }
        },
        "additionalProperties": false,
        "required": [
          "lookup"
        ],
        "description": "The input payload for looking up social profiles in BuiltWith."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "socials": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "The BuiltWith social lookup name."
                },
                "results": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "socialUrl": {
                        "type": "string",
                        "description": "The social profile URL matched by BuiltWith."
                      },
                      "domains": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "root": {
                              "type": "string",
                              "description": "The root domain associated with the social profile."
                            },
                            "builtWithRank": {
                              "type": "integer",
                              "description": "The BuiltWith rank for the matched domain."
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "root",
                            "builtWithRank"
                          ],
                          "description": "One BuiltWith domain match for a social profile."
                        },
                        "description": "The domains mapped to the social profile."
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "socialUrl",
                      "domains"
                    ],
                    "description": "One BuiltWith social lookup result."
                  },
                  "description": "The social results returned for the lookup."
                }
              },
              "additionalProperties": false,
              "required": [
                "name",
                "results"
              ],
              "description": "One BuiltWith social lookup entry."
            },
            "description": "The BuiltWith social lookup entries returned for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "socials"
        ],
        "description": "The BuiltWith social lookup response."
      }
    }
  ]
}
