> ## Documentation Index
> Fetch the complete documentation index at: https://developers.redo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# cartons

> List warehouse-owned cartons, including unassigned cartons, in descending opaque ID order. Removed cartons are excluded.

**Required scopes:** [`inventory_read`](https://developers.redo.com/docs/api-reference/v3/reference/scopes#scope-inventory_read)

**Store must have one of:** `WMS`

## Arguments

**after** `String`

Forward page cursor.

**before** `String`

Backward page cursor.

**consolidationId** `ID`

Limit to cartons assigned to this consolidation.

**first** `Int`

Forward page size, at most 100. Defaults to 25.

**last** `Int`

Backward page size, at most 100.

**orderBy** `[CartonSortKey](/docs/api-reference/v3/reference/consolidations/carton-sort-key)`

The ordering key. Defaults to ID.

**reverse** `Boolean`

Reverse the default order.

## Returns

**cartons** `[CartonConnection!](/docs/api-reference/v3/pagination)` *required*

A paginated list of Carton items.

**fields**

**edges** `[\[CartonEdge!\]!](/docs/api-reference/v3/pagination)` *required*

The list of edges (each a node plus its pagination `cursor`).

**fields**

**cursor** `String!` *required*

Opaque cursor for this item; pass to `after`/`before` to page from here.

**node** `[Carton!](/docs/api-reference/v3/reference/consolidations/carton)` *required*

The item at this edge.

**fields**

**availableDocuments** `[\[DocumentOption!\]!](/docs/api-reference/v3/reference/consolidations/document-option)` *required*

Documents supported by the carton's current shipment association. An unassigned carton has none.

**cartonNumber** `Int!` *required*

The carton's numeric display reference. Use id for identity.

**dimensions** `[Dimensions](/docs/api-reference/v3/reference/catalog/dimensions)`

Measured carton dimensions.

**displayIdentifier** `String!` *required*

The saved display label, falling back to its numeric reference.

**id** `ID!` *required*

The permanent opaque carton ID.

**weight** `[Weight](/docs/api-reference/v3/reference/catalog/weight)`

Measured carton weight.

**nodes** `[\[Carton!\]!](/docs/api-reference/v3/reference/consolidations/carton)` *required*

The nodes in this page, without the edge/cursor wrapper — a convenience over `edges`.

**fields**

**availableDocuments** `[\[DocumentOption!\]!](/docs/api-reference/v3/reference/consolidations/document-option)` *required*

Documents supported by the carton's current shipment association. An unassigned carton has none.

**fields**

**formats** `[\[DocumentFormat!\]!](/docs/api-reference/v3/reference/consolidations/document-format)` *required*

Its supported representations.

**kind** `[DocumentKind!](/docs/api-reference/v3/reference/consolidations/document-kind)` *required*

The available document.

**cartonNumber** `Int!` *required*

The carton's numeric display reference. Use id for identity.

**dimensions** `[Dimensions](/docs/api-reference/v3/reference/catalog/dimensions)`

Measured carton dimensions.

**fields**

**height** `Float`

The height, in `unit`.

**length** `Float`

The length, in `unit`.

**unit** `[DimensionUnit!](/docs/api-reference/v3/reference/catalog/dimension-unit)` *required*

The unit all three measurements are expressed in.

**width** `Float`

The width, in `unit`.

**displayIdentifier** `String!` *required*

The saved display label, falling back to its numeric reference.

**id** `ID!` *required*

The permanent opaque carton ID.

**weight** `[Weight](/docs/api-reference/v3/reference/catalog/weight)`

Measured carton weight.

**fields**

**unit** `[WeightUnit!](/docs/api-reference/v3/reference/catalog/weight-unit)` *required*

The unit the value is expressed in.

**value** `Float!` *required*

The numeric magnitude of the weight.

**pageInfo** `[PageInfo!](/docs/api-reference/v3/pagination)` *required*

Pagination metadata for the current page.

**fields**

**endCursor** `String`

Cursor of the last edge in this page; pass to `after` to page forward.

**hasNextPage** `Boolean!` *required*

Whether more items exist after this page (drives forward pagination with `first`/`after`).

**hasPreviousPage** `Boolean!` *required*

Whether more items exist before this page (drives backward pagination with `last`/`before`).

**startCursor** `String`

Cursor of the first edge in this page; pass to `before` to page backward.

## Example

```graphql theme={null}
query {
  cartons(after: "...", before: "...", consolidationId: "...", first: 10, last: 10, orderBy: ID, reverse: true) {
    nodes {
      cartonNumber
      displayIdentifier
      id
    }
    pageInfo { hasNextPage endCursor }
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.