> ## Documentation Index
> Fetch the complete documentation index at: https://docs.doconda.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ¿Cómo generar un Word desde una frase en Node.js sin plantillas?

> Instala @doconda/sdk y llama a documents.create con format docx y un prompt: recibes un .docx editable y su PDF, sin plantillas.

Para generar un Word desde una frase en Node.js, instala `@doconda/sdk` y llama a `documents.create` con
`format: "docx"` y lo que quieres en `prompt`. Doconda escribe el contenido, aplica el estilo que pidas en la misma
frase y devuelve un `.docx` editable y su PDF, sin plantillas ni código de maquetación.

## Pasos

1. Crea una API key en el panel, en **API keys**, y guárdala en `DOCONDA_API_KEY`.
2. Instala el SDK (Node 20 o superior, sin dependencias en ejecución): `npm install @doconda/sdk`.
3. Crea el documento y guárdalo en disco.

```ts theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
import { writeFile } from "node:fs/promises"
import { Doconda } from "@doconda/sdk"

const doconda = new Doconda()
const doc = await doconda.documents.create({
  format: "docx",
  prompt: "Informe de la ley de vivienda con títulos azules y centrado",
})

console.log(doc.status) // "ready"
await writeFile("informe.docx", await doconda.documents.download(doc.id, "docx"))
await writeFile("informe.pdf", await doconda.documents.download(doc.id, "pdf"))
```

`documents.create` espera a que el documento esté listo, como una llamada a un LLM. Si tarda más de 120 segundos, el
SDK sigue esperándolo por ti.

## Qué devuelve

* Un `.docx` editable: el aspecto va en los estilos de Word, y la maquetación se adapta a la clase de documento
  (`doc.type`: informe, carta, contrato, memo o acta).
* Su PDF, y `doc.outputs` con enlaces directos (caducan a los 5 minutos; `documents.outputs(id)` da otros).
* `doc.status`: `ready`, `ready_with_warnings`, `needs_review` o `failed` (no se cobra; `doc.error` dice por qué).
* `doc.style_unsupported`: lo que pediste y no se pudo aplicar.

## Límites

* Usa el SDK en tu servidor, nunca en el navegador: tu API key da acceso a todos los documentos del proyecto.
* Con `quality: "fast"` el estilo es el básico; gráficos, control de cambios o el diseño de tu plantilla necesitan
  `standard` o `best`.
* Si no pones `format` y la frase no deja claro el archivo, falla con `format_unclear` sin cobrar.

## Preguntas frecuentes

<AccordionGroup>
  <Accordion title="¿Funciona en funciones serverless?">
    Sí. El SDK funciona en Node 20 o superior, también en funciones serverless.
  </Accordion>

  <Accordion title="¿Y si mi modelo ya escribió el texto?">
    Pásalo en `content: { markdown }`: Doconda solo lo maqueta, más rápido y más barato.
  </Accordion>

  <Accordion title="¿Puedo enseñar el documento mientras se escribe?">
    Sí, con `documents.stream`. Ver [Ver el documento en directo](/sdk/stream).
  </Accordion>

  <Accordion title="¿Hay SDK de Python?">
    Sí, con los mismos métodos: `pip install doconda`. Ver [SDK de Python](/sdk/python).
  </Accordion>
</AccordionGroup>

## Sigue leyendo

* [SDK de TypeScript](/sdk/introduction) y [Crear documentos](/sdk/create).
* [Quickstart](/quickstart).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.