type : String | Array<String>

type

String | Array<String>

Validation succeeds if the type of the instance matches the type represented by the given type, or matches at least one of the given types.

The supported types are as follows:

Type Description
"null" The JSON null constant
"boolean" The JSON true or false constants
"object" A JSON object
"array" A JSON array
"number" A JSON number
"integer" A JSON number that represents an integer
"string" A JSON string

Note that the JSON grammar does not distinguish between integer and real numbers. Still, JSON Schema provides the integer logical type.

Examples

A schema that describes numeric instances Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "number"
}
An integer is valid Instance
42
A real number is valid Instance
3.14
A string is not valid Instance
"foo"
A schema that describes boolean or array instances Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": [ "boolean", "array" ]
}
The true boolean is valid Instance
true
A number is invalid Instance
1234
An arbitrary array is valid Instance
[ 1, 2, 3 ]