The customer-facing endpoints, in one place.
This guide intentionally includes only endpoints whose URLs begin with /api/v2/client. Use it for implementation guidance; use Swagger when you need the authoritative machine-readable schema.
Quick reference
| Method | Endpoint | Purpose |
|---|---|---|
| POST | /client/sales_order | Create a Sales Order |
| GET | /client/available_devices | Get available devices, projects, and kits |
| GET | /client/available_shipping_methods | Get available shipping methods |
| GET | /client/sales_order/{sales_order_id} | Get detailed Sales Order information |
| GET | /client/sales_order_statuses | Get active Sales Order statuses |
| GET | /client/kits/{kit_id}/assembled | List assembled kits |
| GET | /client/projects/{project_id}/kits | List kits for a project |
| GET | /client/projects | List projects |
| POST | /client/search_sales_orders | Search Sales Orders by PO number or status |
Sales Orders
POST/client/sales_order — Create Sales Order
Required JSON fields: customer_po_no, items. Every item requires sku and quantity ≥ 1.
Optional: ship_address, shipping_method, shipping_instructions, custom_fields. If custom_fields are included, project_name is required by the schema.
POST https://workspace-stage.connectuscorp.com/api/v2/client/sales_order
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"customer_po_no": "PO-2026-001",
"items": [{"sku":"STR-12345","quantity":2}]
}
201: returns message, sales_order_number, and customer_po_no. 422: validation failed. 500: internal Sales Order creation error.
GET/client/sales_order/{sales_order_id} — Get Sales Order
Path parameter: sales_order_id (integer).
GET https://workspace-stage.connectuscorp.com/api/v2/client/sales_order/12345
The detailed response includes fields such as id, status_id, status_type, status, customer_po_no, shipping_date, delivery_date, shipping_method, shipping_instructions, ship_address, custom_fields, and ship_doc.
A shipping document can include a tracking number, shipping method, status, ship-document ID, date, and shipped item details.
POST/client/search_sales_orders — Search Sales Orders
Search using optional query parameters customer_po_no and/or so_status (array of integer status IDs).
POST https://workspace-stage.connectuscorp.com/api/v2/client/search_sales_orders?customer_po_no=PO-2026-001
{
"message": "Sales orders successfully retrieved",
"sales_orders": [
{
"id": 12345,
"statusId": 20,
"statusType": "Open",
"status": "Processing",
"customerPoNo": "PO-2026-001",
"shipDoc": null
}
]
}
GET/client/sales_order_statuses — Get Sales Order Statuses
Returns active status IDs and names. Use these IDs when filtering Sales Orders.
GET https://workspace-stage.connectuscorp.com/api/v2/client/sales_order_statuses
{
"data": [{"id": 1, "name": "Example Status"}],
"message": "Sales Order Statuses retrieved successfully."
}
Availability
GET/client/available_devices — Get Available Devices
Returns an account-level container with devices, projects, and kits.
GET https://workspace-stage.connectuscorp.com/api/v2/client/available_devices
{
"data": {
"devices": [
{"sku":"DEVICE-001","description":"Example device","available":12,"is_active":true}
],
"projects": [{"name":"Project Alpha"}],
"kits": [{"name":"Starter Kit","code":"KIT-001"}]
}
}
GET/client/available_shipping_methods — Get Shipping Methods
Retrieves shipping methods currently available from the OrderTime service.
GET https://workspace-stage.connectuscorp.com/api/v2/client/available_shipping_methods
{
"message": "Shipping methods successfully retrieved",
"shippingMethods": [
{"id":12,"name":"FedEx Ground"}
]
}
Projects & Kits
GET/client/projects — List Projects
Query parameters: page (default 1), per_page (default 15).
GET https://workspace-stage.connectuscorp.com/api/v2/client/projects?page=1&per_page=15
Returns paginated project records: id, name, description, status, and default_kit_id.
GET/client/projects/{project_id}/kits — List Project Kits
Path parameter: project_id. Query parameters: page, per_page.
GET https://workspace-stage.connectuscorp.com/api/v2/client/projects/101/kits?page=1&per_page=15
Returns paginated kit records: id, name, code, and is_archived. A 404 means the project was not found or is not owned by the authenticated customer.
GET/client/kits/{kit_id}/assembled — List Assembled Kits
Path parameter: kit_id. Query parameters: page, per_page.
GET https://workspace-stage.connectuscorp.com/api/v2/client/kits/42/assembled?page=1&per_page=15
Records contain id, scanned_code, validated, activation_required, status, and created_at. A 404 means the kit was not found or is not owned by the authenticated customer.
Headers used by the API
| Header | Required? | Purpose |
|---|---|---|
| Authorization: Bearer … | Yes | Authenticates the customer account. |
| Accept: application/json | Recommended | Requests JSON responses. |
| Content-Type: application/json | For JSON bodies | Required when sending JSON request data. |
| X-Request-ID | No | Request tracing / idempotency identifier. |