{
"title": "Wappalyzer schema",
"definitions": {
"non-empty-non-blank-string": {
"type": "string",
"pattern": "^(?!\\s*$).+"
}
},
"type": "object",
"additionalProperties": {
"additionalProperties": false,
"required": ["cats","website"],
"properties": {
"description": {
"pattern": "^.{0,500}$"
"oss": {
"type": "boolean"
"saas": {
"pricing": {
"type": "array",
"items": {
"pattern": "^(low|mid|high|freemium|poa|payg|onetime|recurring)$"
"cats": {
"type": "number"
"minItems": 1
"cpe": {
"pattern": "cpe:2.3:(a|h|o):[^*:]+:[^:]+:\\*:\\*:\\*:\\*:\\*:[^:]+:\\*:\\*"
"cookies": {
"patternProperties": {
"^.+$": {
"type": "string"
"js": {
"dom": {
"oneOf": [
"$ref": "#/definitions/non-empty-non-blank-string"
]
"dns": {
"headers": {
"html": {
"text": {
"css": {
"robots": {
"probe": {
"certIssuer": {
"excludes": {
"implies": {
"requires": {
"requiresCategory": {
"meta": {
"scriptSrc": {
"scripts": {
"url": {
"website": {
"icon": {
"xhr": {