PDF KVADRATI / API

Od zahtevka do dokumenta.

Dva endpointa. JSON vhod. PDF izhod. Vse za prvo integracijo.

Avtentikacija

Ustvarite račun in odprite delovni prostor. API ključ pošljite v glavi Authorization. Ključ hranite na strežniku, nikoli v javni kodi brskalnika.

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Osnovni URL: https://pdf.kvadrati.com

Turnstile ščiti spletne obrazce. API pretvorbe uporablja vaš API ključ in ne potrebuje Turnstile žetona.
POST /pdf/from-html

HTML → PDF

Pošljite HTML in izbirno ime datoteke. Rezultat je binarna datoteka PDF formata A4 z vključenimi ozadji.

PoljeOpis
htmlObvezen niz. HTML dokument s CSS.
fileNameIzbiren niz. Končnica .pdf se doda samodejno.
{
  "html": "<html><body><h1>Hello PDF</h1></body></html>",
  "fileName": "report.pdf"
}

200 OK · Content-Type: application/pdf

POST /pdf/from-url

URL → PDF

Pošljite javno dostopen URL. Storitev pridobi HTML in pretvori relativne povezave virov v absolutne. Strani, ki zahtevajo prijavo ali so odvisne od interaktivne seje, niso primerne.

{
  "url": "https://example.com/report",
  "fileName": "report.pdf"
}

URL mora uporabljati HTTP ali HTTPS. Uporabljajte le vsebine, za katere imate pravico dostopa in pretvorbe.

Primeri integracije

cURL

curl https://pdf.kvadrati.com/pdf/from-html \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"html":"<h1>Hello PDF</h1>","fileName":"report.pdf"}' \
  --output report.pdf

Python

import os
import requests

response = requests.post(
    "https://pdf.kvadrati.com/pdf/from-html",
    headers={"Authorization": "Bearer " + os.environ["PDF_API_KEY"]},
    json={"html": "<h1>Hello PDF</h1>", "fileName": "report.pdf"},
    timeout=60,
)
response.raise_for_status()
with open("report.pdf", "wb") as file:
    file.write(response.content)

C# / .NET 10

using System.Net.Http.Headers;
using System.Net.Http.Json;

using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(
    "Bearer", Environment.GetEnvironmentVariable("PDF_API_KEY"));
using var response = await client.PostAsJsonAsync(
    "https://pdf.kvadrati.com/pdf/from-html",
    new { html = "<h1>Hello PDF</h1>", fileName = "report.pdf" });
response.EnsureSuccessStatusCode();
await File.WriteAllBytesAsync("report.pdf", await response.Content.ReadAsByteArrayAsync());

Omejitve in napake

Brezplačen račun ima 2 pretvorbi dnevno. Dnevno obdobje temelji na UTC; neuspešna pretvorba lahko porabi poskus. Za večje količine pošljite povpraševanje.

HTTPPomen
400Neveljaven ali manjkajoč API ključ, prazen vhod ali dosežena dnevna omejitev.
429Preveč zahtevkov. Počakajte pred ponovnim poskusom.
500Napaka pri pridobivanju vsebine ali ustvarjanju PDF-ja.

Preverite HTTP status pred shranjevanjem odgovora. Odgovori o napakah niso datoteke PDF.

GET /pdf/ping

Preprost pregled dosegljivosti storitve, brez API ključa.

Nujne piškotke uporabljamo za prijavo, varnost in izbiro jezika. Izbirna analitika je privzeto izključena. Ta stran trenutno ne nalaga analitičnih orodij.

Več o zasebnosti