API

Visão Geral da API

Referência completa da API pública do Nobur para integração programática.

API Pública do Nobur

A API pública do Nobur permite que sistemas externos se integrem programaticamente com a plataforma de gestão de negócios imobiliários. Com ela, você pode criar e gerenciar corretores, imóveis, partes, propostas, contratos, documentos e webhooks.

Como Começar

  1. Acesse as Configurações da sua organização no Nobur
  2. Navegue até Chaves de API
  3. Crie uma nova chave de API ou token de acesso pessoal
  4. Use a chave no header X-API-Key de todas as requisições

URL Base

Todas as requisições devem ser feitas para:

https://api.nobur.com.br/public/v1/

Formato de Resposta

A API utiliza JSON em todas as requisições e respostas. Inclua o header Content-Type: application/json em requisições com corpo.

curl -X GET https://api.nobur.com.br/public/v1/brokers \
  -H "X-API-Key: nbr_sua_chave_aqui" \
  -H "Content-Type: application/json"

Recursos Disponíveis

RecursoDescriçãoOperações
/meInformações do principal autenticadoGET
/brokersCorretores de imóveisCRUD + lote
/propertiesImóveisCRUD + lote
/partiesPartes (compradores, vendedores)CRUD + lote
/proposalsPropostas de transaçãoCRUD
/contractsContratos imobiliáriosCRUD
/documentsDocumentos e certidõesCRUD
/webhooksAssinaturas de webhookCRUD + entregas

Códigos de Status HTTP

CódigoSignificado
200Requisição bem-sucedida
201Recurso criado com sucesso
204Recurso excluído com sucesso (sem corpo na resposta)
400Erro de validação nos dados enviados
401Autenticação necessária ou credenciais inválidas
403Permissão insuficiente para a operação
404Recurso não encontrado
409Conflito com recurso existente
429Limite de requisições excedido
500Erro interno do servidor

Formato de Erros

Erros seguem o padrão RFC 9457 (Problem Details for HTTP APIs):

{
  "type": "validation",
  "title": "Validation Failed",
  "status": 400,
  "detail": "name is required",
  "code": "validation.broker.name_required",
  "instance": "/public/v1/brokers",
  "request_id": "req_abc123",
  "timestamp": "2026-02-15T12:00:00Z",
  "documentation_url": "https://docs.nobur.com.br/errors/validation",
  "errors": [
    {
      "field": "name",
      "message": "name is required",
      "code": "validation.broker.name_required"
    }
  ]
}

O campo code pode ser utilizado para tratamento programático de erros. O campo errors contém detalhes por campo em erros de validação (status 400).

Rate Limiting

A API aplica limites de requisições baseados no seu plano. Os seguintes headers são incluídos em todas as respostas:

HeaderDescrição
X-RateLimit-LimitNúmero máximo de requisições por janela
X-RateLimit-RemainingRequisições restantes na janela atual
X-RateLimit-ResetTimestamp Unix de quando a janela será reiniciada

Quando o limite é excedido, a API retorna status 429 com o campo retry_after indicando quantos segundos esperar.

Idempotência

Operações de criação (POST) aceitam o header Idempotency-Key com um UUID v4 único. Se a mesma chave for enviada novamente dentro de 24 horas, a API retornará o mesmo resultado sem processar a requisição novamente.

curl -X POST https://api.nobur.com.br/public/v1/brokers \
  -H "X-API-Key: nbr_sua_chave_aqui" \
  -H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
  -H "Content-Type: application/json" \
  -d '{"name": "João da Silva", "creci": "12345-F"}'

Valores Monetários

Todos os valores monetários são representados em centavos (inteiros). Por exemplo, R$ 500.000,00 é representado como 50000000.

Especificação OpenAPI

A especificação completa da API está disponível no formato OpenAPI 3.1 em:

https://api.nobur.com.br/public/v1/openapi.yaml