Flow · 6 steps

Page through the order book, arranged your way

The orders screen is a page of the book at a time, newest first, with a tab per status: the service filters, counts and pages, so a business with thousands of orders reads them as quickly as one with ten. The tabs' counts are one read; the page is the selected tab narrowed by the search and the catalogs being viewed; the count is the pager's total. Each person arranges the grid itself — which columns show, in what order — and that arrangement is kept on their account, so it follows them to another browser and into every organization they belong to.

Services involved

A filled dot is a read; a ring is a call that changes something.

  • Fulfillment Manager: https://fulfillment.getmanifold.io
  • Auth: https://auth.getmanifold.io

Every call carries Authorization: Bearer $MANIFOLD_TOKEN unless its step says otherwise (getting a token). Run a flow in your sandbox, not your live organization: see Before you start.

1 Count the tabs

Of the placed orders matching the search, how many there are, how many in each status and how many are still short of stock — every tab's badge in one read.

GET /orders/tallies?book=orders Fulfillment Manager

What the answer holds: the operation's example.

2 Read the first page of a tab

The open orders, newest created first, fifty to a page — the grid as it opens on the Open tab.

GET /orders?book=orders&status=open&limit=50 Fulfillment Manager

What the answer holds: the operation's example.

3 Count the tab

The pager's total for the same question, so it can say how many pages there are.

GET /orders/count?book=orders&status=open Fulfillment Manager

What the answer holds: the operation's example.

4 Arrange the grid

The person drags Customer and Status to the front and switches Source off. Kept on their account, not the organization's: their colleagues' grids are their own.

PUT /api/auth/me/grid-layouts/orders Auth

Sent as the person's own sign-in session.

Request · application/json
{
  "order": [
    "customer",
    "status"
  ],
  "hidden": [
    "source"
  ]
}

What the answer holds: the operation's example.

5 Arrange it the same way again

Idempotent by content: the layout the grid already has is answered as it stands, with no second fact.

PUT /api/auth/me/grid-layouts/orders Auth

Sent as the person's own sign-in session.

Request · application/json
{
  "order": [
    "customer",
    "status"
  ],
  "hidden": [
    "source"
  ]
}

What the answer holds: the operation's example.

6 Open the admin somewhere else

Every grid the person has arranged, read once when they sign in — the same columns on any device.

GET /api/auth/me/grid-layouts Auth

Sent as the person's own sign-in session.

What the answer holds: the operation's example.

What a recorded fact is: Facts and the journal. Why a repeated step changes nothing: Idempotency and retries.