Order Collection

Description

A collection of orders.

Properties

Property Description
items

A collection of resources returned in the current result set.

Property Description
combinedOrder

Indicates whether this order was created by combining multiple orders.

created

The creation date of this order.

currencyCode

Currency code for the currency all order amounts are expressed in.

currencySymbol

Currency symbol of the currency all order amounts are expressed in.

customStatus nullable

The human readable name of the current custom status of this order. Custom statuses are defined by the user in their brand preferences. Available statuses for an order will be one of either orderStatus or orderCustomStatus. If orderStatus is null, orderCustomStatus will have a value and vice versa.

customerCropSelected

Whether this order contains items having a customer defined crop.

customerEmail

The email address of the customer having billing responsibility for this order.

customerName

The name of the customer having billing responsibility for this order.

customerSubmittedNotes

Whether this order contains customer submitted notes.

digitalStatus nullable

String slug representation of the current digital status of this order. Null if fulfillmentType does not contain digital. 'awaiting-studio' = awaiting studio approval. 'awaiting-payment' = not released because payment is incomplete. 'sent' = the download URL has been emailed to the customer.

eventId nullable

The identifier for the event this order originates from. This can only be null if the order is part of a combined order.

eventName

The name of the event this order originates from.

fulfillmentTypes

Human readable description of the order fulfillment type. This can be derived from the labStatusId/labStatus fields, but is provided here as a convenience.

grandTotal

The order grand total value, in the currency selected by the order's currencyCode. Grand total is calculated by adding the item price for each item and item option, subtracting discounts and applying tax. Grand total is fixed to the time when order was placed by the customer.

id

The identifier for this order, a UUID.

labId nullable

The identifier for the lab fulfilling any lab fulfilled items in this order. Null if there are no lab fulfilled items in the order.

labName nullable read-only

The name of the lab fulfilling this order. Orders can have only one lab, as all lab-fulfilled items in an order will be fulfilled by the same lab.

labStatus nullable

The slug string name of the current status of lab fulfilled orders. Null if order is studio-fulfilled. Alternately referred to as lab progress. This is null for any order not having a fulfillmentType containing lab.

links required read-only

Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name.

orderStatus

The slug string name of the current status of this order. See orderCustomStatus for description of interaction with that field.

origin

Describes whether the order was placed by the customer or by the studio.

paymentStatus

The slug string name of the current payment status of this order. When the Order contains payments having a sum of not more than $0, the paymentStatus is unpaid. When the sum of an order's payments are less than the order's grandTotal, the paymentStatus is 'partially-paid'. When the sum of all order payments equals (or exceeds) the order's grandTotal, the paymentStatus is 'paid'.

type

The type of object represented.

links required read-only

Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name.

meta read-only

Metadata describing the current result set.

Property Description
currentPage

The current page of results returned.

rows

The number of rows returned per page for the current result set.

totalItems

The total number of items in the result set. This may be affected by active search/filter parameters.

totalPages

The total number of pages in the result set. This is affected by the rows parameter (totalItems / rows == totalPages).

type

The model type for the list response object.

OpenAPI Schema

The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.

{
  "description": "A collection of orders.",
  "properties": {
    "items": {
      "description": "A collection of resources returned in the current result set.",
      "items": {
        "description": "An order as viewed from a collection.",
        "properties": {
          "combinedOrder": {
            "description": "Indicates whether this order was created by combining multiple\norders.",
            "type": "boolean"
          },
          "created": {
            "description": "The creation date of this order.",
            "format": "date-time",
            "type": "string"
          },
          "currencyCode": {
            "description": "Currency code for the currency all order amounts are expressed in.",
            "type": "string"
          },
          "currencySymbol": {
            "description": "Currency symbol of the currency all order amounts are expressed in.",
            "type": "string"
          },
          "customStatus": {
            "description": "The human readable name of the current custom status of this order.\nCustom statuses are defined by the user in their brand preferences.\nAvailable statuses for an order will be one of either `orderStatus`\nor `orderCustomStatus`. If `orderStatus` is null,\n`orderCustomStatus` will have a value and vice versa.",
            "nullable": true,
            "type": "string"
          },
          "customerCropSelected": {
            "description": "Whether this order contains items having a customer defined crop.",
            "type": "boolean"
          },
          "customerEmail": {
            "description": "The email address of the customer having billing responsibility for\nthis order.",
            "format": "email",
            "type": "string"
          },
          "customerName": {
            "description": "The name of the customer having billing responsibility for this\norder.",
            "type": "string"
          },
          "customerSubmittedNotes": {
            "description": "Whether this order contains customer submitted notes.",
            "type": "boolean"
          },
          "digitalStatus": {
            "description": "String slug representation of the current digital status of this\norder. Null if `fulfillmentType` does not contain `digital`.\n'awaiting-studio' = awaiting studio approval. 'awaiting-payment' =\nnot released because payment is incomplete. 'sent' = the download\nURL has been emailed to the customer.",
            "enum": [
              "awaiting-studio",
              "awaiting-payment",
              "sent"
            ],
            "nullable": true,
            "type": "string"
          },
          "eventId": {
            "description": "The identifier for the event this order originates from. This can\nonly be null if the order is part of a combined order.",
            "nullable": true,
            "type": "integer"
          },
          "eventName": {
            "description": "The name of the event this order originates from.",
            "type": "string"
          },
          "fulfillmentTypes": {
            "description": "Human readable description of the order fulfillment type. This can\nbe derived from the `labStatusId`/`labStatus` fields, but is\nprovided here as a convenience.",
            "items": {
              "enum": [
                "lab",
                "digital",
                "self"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "grandTotal": {
            "description": "The order grand total value, in the currency selected by the order's\ncurrencyCode. Grand total is calculated by adding the item price for\neach item and item option, subtracting discounts and applying tax.\nGrand total is fixed to the time when order was placed by the\ncustomer.",
            "type": "number"
          },
          "id": {
            "description": "The identifier for this order, a UUID.",
            "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
            "type": "string"
          },
          "labId": {
            "description": "The identifier for the lab fulfilling any lab fulfilled items in\nthis order. Null if there are no lab fulfilled items in the order.",
            "nullable": true,
            "type": "integer"
          },
          "labName": {
            "description": "The name of the lab fulfilling this order. Orders can have only one\nlab, as all lab-fulfilled items in an order will be fulfilled by the\nsame lab.",
            "nullable": true,
            "readOnly": true,
            "type": "string"
          },
          "labStatus": {
            "description": "The slug string name of the current status of lab fulfilled orders.\nNull if order is studio-fulfilled. Alternately referred to as `lab\nprogress`. This is null for any order not having a `fulfillmentType`\ncontaining `lab`.",
            "enum": [
              "pending-copy-of-originals",
              "copying-originals",
              "pending-studio-confirmation",
              "submit-to-lab",
              "submitted-to-lab",
              "lab-received",
              "lab-completed",
              "canceled"
            ],
            "nullable": true,
            "type": "string"
          },
          "links": {
            "$ref": "#/components/schemas/Links"
          },
          "orderStatus": {
            "description": "The slug string name of the current status of this order. See\n`orderCustomStatus` for description of interaction with that field.",
            "type": "string"
          },
          "origin": {
            "description": "Describes whether the order was placed by the customer or by the\nstudio.",
            "enum": [
              "customer",
              "studio"
            ],
            "type": "string"
          },
          "paymentStatus": {
            "description": "The slug string name of the current payment status of this order.\nWhen the Order contains payments having a sum of not more than $0,\nthe `paymentStatus` is `unpaid`. When the sum of an order's payments\nare less than the order's `grandTotal`, the `paymentStatus` is\n'partially-paid'. When the sum of all order payments equals (or\nexceeds) the order's `grandTotal`, the `paymentStatus` is 'paid'.",
            "enum": [
              "unpaid",
              "partially-paid",
              "paid"
            ],
            "type": "string"
          },
          "type": {
            "description": "The type of object represented.",
            "enum": [
              "order"
            ],
            "type": "string"
          }
        },
        "title": "Order",
        "type": "object"
      },
      "title": "Order",
      "type": "array"
    },
    "links": {
      "$ref": "#/components/schemas/Links"
    },
    "meta": {
      "description": "Metadata describing the current result set.",
      "properties": {
        "currentPage": {
          "description": "The current page of results returned.",
          "type": "integer"
        },
        "rows": {
          "description": "The number of rows returned per page for the current result set.",
          "type": "integer"
        },
        "totalItems": {
          "description": "The total number of items in the result set. This may be\naffected by active search/filter parameters.",
          "type": "integer"
        },
        "totalPages": {
          "description": "The total number of pages in the result set. This is affected by\nthe `rows` parameter (`totalItems / rows == totalPages`).",
          "type": "integer"
        }
      },
      "readOnly": true,
      "type": "object"
    },
    "type": {
      "description": "The model type for the list response object.",
      "enum": [
        "order-collection"
      ],
      "example": "resource-type",
      "title": "Resource Type",
      "type": "string"
    }
  },
  "required": [
    "type",
    "items"
  ],
  "title": "Order Collection",
  "type": "object"
}