# Sube documentos desde tus propios sistemas
Source: https://nordvec.com/es/docs/guides/how-to/push-documents#envía-un-documento

## Envía un documento [#envía-un-documento]

`/documents/push` crea el documento o lo actualiza si ya existe uno con el mismo `id` en el origen de datos.

```bash
curl https://nordvec.com/api/v1/documents/push \
  -H "Authorization: Bearer $NORDVEC_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: page-4711-2026-09-28" \
  -d '{
    "tenantId": "YOUR_WORKSPACE_ID",
    "document": {
      "id": "page-4711",
      "title": "Travel expense policy",
      "datasource": "confluence-export",
      "body": { "mimeType": "text/markdown", "content": "# Travel expenses\n..." },
      "permissions": {},
      "sourceUrl": "https://wiki.example.com/pages/4711",
      "type": "policy"
    }
  }'
```

```json
{ "documentId": "page-4711", "status": "queued", "updated": false }
```

* `id` es tu id estable para el documento dentro del origen de datos. Enviar el mismo `id` de nuevo lo actualiza; el contenido sin cambios se reconoce por su hash y no se indexa dos veces.
* `body.mimeType` es uno de `text/plain`, `text/markdown`, `text/html`, `application/pdf` o los tipos de Word, Excel y PowerPoint (`.docx`, `.xlsx`, `.pptx`). El contenido binario se envía codificado en base64.
* `sourceUrl` se convierte en el enlace "ir a la fuente" en cada cita del documento. Omítelo en un reenvío para mantener el almacenado, o envía `null` para borrarlo.
* `type` establece el `content_type` del documento, que la búsqueda y los filtros de lista utilizan.

Todo el cuerpo de la solicitud está limitado a 1 MB, por lo que un archivo grande o un lote grande responde con `413`; divídelo.