Folders

Las carpetas te dejan organizar documentos en una jerarquía. Puedes crearlas, consultarlas, renombrarlas, moverlas, eliminarlas y listar los documentos que contienen.

Los ids de carpeta llevan el prefijo fld_. Una carpeta puede anidarse bajo otra vía parentId; null (u omitido) significa nivel raíz.

List folders

GET /folders

Lista tus carpetas con paginación por cursor.

Parámetros

limit query Resultados por página (1–100, default 20).
startingAfter query Cursor: carpetas después de este id (fld_…).
endingBefore query Cursor: carpetas antes de este id (fld_…).
sort query Orden por fecha de creación: createdAt o -createdAt (default -createdAt).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/folders?limit=20" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 Sobre de paginación por cursor (object: "list") con objetos Folder. — FolderList

{
  "object": "list",
  "data": [
    {
      "object": "folder",
      "id": "fld_c0ffeec0ffeec0ff",
      "livemode": true,
      "name": "Contratos 2026",
      "parentId": null,
      "ownerId": "usr_1a2b3c4d5e6f7g8h",
      "hasDocs": true,
      "isMain": false,
      "createdAt": "2026-05-02T09:00:00Z",
      "updatedAt": "2026-07-01T14:30:00Z"
    }
  ],
  "hasMore": false,
  "limit": 20,
  "nextCursor": null,
  "previousCursor": null
}

Errores posibles (problem+json): 400 401 403 422 429

Create folder

POST /folders

Crea una carpeta. Puedes anidarla pasando un parentId; si lo omites (o mandas null), la carpeta queda a nivel raíz.

Cuerpo de la petición

application/json · schema FolderCreateRequest

{
  "name": "Contratos 2026",
  "parentId": null
}

Ejemplo (cURL)

curl "https://api.allsign.io/v3/folders" \
  -H "Authorization: Bearer allsign_live_sk_..." \
  -H "Content-Type: application/json" \
  -d '{ "name": "Contratos 2026", "parentId": null }'

Respuestas

201 El objeto Folder creado. — Folder

{
  "object": "folder",
  "id": "fld_c0ffeec0ffeec0ff",
  "livemode": true,
  "name": "Contratos 2026",
  "parentId": null,
  "ownerId": "usr_1a2b3c4d5e6f7g8h",
  "hasDocs": false,
  "isMain": false,
  "createdAt": "2026-07-12T15:00:00Z",
  "updatedAt": "2026-07-12T15:00:00Z"
}

Errores posibles (problem+json): 400 401 403 404 422 429

Retrieve folder

GET /folders/{folder_id}

Consulta una carpeta por su id.

Parámetros

folder_id path · requerido ID de la carpeta (fld_…).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/folders/fld_c0ffeec0ffeec0ff" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 El objeto Folder. — Folder

{
  "object": "folder",
  "id": "fld_c0ffeec0ffeec0ff",
  "livemode": true,
  "name": "Contratos 2026",
  "parentId": null,
  "ownerId": "usr_1a2b3c4d5e6f7g8h",
  "hasDocs": true,
  "isMain": false,
  "createdAt": "2026-05-02T09:00:00Z",
  "updatedAt": "2026-07-01T14:30:00Z"
}

Errores posibles (problem+json): 400 401 403 404 422 429

Update folder

PATCH /folders/{folder_id}

Merge-patch parcial: solo se modifican los campos que envías. Los únicos campos mutables son name y parentId. Enviar cualquier otro campo se rechaza al parsear con 422 VALIDATION_ERROR nombrando el campo ofensor.

Parámetros

folder_id path · requerido ID de la carpeta (fld_…).

Cuerpo de la petición

application/json · schema FolderUpdateRequest

{
  "name": "Contratos firmados 2026"
}

Ejemplo (cURL)

curl -X PATCH "https://api.allsign.io/v3/folders/fld_c0ffeec0ffeec0ff" \
  -H "Authorization: Bearer allsign_live_sk_..." \
  -H "Content-Type: application/json" \
  -d '{ "name": "Contratos firmados 2026" }'

Respuestas

200 El objeto Folder actualizado. — Folder

{
  "object": "folder",
  "id": "fld_c0ffeec0ffeec0ff",
  "livemode": true,
  "name": "Contratos firmados 2026",
  "parentId": null,
  "ownerId": "usr_1a2b3c4d5e6f7g8h",
  "hasDocs": true,
  "isMain": false,
  "createdAt": "2026-05-02T09:00:00Z",
  "updatedAt": "2026-07-12T16:40:00Z"
}

Errores posibles (problem+json): 400 401 403 404 422 429

Delete folder

DELETE /folders/{folder_id}

Elimina una carpeta vacía. Si la carpeta todavía tiene documentos o subcarpetas, la operación falla con 400 (mismos guardarraíles que protegen tu jerarquía). Vacía o mueve su contenido primero. A diferencia de FOLDER_NOT_FOUND, el caso "carpeta no vacía" todavía usa el formato de error heredado y aún no forma parte del catálogo problem+json congelado.

Parámetros

folder_id path · requerido ID de la carpeta (fld_…).

Ejemplo (cURL)

curl -X DELETE "https://api.allsign.io/v3/folders/fld_c0ffeec0ffeec0ff" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

204 Eliminada. Sin body.

Errores posibles (problem+json): 400 401 403 404 422 429

List folder documents

GET /folders/{folder_id}/documents

Lista los documentos contenidos en una carpeta, con paginación por cursor. Devuelve el mismo sobre que List documents.

Parámetros

folder_id path · requerido ID de la carpeta (fld_…).
limit query Resultados por página (1–100, default 20).
startingAfter query Cursor: documentos después de este id (doc_…).
endingBefore query Cursor: documentos antes de este id (doc_…).

Ejemplo (cURL)

curl "https://api.allsign.io/v3/folders/fld_c0ffeec0ffeec0ff/documents?limit=20" \
  -H "Authorization: Bearer allsign_live_sk_..."

Respuestas

200 Sobre de paginación por cursor con objetos Document. — DocumentList

{
  "object": "list",
  "data": [
    {
      "object": "document",
      "id": "doc_5Qr9tA3fZwLZmp3D1bCdEfG",
      "livemode": true,
      "name": "Contrato de arrendamiento 2026.pdf",
      "status": "completed",
      "documentType": "editable",
      "signerCount": 2,
      "signedCount": 2,
      "ownerId": "usr_1a2b3c4d5e6f7g8h",
      "orgId": "org_9i8u7y6t5r4e3w2q",
      "folderId": "fld_c0ffeec0ffeec0ff",
      "expiresAt": null,
      "expirationReminders": null,
      "createdAt": "2026-07-11T18:04:00Z",
      "updatedAt": "2026-07-11T22:00:00Z"
    }
  ],
  "hasMore": false,
  "limit": 20,
  "nextCursor": null,
  "previousCursor": null
}

Errores posibles (problem+json): 400 401 403 404 422 429