Confirm a workspace page attachment upload
PATCH/api/v1/workspaces/{workspace_slug}/pages/{page_id}/attachments/{attachment_id}/
Set an attachment's upload status after uploading it through the generic asset upload flow. This operation queues storage metadata extraction when needed. The page must be editable and cannot be locked or archived.
Path Parameters
workspace_slug:requiredstringThe workspace's unique slug.
page_id:requiredstringThe workspace page UUID.
attachment_id:requiredstringThe attachment asset UUID.
Body Parameters
is_uploaded:optionalbooleanWhether the attachment was uploaded successfully. Defaults to true.
Scopes
write or wiki.pages:write
Confirm an attachment upload
bash
curl -X PATCH "https://api.plane.so/api/v1/workspaces/my-workspace/pages/page-uuid/attachments/attachment-uuid/" -H "X-API-Key: $PLANE_API_KEY" -H "Content-Type: application/json" -d '{"is_uploaded":true}'python
import requests
response = requests.patch("https://api.plane.so/api/v1/workspaces/my-workspace/pages/page-uuid/attachments/attachment-uuid/", headers={"X-API-Key": "your-api-key"}, json={"is_uploaded": True})
print(response.status_code)javascript
// Run this example server-side. Browser apps must call your backend to keep the API key secret.
const response = await fetch(
"https://api.plane.so/api/v1/workspaces/my-workspace/pages/page-uuid/attachments/attachment-uuid/",
{
method: "PATCH",
headers: { "X-API-Key": process.env.PLANE_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({ is_uploaded: true }),
},
);Response204
No response body.

