/quotes
List sales quotes
Returns a paginated list of quotes, sorted by quoteNumber. ?modifiedSince= returns both created and modified quotes, so it can be used for delta sync; deletions are reported by GET /preview/deletions. Unlike sales orders, draft quotes are visible — a quote created through this API starts in Draft.
Query parameters
| Field | Type | Description |
|---|---|---|
search
|
string | Matches quote number and title, case-insensitively and on partial words. |
status
|
enum |
Filters on where the quote stands in its lifecycle.
Draft
Sent
Accepted
Declined
Expired
Converted
|
customerNumber
|
string | Returns only the quotes made out to this customer number. |
modifiedSince
|
string(date-time) | Returns only records created or changed at or after this instant (ISO 8601 UTC datetime). A change anywhere inside the record counts, including on its lines. |
page
|
integer | Page to return, 1-based. Default 1. |
pageSize
|
integer | Number of records per page. Default 50, max 200. |
Responses
PagedResult_PublicQuoteResponse
Paginated response: the fields below sit in items[], wrapped in totalCount, page, pageSize, totalPages, hasPreviousPage and hasNextPage. Paginated
| Field | Type | Description |
|---|---|---|
acceptedAt
|
string(date-time) · nullable | UTC timestamp when the customer accepted. Null unless accepted. |
convertedToOrderNumber
|
string · nullable | Order number the quote was converted into. Null until converted. |
createdDate
|
string(date-time) | UTC timestamp when the quote was created. |
currencyCode
|
string · nullable | ISO 4217 currency code the quote is priced in. |
customerName
|
string · nullable | Customer name at the time of reading. |
customerNumber
|
string · nullable | Customer number the quote is addressed to. Null for a prospect that has not been given one yet — quoting a prospect is the point of a pipeline, so the field is not guaranteed. |
declinedAt
|
string(date-time) · nullable | UTC timestamp when the customer declined. Null unless declined. |
declinedReason
|
string · nullable | Reason given for declining. Null unless declined with a reason. |
description
|
string · nullable | Longer description. Null if not set. |
lines
|
QuoteLine[] · nullable | The quote's lines. |
links
|
Links | Hypermedia links for a public API resource. Exposed as a computed `links` property on the public response DTOs so that create and read responses carry the same self-reference — the canonical URL is derived from the business key already present on the DTO and can never drift from the route it points at. |
modifiedDate
|
string(date-time) · nullable | UTC timestamp when the quote was last modified. Null if never modified. |
quoteDate
|
string(date) | Quote date (ISO 8601 date). |
quoteNumber
|
string · nullable | Unique quote number. |
sentAt
|
string(date-time) · nullable | UTC timestamp when the quote was sent. Null while Draft. |
status
|
enum |
Status of a sales quote.
Draft
Sent
Accepted
Declined
Expired
Converted
|
title
|
string · nullable | Short title. Null if not set. |
totalAmount
|
decimal | Net total in the quote currency. Serialised as a decimal string. |
totalAmountIncludingTax
|
decimal | Gross total in the quote currency. Serialised as a decimal string. |
totalVat
|
decimal | Total VAT in the quote currency. Serialised as a decimal string. |
validUntil
|
string(date) | Last date the quote is valid (ISO 8601 date). |
ProblemDetails
?status= got a value outside its list.
| Field | Type |
|---|---|
detail
|
string · nullable |
instance
|
string · nullable |
status
|
integer · nullable |
title
|
string · nullable |
type
|
string · nullable |
Standard errors:
401
403
Errors
Examples
curl "https://api.erp.fluit.cloud/preview/quotes" \
-H "X-Api-Key: fluit_live_sk_..."
{
"hasNextPage": true,
"hasPreviousPage": true,
"items": [
{
"acceptedAt": "2026-06-11T09:24:13.418",
"convertedToOrderNumber": "ABC-001",
"createdDate": "2026-06-11T09:24:13.418",
"currencyCode": "SEK",
"customerName": "Acme AB",
"customerNumber": "CUST-001",
"declinedAt": "2026-06-11T09:24:13.418",
"declinedReason": "string",
"description": "string",
"lines": [
{
"description": "string",
"discountPercent": "12.50",
"itemNumber": "WIDGET-A",
"lineNumber": 1,
"lineTotal": "299.00",
"quantity": "10",
"taxPercent": "12.50",
"unit": "st",
"unitPrice": "299.00"
}
],
"links": {
"self": "string"
},
"modifiedDate": "2026-06-11T09:24:13.418",
"quoteDate": "2026-06-11",
"quoteNumber": "Q-2026-0184",
"sentAt": "2026-06-11T09:24:13.418",
"status": "Draft",
"title": "string",
"totalAmount": "299.00",
"totalAmountIncludingTax": "299.00",
"totalVat": "299.00",
"validUntil": "2026-06-11"
}
],
"page": 1,
"pageSize": 50,
"totalCount": 137,
"totalPages": 3
}
Base URL https://api.erp.fluit.cloud/preview. The response example is generated from the schema: the shape is right, the values are made up.