Upload Files to Table Cell via API?

I can’t find anything in the docs mentioning it (either how-to, or saying it’s not supported).

Is this possible, yet?

I have found:

Hi @Jordan_Warbelow-Feldstein - It is possible, with some caveats. I should add more of this information to the documentation, so thanks for that reminder.

You can upload files to a table cell using the upsertRows or updateRow endpoints. When specifying the cell value, pass an array of URLs of the files you wish to upload. Below is an example using curl to upload two files to a cell:

curl --request PUT \
  --url 'https://coda.io/apis/v1/docs/<doc_id>/tables/<table_id>/rows/<row_id>'\
  --header 'Authorization: Bearer <api_key>' \
  --header 'Content-Type: application/json' \
  --data '{
  "row": {
    "cells": [
      { 
        "column": "File", 
        "value": [
          "<file_url_1>",
          "<file_url_2>"	
        ]
      }
    ]
  }
}'

The files to upload must be hosted on publicly-accessible URLs. Additionally:

  • The Content-Type header returned along with the file content is used to determine the file type.
  • The Content-Disposition header returned along with the file is used to determine the file name.

Let me know if this helps!

2 Likes