REST API > How do I upload or attach a file (asset) to a task (task field)
There are two types of file origins you can attach to a task (task field):
A. Local file (asset) - needs an upload, and then an attachment to the task field
B. External / URL based file (asset) - needs only attachment to the task field
Here's a step by step procedure for attaching the file (asset) on case basis.
A. Local file / asset
Here, we need to first upload the file to Tallyfy file server, and then attach the file to the task field):
1. Upload the file to our file system / storage via an API client (Postman etc.) using the call below:
POST, "https://api.tallyfy.com/organizations/ <your-organization-id-here>/file" with request type "form-data" and key-values as below:
i) " name": type "file" - Upload file here
ii) " uploaded_from": type "text" - Add Organization ID here
iii) " subject_type": type "text" - Add text "Run" here
iv) " step_id": type "text" - Add Step ID here
v) " checklist_id": type "text" - Add Checklist ID here
vi) " subject_id": type "text" - Add Run ID here
Please also set the request header " Accept" to "application/json, text/plain, */*" (Please also make sure that auth bearer token is included in the request headers)
You'll receive response of the request something like this: ( Let's call this response -- var fileData)
Example of the complete POST request is shown below:
2. Next, attach the above file (asset) data to the task field:
PUT, https://api.tallyfy.com/organizations/<your-organization-id-here>/runs/<run_id_here>/tasks/<task_id_here>
Request Payload:
Example of the request payload is shown below:
Example of the complete PUT request is shown below:
(Please also make sure that auth bearer token is included in the request headers)
This should update the task field with the uploaded file.
B) External / URL based
Here, we just need to attach the file to the task field:
1. Attach the file data to the task field:
PUT, https://api.tallyfy.com/organizations/<your-organization-id-here>/runs/<run_id_here>/tasks/<task_id_here>
Request Payload:
Example of the request payload here:
(Please also make sure that auth bearer token is included in the request headers)
Example of the complete PUT request is shown below:
This should update the task field with the external file.
By following any of the above steps, depending upon your use-case, you should be able to attach a file to a task field.
Please do let us know if you have any questions.