This guide gets you from zero to your first live work order in five minutes. You'll need a LINKO Pro/Team account (or a 14-day free trial) and curl. That's it.
Step 1: Get your API key
After logging in, head to Portal → Settings → API Keys. Click 'Create Key', give it a name (e.g. 'quickstart'), and copy the value. It begins with sk_live_ in production and sk_test_ in sandbox.
export LINKO_API_KEY=sk_test_your_key_here
export LINKO_TENANT=acme-mfgStep 2: Register a machine
Every shop-floor asset is registered as a 'machine' in LINKO. The minimum payload is name and machine_type. We support cnc, plc, robot, conveyor, oven, and a generic 'custom' type for everything else.
curl -X POST https://api.linko.sale/v1/machines \
-H "Authorization: Bearer $LINKO_API_KEY" \
-H "X-Tenant-Id: $LINKO_TENANT" \
-H "Content-Type: application/json" \
-d '{"name":"CNC-01","machine_type":"cnc","location":"Line A"}'The response gives you a machine_id you'll use for the rest of the calls.
Step 3: Create a work order
curl -X POST https://api.linko.sale/v1/work-orders \
-H "Authorization: Bearer $LINKO_API_KEY" \
-H "X-Tenant-Id: $LINKO_TENANT" \
-H "Content-Type: application/json" \
-d '{"product_code":"WIDGET-100","qty":250,"due_date":"2026-05-01","machine_id":"<paste here>"}'Step 4: Open the dashboard
Open https://portal.linko.sale → Production → Work Orders. Your new order should appear within 200 ms. Click it for the full lifecycle view: scheduled, in-progress, completed, with timestamped events at every transition.
What to read next
- Webhooks — listen for status_changed, qty_completed, machine_fault events.
- Multi-tenant headers — how the X-Tenant-Id header isolates each customer's data with row-level security.
- Rate limits — 1,000 req/min per tenant; 429 responses include a Retry-After header.
- Idempotency — pass an Idempotency-Key header to safely retry POSTs.