---
title: "Share a client piece with a public link"
method: POST
path: "/v3/client-book/client/{id}/design/{designId}/share"
tags: ["Client Book"]
---

# Share a client piece with a public link

`POST /v3/client-book/client/{id}/design/{designId}/share`

## Request

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

Returns the active link of the piece, or a new one. JSON body, all optional: message (up to 500 characters), expires_in_days (1-30, 2 = 48 hours; a new link lasts 30 days) and show_price (boolean, off by default; true freezes today's retail price, sent again it updates it). The page shows the piece live (photos, 3D, metal and stones) and, with show_price, its frozen retail price: the piece, the inventory stone and the total. 400 SHARE_PRICE_UNAVAILABLE if the piece cannot be priced today.

## Path parameters

- `id` string, required
- `designId` string, required

## Response `200`

The link

## Other responses

- `400`: CLIENT_ARCHIVED, INVALID_SHARE_MESSAGE, SHARE_MESSAGE_TOO_LONG, INVALID_SHARE_EXPIRY
- `404`: DESIGN_NOT_FOUND

## Changes

- **2026-10-11** `571d5e944994`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/changes/v3/client-book/client/:id/design/:designId/share/post.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)
