Northstar business scenario
The Playground demonstrates one complete operational path without production mocks or a second document model.
- Sign in as
sofia@northstar.testwith passwordpasswordand open a customer. - Create an order for that customer. The order is the demo document; its description uses the constrained RichText contract.
- Open Items on the order. Items are the existing relational
OrderItemsresource, not JSON Repeater data. - Sign in as
manager@northstar.test, open the order, and use Confirm. The workflow timeline records the actor, transition and time. - Use the manager dashboard queue to open the filtered
confirmedorder list, or read the same record throughGET /api/admin/resources/orders/{record}.
Operational boundaries
- Customer
contact_methodsis the separate one-level JSON Repeater example; it is not an adapter forHasMany. - CSV import uses the resource's declared headings: download the template, preview the file, then confirm the import. Row and global errors remain visible.
- CSV export is limited by the configured field and row limits. XLSX, arbitrary mapping and background jobs are not part of this example.
- Resource policy and API authentication remain active; an unavailable record is not represented by an unauthorized label or link.
Integrator checklist
OrderResource::api(new ApiResource)
->enabled()
->readable(['id', 'order_number', 'customer_id', 'status', 'total', 'notes'])
->flow();
Reuse the model, policy, workflow and relation definitions. Keep the list context in the show URL when the operator should return to a filtered queue.
Get Started