Core concepts

Statuses

Most statuses are closed lists of text values. For orders, the field shows one of 12 raw statuses while the list filter uses seven broader buckets.

A new value would be a documented, additive change, so a client should tolerate a value it does not know. The statuses of credit notes and proformas are not closed lists at all: they are free text, so tolerate any value there. The tables below are the ones an integrator needs most; the generated table at the end lists every status enum. The app's own view of the order lifecycle is in Order lifecycle.

Order status (raw value)List filter ?status=
draftdraft
reservedreserved
prepared_partiallypreparedpreparedIncludes partial preparation.
picked_upin_usePicked up or in use.
returned_partiallyreturnedchecked_in_partiallyreturnedIncludes partial return and partial check-in.
checked_incompletedChecked in and completed.
cancelledcancelled
  • The filter description places picked_up_partially and archived in no bucket. archived is one of the DTO's values, but an archived order can be neither listed nor read.
Order statuses: 12 raw values, 7 filter buckets

The status field of an order shows the raw status, one of 12 values. The status filter of GET /api/v1/orders uses operational buckets, the same view as the app. Do not send a raw value to the filter or expect a bucket in the field.

Raw status (field)Filter bucket
draftdraft
reservedreserved
prepared_partially, preparedprepared (includes partial preparation)
picked_upin_use (delivered or in use)
picked_up_partiallyin_use. The spec's wording lists only picked up, so if you need exactly this status, read the orders and check the raw status yourself
returned_partially, returnedreturned (includes partial return)
checked_in_partiallyreturned (includes partial check-in)
checked_incompleted (checked in and completed)
cancelledcancelled
archivedNone. Filmo never produces this value: an archived order is no longer visible to the API, is not listed, and its GET answers 404

To filter by several buckets at once, use statuses, a list of up to 50 values that returns what matches any of them.

Invoice status

Document lifecycle

draft
A draft.
validated
Validated and numbered.
voided
Voided.

Invoice paymentStatus

Payment status; the same vocabulary as the ?paymentStatus= filter

unpaid
Nothing collected yet (also for invoices without a recorded collection).
partially_paid
Collected in part.
paid
Collected in full.
overpaid
Collected above the total.
overdue
Past due and unpaid.
voided
The document is voided.

Quote status

Lifecycle of the active version

draft
A draft.
validated
Validated and numbered.

Quote operativeStatus

Commercial status of the active version

pending
Awaiting an answer.
confirmed
Accepted.
cancelled
Rejected or cancelled.
superseded
Replaced by another version.
  • The two statuses of each document are independent: one says where the document is in its lifecycle, the other how its payment or its commercial answer stands.
Invoice and quote statuses

An invoice has two fields. status is the document lifecycle; paymentStatus is the payment state. The list filter paymentStatus uses the same values the paymentStatus field returns, and GET /api/v1/invoices returns documents of type invoice only.

FieldValueMeaning
statusdraftNot yet validated
statusvalidatedValidated and numbered
statusvoidedVoided
paymentStatusunpaidNothing collected yet, also for invoices without a recorded collection
paymentStatuspartially_paidPart of the total collected
paymentStatuspaidCollected in full
paymentStatusoverpaidCollected above the total
paymentStatusoverduePast due and unpaid
paymentStatusvoidedThe document is voided, whatever was collected before

A quote also has two fields, and the detail flattens the active version of the quote. status is the document lifecycle of that version; operativeStatus is the commercial status, and PATCH /api/v1/quotes/{quoteId}/status changes it. Confirming a version leaves the others as superseded.

FieldValueMeaning
statusdraftNot yet validated
statusvalidatedValidated and numbered
operativeStatuspendingAwaiting a reply
operativeStatusconfirmedAccepted
operativeStatuscancelledRejected or cancelled
operativeStatussupersededReplaced by another version

This table is generated from the spec and lists the status enums of every resource, including projects, tasks, contracts and the rest.

FieldValues
ContactDto.statusactive, inactive, archived
ContactDetailDto.statusactive, inactive, archived
RelatedContactDto.statusactive, inactive, archived
OrderDto.statusdraft, reserved, prepared_partially, prepared, picked_up_partially, picked_up, returned_partially, returned, checked_in_partially, checked_in, archived, cancelled
OrderDetailDto.statusdraft, reserved, prepared_partially, prepared, picked_up_partially, picked_up, returned_partially, returned, checked_in_partially, checked_in, archived, cancelled
OrderLineDto.statusdraft, reserved, prepared, picked_up, sold, returned, checked_in, cancelled, lost
InvoiceDto.statusdraft, validated, voided
InvoiceDto.paymentStatusunpaid, partially_paid, paid, overpaid, overdue, voided
InvoiceDetailDto.statusdraft, validated, voided
InvoiceDetailDto.paymentStatusunpaid, partially_paid, paid, overpaid, overdue, voided
QuoteDto.statusdraft, validated
QuoteDto.operativeStatuspending, confirmed, cancelled, superseded
QuoteDetailDto.statusdraft, validated
QuoteDetailDto.operativeStatuspending, confirmed, cancelled, superseded
ProjectDto.statusdraft, budgeted, confirmed, in_progress, invoiced, completed, cancelled, archived
ProjectDetailDto.statusdraft, budgeted, confirmed, in_progress, invoiced, completed, cancelled, archived
RepairTicketDto.statusdraft, sent, partially_converted, fully_invoiced, closed
RepairTicketDetailDto.statusdraft, sent, partially_converted, fully_invoiced, closed
VehicleDto.statusactive, maintenance, inactive
SubrentDto.statuspending, active, completed, cancelled
PurchaseOrderDto.statusdraft, pending, completed, cancelled
ContractDto.statusdraft, validated, voided
ContractDto.operativeStatuspending, signed, cancelled
OpportunityDto.statusopen, won, lost
OpportunityDetailDto.statusopen, won, lost
TreasuryAccountDto.statusactive, needs_reauth, disconnected, archived
CreditNoteDto.statusdraft, validated, voided
OrderLineReturnResultDto.statusreturned, failed
UserDto.statusactive, pending, inactive
  • Core concepts

    Data model

    Orders connect a contact, an optional project and the equipment rented; documents, payments, planning and the catalog hang from them.

  • Guides

    Filtering and sorting

    Most lists accept sort and the created* and updated* time filters, many accept list-valued filters such as statuses, and some accept q for free-text search. The examples use the orders list.

  • Guides

    Syncing data

    Filmo v1 does not send webhooks, so you keep another system in step by polling: read what changed in half-open time windows, and run a separate sweep to find what was deleted. Do not follow the pagination cursor to decide what changed or what disappeared.

Was this page helpful?