> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List My Products

> Returns the products purchased by the authenticated customer.

# 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

<ParamField query="_shape" type="string">
  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`.
</ParamField>

## 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

```http theme={null}
GET /api/public/products/my
Authorization: Bearer {token}
```

## TypeScript Integration

```typescript theme={null}
import endpoints from '@/api/endpoints'

const response = await httpClient.get(endpoints.products.my)
```
