post
https://api.duodeal.app/api/quotation-lines
Creates a new line in a quotation.
Line Types
| Type | Description |
|---|---|
normal | Standard product/service line with pricing |
title | Section header (no pricing, just title) |
subtotal | Subtotal line that sums previous lines |
Body Fields
| Field | Type | Required | Description |
|---|---|---|---|
quotation | object | Yes | Quotation: {"id": <quotation_id>} |
tax | object | Yes | Tax rate: {"id": <tax_id>} |
lineType | string | Yes | Line type: normal, title, or subtotal |
title | string | No | Section title (for title lines) |
productTitle | string | No | Custom product title |
description | string | No | Line description (HTML supported) |
quantity | float | No | Quantity (default: 1) |
unitPrice | float | No | Unit price excl. tax (default: 0) |
coef | float | No | Coefficient/multiplier (default: 1) |
weight | integer | Yes | Sort order/position |
discount | float | No | Discount value (default: 0) |
discountType | string | No | percentage or amount (default: percentage) |
option | boolean | No | Mark as optional line (default: false) |
hide | boolean | No | Hide from output (default: false) |
product | object | No | Link to product: {"id": <product_id>} |
productPrice | object | No | Link to product price: {"id": <product_price_id>} |
unity | object | No | Unit of measure: {"id": <unity_id>} |
parent | object | No | Parent line: {"id": <line_id>} |
medias | array | No | Media files: [{"id": <media_id>}, ...] |
customFields | object | No | Custom field values |
subTotalConfig | object | No | Subtotal configuration (for subtotal lines) |
Pricing Calculation
The totalHt and totalTtc are automatically calculated:
baseTotal = unitPrice × quantity × coef
totalHt = baseTotal - discount (or baseTotal × (1 - discount/100) for percentage)
totalTtc = totalHt × (1 + taxRate)
Response
201 Created: Quotation line successfully created400 Bad Request: Invalid request body or validation error401 Unauthorized: Invalid or missing API key
Recent Requests
Log in to see full request history
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Loading…
201Resource created
400Bad request
401Unauthorized
