---
title: "Update one of the client's designs"
method: PUT
path: "/v3/client-book/client/{id}/design/{designId}"
tags: ["Client Book"]
---

# Update one of the client's designs

`PUT /v3/client-book/client/{id}/design/{designId}`

## Request

- Base URL: `https://api.rhinoartisan.com`
- URL: `https://api.rhinoartisan.com/v3/client-book/client/{id}/design/{designId}`
- Auth: API key in header `apikey`
- TypeScript: <https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/docs/v3/client-book/client/:id/design/:designId/put.ts> (a function with typed inputs; its response is checked against the schema)

Edits a design that already belongs to the client without creating copies: name, description, the inside engraving and, with `draft_id`, the geometry of a newer solve (the draft is consumed).

## Path parameters

- `id` integer, required
- `designId` integer, required

## Request body

- object
  - `name` string
  - `display_name` string, nullable: The name shown to the client (Showroom, piece details, share page), up to 80 characters; empty removes it.
  - `description` string, nullable
  - `draft_id` integer
  - `engraving` object, nullable: Inside engraving `{text, font, size}`; null removes it.

## Response `200`

Design updated

## Other responses

- `400`: INVALID_ENGRAVING
- `404`: CLIENT_NOT_FOUND | DESIGN_NOT_FOUND | DRAFT_NOT_FOUND

## Changes

- **2026-10-18** `1f4c5660cd80`: 1 info
  - added the new optional request property `display_name`
- **2026-10-12** `d39147fbcb88`: 2 info
  - added the new optional request property `engraving`
  - added the non-success response with the status `400`
- **2026-10-02** `82c79770c36b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/changes/v3/client-book/client/:id/design/:designId/put.md)

---

[API](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api.md) - [All operations](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/revisions/f0e1d3d69cfb?raw)
