Certificates endpoint
Certificates API
Certificate generation is handled inline by the certificates endpoint.
Generate a single certificate
POST /api/v1/certificates
{ "valuationId": "abc123", "sendEmail": false }
Synchronous — returns the PDF URL once Puppeteer + Cloudinary have finished. Typical latency: 5–15 seconds.
{ "pdfUrl": "https://res.cloudinary.com/.../certificate-abc123.pdf",
"publicId": "jewel-value/{tenantId}/certificates/certificate-abc123" }
Send to customer
Pass sendEmail: true and the customer email on the valuation receives the PDF, branded with your company name and logo.
Bulk generation
POST /api/v1/valuations/bulk/generate-certificates
{ "ids": ["id1", "id2", ...] }
Up to 50 IDs per call. Returns immediately; the certificates render in the background within an hour.
Retrieve generated PDF
The pdfUrl from the response is a signed Cloudinary URL — no auth needed to download. Treat it as semi-public and don't post it where you wouldn't want the certificate seen.
Regeneration
If you edit a valuation after the certificate was generated, re-call the certificate endpoint. The new PDF replaces the old one at the same Cloudinary public ID.