Sales Order

Find sales orders based on search parameters.

Changed on
post/api/sales-orders/list

Request

  • Base URL
    https://api.fulcrumpro.com
  • URL
    https://api.fulcrumpro.com/api/sales-orders/list
  • Auth
    none declared

Query parameters

Sort.Fieldstring

Sort field

Sort.Dir'ascending' | 'descending'

Specify sorting direction.

Sort direction

Skipinteger

Number of records to skip. Defaults to 0. Combine with FulcrumProduct.PublicApi.Dto.Common.PagingDto.Take to page through a result set larger than one page.

Takeinteger

Number of records to return. Validation accepts 0 through 5000, but 0 is not a page size and what an endpoint does with it varies, so send a value from 1 to 5000.

Two cases differ. A request that supplies paging but leaves this field out takes this field's default of <b>50</b>. A request that supplies no paging at all is endpoint-specific — some define their own fallback — so it does not reliably mean any particular number of records. Either way the response says nothing about records it did not return, so send this explicitly whenever the size of the answer matters. Endpoints returning a paged envelope report totalCount and hasNextPage alongside the records; endpoints returning a bare array report neither, so page those with FulcrumProduct.PublicApi.Dto.Common.PagingDto.Skip until a page comes back shorter than the value requested.

Request body

numbersinteger[] nullable

Filter sales orders to only given numbers

status'draft' | 'needsApproval' | 'approved' | 'inProgress' | 'complete'

Sales order status

externalQuoteUrlsstring[] nullable

Filter sales orders to those matching an external quote URL.

createdFromQuoteIdstring nullable

Filter sales orders created from the specific quote

customerPoNumberstring nullable

Filter sales orders to those whose customer purchase-order number matches this one. Matched case-insensitively against the value as given (trimmed) and against its normalized form, which drops a leading label such as "PO#" or "P.O. Number:" and collapses whitespace — so "PO# 4500123456" finds an order stored as either "PO# 4500123456" or "4500123456". An order whose stored number is longer than 100 characters is never found, and a value with no form of 100 characters or fewer matches no orders, as does a value longer than 1000 characters once trimmed. Whitespace-only is treated as absent, as it is for every string filter.

customerIdstring nullable

Filter sales orders to those placed by exactly this customer.

createdBeforeUtcstring date-time nullable

Filters created before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.

createdAfterUtcstring date-time nullable

Filters created after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.

modifiedBeforeUtcstring date-time nullable

Filters modified before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.

modifiedAfterUtcstring date-time nullable

Filters modified at or after (inclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.

includeDeletedboolean

When true, deleted sales orders are returned alongside live ones, with deleted set to true and deletedUtc stamped. Deleting an order does not change its modifiedUtc, so a deleted order matches the modified window on its deletedUtc instead: on or after ModifiedAfterUtc and before ModifiedBeforeUtc. Defaults to false, in which case only live sales orders are returned.

Response

List of sales orders matching the filters

idstring required

Unique id associated to this entity.

numberinteger required

Number

orderedDatestring date-time required

Sales order ordered date (generally the creation date but can be post/pre-dated).

customerPoNumberstring nullable

CustomerPoNumber

externalQuoteUrlstring nullable

A reference URL that points to an external quote entity.

createdFromQuoteIdstring nullable

Unique identifier of the quote that this sales order was created from. Please reference /api/quotes endpoints.

customerIdstring required

The id of the customer that the sales order is for

deliveryDueDatestring date-time nullable

The date the SO needs to be delivered to the customer

productionDueDatestring date-time nullable

The date that production needs to be completed by

sentToProductionDateUtcstring date-time nullable

The datetime in UTC that the SO status was updated to Send to Production

dropshipboolean

Indicates the order is dropshipped: fulfilled by shipping directly to the end customer.

dropshipCustomerPoNumberstring nullable

The end customer's purchase order number for a dropshipped order.

paymentTermsIdstring nullable

The payment terms assigned to this sales order.

discountnumber double nullable

Total discount for the SO when a Discount Line as been aded

subtotalnumber double

The sum of the line items this sales order bills, before tax, the discount and any refund are applied. Child lines of a blanket-order line are excluded; the parent line carries the amount.

salesPersonIdstring nullable

Unique identifier of the sales person attached to this sales order. Please reference /api/users endpoints.

publicNotestring nullable

Note to customer. This will appear on PDFs.

deletedboolean

Indicates whether this sales order has been deleted

deletedUtcstring date-time nullable

When this sales order was deleted (UTC), or null while it is live.

companyIdstring nullable

Company identifier. Please reference /api/companies endpoint.

createdUtcstring date-time required

Date this record was created (UTC).

modifiedUtcstring date-time nullable

Date this record was modified (UTC). Of note, this does account for children items (line items).

usesV3Shippingboolean

Indicate if this sales order uses V3 shipping.

status'draft' | 'needsApproval' | 'approved' | 'inProgress' | 'complete' required

Sales order status

priority'low' | 'moderate' | 'high'

Priority of the sales order

shipByDatestring date-time nullable

The date this sales order should ship by, as shown on the sales order in the app: the earliest ship by date across the order's non-cancelled shipments, or, when no shipment has one, the earliest delivery due date less the customer's shipping lead time.

externalReferencesobject nullable

External references associated with this entity.

customFieldsobject nullable

Custom fields that have been defined on this entity.

Changes

    • info

      added the new optional request property (media type: application/json-patch+json)

    • info

      added the new optional request property (media type: application/json)

    • info

      added the new optional request property (media type: text/json)

    • info

      added the new optional request property (media type: application/*+json)

    • info

      added the optional property / to the response with the status (media type: application/json)

    • info

      added the optional property / to the response with the status (media type: application/problem+json)

    • breaking

      the response property // became nullable for the status (media type: application/json)

    • breaking

      the response property // became nullable for the status (media type: application/problem+json)

    • breaking

      the response property // became optional for the status (media type: application/json)

    • breaking

      the response property // became optional for the status (media type: application/problem+json)