Media

PDF Generation API

Generate professional PDF documents — invoices, receipts, and reports — via API. Built with pdf-lib featuring styled headers, line-item tables, automatic tax calculations, and A4 formatting.

Endpoint:/api/v1/pdf/generate
Method:POST
Latency:~150ms

Try it out

POST/api/v1/pdf/generate

Parameters

Code

curl
curl -X POST "https://khaleejiapi.dev/api/v1/pdf/generate?type=invoice&title=Invoice&currency=AED&taxRate=5" \
-H "Authorization: Bearer your_api_key"

Invoice / Receipt Fields

FieldTypeRequiredDescription
typestringRequired"invoice" or "receipt"
titlestringOptionalDocument title (auto-generated if omitted)
invoiceNumberstringOptionalInvoice/receipt number (auto-generated if omitted)
fromobjectOptionalSender: name, address, email
toobjectOptionalRecipient: name, address, email
itemsarrayRequiredLine items (1–50): description, quantity, unitPrice
currencystringOptionalCurrency code (default: AED)
taxRatenumberOptionalTax percentage (default: 0)
notesstringOptionalFooter notes

Report Fields

FieldTypeRequiredDescription
typestringRequired"report"
titlestringOptionalReport title
sectionsarrayRequiredReport sections (1–20): heading, content

Rate Limits

PlanRequests/MonthRate Limit
Free5005 req/min
Starter5,00030 req/min
Professional50,000120 req/min
Business250,000500 req/min

Debugging & Support

Include X-Request-ID when contacting support

Every response from KhaleejiAPI includes an X-Request-ID header — a unique identifier that lets our support team pull the exact log entry for your request within seconds. Always share it when reporting an unexpected error or unexpected result.

How to capture it

JavaScript / fetch

const res = await fetch("https://khaleejiapi.dev/api/v1/...", {
  headers: { Authorization: "******" },
});
const requestId = res.headers.get("x-request-id");
console.log("Request ID:", requestId);
// → e.g. "req_01j9xkz4vp8..."

cURL

curl -si "https://khaleejiapi.dev/api/v1/..." \
  -H "Authorization: ******" | grep -i x-request-id
# → x-request-id: req_01j9xkz4vp8...

Browser DevTools

Open DevTools (F12) → Network tab → click the failing request → scroll to the Response Headers section → copy the value next to x-request-id.

For a full list of error codes and guidance on common issues, see the Troubleshooting guide.