API Reference · v1
TradeQuote API
Build integrations on top of TradeQuote. Authenticated REST endpoints over HTTPS, JSON in and out, and idempotent writes.
Authentication
POST
/v1/auth/sessionCreate a session token.
{
"email": "owen@northwind.co",
"password": "•••••••"
}DELETE
/v1/auth/session Bearer tokenRevoke the current session.
{ "ok": true }Customers
GET
/v1/customers Bearer tokenList customers in the active tenant.
{
"data": [{ "id": "c1", "fullName": "Marie Jensen", "email": "marie@example.com" }],
"page": { "next": null, "limit": 25 }
}POST
/v1/customers Bearer tokenCreate a customer.
{ "fullName": "Hans Olsen", "email": "hans@olsen.dk", "phone": "+45 11 22 33 44" }PATCH
/v1/customers/{id} Bearer tokenUpdate a customer.
{ "id": "c_42", "updatedAt": "..." }DELETE
/v1/customers/{id} Bearer tokenDelete a customer.
{ "ok": true }Quotations
GET
/v1/quotations Bearer tokenList quotations with filters.
{ "data": [{ "id": "q_1", "status": "Sent", "total": 27750 }] }POST
/v1/quotations Bearer tokenCreate a quotation.
{
"customerId": "c1",
"title": "Bathroom retiling",
"items": [{ "description": "Tiles", "qty": 14, "unitPrice": 980 }],
"taxRate": 25
}POST
/v1/quotations/{id}/send Bearer tokenSend a quotation to the customer.
{ "id": "q_99", "status": "Sent" }POST
/v1/quotations/{id}/duplicate Bearer tokenDuplicate to a new draft.
{ "id": "q_100", "status": "Draft" }GET
/v1/quotations/{id}/pdf Bearer tokenDownload a generated PDF.
binary application/pdf
Webhooks
POST
/v1/webhooks Bearer tokenRegister a webhook for quotation events.
{ "url": "https://example.com/hook", "events": ["quotation.accepted", "quotation.rejected"] }