Skip to Content
UsuárioAPI'sAPI Plataforma

Visão geral

Esta documentação descreve como consumir a API (requisições, autenticação, headers, paginação e endpoints).
Ela é voltada para integrações (frontend, mobile, sistemas terceiros).

URL base e formato

  • Base URL: https://<seu-dominio-ou-ip> (o time de infraestrutura define por ambiente)
  • Formato: JSON na maioria das rotas
  • Content-Type (JSON): application/json

Autenticação

A API utiliza dois tokens enviados via headers:

  • X-AUTH-TOKEN: token de sessão do usuário
  • X-TN-TOKEN: token do tenant (valor opaco; trate como string e não tente decodificar)

Em endpoints protegidos, ambos são obrigatórios.

Login (usuário/senha)

POST /login
Body: application/x-www-form-urlencoded (form)

Campos:

  • email (obrigatório)
  • senha (obrigatório)

Exemplo (cURL):

curl -X POST "https://<host>/login" ^ -H "Content-Type: application/x-www-form-urlencoded" ^ --data-urlencode "email=usuario@empresa.com" ^ --data-urlencode "senha=SUA_SENHA"

Resposta (exemplo):

{ "statusLicenca": "ATIVO", "authToken": "uuid-ou-token", "tnToken": "token-opaco-do-tenant", "usuarioPublico": false, "idEmpresa": 123, "idUsuario": 456, "adm": false }

Login via LDAP

POST /login/LDAP
Body: JSON

{ "username": "usuario", "password": "senha" }

Login via OAuth (Firebase)

POST /login/oAuth
Body: JSON

{ "email": "usuario@empresa.com", "uid": "uid-do-provedor" }

Logout

POST /logout
Headers obrigatórios: X-AUTH-TOKEN, X-TN-TOKEN

Recuperar senha

POST /recuperarsenha
Body: JSON

{ "email": "usuario@empresa.com" }

Headers obrigatórios (endpoints protegidos)

Em chamadas autenticadas, envie:

  • X-AUTH-TOKEN: <authToken>
  • X-TN-TOKEN: <tnToken>

Exemplo (cURL):

curl "https://<host>/projetos/listar?ativo=true" ^ -H "X-AUTH-TOKEN: <authToken>" ^ -H "X-TN-TOKEN: <tnToken>"

Respostas de erro (padrão)

Em geral, erros retornam um JSON no formato:

{ "mensagem": "Descrição do erro", "tipo": "error", "codigo": "opcional" }

Códigos HTTP mais comuns

  • 400: requisição inválida (validação/negócio)
  • 401: sessão expirada / tokens inválidos / login necessário
  • 403: sem permissão para acessar o recurso

Paginação (quando aplicável)

Algumas rotas aceitam parâmetros de paginação via query string:

  • pageNumber (1-based para o cliente; ex: 1, 2, 3…)
  • pageSize (padrão 10; máximo 1000)
  • orderBy (opcional)
  • direction (opcional; ex: asc / desc)

Exemplo:

curl "https://<host>/valores/camada/10/pg?pageNumber=1&pageSize=50" ^ -H "X-AUTH-TOKEN: <authToken>" ^ -H "X-TN-TOKEN: <tnToken>"

Upload de arquivos

Endpoints de upload normalmente usam multipart/form-data.

Exemplo genérico (cURL):

curl -X POST "https://<host>/fotos" ^ -H "X-AUTH-TOKEN: <authToken>" ^ -H "X-TN-TOKEN: <tnToken>" ^ -F "file=@C:\caminho\imagem.jpg"

Swagger (referência de schemas)

Além desta documentação, a API expõe Swagger:

  • Spec OpenAPI: GET /swagger.json
  • Swagger UI: GET /docs (e assets em /docs/swagger-ui/...)

Use o Swagger para consultar schemas completos de request/response quando necessário.

Catálogo de endpoints (por área)

Abaixo está um catálogo “para uso” (método + path + parâmetros).
Para detalhes de payloads complexos, consulte o Swagger (/docs).

Utilitários / Sistema

  • OPTIONS / (preflight)
  • OPTIONS /autenticar (preflight)
  • GET /teste
  • GET /teste/geom
  • GET /teste/tenant
  • GET /versao
  • GET /health-check
  • GET /health-check/startup
  • GET /health-check/liveness
  • GET /health-check/readiness

WebSocket

  • GET /socket

Proxy (repasse de requisições)

Essas rotas encaminham a requisição para serviços internos (útil para frontends consumirem tudo por um único domínio).
Em chamadas autenticadas, envie X-AUTH-TOKEN e X-TN-TOKEN (e, quando aplicável, Authorization).

  • GET/POST/PUT/DELETE /django/*endpoint
  • GET/POST/PUT/DELETE /api-r/*endpoint
  • GET/POST/PUT/DELETE /postgrest/*endpoint
  • GET /proxy (query url)
  • POST /proxyR (query url)
  • GET /proxy-v2/blumenau/auth

Conta / Autenticação / Provisionamento

  • POST /login

  • POST /login-provider

  • POST /login/LDAP

  • POST /login/oAuth

  • POST /logout

  • POST /recuperarsenha

  • POST /nova-conta

  • POST /email (criação de conta)

  • GET /nova-conta/confirmar (query token)

  • GET /oAuth (query email)

  • POST /email/personalizado

Minha conta

  • GET /minha-conta
  • PUT /minha-conta

Empresas

  • GET /empresas
  • PUT /empresas/:id

Licenças

  • POST /licencas
  • GET /licencas/meu-plano
  • GET /licencas/tokens
  • PUT /licencas/tokens

Admin:

  • GET /adm/licencas
  • GET /adm/licencas/tenant/:id
  • PUT /adm/licencas/:id

Tenants

  • GET /tenants/config
  • PUT /tenants/config

Usuários

  • GET /usuarios/all
  • GET /usuarios
  • POST /usuarios
  • GET /usuarios/:id
  • PUT /usuarios/:id
  • PUT /usuarios/:id/inativar
  • POST /usuarios/:id/gerar-senha

Provedor / Pre-provedor

  • GET /provider

  • GET /provider/provider-user

  • POST /provider

  • POST /provider/create

  • DELETE /provider/delete/:idProvedor

  • POST /preprovider/register

  • GET /preprovider

  • GET /preprovider/provider-user

  • DELETE /preprovider/delete

Projetos

  • GET /projetos/listar (query ativo)
  • POST /projetos
  • POST /projetos/cadastro-imobiliario/nova-versao
  • GET /projetos/:id (query opcional noForms=false)
  • PUT /projetos/:id
  • DELETE /projetos/:id
  • GET /projetos/:id/extent
  • GET /projetos/:id/notas
  • PUT /projetos/:id/notas
  • POST /projetos/inativar/:id
  • POST /projetos/ativar/:id
  • POST /projetos/copiar-projeto
  • GET /projetos/info/:idProjeto
  • GET /projetos/transferir (query id, tenant, idUsuario)
  • GET /projetos/usuariospvgeo (query dominio)

V2:

  • GET /projetos/v2
  • GET /projetos/v2/:id

Camadas adicionais

  • GET /camadasAdicionais (query id_projetos opcional)
  • GET /camadasAdicionais/v2 (query id_projetos opcional)
  • POST /camadasAdicionais
  • DELETE /camadasAdicionais/:id

Camadas

  • GET /camadas (query prop, moduloId, id_camadas)
  • GET /camadas/all
  • GET /camadas/prop-valor (query prop, valor)
  • GET /camadas/previa
  • POST /camadas
  • GET /camadas/:id
  • PUT /camadas/:id
  • DELETE /camadas/:id
  • GET /camadas/:id/extent
  • GET /camadas/:id/check
  • GET /camadas/arquivos/:id
  • POST /camadas/inativar/:id
  • POST /camadas/ativar/:id
  • PUT /camadas/privada/:id
  • GET /estilizarRaster/:id
  • GET /camadas/tiff/:id/extent
  • DELETE /camadas/dxf/:id
  • DELETE /camadas/wms/:id
  • DELETE /camadas/tiff/:id
  • GET /camadas/dxf/:id/extent

V2:

  • GET /camadas/v2
  • GET /camadas/v2/:id

Rotulagem / categorização:

  • POST /camadas/rotular (query idCamada, idCampo, concat opcional)
  • POST /camadas/rotulargeometria (query idGeometria)
  • POST /camadas/rotular/rotacao (query idCamada, idCampo)
  • POST /camadas/rotulargeometria/rotacao (query idCamada, idCampo, idGeometria)
  • POST /camadas/categorizar (query idCamada, idCampo)
  • POST /camadas/categorizarFront (query idCamada, idCampo, atualizar opcional)

Formulários

  • GET /formularios
  • POST /formularios
  • GET /formularios/:id
  • PUT /formularios/:id
  • DELETE /formularios/:id
  • GET /formularios/pode-excluir/:id
  • POST /formularios/inativar/:id
  • POST /formularios/ativar/:id

V2:

  • GET /formularios/v2
  • GET /formularios/v2/:id

Campos

  • GET /campos
  • POST /campos
  • GET /campos/:id
  • PUT /campos/:id
  • GET /campos/resumo
  • GET /campos/parse-formly/:camada
  • GET /campos/:id/converter (query tipo, split opcional)
  • GET /campos/avaliacao/:idTenant/:idProjeto

V2:

  • GET /campos/v2
  • GET /campos/v2/:id

Geometrias

  • GET /geometrias
  • POST /geometrias
  • PUT /geometrias/:id
  • DELETE /geometrias/:id
  • GET /geometrias/:id
  • GET /geometrias/camada/:id (query bbox opcional)

Operações:

  • PUT /geometrias/uniao
  • PUT /geometrias/deletar
  • POST /geometrias/split/:id (query reshape opcional)
  • GET /geometrias/intersect-geom (query ids, wkt)
  • GET /geometrias/raio (query idCamada, x, y, r opcional)
  • GET /geometrias/xy (query idCamada, x, y)
  • GET /geometrias/raio-quad (query idCamada, x, y)
  • GET /geometrias/arquivos/:id
  • POST /geometrias/offline
  • POST /geometrias/copiar-geometria/:idGeometria/:idFormularioDestino
  • POST /geometrias/copiar-amostras/:idCamada
  • POST /geometrias/copiar-valores/:idCamada
  • PUT /geometrias/:id/indexMapaTematico

Vector tiles (geometrias):

  • GET /vt/:z/:x/:y (query camada)
  • GET /vt2/:z/:x/:y (query camada)

Valores (atributos)

  • GET /valores
  • POST /valores
  • POST /v2/valores
  • PUT /valores/:id
  • GET /valores/:id
  • GET /valores/geometria/:id
  • GET /valores/projeto/:id (query x, y)
  • GET /valores/camada/:id (query idCampo opcional)
  • GET /valores/camada/:id/pg (query pageNumber, pageSize, orderBy, direction, idCampo opcional)
  • GET /valores/search (query campoId, termo, page, pageSize)
  • POST /copiar-valores
  • GET /valores/edificacao/:id (query vinculado)

Projetos x Usuários

  • GET /projetos/:idProjeto/usuarios
  • POST /projetos/usuarios
  • DELETE /projetos/:idProjeto/usuarios/:idUsuario
  • POST /projetos/:idProjeto/publicar
  • POST /projetos/:idProjeto/despublicar

Camadas x Usuários

  • GET /camadas-usuarios
  • GET /camadas-usuarios/:id
  • POST /camadas-usuarios
  • PUT /camadas-usuarios/:id
  • DELETE /camadas-usuarios/:id

Templates

  • GET /templates

Arquivos / Fotos

Downloads / URLs:

  • GET /arquivos/fotos (query url)
  • GET /arquivos/fotos/presigned-url (query url)
  • GET /arquivos/fotos/:id

CRUD / uploads:

  • GET /arquivos/:id
  • PUT /arquivos/:id
  • POST /arquivos/:id/files/upload (path :id, query tipo)
  • POST /arquivos/projeto/:id/files/upload
  • POST /arquivos/empresas/:id/logo (query tipo)
  • POST /usuarios/foto (query tipo opcional)
  • DELETE /arquivos/:idArquivo

Fotos:

  • POST /fotos
  • DELETE /fotos/:midiaId
  • DELETE /fotos/nome/:fileName

Consulta geral / Pesquisa

  • GET /consulta-geral (query idProjeto, q, idCampos opcional, projetosCamadas opcional)
  • GET /consulta-geral/icad (query idProjeto, q)
  • GET /consulta-geral/logradouros (query idProjeto, q)
  • POST /pesquisa-caracteristicas

Mapa temático

  • POST /mapa-tematico

Importação

  • GET /importar/pendentes

  • PUT /importar/pendentes/hide (query idImportacao)

  • POST /importar/dxf (query codigo, nomeCamada, idProjeto, srid opcional)

  • POST /importar/kml (query codigo, nomeCamada, idProjeto, xdzs)

  • POST /importar/shp (query codigo, nomeCamada, idProjeto, srid opcional, xdzs)

  • POST /importar/pvg (query codigo, nomeCamada, idProjeto, srid opcional, xdzs)

  • POST /importar/tiff

  • GET /importar/tiff/credentials

  • POST /importar/wms

  • GET /proxy/wms/capabilities (query url)

Conversões

  • POST /converter/geojson (query targetType)

ICad:

  • POST /importar/icad/lotes-rurais (query codigo, idProjeto, xdzs)
  • POST /importar/icad/lotes (query codigo, idProjeto, xdzs)
  • POST /importar/icad/edificacoes (query codigo, idProjeto, xdzs)
  • POST /importar/icad/logradouros (query codigo, idProjeto, xdzs)
  • POST /importar/add/ouv (query codigo, idCamada, xdzs)

Importações TIFF:

  • GET /importacoes-tiff
  • GET /importacoes-tiff/:id
  • PUT /importacoes-tiff/:id

Importações DXF:

  • GET /importacoes/dxf/:id

BaseMap

  • GET /basemap

Permissões

  • GET /permissoes/projetos
  • GET /permissoes/projetos/:idProjeto
  • GET /permissoes/camadas
  • GET /permissoes/camadas/:camadaId
  • GET /permissoes/:idProjeto

Referências geográficas / CEP / Municípios

  • GET /referencias-geograficas
  • GET /referencias-geograficas/consulta (query q)
  • GET /municipios/consulta (query q)
  • GET /municipios/setores/consulta (query q)
  • GET /cep (query q, cidade opcional)

Análises espaciais

  • GET /analises/intersect (query idGeom, idCamada)
  • GET /analises/intersect/zonas (query idGeom)

Rotas específicas (quando habilitadas por ambiente/dados):

  • GET /zonas/rincao
  • GET /zonas/criciuma
  • GET /observacoes/rincao
  • GET /observacoes/criciuma
  • GET /consulta/criciuma

Geoestatística (variogramas / kriging / rlm)

  • GET /variogramas (query idProjeto opcional)

  • POST /variogramas

  • PUT /variogramas

  • GET /variogramas/automatico (query idcamada, idvm2, idChk, log)

  • GET /krigar/:idVariograma (query idDominioGeografico, salvar)

  • GET /valorPixel/:idTiff (query x, y)

  • POST /gerarPVGEO

  • POST /rlm

  • POST /rlm/final

  • POST /rlm/grafico

  • POST /rlm/:idModelo

Contratação / Planos / Calculadoras

Preparação:

  • POST /preparar/contratacao/plano
  • POST /preparar/contratacao/armazenamento
  • POST /preparar/contratacao/usuario
  • POST /preparar/contratacao/adicionais

Contratar:

  • POST /contratar/plano
  • POST /contratar/armazenamento
  • POST /contratar/usuario
  • POST /contratar/adicionais

Planos:

  • GET /planos

Calculadoras:

  • POST /calculadora/armazenamento/renovacao
  • POST /calculadora/armazenamento/upgrade
  • POST /calculadora/armazenamento/adicional

PVG (atualizações específicas)

  • POST /update/pvg/residuos/line
  • POST /update/pvg/residuos/polygon
  • POST /update/pvg/residuos/point

OUV

  • GET /ouv/ (query q)
  • GET /ouv/cidades
  • GET /ouv/legenda
  • GET /ouv/camadas/:id/geometrias
  • POST /ouv/contato
  • POST /ouv/pedir/:id

WikiMap

  • GET /wikimap
  • GET /wikimap/:id
  • PUT /wikimap/:id
  • GET /wikimap/consulta (query id, q, temaGeral, temaEspecifico, organizacao)
  • GET /wikimap/cfgs
  • GET /wikimap/minha-lista
  • POST /wikimap/minha-lista (query id)
  • GET /wikimap/avaliacoes
  • POST /wikimap/avaliar (query id)
  • POST /wikimap/:id/comentario
  • DELETE /wikimap/comentario/:id

Auditoria

  • GET /auditoria/geometrias (query idProjeto opcional, idCamada opcional, idUsuario opcional, dataInicioLong, dataFinalLong, limite opcional)

Mapas personalizados

  • GET /mapas-personalizados
  • GET /mapas-personalizados/:id
  • POST /mapas-personalizados
  • PUT /mapas-personalizados/:id
  • DELETE /mapas-personalizados/:id

Relatórios de camada

  • GET /relatorios-de-camada
  • GET /relatorios-de-camada/:id
  • POST /relatorios-de-camada
  • PUT /relatorios-de-camada/:id
  • DELETE /relatorios-de-camada/:id

Reports (PDF/relatórios específicos)

  • POST /reports/rincao/avaliacao
  • POST /reports/urussanga/previa (query idImovel, idGeom)
  • POST /reports/ibiruba/previa (query idImovel, idGeom)

Fontes WMS

  • GET /fonteswms
  • GET /fonteswms/:id
  • POST /fonteswms
  • POST /fonteswms/:id/imagem
  • PUT /fonteswms/:id
  • DELETE /fonteswms/:id

Vector Tiles (SVT)

  • GET /svt/:idTenant/:idCamada/:z/:x/:y
  • GET /especifico/vector-tiles/:camada/:z/:x/:y