Skip to content

Start Project Comment Attachment Upload Tier 3

POST/api/projects/:id/comment-attachments/upload.multipartCopied!

Creates a project comment attachment upload and returns presigned upload URLs. Parts are generated in 100 MB chunks, and the maximum attachment size is 1 GB.

An upload that is not attached to a comment becomes eligible for automatic cleanup 24 hours after it is created.

For typical comment attachment uploads, use the SDK-managed commentAttachments.uploadForProject helper instead of calling this endpoint directly. See Upload comment attachments.

Endpoint not callable from CLI

The CLI does not expose direct comment attachment upload commands. Use the SDK helper or call the HTTP endpoint directly.

Example

ts
const upload = await client.commentAttachments.startForProject("bdbff5de-96d7-468f-9db0-85fe28bd6b62", {
  name: "review-note.pdf",
  size: 1250000,
});
bash
curl -X POST 'https://api.youvico.com/api/projects/bdbff5de-96d7-468f-9db0-85fe28bd6b62/comment-attachments/upload.multipart' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "review-note.pdf", "size": 1250000 }'
json
{
  "data": {
    "id": "CA1234567890ABCD",
    "parts": [
      {
        "partNumber": 1,
        "url": "https://example.com/upload/1"
      }
    ]
  }
}

Request

Path

idstringrequired
Project ID

Body

namestringrequired

1-255 characters

Attachment file name
sizenumberrequired

1-1000000000

Attachment size in bytes

Response

Returns 201 Created.

dataobject
Upload session
data.idstring
Created comment attachment ID

Example: CA1234567890ABCD

data.partsarray
Upload parts
data.parts[].partNumbernumber
Part number

Example: 1

data.parts[].urlstring
Presigned upload URL for the part

Example: https://example.com/upload/1