---
title: "Retrieve a Product"
method: GET
path: "/v1/products/{productId}"
tags: ["Products", "Founder login"]
---

# Retrieve a Product

`GET /v1/products/{productId}`

## Request

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

Retrieve a Product joined with its optional Blueprint, plan tier, go-live readiness and cost, and generated developer surfaces.

## Path parameters

- `productId` string, required: Hyperscale product ID

## Headers

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

## Response `200`

Success

- ProductRetrieveOutput
  - `productId` string, required: Hyperscale product ID
  - `tenantId` string, required: Organization tenant ID
  - `environment` 'sandbox' | 'live', required
  - `displayName` string, required
  - `businessDescription` string
  - `rehearsalOriginProductId` string: Hyperscale product ID
  - `slug` string, required
  - `kind` 'app' | 'offering' | 'listing' | 'booking' | 'pool', required
  - `icon` ProductIcon, required (unresolved $ref)
  - `status` 'pending' | 'active' | 'disabled' | 'closed', required
  - `instrumentIds` string[], required
  - `pricing` ProductPricingSchedule, required (unresolved $ref)
  - `readiness` ProductActivationReadiness, required (unresolved $ref)
  - `capabilities` ProductCapability[], required (unresolved $ref)
  - `cost` ProductLiveCostEstimate, required (unresolved $ref)

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