Handling File Uploads in API Requests (multipart/form-data)

Overview of Inquiry

  • Use Case: Sending a JSON file as part of a multipart/form-data request.

  • Context: The API endpoint is for creating builds on the TIBCO Flogo data plane.


Technical Example (cURL)

The request structure follows the standard multipart/form-data format, typically executed using the cURL -F flag.

curl -X 'POST' \
  'https://new-tas.localhost.dataplanes.pro/tibco/flogo/d4s5v9du7r1c73bq7nn0/public/v1/dp/builds' \
  -H 'accept: application/json' \
  -H 'Content-Type: multipart/form-data' \
  -F 'app.json=@app1-sendmail-password-type.flogo'

How the File Upload Works

  • The -F flag is used to send multipart form-data fields.

  • The field value 'app.json=@app1-sendmail-password-type.flogo' performs the upload.

  • The @ symbol instructs cURL to read the data from the specified file (app1-sendmail-password-type.flogo) and assign it to the form field named app.json.

  • This method fulfills the Content-Type: multipart/form-data requirement.


Functionize Tool Support

Current Limitation

  • Our built-in Functionize API Explorer tool currently does not support file uploads in API requests.

Workaround / Existing Tool

  • we have an older, still-accessible API Tool that does support file uploads.

  • Tool URL: https://apitools.functionizeapp.com


Action & Next Steps

  • The existing tool at https://apitools.functionizeapp.com can be used by the POC team to execute their file upload requests.

  • Recommendation: If this older tool proves useful or necessary for a broader customer base, we should discuss enhancing and integrating its file upload functionality into our current API Explorer.