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árioX-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(queryurl) - POST
/proxyR(queryurl) - 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(querytoken) -
GET
/oAuth(queryemail) -
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(queryativo) - POST
/projetos - POST
/projetos/cadastro-imobiliario/nova-versao - GET
/projetos/:id(query opcionalnoForms=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(queryid,tenant,idUsuario) - GET
/projetos/usuariospvgeo(querydominio)
V2:
- GET
/projetos/v2 - GET
/projetos/v2/:id
Camadas adicionais
- GET
/camadasAdicionais(queryid_projetosopcional) - GET
/camadasAdicionais/v2(queryid_projetosopcional) - POST
/camadasAdicionais - DELETE
/camadasAdicionais/:id
Camadas
- GET
/camadas(queryprop,moduloId,id_camadas) - GET
/camadas/all - GET
/camadas/prop-valor(queryprop,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(queryidCamada,idCampo,concatopcional) - POST
/camadas/rotulargeometria(queryidGeometria) - POST
/camadas/rotular/rotacao(queryidCamada,idCampo) - POST
/camadas/rotulargeometria/rotacao(queryidCamada,idCampo,idGeometria) - POST
/camadas/categorizar(queryidCamada,idCampo) - POST
/camadas/categorizarFront(queryidCamada,idCampo,atualizaropcional)
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(querytipo,splitopcional) - 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(querybboxopcional)
Operações:
- PUT
/geometrias/uniao - PUT
/geometrias/deletar - POST
/geometrias/split/:id(queryreshapeopcional) - GET
/geometrias/intersect-geom(queryids,wkt) - GET
/geometrias/raio(queryidCamada,x,y,ropcional) - GET
/geometrias/xy(queryidCamada,x,y) - GET
/geometrias/raio-quad(queryidCamada,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(querycamada) - GET
/vt2/:z/:x/:y(querycamada)
Valores (atributos)
- GET
/valores - POST
/valores - POST
/v2/valores - PUT
/valores/:id - GET
/valores/:id - GET
/valores/geometria/:id - GET
/valores/projeto/:id(queryx,y) - GET
/valores/camada/:id(queryidCampoopcional) - GET
/valores/camada/:id/pg(querypageNumber,pageSize,orderBy,direction,idCampoopcional) - GET
/valores/search(querycampoId,termo,page,pageSize) - POST
/copiar-valores - GET
/valores/edificacao/:id(queryvinculado)
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(queryurl) - GET
/arquivos/fotos/presigned-url(queryurl) - GET
/arquivos/fotos/:id
CRUD / uploads:
- GET
/arquivos/:id - PUT
/arquivos/:id - POST
/arquivos/:id/files/upload(path:id, querytipo) - POST
/arquivos/projeto/:id/files/upload - POST
/arquivos/empresas/:id/logo(querytipo) - POST
/usuarios/foto(querytipoopcional) - DELETE
/arquivos/:idArquivo
Fotos:
- POST
/fotos - DELETE
/fotos/:midiaId - DELETE
/fotos/nome/:fileName
Consulta geral / Pesquisa
- GET
/consulta-geral(queryidProjeto,q,idCamposopcional,projetosCamadasopcional) - GET
/consulta-geral/icad(queryidProjeto,q) - GET
/consulta-geral/logradouros(queryidProjeto,q) - POST
/pesquisa-caracteristicas
Mapa temático
- POST
/mapa-tematico
Importação
-
GET
/importar/pendentes -
PUT
/importar/pendentes/hide(queryidImportacao) -
POST
/importar/dxf(querycodigo,nomeCamada,idProjeto,sridopcional) -
POST
/importar/kml(querycodigo,nomeCamada,idProjeto,xdzs) -
POST
/importar/shp(querycodigo,nomeCamada,idProjeto,sridopcional,xdzs) -
POST
/importar/pvg(querycodigo,nomeCamada,idProjeto,sridopcional,xdzs) -
POST
/importar/tiff -
GET
/importar/tiff/credentials -
POST
/importar/wms -
GET
/proxy/wms/capabilities(queryurl)
Conversões
- POST
/converter/geojson(querytargetType)
ICad:
- POST
/importar/icad/lotes-rurais(querycodigo,idProjeto,xdzs) - POST
/importar/icad/lotes(querycodigo,idProjeto,xdzs) - POST
/importar/icad/edificacoes(querycodigo,idProjeto,xdzs) - POST
/importar/icad/logradouros(querycodigo,idProjeto,xdzs) - POST
/importar/add/ouv(querycodigo,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(queryq) - GET
/municipios/consulta(queryq) - GET
/municipios/setores/consulta(queryq) - GET
/cep(queryq,cidadeopcional)
Análises espaciais
- GET
/analises/intersect(queryidGeom,idCamada) - GET
/analises/intersect/zonas(queryidGeom)
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(queryidProjetoopcional) -
POST
/variogramas -
PUT
/variogramas -
GET
/variogramas/automatico(queryidcamada,idvm2,idChk,log) -
GET
/krigar/:idVariograma(queryidDominioGeografico,salvar) -
GET
/valorPixel/:idTiff(queryx,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/(queryq) - 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(queryid,q,temaGeral,temaEspecifico,organizacao) - GET
/wikimap/cfgs - GET
/wikimap/minha-lista - POST
/wikimap/minha-lista(queryid) - GET
/wikimap/avaliacoes - POST
/wikimap/avaliar(queryid) - POST
/wikimap/:id/comentario - DELETE
/wikimap/comentario/:id
Auditoria
- GET
/auditoria/geometrias(queryidProjetoopcional,idCamadaopcional,idUsuarioopcional,dataInicioLong,dataFinalLong,limiteopcional)
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(queryidImovel,idGeom) - POST
/reports/ibiruba/previa(queryidImovel,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