---
title: "List the admitted Product instruments and typed fields"
method: GET
path: "/v1/products/{productId}/instruments"
tags: ["Products"]
---

# List the admitted Product instruments and typed fields

`GET /v1/products/{productId}/instruments`

## Request

- Base URL: `https://hyperscale0.ai`
- URL: `https://hyperscale0.ai/v1/products/{productId}/instruments`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Returns each instrument in the Product's current Build with its fields and lifecycle states, plus the Build id, digest, and currency.

## Path parameters

- `productId` string, required: Hyperscale product ID

## Headers

- `X-Hyperscale-Environment` 'sandbox' | 'live'

## Response `200`

Success

- ProductInstrumentsListOutput
  - `productBuildId` string, required: Hyperscale product build ID
  - `buildDigest` string, required: SHA-256 digest of the resolved product build closure
  - `currency` 'SAR', required
  - `items` object[], required
    - `id` string, required
    - `template` string
    - `title` string, required
    - `summary` string, required
    - `fields` union[], required
      - union
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'money', required
          - `value` string
          - `minimum` string
          - `maximum` string
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'account', required
          - `owner` union, required
            - string
            - object
              - …
          - `key` string
          - `book` 'cash' | 'claim', required
          - `contra` true
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'ref', required
          - `targetKind` 'instrument' | 'object', required
          - `targetFamily` union
            - object
              - …
            - object
              - …
          - `target` union, required
            - string
            - string[]
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'date', required
          - `value` string, date-time
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'duration', required
          - `value` integer
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'text', required
          - `value` string
          - `minLength` integer
          - `maxLength` integer
          - `pattern` string
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'integer', required
          - `value` integer
          - `minimum` integer
          - `maximum` integer
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'percent', required
          - `value` integer
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'boolean', required
          - `value` boolean
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'enum', required
          - `values` string[], required
          - `value` string
        - object
          - `name` string, required
          - `label` string
          - `optional` true
          - `description` string
          - `sensitive` true
          - `type` 'list', required
          - `item` 'money' | 'date' | 'text' | 'integer' | 'ref', required
          - `targetKind` 'instrument' | 'object'
          - `targetFamily` union
            - object
              - …
            - object
              - …
          - `target` string
          - `maxItems` integer, required
    - `lifecycle` object, required
      - `states` string[], required
      - `labels` object
      - `initial` string, required
      - `transitions` object, required

## Other responses

- `default`: ErrorResponse. See x-error-codes and x-errors for codes, HTTP statuses and retry guidance.

---

[API](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api.md) · [All operations](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hyperscale0/apis/hyperscale-product-api/revisions/e9e8faa044d5?raw)
