Schema Structure
This category uses the standard QR code category structure.Components Used
This category uses the following components:- Company Branding
- Custom Script
- Description Box
- File
- Map
- Page Layout
- Page Settings
- Page Title
- Social Profile
Schema
Copy
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "array",
"title": "Social Media category schema",
"description": "Validate social media category",
"examples": [],
"additionalProperties": false,
"items": {
"type": "object",
"required": [
"type",
"data"
],
"additionalProperties": false,
"properties": {
"type": {
"type": "string",
"enum": [
"page_layout",
"company_branding",
"page_title",
"social_media_profiles",
"map",
"custom_script",
"file",
"description_box",
"page_settings"
]
},
"data": {
"type": "object"
}
},
"allOf": [
{
"if": {
"properties": {
"type": {
"const": "page_layout"
}
}
},
"then": {
"properties": {
"data": {
"allOf": [
{
"$ref": "components/page_layout.json"
},
{
"properties": {
"templateName": {
"type": "string",
"enum": [
"linear",
"square",
"circle"
]
}
}
}
]
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "company_branding"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/company_branding.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "page_title"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/page_title.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "social_media_profiles"
}
}
},
"then": {
"properties": {
"data": {
"type": "object",
"required": [
"profiles"
],
"additionalProperties": false,
"properties": {
"profiles": {
"$ref": "components/social_profile.json"
}
}
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "map"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/map.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "custom_script"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/custom_script.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "file"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/file.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "description_box"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/description_box.json"
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "page_settings"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "components/page_settings.json"
}
}
}
}
]
}
}