---
title: "Read the sandbox Product clock"
method: GET
path: "/v1/products/{productId}/sandbox-clock"
tags: ["Sandbox"]
---

# Read the sandbox Product clock

`GET /v1/products/{productId}/sandbox-clock`

## Request

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

Returns the same effective time used by Product execution. Host mode follows wall time; frozen mode stays at the last clock advance. Observation time always uses wall time.

## Path parameters

- `productId` string, required: Hyperscale product ID

## Headers

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

## Response `200`

Success

- SandboxClockRetrieveOutput
  - `tenantId` string, required: Organization tenant ID
  - `productId` string, required: Hyperscale product ID
  - `effectiveAt` string, date-time, required
  - `mode` 'host' | 'frozen', required
  - `observedAt` string, date-time, 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)
