DoConure

Come faccio la mia prima chiamata?

Da un account nuovo a un PDF su disco con una sola richiesta. Ogni account parte con un modello chiamato Hello World e una chiave API iniziale chiamata hello-world, quindi non c'è niente da costruire prima.

  1. Procurati la chiave API. La chiave iniziale arriva per email quando l'account viene creato; non viene mai mostrata a schermo. L'hai persa, o ti serve più della sola composizione? Nella console apri Chiavi API ed emettine una nuova, dandole un nome: viene mostrata una sola volta, quindi copiala prima di lasciare la pagina. Tienila in una variabile d'ambiente anziché nel codice:
    export DOCONURE_API_KEY="paste-your-key-here"
  2. Prendi l'id del modello. Nella console apri Modelli → Hello World; l'id è nella pagina del modello.
  3. Scrivi la richiesta in un file chiamato request.json. Ha due parti: data, i valori che il modello legge, e settings, quale modello usare:
    {
      "data": {
        "title": "Order confirmation",
        "reference": "ORD-1042",
        "date": "2026-11-02",
        "customer": {"name": "Rossi Costruzioni Srl", "email": "ufficio@example.com"},
        "lines": [
          {"description": "Site survey", "quantity": 1, "price": "450.00", "amount": "450.00"},
          {"description": "Structural report", "quantity": 2, "price": "300.00", "amount": "600.00"}
        ],
        "total": "1050.00",
        "note": "Payment within 30 days."
      },
      "settings": {"templateId": "YOUR_TEMPLATE_ID"}
    }
  4. Chiama l'API:
    curl -X POST https://app.doconure.com/api/v1/compose/documents/generate \
      -H "Authorization: Bearer $DOCONURE_API_KEY" \
      -H "Content-Type: application/json" \
      -d @request.json \
      --dump-header headers.txt \
      --output document.pdf

Che cosa torna indietro

In caso di successo la risposta è 200 e il corpo è il PDF stesso, scritto in document.pdf. Un PDF non ha spazio per altro, quindi il resto è negli header (headers.txt qui sopra):

  • X-Credits-Used e X-Credits-Left: quanto è costato questo documento e quanto resta alla tua organizzazione;
  • X-Document-Id: il documento conservato, da scaricare di nuovo o da inviare in firma;
  • X-Template-Version: quale versione del modello lo ha prodotto.

Preferisci JSON? Aggiungi "responseFormat": "json" a settings: la risposta porta allora un oggetto output con le stesse informazioni.

Se non funziona

Un errore è sempre JSON con un code stabile, mai un semplice stato HTTP. Quelli tipici della prima chiamata:

  • 401 INVALID_API_KEY: la chiave manca, è scritta male, è scaduta o è stata revocata. Controlla che $DOCONURE_API_KEY sia impostata nella shell da cui lanci cURL.
  • 404 TEMPLATE_NOT_FOUND: l'id appartiene a un'altra organizzazione o non esiste. Copialo di nuovo dalla pagina del modello.
  • 429 QUOTA_EXCEEDED: il credito rimasto non basta per questo documento. La console mostra il tuo saldo; non è stato addebitato nulla.

Ogni codice, con che cosa fare: Errori.

Per provare un modello non serve codice. Apri il modello nella console e usa Prova con JSON. Il campo è precompilato dai segnaposto del modello stesso, quindi la forma è già corretta — premi il pulsante e scarica il PDF.

Elenco completo dei campi di questa chiamata: Generare un documento. Pronto a mandarlo anche in firma? Vedi La tua prima firma oppure, per fare entrambe le cose con una sola richiesta, Comporre e inviare in firma con una sola chiamata. Un altro linguaggio? cURL, JavaScript, React, PHP, WordPress, Java, C#, Go e Ruby, oppure Make, Zapier e n8n senza codice.