Quotes

List quotes

Returns the quotes with their active version flattened, cursor-paginated.

GET
/api/v1/quotes

Request examples

curl https://app.filmo.io/api/v1/quotes \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": [
    {
      "id": "quote_9f3a2b",
      "quoteNumber": "2026-0001",
      "versionNumber": 1,
      "status": "draft",
      "operativeStatus": "pending",
      "issueDate": "2026-09-01T08:00:00.000Z",
      "validUntil": "2026-09-01T08:00:00.000Z",
      "startDate": "2026-09-01T08:00:00.000Z",
      "endDate": "2026-09-01T08:00:00.000Z",
      "currency": "EUR",
      "contact": {
        "id": "contact_9f3a2b",
        "name": "Example contact"
      },
      "orderId": "order_9f3a2b",
      "orderNumber": "2026-0001",
      "projectId": "project_9f3a2b",
      "subTotal": "120.00",
      "discountTotal": "120.00",
      "taxesPrice": "120.00",
      "netPrice": "120.00",
      "grossPrice": "120.00",
      "totalPaid": "120.00",
      "createdAt": "2026-09-01T08:00:00.000Z",
      "updatedAt": "2026-09-01T08:00:00.000Z"
    }
  ],
  "pagination": {
    "nextCursor": "eyJvIjoyMH0",
    "hasMore": true,
    "total": 1
  }
}

Generated from the schema

Filter by commercial or operational status. Strict per-subscription tenancy.

Authorizations

Bearer API key with the scope below. quotes:read

Query parameters

limitintegerdefault:50

Page size (1-500). Defaults to 50.

Limits: min 1, max 500

cursorstring

Opaque cursor of the page to return. Pass the value of pagination.nextCursor from the previous response; treat it as opaque.

Limits: max length 200

createdOnstring

The creation date of the resource falls on this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdAfterstring

The creation date of the resource is after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdBeforestring

The creation date of the resource is before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdFromstring

The creation date of the resource is on or after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdTostring

The creation date of the resource is on or before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedOnstring

The last update date of the resource falls on this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedAfterstring

The last update date of the resource is after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedBeforestring

The last update date of the resource is before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedFromstring

The last update date of the resource is on or after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedTostring

The last update date of the resource is on or before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

qstring

Free-text search on the quote number, the order number, the notes, the header text and the client name.

Limits: min length 1, max length 200

sortstring

Sort order: up to 3 comma-separated fields, each with a leading "-" for descending (e.g. "-updatedAt,name"). Sortable fields: createdAt, updatedAt, quoteNumber, issueDate, startDate, endDate, subTotal, grossPrice, operativeStatus. Defaults to "-createdAt". Ties are broken by id, so the order is stable across pages, and a cursor is bound to the sort it was issued with.

Limits: max length 200

operativeStatusstring

Filter by commercial status of the active version: pending (awaiting an answer), confirmed (accepted), cancelled (rejected/cancelled) or superseded (replaced by another version).

Available options: pending, confirmed, cancelled, superseded

operativeStatusesstring[]

Filter by operativeStatus, as a list: repeat the parameter or separate the values with commas. Accepts up to 50 values and returns whatever matches any of them.

Available options: pending, confirmed, cancelled, superseded

Limits: min 1 items, max 50 items

contactIdstring

Filter by quote contact identifier.

Limits: min length 1, max length 100

contactIdsstring[]

Filter by contactId, as a list: repeat the parameter or separate the values with commas. Accepts up to 50 values and returns whatever matches any of them.

Limits: min 1 items, max 50 items, each min length 1, each max length 100

orderIdstring

Filter by identifier of the order linked to the quote.

Limits: min length 1, max length 100

orderIdsstring[]

Filter by orderId, as a list: repeat the parameter or separate the values with commas. Accepts up to 50 values and returns whatever matches any of them.

Limits: min 1 items, max 50 items, each min length 1, each max length 100

projectIdstring

Filter by identifier of the project linked to the quote.

Limits: min length 1, max length 100

projectIdsstring[]

Filter by projectId, as a list: repeat the parameter or separate the values with commas. Accepts up to 50 values and returns whatever matches any of them.

Limits: min 1 items, max 50 items, each min length 1, each max length 100

issueDateOnstring

The quote issue date falls on this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

issueDateAfterstring

The quote issue date is after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

issueDateBeforestring

The quote issue date is before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

issueDateFromstring

The quote issue date is on or after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

issueDateTostring

The quote issue date is on or before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

validUntilOnstring

The quote validity date falls on this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

validUntilAfterstring

The quote validity date is after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

validUntilBeforestring

The quote validity date is before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

validUntilFromstring

The quote validity date is on or after this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

validUntilTostring

The quote validity date is on or before this date. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset.

Limits: pattern ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

includeTotalbooleandefault:false

Set it to true to include pagination.total, the number of results that match the filters across all pages. Off by default.

Response

application/json

Successful response.

Response schema: QuoteDto

Envelope: QuoteList. meta.warnings is present only when the operation is deprecated.

Headers: X-Request-Id · RateLimit-Limit · RateLimit-Remaining · RateLimit-Reset

dataobject[]

Show child attributes
data.idstring

Unique quote identifier (container).

data.quoteNumberstring

Human-readable quote number.

data.versionNumberinteger

Number of the active version of the quote.

data.statusstring

Document lifecycle status of the active version: draft or validated (validated and numbered).

Available options: draft, validated

data.operativeStatusstring

Commercial status of the active version: pending (awaiting an answer), confirmed (accepted), cancelled (rejected/cancelled) or superseded (replaced).

Available options: pending, confirmed, cancelled, superseded

data.issueDatestring<date-time> | null

Issue date of the active version in ISO 8601 with offset; null if not issued.

data.validUntilstring<date-time> | null

Validity date of the quote in ISO 8601 with offset; null if not set.

data.startDatestring<date-time>

Start of the quoted rental period in ISO 8601 with offset.

data.endDatestring<date-time>

End of the quoted rental period in ISO 8601 with offset.

data.currencystring

Quote currency as an ISO 4217 code (for example "EUR").

data.contactobject | null

Compact reference to the quote contact; null if none.

Show child attributes
data.contact.idstring

Unique contact identifier.

data.contact.namestring

Contact name.

data.orderIdstring | null

Identifier of the linked order; null if not linked.

data.orderNumberstring | null

Number of the linked order; null if not linked.

data.projectIdstring | null

Identifier of the linked project; null if not linked.

data.subTotalstring

Subtotal before discounts and taxes, as a decimal string "1234.50" (ROUND_HALF_UP).

Limits: pattern ^-?\d+\.\d{2}$

data.discountTotalstring

Total discounts as a decimal string "1234.50" (ROUND_HALF_UP).

Limits: pattern ^-?\d+\.\d{2}$

data.taxesPricestring

Tax total as a decimal string "1234.50" (ROUND_HALF_UP).

Limits: pattern ^-?\d+\.\d{2}$

data.netPricestring

Taxable base (net before taxes) as a decimal string "1234.50" (ROUND_HALF_UP).

Limits: pattern ^-?\d+\.\d{2}$

data.grossPricestring

Total including taxes, as a decimal string "1234.50" (ROUND_HALF_UP).

Limits: pattern ^-?\d+\.\d{2}$

data.totalPaidstring | null

Amount collected against the quote as a decimal string "1234.50" (ROUND_HALF_UP); null if not recorded.

Limits: pattern ^-?\d+\.\d{2}$

data.createdAtstring<date-time>

Creation date of the container in ISO 8601 with offset.

data.updatedAtstring<date-time>

Last update date in ISO 8601 with offset.

paginationobject

Opaque-cursor pagination metadata.

Show child attributes
pagination.nextCursorstring | null

Opaque cursor of the next page; null when there are no more results. Pass it as cursor in the next request.

pagination.hasMoreboolean

Whether more results exist beyond this page.

pagination.totalinteger

Number of results matching the filters across all pages. Present only when the request sets includeTotal=true.

Limits: min 0

metaobject

Additional information about the response.

Show child attributes
meta.warningsobject[]

Lifecycle warnings; present only when the operation is deprecated.

Show child attributes
meta.warnings.codestring

Stable warning code.

Available options: deprecated

meta.warnings.messagestring

For people: what is deprecated, until when, and what to use.

meta.warnings.sunsetstring

Day (YYYY-MM-DD) the operation stops being served.

meta.warnings.replacementstring | null

operationId of the operation to use instead, or null if there is none.

Errors

StatusCodesMeaning
400validation_errorMalformed query or body. errors[] lists every offending field with its stable code.

401, 403, 429, 500 can be returned by any operation. Errors

Deprecation

This operation is not deprecated. Deprecations are announced with a Deprecation header and a sunset date. Versioning policy

  • Rentals

    Quote

    The quote, as returned by the API.