---
title: "Get a wrap and re-sign its assets"
method: GET
path: "/api/v1/wraps/{wrapId}"
tags: ["Wraps"]
---

# Get a wrap and re-sign its assets

`GET /api/v1/wraps/{wrapId}`

## Request

- Base URL: `https://beyourcover.com`
- URL: `https://beyourcover.com/api/v1/wraps/{wrapId}`
- Auth: HTTP bearer

Returns a stored wrap with fresh one-hour signed URLs. Wraps created in the browser wrap editor are readable here too, and vice versa; find a wrapId with `GET /api/v1/wraps`.

## Path parameters

- `wrapId` string, uuid, required

## Response `200`

The wrap design and its assets.

- WrapDetail: A stored wrap design. `layout_state` is the same schema the browser wrap editor reads and writes, so a wrap created through the API can be opened and adjusted by hand.
  - `wrapId` string, uuid, required
  - `bookId` string, uuid
  - `designName` string, nullable: `API` for wraps created through this endpoint.
  - `designStyle` string, nullable
  - `printProvider` 'kdp' | 'bn': `kdp` (Amazon KDP) or `bn` (Barnes & Noble). Wraps created through the API are always `kdp`; `bn` designs come from the browser wrap editor.
  - `bindingType` string, nullable: `paperback`, `hardcover`, or `dust-jacket` (Barnes & Noble only).
  - `trimWidth` number
  - `trimHeight` number
  - `pageCount` integer, nullable: Null on a Barnes & Noble design: its spine width is entered by hand.
  - `paperType` string, nullable: Null on a Barnes & Noble design.
  - `spineWidth` number
  - `flapWidth` number, nullable: Width of each flap in inches on a Barnes & Noble dust jacket; null on every other format.
  - `fullWidthInches` number
  - `fullHeightInches` number
  - `fontFamily` string, nullable: The font of the tagline, blurb and author bio (else of the spine title), which a re-render keeps unless it names another. Null when the layout names none, in which case a preset sets Arimo. Blocks added by hand in the editor can use other fonts: see `layout_state`.
  - `layout_state` object, nullable: Editor-schema layout: text blocks in percent-of-panel coordinates, image layers (`imageBlocks`, each on the back cover or, with `panel: "spine"`, on the spine), spine styles, overlay settings.
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `assets` WrapAssets, required: Renditions of one wrap design. Re-signed on every poll/read.
    - `wrap_preview` WrapAsset
      - `signedUrl` string, uri, required
      - `expiresAt` string, date-time, required
    - `wrap_flat` WrapAsset
      - `signedUrl` string, uri, required
      - `expiresAt` string, date-time, required
    - `wrap_pdf` WrapAsset
      - `signedUrl` string, uri, required
      - `expiresAt` string, date-time, required
    - `back_art` WrapAsset
      - `signedUrl` string, uri, required
      - `expiresAt` string, date-time, required

## Other responses

- `401`: Missing/malformed API key, unknown or inactive key, or inactive subscription detected during credit checks. `code`: `unauthorized`.
- `403`: The API key is valid but its owner has no active enterprise subscription. `code`: `forbidden`.
- `404`: Wrap not found or not owned by this API key's user. `code`: `wrap_not_found`.
- `500`: Unexpected server error. `code`: `internal_error`.
- `503`: `code`: `temporarily_unavailable` — the workspace's plan could not be checked. Retry.

---

[API](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api.md) · [All operations](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api/llms.txt) · [OpenAPI document](https://skmtc.dev/beyourcover/apis/beyourcover-partner-api/revisions/82ad2c7c8ede?raw)
