Core concepts

Data model

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

Each resource has its own page in the REST API reference (43 object pages), with its fields and the operations that read and write it. Start from the REST API overview. The app side of the same model is described in Data model overview.

ResourceReferences
contractcontact · order · projectcontactId · orderId · projectId
credit notecontact · invoicecontactId · invoiceId
document lineitem · orderitemId · orderId
incidentitem · serialized item · space · vehicle · order · projectitemId · serializedItemId · spaceId · vehicleId · orderId · projectId
internal serviceprojectprojectId
invoiceorder · projectorderId · projectId
itemcollectioncollectionId
kitcollectioncollectionId
opportunitypipelinepipelineId
orderprojectprojectId
order lineorder · item · spaceorderId · itemId · spaceId
paymenttreasury account · contacttreasuryAccountId · contactId
planner serviceorder · project · service · staff member · vehicle · taskorderId · projectId · serviceId · staffMemberId · vehicleId · taskId
proformaorder · projectorderId · projectId
projectproject type · orderprojectTypeId · orderIds
purchase orderorder · project · repair ticketorderId · projectId · repairTicketId
quoteorder · projectorderId · projectId
repair ticketorder · contactorderId · contactId
serialized itemitem · project · contactitemId · projectId · contactId
spacecollectioncollectionId
staff membercollectioncollectionId
subrentitem · serialized item · order · project · purchase order · spaceitemId · serializedItemId · orderId · projectId · purchaseOrderId · spaceId
taskprojectprojectId
userstaff memberstaffMemberId
vehiclecollectioncollectionId
  • Generated from the …Id and …Ids fields of the contract's objects: each row lists which other resources an object points to and through which fields.
The data model
  • An item is a catalog entry, with variants, accessories and alternatives. Each physical unit is a serialized item of an item.
  • A kit is a named group of items that go out together.
  • Collections are the tree the catalog is organized by: items, spaces, vehicles, staff and services hang from a collection.
  • A space is a warehouse that manages stock or a rentable space, told apart by isWarehouse.
  • Availability queries check items, staff and vehicles in a date range, and unavailabilities block a resource.
  • Quotes, proformas, contracts, invoices and credit notes are the documents. Their lifecycles are in Statuses.
  • Treasury payments go through treasury accounts and are linked to documents with POST /api/v1/treasury/payments/{paymentId}/links.
  • Purchase orders, supplier invoices and subrents are the buying side; a subrent can link to its purchase order.
  • Staff and vehicles are the resources of the company. Tasks, internal services and the planner use them.
  • The planner shows the staff and fleet services to cover in a date range and the assignments that fill them. GET /api/v1/schedule is a read-only projection of projects, orders, tasks, internal assignments and order services.
  • Repair tickets and incidents track what broke and what is quoted for fixing it.
  • Core concepts

    Records and ids

    Every record has an opaque id that Filmo assigns. Keep your own ids in a mapping table on your side, and use a reference field only where the API has one.

  • 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.

  • Introduction

    REST API overview

    The Filmo REST API v1 is a JSON API over HTTPS at https://app.filmo.io/api/v1. You authenticate with an API key, and every response uses the same envelope.

Was this page helpful?