---
title: "Change when a folder link stops working"
method: PATCH
path: "/v1/assets/folders/{folder_id}/share-links/{link_id}"
tags: ["assets"]
---

# Change when a folder link stops working

`PATCH /v1/assets/folders/{folder_id}/share-links/{link_id}`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/assets/folders/{folder_id}/share-links/{link_id}`
- Auth: HTTP bearer

Set a working folder link's expiry, or send `expires_in_days: null` to remove its deadline. Needs the same authority as sharing — publishing every live file in the folder as it stands now, because prolonging a publication is publishing.

## Path parameters

- `folder_id` string, uuid, required: The folder's id.
- `link_id` string, uuid, required: The share link's id.

## Headers

- `X-Tenant-Id` string, nullable

## Request body

- AssetShareLinkExtend: A new deadline for a link that still works, counted from now rather than added to the old one — "another 30 days" is a promise a person can check on a calendar. Unlike the create body this field is REQUIRED, so ``null`` here can only ever be a deliberate "take the end date off"; there is no omission that could be read as one.
  - `expires_in_days` integer, nullable, required: How many days from now the link should keep working. Send null to take its end date away, so it works until somebody turns it off.

## Response `200`

Successful Response

- AssetFolderShareLinkInfo: One folder link as the management view lists it — no token, ever. Mirrors :class:`AssetShareLinkInfo` exactly; see it for why revoked/expired are reported separately.
  - `id` string, uuid, required
  - `created_at` string, date-time, required
  - `revoked_at` string, date-time, nullable
  - `expires_at` string, date-time, nullable

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED)
- `409`: Conflict
- `422`: Validation error

---

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