---
title: "Unlock a password-protected public proposal"
method: POST
path: "/api/v2/public/proposals/{uuid}/unlock"
tags: ["Proposals"]
---

# Unlock a password-protected public proposal

`POST /api/v2/public/proposals/{uuid}/unlock`

## Request

- Base URL: `https://developer.productive.io` (the document declares no server; this is the origin it was published from)
- URL: `https://developer.productive.io/api/v2/public/proposals/{uuid}/unlock`
- Auth: none required

## Path parameters

- `uuid` string, required

## Request body

- object
  - `data` object
    - `attributes` object
      - `password` string
    - `type` 'proposals'

## Response `201`

Short-lived access token for a password-protected proposal link

- object
  - `data` object
    - `token` string, required
  - `links` object
  - `meta` object

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `408`: Request Timeout
- `415`: Unsupported Media Type
- `422`: Unprocessable Content
- `423`: Locked
- `429`: Too Many Requests
- `500`: Internal Server Error

## Changes

- **2026-11-02** `fa3060fd0144`: 7 info
  - added the non-success response with the status `400`
  - added the non-success response with the status `408`
  - added the non-success response with the status `415`
  - added the non-success response with the status `422`
  - …3 more
- **2026-10-27** `f11a8740641a`: 1 info
  - endpoint added
  - …this revision’s changelog is incomplete

[Operation history](https://skmtc.dev/productive/apis/api-documentation/changes/api/v2/public/proposals/:uuid/unlock/post.md)

---

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