API Documentation
Attachments ¶
Attachments ¶
The attachment object represents files such as images, PDFs and documents that can be assigned to other objects. These include, but are not limited, to tasks, comments, expenses and purchase orders. With attachments, users can provide relevant information, resources and additional context for related objects.
You can find more about attachments in our Help documentation: Working with attachments
For more details on how to work with attachment files through our API please refer to Working with attachments guide.
Supported filter params
-
comment_id (array)
-
page_id (array)
-
task_id (array)
GET /api/v2/attachments?filter[comment_id]=3
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": [
{
"id": "1",
"type": "attachments",
"attributes": {
"name": "img.png",
"content_type": "image/png",
"size": 3479,
"url": "https://files-test.productive.io/attachments/files/000/000/001/original/img.png?1757736164",
"thumb": "https://files-test.productive.io/attachments/files/000/000/001/thumb/img.png?1757736164",
"temp_url": "https://files-test.productive.io/attachments/files/000/000/001/original/img.png?1757736164",
"resized": false,
"created_at": "2025-09-13T06:02:44.869+02:00",
"deleted_at": null,
"attachment_type": null,
"message_id": null,
"external_id": null,
"attachable_type": "comment"
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "13"
}
},
"creator": {
"meta": {
"included": false
}
},
"invoice": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"bill": {
"meta": {
"included": false
}
},
"email": {
"meta": {
"included": false
}
},
"page": {
"meta": {
"included": false
}
},
"expense": {
"meta": {
"included": false
}
},
"comment": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"document_style": {
"meta": {
"included": false
}
},
"document_type": {
"meta": {
"included": false
}
},
"deal": {
"meta": {
"included": false
}
}
}
}
],
"links": {
"first": "http://api-test.productive.io/api/v2/attachments?filter%5Bcomment_id%5D=3&page%5Bnumber%5D=1&page%5Bsize%5D=30",
"last": "http://api-test.productive.io/api/v2/attachments?filter%5Bcomment_id%5D=3&page%5Bnumber%5D=1&page%5Bsize%5D=30"
},
"meta": {
"current_page": 1,
"total_pages": 1,
"total_count": 1,
"page_size": 30,
"max_page_size": 200
}
}
Get attachmentsGET/api/v2/attachments
GET /api/v2/attachments/2
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "2",
"type": "attachments",
"attributes": {
"name": "img.png",
"content_type": "image/png",
"size": 3479,
"url": "https://files-test.productive.io/attachments/files/000/000/002/original/img.png?1757736164",
"thumb": "https://files-test.productive.io/attachments/files/000/000/002/thumb/img.png?1757736164",
"temp_url": "https://files-test.productive.io/attachments/files/000/000/002/original/img.png?1757736164",
"resized": false,
"created_at": "2025-09-13T06:02:44.975+02:00",
"deleted_at": null,
"attachment_type": null,
"message_id": null,
"external_id": null,
"attachable_type": "comment"
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "14"
}
},
"creator": {
"meta": {
"included": false
}
},
"invoice": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"bill": {
"meta": {
"included": false
}
},
"email": {
"meta": {
"included": false
}
},
"page": {
"meta": {
"included": false
}
},
"expense": {
"meta": {
"included": false
}
},
"comment": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"document_style": {
"meta": {
"included": false
}
},
"document_type": {
"meta": {
"included": false
}
},
"deal": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
Gets a attachmentGET/api/v2/attachments/{id}
- id
number
(required) Example: 1attachment id
POST /api/v2/attachments
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"name": "img.png",
"attachable_id": 5,
"attachable_type": "comment"
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "4",
"type": "attachments",
"attributes": {
"name": "img.png",
"content_type": null,
"size": null,
"url": "https://files-test.productive.io/attachments/files/000/000/004/original/img.png",
"thumb": null,
"temp_url": null,
"resized": false,
"created_at": "2025-09-13T06:02:45.046+02:00",
"deleted_at": null,
"attachment_type": null,
"message_id": null,
"external_id": null,
"attachable_type": "comment",
"aws_policy": {
"key": "attachments/files/000/000/004/original/img.png",
"success_action_status": "201",
"policy": "eyJleHBpcmF0aW9uIjoiMjAyNS0wOS0xM1QwNTowMjo0NVoiLCJjb25kaXRpb25zIjpbeyJidWNrZXQiOiJwcm9kdWN0aXZlLWZpbGVzLXRlc3QifSx7ImtleSI6ImF0dGFjaG1lbnRzL2ZpbGVzLzAwMC8wMDAvMDA0L29yaWdpbmFsL2ltZy5wbmcifSx7InN1Y2Nlc3NfYWN0aW9uX3N0YXR1cyI6IjIwMSJ9LFsiY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMzE0NTcyODAwXSx7IngtYW16LWNyZWRlbnRpYWwiOiJBU0lBUUdHUTQ2V1ZIU1RSNktMUS8yMDI1MDkxMy9ldS13ZXN0LTEvczMvYXdzNF9yZXF1ZXN0In0seyJ4LWFtei1hbGdvcml0aG0iOiJBV1M0LUhNQUMtU0hBMjU2In0seyJ4LWFtei1kYXRlIjoiMjAyNTA5MTNUMDQwMjQ1WiJ9LHsieC1hbXotc2VjdXJpdHktdG9rZW4iOiJGd29HWlhJdllYZHpFTlgvLy8vLy8vLy8vd0VhRE0zanZBNlNOM3E4eXpHNlN5TE9BNG9lUUVHbVFNbFVXRnhxT1B3S0dmQlRnNGpaeUxDbjc3Q1crZmVIK1FaS0RoSm9DeFRzK3VzRU1NR280UlgvaHZDNkJlTnVrSEVhL2ZSZXVIMmVzQTlOdFNoaEtPL0hqNmYvZDhTRWlWTExoOXE3cWNaWWE3akRDYUdjRUFWSzBBMWtMZis3TjBqc29CVFg0dStRbmNtSmFWVmczNlV2Ky9FRnNtc1U4NE9ZZWRzSFdIZC9EMW9QSUUwakRtWkpUSzdMOHUvbXFweEtSM2RMVDdlTHpDY3Jvc0EzODI0blVzMUkzUkJ6RjlBOW5UeERYV2ZrSTN1R3dET2grZUR4WXp4NWRCSWtGZTE2NDZ1UjJRWWN2d1I4UmZXd1NQSmxDUHBwTWlPMXdXWnpoTDRsbEpjVnpaVmdEaFU4cGlpeHZtOWYza0lzR2lDNE1pYTlXdWYxSTE1NnIxR3V5a3NXaXBhSXFrck9ybFZuSGFBNkF6RDBtQUJ0cnhXVFRUVUZxSGdSWW9BVC9BMW02Ni8zdWFkZlpKcGVPT3JlVW9OdmVxK0IxKzlzU0FlcmV6VEVXZW5VRDM5SWZyejB2OCtrZXJhNDlFQWdMQzhtVUlyN1FhYm41bnNyNWROWHl5a2hBalBzMnkyWTMrZDdNRTRPNWVDdm50emQwTm5NNDAvMHFGaEFIZUQ4VFhWb3UzYTdrVjh2VDBWeEVSYkt3RllrazlXTGhnRWl6YjQ5RVAxZGduc3p0UTJTRnFCTjd1YmtEZ2t5S1Y0NHUyZUYzL0VvUzYrN0o1akNoK3FabWRhYmxVSlI2TExjNFNqYTJKUEdCaklseEI5Z29jVWp4Q1hVS3l5emVldXVZaFo5UFdQeEpSWStjMTN3bTZFK1U3WFhXY2tORkE9PSJ9XX0=",
"x-amz-credential": "ASIAQGGQ46WVHSTR6KLQ/20250913/eu-west-1/s3/aws4_request",
"x-amz-algorithm": "AWS4-HMAC-SHA256",
"x-amz-date": "20250913T040245Z",
"x-amz-security-token": "FwoGZXIvYXdzENX//////////wEaDM3jvA6SN3q8yzG6SyLOA4oeQEGmQMlUWFxqOPwKGfBTg4jZyLCn77CW+feH+QZKDhJoCxTs+usEMMGo4RX/hvC6BeNukHEa/fReuH2esA9NtShhKO/Hj6f/d8SEiVLLh9q7qcZYa7jDCaGcEAVK0A1kLf+7N0jsoBTX4u+QncmJaVVg36Uv+/EFsmsU84OYedsHWHd/D1oPIE0jDmZJTK7L8u/mqpxKR3dLT7eLzCcrosA3824nUs1I3RBzF9A9nTxDXWfkI3uGwDOh+eDxYzx5dBIkFe1646uR2QYcvwR8RfWwSPJlCPppMiO1wWZzhL4llJcVzZVgDhU8piixvm9f3kIsGiC4Mia9Wuf1I156r1GuyksWipaIqkrOrlVnHaA6AzD0mABtrxWTTTUFqHgRYoAT/A1m66/3uadfZJpeOOreUoNveq+B1+9sSAerezTEWenUD39Ifrz0v8+kera49EAgLC8mUIr7Qabn5nsr5dNXyykhAjPs2y2Y3+d7ME4O5eCvntzd0NnM40/0qFhAHeD8TXVou3a7kV8vT0VxERbKwFYkk9WLhgEizb49EP1dgnsztQ2SFqBN7ubkDgkyKV44u2eF3/EoS6+7J5jCh+qZmdablUJR6LLc4Sja2JPGBjIlxB9gocUjxCXUKyyzeeuuYhZ9PWPxJRY+c13wm6E+U7XXWckNFA==",
"x-amz-signature": "717978b1605c142243bbf326affb16ac0d58c93fb0000263ce3b8e15dc864e5d"
}
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "15"
}
},
"creator": {
"meta": {
"included": false
}
},
"invoice": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"bill": {
"meta": {
"included": false
}
},
"email": {
"meta": {
"included": false
}
},
"page": {
"meta": {
"included": false
}
},
"expense": {
"meta": {
"included": false
}
},
"comment": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"document_style": {
"meta": {
"included": false
}
},
"document_type": {
"meta": {
"included": false
}
},
"deal": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
POST /api/v2/attachments
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"attachable_type": ""
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "can't be blank",
"source": {
"pointer": "data/attributes/name"
}
},
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "is not included in the list",
"source": {
"pointer": "data/attributes/attachable_type"
}
}
]
}
POST /api/v2/attachments
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"name": "img.png",
"attachable_id": 7,
"attachable_type": "comment",
"size": 315621376
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "must be less than or equal to 314572800",
"source": {
"pointer": "data/attributes/size"
}
}
]
}
POST /api/v2/attachments
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"name": "img.png",
"attachable_id": 8,
"attachable_type": "comment",
"content_type": "application/x-msdownload"
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "is reserved",
"source": {
"pointer": "data/attributes/content_type"
}
}
]
}
Create a attachmentPOST/api/v2/attachments
- name
string
(required) Example: namename
- id
string
(required) Example: Commentattachable_type
PATCH /api/v2/attachments/8
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"temp_url": "https://s3.amazonaws.com/infinum.productive.test/uploads/1418301662608/dummyfile.pdf"
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "8",
"type": "attachments",
"attributes": {
"name": "img.png",
"content_type": "image/png",
"size": 3479,
"url": "https://files-test.productive.io/attachments/files/000/000/008/original/img.png?1757736165",
"thumb": "https://files-test.productive.io/attachments/files/000/000/008/thumb/img.png?1757736165",
"temp_url": "https://s3.amazonaws.com/infinum.productive.test/uploads/1418301662608/dummyfile.pdf",
"resized": false,
"created_at": "2025-09-13T06:02:45.268+02:00",
"deleted_at": null,
"attachment_type": null,
"message_id": null,
"external_id": null,
"attachable_type": "comment"
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "19"
}
},
"creator": {
"meta": {
"included": false
}
},
"invoice": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"bill": {
"meta": {
"included": false
}
},
"email": {
"meta": {
"included": false
}
},
"page": {
"meta": {
"included": false
}
},
"expense": {
"meta": {
"included": false
}
},
"comment": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"document_style": {
"meta": {
"included": false
}
},
"document_type": {
"meta": {
"included": false
}
},
"deal": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
PATCH /api/v2/attachments/9
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "attachments",
"attributes": {
"attachable_type": ""
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "is not included in the list",
"source": {
"pointer": "data/attributes/attachable_type"
}
}
]
}
Update a attachmentPATCH/api/v2/attachments/{id}
- id
number
(required) Example: 1attachment id
DELETE /api/v2/attachments/10
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Deletes a attachmentDELETE/api/v2/attachments/{id}
- id
number
(required) Example: 1attachment id
Generated by aglio on 13 Sep 2025