# Referencia de la API

> Todos los endpoints de la API v1 de ByDomu con sus parámetros, el permiso que piden, la respuesta y ejemplos en cURL, JavaScript y Python.


La API v1 de ByDomu es REST con JSON. Esta referencia se genera desde la spec OpenAPI, que a su vez sale del código de las rutas: cada endpoint trae sus parámetros, el permiso que pide y ejemplos. No hay SDK oficial; con la spec puedes generar tu cliente.

Dirección base

`https://api.bydomu.com/v1`

OpenAPI

[openapi.json · v3.1.0](https://api.bydomu.com/v1/openapi.json)

Colecciones

[Postman](https://developers.bydomu.com/bydomu-api.postman_collection.json) · [Bruno](https://developers.bydomu.com/bydomu-api.bruno_collection.json)

Para agentes de IA

[llms.txt](https://developers.bydomu.com/llms.txt) · [llms-full.txt](https://developers.bydomu.com/llms-full.txt)

## Autenticación

La clave va en el encabezado `X-API-Key` (no se acepta Authorization: Bearer). Se crea en ByDomu, en Configuración › API Keys, y la completa se ve una sola vez.

```bash
curl https://api.bydomu.com/v1/me \
  -H "X-API-Key: $BYDOMU_API_KEY"
```

`domu_pk_live_` publicable

Para páginas web y el navegador. Solo: portal:read, leads:write, booking:write, finder:write, events:write.

`domu_sk_live_` secreta

Solo desde un servidor: con Origin (navegador) responde 403 SECRET_KEY_IN_BROWSER. Cualquier permiso.

`domu_live_` legado

Claves creadas antes de los tipos. Siguen funcionando igual.

### Niveles de acceso

Nivel Planes Cómo se obtiene

1 **Claves publicables** 300 peticiones y 60 escrituras por minuto · hasta 5 claves Cualquier plan pagado Sin solicitud

2 **Secretas de solo lectura** 60 peticiones por minuto · hasta 2 claves Business · Enterprise Automático

3 **Escrituras, mensajes, webhooks y límites altos** A la medida de lo aprobado Cualquier plan pagado Revisión de soporte

## Paginación

Los listados reciben `page` (desde 1) y `pageSize`, y responden con los datos y el total. Cada endpoint dice su pageSize máximo. Contactos, negocios y tareas aceptan además cursor.

```json
{
  "data": [ … ],
  "meta": { "total": 64, "page": 1, "pageSize": 12, "totalPages": 6 }
}
```

## Errores

Siempre con la misma forma. Los datos que no pasan la validación del esquema responden 400 con la lista de problemas.

```json
{
  "error": {
    "code": "FORBIDDEN",
    "message": "La API key no tiene el scope requerido: contacts:read"
  }
}
```

**400** `VALIDATION_ERROR` Datos de entrada inválidos

**401** `UNAUTHORIZED` Clave faltante o inválida

**402** `PAYMENT_REQUIRED` Cuenta en solo lectura: escritura rechazada

**403** `FORBIDDEN` La clave no tiene ese permiso

**403** `SECRET_KEY_IN_BROWSER` Clave secreta usada desde un navegador

**403** `API_ACCESS_REQUIRED` El nivel de la cuenta no permite esta clave

**403** `PLAN_LIMIT_REACHED` Se alcanzó un tope del plan

**404** `NOT_FOUND` Recurso no encontrado

**409** `IDEMPOTENCY_CONFLICT` Idempotency-Key reutilizada con otro cuerpo

**409** `IDEMPOTENCY_IN_PROGRESS` Otra petición con la misma Idempotency-Key sigue en curso

**429** `RATE_LIMITED` Límite por minuto superado

**429** `TENANT_RATE_LIMITED` Límite de escrituras por minuto de la organización superado

## Límites

Una clave publicable tiene 300 peticiones y 60 escrituras por minuto; una secreta, 60 y 30. Soporte puede aprobar más. Cada respuesta trae `X-RateLimit-Limit`, `X-RateLimit-Remaining` y `X-RateLimit-Reset`; al pasarte, `429 RATE_LIMITED` con `Retry-After`.

En cualquier escritura puedes mandar `Idempotency-Key`: un reintento con la misma clave y el mismo cuerpo devuelve la respuesta original con `Idempotency-Status: replayed`. Vive 24 horas.

## Recursos

[**Cuenta** 1 endpoint · Información de la API key y la organización](https://developers.bydomu.com/referencia/get-me) [**Portal** 1 endpoint · Configuración del portal inmobiliario](https://developers.bydomu.com/referencia/get-portal) [**Propiedades** 6 endpoints · Inventario publicado en el portal; crear y actualizar propiedades del CRM](https://developers.bydomu.com/referencia/list-properties) [**Agentes** 2 endpoints · Agentes con propiedades publicadas en el portal](https://developers.bydomu.com/referencia/list-agents) [**Leads** 2 endpoints · Formularios públicos de contacto y solicitud de visita](https://developers.bydomu.com/referencia/submit-lead) [**Buscador** 1 endpoint · Buscador inteligente de propiedades para prospectos](https://developers.bydomu.com/referencia/submit-finder) [**Reservas** 4 endpoints · Agendamiento de citas con agentes desde páginas públicas](https://developers.bydomu.com/referencia/list-booking-agents) [**Contactos** 4 endpoints · Contactos del CRM (clientes, propietarios, prospectos)](https://developers.bydomu.com/referencia/list-contacts) [**Embudos** 2 endpoints · Pipelines de ventas y arriendos con etapas configurables](https://developers.bydomu.com/referencia/list-pipelines) [**Negocios** 5 endpoints · Oportunidades comerciales del pipeline](https://developers.bydomu.com/referencia/list-deals) [**Tareas** 4 endpoints · Tareas asignadas al equipo comercial](https://developers.bydomu.com/referencia/list-tasks) [**Documentos** 2 endpoints · Archivos adjuntos a negocios](https://developers.bydomu.com/referencia/list-documents) [**Sobres de firma** 2 endpoints · Sobres de firma electrónica](https://developers.bydomu.com/referencia/list-envelopes) [**Conversaciones** 4 endpoints · Mensajes de WhatsApp con los contactos](https://developers.bydomu.com/referencia/list-conversations) [**Citas** 5 endpoints · Citas agendadas con contactos (visitas, reuniones, llamadas)](https://developers.bydomu.com/referencia/list-appointments) [**Equipo** 2 endpoints · Miembros de la inmobiliaria](https://developers.bydomu.com/referencia/list-team-members) [**Etiquetas** 1 endpoint · Etiquetas para clasificar contactos y negocios](https://developers.bydomu.com/referencia/list-tags) [**Campos personalizados** 1 endpoint · Definiciones de campos personalizados](https://developers.bydomu.com/referencia/list-custom-fields) [**Comisiones** 2 endpoints · Comisiones generadas por negocios cerrados](https://developers.bydomu.com/referencia/list-commissions) [**Contabilidad** 2 endpoints · Ingresos y egresos](https://developers.bydomu.com/referencia/list-accounting-entries) [**Arriendos** 2 endpoints · Contratos de arrendamiento con sus pagos y mantenimientos](https://developers.bydomu.com/referencia/list-leases) [**Notas** 1 endpoint · Notas rápidas enganchadas a contactos, negocios y propiedades](https://developers.bydomu.com/referencia/create-note) [**Eventos** 4 endpoints · Catálogo de eventos de dominio, histórico reciente y analítica del portal](https://developers.bydomu.com/referencia/list-event-types) [**Webhooks** 4 endpoints · Suscripciones HTTP salientes para Zapier, n8n, Make e integraciones propias](https://developers.bydomu.com/referencia/list-webhooks) [**Modo de prueba** 2 endpoints · Solo con claves `_test_`: reiniciar los datos de ejemplo y disparar eventos de prueba a tus webhooks](https://developers.bydomu.com/referencia/reset-test-data)
