You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

219 lines
4.2 KiB

{
"title": "Wappalyzer schema",
"definitions": {
"non-empty-non-blank-string": {
"type": "string",
"pattern": "^(?!\\s*$).+"
}
},
"type": "object",
"additionalProperties": false,
"required": ["technologies", "categories"],
"properties": {
"$schema": {
"type": "string"
},
"categories": {
"type": "object",
"minProperties": 64,
"additionalProperties": false,
"patternProperties": {
"^[0-9]+$": {
"type": "object",
"properties": {
"priority": {
"type": "number"
},
"name": {
"type": "string"
}
}
}
}
},
"technologies": {
"type": "object",
"additionalProperties": {
"additionalProperties": false,
"required": ["cats","website"],
"properties": {
"description": {
"type": "string",
"pattern": "^.{0,500}$"
},
"cats": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 1
},
"cpe": {
"$ref": "#/definitions/non-empty-non-blank-string"
},
"cookies": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
},
"additionalProperties": {
"type": "string"
}
}
},
"js": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
},
"additionalProperties": {
"type": "string"
}
}
},
"dom": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
}
}
},
"dns": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
}
}
},
"headers": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
},
"additionalProperties": {
"type": "string"
}
}
},
"html": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"css": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"robots": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"certIssuer": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"excludes": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"implies": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"meta": {
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^.+$": {
},
"additionalProperties": {
"type": "string"
}
}
},
"scripts": {
"oneOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
},
{
"$ref": "#/definitions/non-empty-non-blank-string"
}
]
},
"url": {
"$ref": "#/definitions/non-empty-non-blank-string"
},
"website": {
"$ref": "#/definitions/non-empty-non-blank-string"
},
"icon": {
"$ref": "#/definitions/non-empty-non-blank-string"
}
}
}
}
}
}