Referencia de la API
La API pública de NexBasira es REST + JSON, versionada bajo /api/v1/public/*. Cada endpoint se autentica mediante su par de credenciales cvp_pub:cvp_sec, está restringido por ámbito y usa paginación por cursor donde devuelve una lista.
URL base
https://app.nexbasira.com/api/v1/public Para instalaciones autoalojadas, sustituya el host por el suyo. La ruta es la misma.
Secciones
- Autenticación — par de credenciales, esquema de firma, catálogo de ámbitos
- Paginación + idempotencia — paginación por cursor + cabecera
Idempotency-Key - Errores + límites de tasa — forma del envoltorio de error, cabeceras
X-RateLimit-* - Sesiones — crear, listar, recuperar, finalizar, invitar
- Pruebas — listar, recuperar, URL de descarga firmada
- Pizarras — listar por sesión
- Endpoints de webhook — registrar / rotar secreto / disparo de prueba
- Marca — solo lectura en la API pública; mutaciones vía la SPA
- Organización — metadatos de organización de solo lectura
Esquema OpenAPI
Una especificación OpenAPI 3.1 filtrada (solo las operaciones etiquetadas como public-api) se sirve en https://app.nexbasira.com/api/public-schema/. Úsela directamente con generadores de código:
# Node typed types
npx openapi-typescript https://app.nexbasira.com/api/public-schema/ -o src/nb-types.ts
# Python typed models
datamodel-codegen \
--url https://app.nexbasira.com/api/public-schema/ \
--input-file-type openapi \
--output-model-type pydantic_v2.BaseModel \
--output cvp_models.py Nuestros SDK (@nexbasira/node + nexbasira para Python) están construidos sobre estos tipos generados y añaden ergonomía escrita a mano: errores tipados, paginación con iterador asíncrono, ayudantes de verificación de webhooks.
Estabilidad de la API
La API pública sigue semver-por-espacio-de-nombres-de-URL. Los cambios que rompen compatibilidad se publican bajo un nuevo prefijo (/api/v2/public/*) con al menos 12 meses de solapamiento antes de retirar la versión previa. Los cambios aditivos (nuevos campos opcionales, nuevos endpoints, nuevos tipos de evento) se publican en el mismo sitio; los SDK tratan los campos desconocidos como compatibles hacia adelante.