Electrical testing has its own engine, described above. Everything else (JHA, LOTO, PTP, invoices, daily field reports, job offers) is a registry of document types behind one generic generator, so a new document type is a registry entry rather than an endpoint.
GET/documents/categories
GET/documents?category= &search=
Generating#
| Field | Type | Default |
|---|---|---|
doc_id | string | Required. From GET /documents. |
fields | object | Required. { field_key: value } for that document type. |
output_format | string | "pdf" · also "docx", "pptx" |
ai_enhance | boolean | true-false formats your fields verbatim, with no model call |
company, prepared_by | string | "" |
Purpose-built endpoints exist alongside the registry for the documents with their own input shapes.
POST/ai/jha
POST/ai/report
POST/ai/email
POST/ai/estimate
| Endpoint | Body |
|---|---|
/ai/jha | work_desc, voltage, equipment, job_site |
/ai/report | report_type, raw_input, job_number, job_site |
/ai/email | email_type, context |
/ai/estimate | job_description, location |