---
title: "Update a share"
method: POST
path: "/shares.update"
tags: ["Shares"]
---

# Update a share

`POST /shares.update`

Allows changing an existing shares published status, which removes authentication and makes it available to anyone with the link.

## Request body

- object
  - `id` string, uuid, required
  - `published` boolean, required

## Response `200`

OK

- object
  - `data` Share
    - `id` string, uuid — Unique identifier for the object.
    - `documentTitle` string — Title of the shared document.
    - `documentUrl` string, uri — URL of the original document.
    - `url` string, uri — URL of the publicly shared document.
    - `published` boolean — If true the share can be loaded without a user account.
    - `includeChildDocuments` boolean — If to also give permission to view documents nested beneath this one.
    - `createdAt` string, date-time — Date and time when this share was created
    - `createdBy` User
      - `id` string, uuid — Unique identifier for the object.
      - `name` string — The name of this user, it is migrated from Slack or Google Workspace when the SSO connection is made but can be changed if neccessary.
      - `avatarUrl` string, uri — The URL for the image associated with this user, it will be displayed in the application UI and email notifications.
      - `email` string, email — The email associated with this user, it is migrated from Slack or Google Workspace when the SSO connection is made but can be changed if neccessary.
      - `role` 'admin' | 'member' | 'viewer' | 'guest'
      - `isSuspended` boolean — Whether this user has been suspended.
      - `lastActiveAt` string, date-time — The last time this user made an API request, this value is updated at most every 5 minutes.
      - `createdAt` string, date-time — The date and time that this user first signed in or was invited as a guest.
    - `updatedAt` string, date-time — Date and time when this share was edited
    - `lastAccessedAt` string, date-time — Date and time when this share was last viewed

## Other responses

- `400` — The request failed one or more validations.
- `401` — The API key is missing or otherwise invalid.
- `403` — The current API key is not authorized to perform this action.
- `429` — The request was rate limited.

## Changes

- **2024-10-18** `fdf2ec9c9df4` — 1 info
  - added the non-success response with the status `429`
- **2024-07-06** `7b33b538cd7d` — 9 info
  - added the optional property `data` to the response with the `400` status
  - added the optional property `data` to the response with the `401` status
  - added the optional property `data` to the response with the `403` status
  - added the optional property `message` to the response with the `400` status
  - …5 more

[Change history](https://skmtc.dev/defaulr/apis/outline-api/changes/shares.update/post.md)

---

[API](https://skmtc.dev/defaulr/apis/outline-api.md) · [All operations](https://skmtc.dev/defaulr/apis/outline-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/defaulr/outline-api/revisions/fdf2ec9c9df4/schema)
