Properties
| Name | Type | Description |
|---|---|---|
| domain | string | The normalized domain that was scanned. |
| scanned_at | string | ISO 8601 timestamp of when the scan was performed. |
| http_status | integer | HTTP status code returned by the scanned domain. |
| detected | array | The technologies detected on the domain. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/jobspipe/json-schema/jobspipe-stack-scan-response-schema.json",
"title": "StackScanResponse",
"x-generated": "2026-11-10",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/jobspipe-stack-api-openapi.yml#/components/schemas/StackScanResponse",
"type": "object",
"required": [
"domain",
"scanned_at",
"http_status",
"detected"
],
"properties": {
"domain": {
"type": "string",
"description": "The normalized domain that was scanned."
},
"scanned_at": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 timestamp of when the scan was performed."
},
"http_status": {
"type": "integer",
"description": "HTTP status code returned by the scanned domain."
},
"detected": {
"type": "array",
"items": {
"$ref": "#/$defs/DetectedTech"
},
"description": "The technologies detected on the domain."
}
},
"$defs": {
"DetectedTech": {
"type": "object",
"description": "A technology detected on the scanned domain.",
"required": [
"slug",
"name",
"categories",
"confidence",
"signals",
"pricing",
"saas",
"oss"
],
"properties": {
"slug": {
"type": "string",
"description": "Stable technology identifier, e.g. 'nextjs'."
},
"name": {
"type": "string",
"description": "Display name, e.g. 'Next.js'."
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"description": "Categories the technology belongs to, e.g. 'Web frameworks', 'Analytics'."
},
"confidence": {
"type": "number",
"description": "0-100 match confidence for this detection."
},
"version": {
"type": [
"string",
"null"
],
"description": "Detected version, when the fingerprint reveals one."
},
"signals": {
"type": "array",
"description": "The evidence behind the detection: what kind of fingerprint matched and the matched value.",
"items": {
"type": "object",
"required": [
"kind",
"match"
],
"properties": {
"kind": {
"type": "string",
"description": "Signal type, e.g. 'header', 'script', 'meta', 'cookie'."
},
"match": {
"type": "string",
"description": "The matched fingerprint value."
}
}
}
},
"description": {
"type": [
"string",
"null"
],
"description": "Short description of the technology."
},
"website": {
"type": [
"string",
"null"
],
"description": "The technology vendor's website."
},
"icon": {
"type": [
"string",
"null"
],
"description": "Icon identifier for the technology."
},
"pricing": {
"type": "array",
"items": {
"type": "string"
},
"description": "Pricing traits, e.g. 'freemium', 'payg'."
},
"saas": {
"type": "boolean",
"description": "True if offered as a hosted SaaS."
},
"oss": {
"type": "boolean",
"description": "True if open source."
}
}
}
}
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/jobspipe-stack-scan-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.