---
title: "Read an authorized dynamic QR vault and its public child records"
method: GET
path: "/api/dynamic-qr-vaults/{vaultId}"
---

# Read an authorized dynamic QR vault and its public child records

`GET /api/dynamic-qr-vaults/{vaultId}`

## Response `200`

Vault and project-owned records; never includes token hashes or child management credentials

- DynamicQrVaultResponse
  - `success` boolean, required
  - `vault` DynamicQrVaultRecord, required — Public authorized representation. Never contains managementTokenHash, qrSlugs, child credentials, or internal storage fields.
    - `vaultId` string, required
    - `name` string, required
    - `version` integer, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `emptyExpiresAt` string, date-time, nullable, required — Empty projects expire after six hours. This is null once the project contains a QR code.
    - `records` DynamicQrVaultChildRecord[], required
      - `slug` string, required
      - `destination` string, uri, required
      - `label` string, required
      - `status` 'active' | 'paused', required
      - `version` integer, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `folder` string
      - `tags` string[]

## Other responses

- `401` — Missing

---

[API](https://skmtc.net/qrcodecrafter/apis/qrcodecrafter-api.md) · [All operations](https://skmtc.net/qrcodecrafter/apis/qrcodecrafter-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/qrcodecrafter/qrcodecrafter-api/versions/8b7eace2bb78/schema)
