BuildNexion

Documentos

Los archivos de la pestaña Documentación de cada obra: contratos, planos, licencias, seguros… El listado trae los datos de cada uno; el texto y el archivo se piden aparte.

Documentos de una obra

GET/api/v1/projects/{id}/documentsread:documents

Del más reciente al más antiguo.

Parámetros (query)

ParámetroDescripción
folder
string
Solo los de una carpeta (p. ej. Contratos). Los que no tienen carpeta van en General.
limit / cursor
—
Paginación: de 1 a 200 por página (50 por defecto).
curl "https://app.buildnexion.com/api/v1/projects/6f1c2a9e-3b7d-4c1e-9a52-1d0e8b7c4a21/documents?folder=Contratos" \
  -H "Authorization: Bearer $BUILDNEXION_API_KEY"
Respuesta
{
  "data": [
    {
      "id": "f2b9d4a7-5e1c-4c38-9a06-e8d3b7f1a294",
      "name": "Contrato subcontrata electricidad.pdf",
      "folder": "Contratos",
      "mime_type": "application/pdf",
      "size_bytes": 482113,
      "has_text": true,
      "created_at": "2026-09-05T10:41:27.993+00:00"
    }
  ],
  "pagination": {
    "limit": 50,
    "next_cursor": null
  }
}

has_text indica si la app ha extraído el texto del documento (PDF con texto).

Texto de un documento

GET/api/v1/documents/{id}/textread:documents

Parámetros (query)

ParámetroDescripción
max_chars
integer
Máximo de caracteres, de 1 a 200.000. Por defecto, 8.000.
curl "https://app.buildnexion.com/api/v1/documents/f2b9d4a7-5e1c-4c38-9a06-e8d3b7f1a294/text?max_chars=20000" \
  -H "Authorization: Bearer $BUILDNEXION_API_KEY"
Respuesta
{
  "data": {
    "id": "f2b9d4a7-5e1c-4c38-9a06-e8d3b7f1a294",
    "text": "CONTRATO DE SUBCONTRATACIÓN\n\nEn Mérida, a 5 de septiembre de 2026…",
    "truncated": true
  }
}

truncated es true si el texto es más largo que max_chars. Sin texto extraído, text es "".

Descargar un documento

GET/api/v1/documents/{id}/downloadread:documents

Devuelve un enlace de descarga firmado, válido 15 minutos:

curl "https://app.buildnexion.com/api/v1/documents/f2b9d4a7-5e1c-4c38-9a06-e8d3b7f1a294/download" \
  -H "Authorization: Bearer $BUILDNEXION_API_KEY"
Respuesta
{
  "data": {
    "url": "https://…supabase.co/storage/v1/object/sign/project-docs/…?token=…&download=Contrato%20subcontrata%20electricidad.pdf",
    "expires_at": "2026-10-08T10:15:00.000Z"
  }
}
El enlace no necesita la API key: cualquiera que lo tenga puede descargar el archivo hasta que caduque. No lo guardes ni lo compartas; pide uno nuevo cada vez.