List My Products
Returns all products that the authenticated customer has purchased or has active. Used on the customer’s account page to show active memberships, passes, and add-on products.
Authentication
Requires a valid customer bearer token.
Query Parameters
Comma-separated list of field paths to include in the response. When provided, only the
specified fields are returned — useful for reducing payload size. Supports nested paths
using dot notation. Example: _shape=Records.Product.Name,Records.Price,Records.Quantity.
Response
Returns an array of CoworkerProduct objects with the following fields.
CoworkerProduct Fields
Identity
| Field | Type | Description |
|---|
Id | number | Unique numeric identifier |
UniqueId | string | Globally unique identifier |
Pricing
| Field | Type | Description |
|---|
Price | number | Calculated price (including tax display) |
PriceFormatted | string | Price formatted with currency symbol |
Billing
| Field | Type | Description |
|---|
RegularCharge | boolean | Whether this is a recurring charge |
RepeatCycle | string | Billing cycle (e.g. Monthly, Annually) |
RepeatUnit | number | null | Number of cycles between charges |
Quantity | number | Quantity purchased |
InvoiceOn | string | null | Next invoice date |
Product Details
| Field | Type | Description |
|---|
Product | object | Nested product object (see Product Fields below) |
Nested Product Fields
| Field | Type | Description |
|---|
Id | number | Product identifier |
Name | string | Product display name |
Description | string | Product description |
Price | number | Unit price (with tax display) |
PriceFormatted | string | Price formatted with currency symbol |
Tags | string | Comma-separated product tags |
Visible | boolean | Whether the product is visible in the store |
DisplayOrder | number | Sort order in listings |
CurrentStock | number | null | Current stock level (if tracked) |
TrackStock | boolean | Whether stock tracking is enabled |
AllowNegativeStock | boolean | Whether negative stock is permitted |
ProductCurrencyCode | string | ISO 4217 currency code |
SystemProductType | number | Internal product type identifier |
BusinessId | number | Location identifier |
BusinessName | string | Location display name |
BusinessWebAddress | string | Location subdomain |
Timestamps (from base)
| Field | Type | Description |
|---|
CreatedOn | string | Date created (business-local time) |
UpdatedOn | string | null | Date last updated (business-local time) |
CreatedOnUtc | string | Date created (UTC) |
UpdatedOnUtc | string | null | Date last updated (UTC) |
Examples
Fetch my products
GET /api/public/products/my
Authorization: Bearer {token}
TypeScript Integration
import endpoints from '@/api/endpoints'
const response = await httpClient.get(endpoints.products.my)