Purchase orders

List purchase orders

Returns what the company buys or subcontracts from its suppliers, with their amounts and their payment status.

Tool
filmo_purchase_orders_list
Access: Read

Result

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "filmo_purchase_orders_list",
    "arguments": {
      "limit": 20
    }
  }
}

generated from the schema

Amounts are COST amounts, because the object is a purchase. Lines are not published, so the expense cannot be attributed to a specific item of a rental.

Arguments

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

sortstring

Sort order: up to 3 comma-separated fields, each with a leading "-" for descending (e.g. "-updatedAt,name"). Sortable fields: createdAt, updatedAt, poNumber, poDate, status, type, grossPrice, netPrice, isDraft. 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

statusstring

Filter by purchase order status.

Available options: draft, pending, completed, cancelled

statusesstring[]

Filter by status, 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: draft, pending, completed, cancelled

Limits: min 1 items, max 50 items

typestring

Filter by purchase order type.

Available options: subrental, stock_purchase, resale_purchase, consumable_purchase, technician, transport, repair, consignment

typesstring[]

Filter by type, 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: subrental, stock_purchase, resale_purchase, consumable_purchase, technician, transport, repair, consignment

Limits: min 1 items, max 50 items

supplierIdstring

Filter by supplier.

Limits: min length 1, max length 100

supplierIdsstring[]

Filter by supplierId, 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 associated rental order.

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 associated project.

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

includeTotalbooleandefault:false

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

dateFiltersobject

Date filters by field. A bare day (YYYY-MM-DD) is read in the business timezone; an ISO 8601 instant with offset is applied as is by gte, lte, gt and lt, while on widens it to the whole business day that contains it. Fields: created, updated.

Show child attributes
dateFilters.createdobject

Show child attributes
dateFilters.created.gtestring

From this day or instant, inclusive.

dateFilters.created.ltestring

Up to this day or instant, inclusive.

dateFilters.created.gtstring

Strictly after; a bare day means after the end of that day.

dateFilters.created.ltstring

Strictly before; a bare day means before the start of that day.

dateFilters.created.onstring

Exactly that day; an instant means the whole business day that contains it.

dateFilters.updatedobject

Show child attributes
dateFilters.updated.gtestring

From this day or instant, inclusive.

dateFilters.updated.ltestring

Up to this day or instant, inclusive.

dateFilters.updated.gtstring

Strictly after; a bare day means after the end of that day.

dateFilters.updated.ltstring

Strictly before; a bare day means before the start of that day.

dateFilters.updated.onstring

Exactly that day; an instant means the whole business day that contains it.

Result

On success the result carries structuredContent with data and meta. These are the attributes of data.

Show the attributes of data
idstring

Unique purchase order identifier.

poNumberstring | null

Purchase order number; null while it is a draft.

statusstring

Purchase order status.

Available options: draft, pending, completed, cancelled

typestring

Purchase order type.

Available options: subrental, stock_purchase, resale_purchase, consumable_purchase, technician, transport, repair, consignment

isDraftboolean

true if the purchase order is still a draft.

poDatestring<date-time> | null

Purchase order date in ISO 8601 UTC; null if not set.

supplierIdstring | null

Supplier identifier; null while a draft has no supplier. Resolve it against /api/v1/contacts.

referencestring | null

Free-form reference of the purchase order; null if it has none.

currencystring

Currency of the purchase order, as an ISO 4217 code.

subTotalstring

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

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

discountTotalstring

Discount total, as a decimal string "1234.50".

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

taxesPricestring

Tax total, as a decimal string "1234.50".

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

netPricestring

Taxable base, as a decimal string "1234.50".

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

grossPricestring

Total including taxes, as a decimal string "1234.50".

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

totalPaidstring | null

Amount already paid, as a decimal string "1234.50"; null if no payment has been recorded.

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

orderIdstring | null

Associated rental order; null if it has none.

orderNumberstring | null

Number of that order; null if it has none.

projectIdstring | null

Associated project; null if it has none.

repairTicketIdstring | null

Repair ticket that originated the purchase; null if it does not come from one.

notesstring | null

Purchase order notes; null if it has none.

createdAtstring<date-time>

Creation date in ISO 8601 UTC.

updatedAtstring<date-time>

Last modification date in ISO 8601 UTC.

An error is a result with isError: true and the problem in content[0].text; there is no structuredContent. See Errors.

The same operation by REST

This tool runs GET /api/v1/purchase-orders.

  • Purchase orders

    List purchase orders

    Returns what the company buys or subcontracts from its suppliers, with their amounts and their payment status.

  • Guides

    Safe writes

    An assistant that can write can also write the wrong thing. Decide which tools need a person, retry without duplicating, and know what a write sets in motion.

  • Guides

    Errors

    A tool error is a result with isError: true and the problem in the first text block. Branch on its code.