JSON
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://suporte.inspire4u.com.br/schemas/eksp/v1/document.schema.json",
  "title": "Documento de conteúdo",
  "type": "object",
  "required": [
    "id",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "description": "Identificador estável e único no provedor."
    },
    "type": {
      "type": "string",
      "enum": [
        "article",
        "faq",
        "tutorial",
        "changelog",
        "api_reference",
        "product",
        "plan",
        "policy",
        "status",
        "video",
        "glossary"
      ]
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "url": {
      "type": [
        "string",
        "null"
      ]
    },
    "summary": {
      "type": [
        "string",
        "null"
      ]
    },
    "body_markdown": {
      "type": "string",
      "description": "Conteúdo completo em Markdown (obrigatório salvo quando deleted=true)."
    },
    "locale": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "product_area": {
      "type": [
        "string",
        "null"
      ]
    },
    "audience": {
      "type": "string",
      "enum": [
        "public",
        "customer",
        "internal"
      ]
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "deleted": {
      "type": "boolean"
    }
  },
  "description": "Quando deleted != true, type, title e body_markdown são obrigatórios."
}

Encontrou algo para melhorar? Escreva para master@inspire4u.com.br.