Ir para o conteúdo principal

Normas Orçamentárias | Schema V1 | 2025 - ∞

Tipo Envio: Diário

Objeto Raiz
Campo Informações
timestamp Campo utilizado para ordenar a validação das informações enviadas. Caso sejam enviados múltiplos payloads do mesmo tipo, a ordenação ocorrerá da data mais antiga para a mais recente
elementos

Item
Campo Chave Informações
exercicio Exercício que se refere a lei
numeroLei NNNNNAAAA
dataPublicacao
tipo Tabela Tipo Lei
protocoloTCE Ex.: 000000/00
tipoAutorizacao SIMNAO
valor
action Define a operação a ser realizada com a informação, seja ela criação, atualização ou exclusão

Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Lista de Leis Orçamentárias",
  "description": "Lista de objetos representando a entidade Lei Orçamentária",
  "type": "object",
  "properties": {
    "timestamp": {
      "type": "string",
      "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)\\.\\d{3,6}$",
      "examples": ["2025-09-11T15:30:00.123456"]
    },
    "elementos": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "title": "Lei Orçamentária",
        "description": "Representação do schema para envio da entidade Lei Orçamentária",
        "type": "object",
        "properties": {
          "exercicio": {
            "type": "string",
            "minLength": 4,
            "maxLength": 4,
            "pattern": "^[0-9]+$"
          },
          "numeroLei": {
            "type": "string",
            "minLength": 9,
            "maxLength": 9,
            "pattern": "^[0-9]+$"
          },
          "dataPublicacao": {
            "type": "string",
            "format": "date"
          },
          "tipo": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-9]+$"
          },
          "protocoloTCE": {
            "type": "string",
            "minLength": 9,
            "maxLength": 9,
            "pattern": "^[0-9]{6}/[0-9]{2}$"
          },
          "tipoAutorizacao": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-1]{1}$"
          },
          "valorLei": {
            "type": "number",
            "exclusiveMinimum": 0
          },
          "action": {
            "type": "string",
            "enum": ["CREATE", "UPDATE", "DELETE"]
          }
        },
        "required": [
          "competencia",
          "numeroLei",
          "dataPublicacao",
          "tipo",
          "protocoloTCE",
          "tipoAutorizacao",
          "valor",
          "action"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": ["timestamp", "elementos"],
  "additionalProperties": false
}

Exemplo de Payload
{
  "timestamp": "2025-09-11T15:30:00.123456",
  "elementos": [
    {
      "exercicio": "2025",
      "numeroLei": "123456789",
      "dataPublicacao": "2025-09-11",
      "tipo": "0",
      "protocoloTCE": "000000/00",
      "tipoAutorizacao": "1",
      "valor": 5000000.00,
      "action": "CREATE"
    }
  ]
}