API and Pipelines

Prev Next

Image Resizer/Rotator has two API endpoints for callers with no browser window, such as Quickbase Pipelines or your own integrations. They take the same parameters as a button and return the result as JSON.

Action

Request

Resize

POST https://.../api/resize

Rotate

POST https://.../api/rotate

Replace https://... with your designated Image Resizer/Rotator server URL.

Parameters

Send the parameters in the query string, joined with &, exactly as in a button formula. See Formula URL parameters. As an alternative, Base64-encode the whole parameter string and send it as a single request parameter: ?request=<Base64 string>. URL-encode the Base64 string before you add it to the URL: Base64 can contain +, /, and =, and an unencoded + is read as a space, which corrupts the value. If the value can't be decoded, the response is Invalid request parameter.

The 50-record limit for query applies to API requests. Use batch processing for more.

Authentication

Always send a Quickbase user token in the Authorization header, in the same format as the Quickbase REST API:

Authorization: QB-USER-TOKEN <your user token>

If your account uses Quickbase enhanced security, the token is required: it's used to confirm that its user has access to the record (or the records matched by query), and a request without it fails with A temporary authorization token is required for this application. Please check your field settings or contact an App Administrator. If your account doesn't use it, the header is ignored—so sending it every time is the safe choice. Use a token for a user with access to the table and file attachment fields. See Enhanced security overview.

Response

Both endpoints return HTTP 200 with a JSON body:

{ "success": true, "successCount": 2, "errors": [] }
  • success—true if no errors occurred. Use this to decide whether the request worked.

  • successCount—the number of images processed.

  • errors—error messages, plus any notes about images that were processed but didn't fully meet the request. A successful request can still include a note, for example:

{ "success": true, "successCount": 1, "errors": ["Resized partially successfully - could not resize below 25600 bytes."] }

Log or show anything in errors, even when success is true. Messages are the same as in the button window—see Image Resizer/Rotator messages and troubleshooting. Unexpected problems return We ran into an error processing your request. Please contact support if this continues to happen.

Examples

Resize the image in field 6 to 800 × 600 pixels:

curl -X POST "https://.../api/resize?clientid=Q#&appid=<app id>&dbid=<table id>&recid=42&clist=6&width=800&height=600" \
  -H "Authorization: QB-USER-TOKEN <your user token>"

Make the image 250 KB or smaller:

curl -X POST "https://.../api/resize?clientid=Q#&appid=<app id>&dbid=<table id>&recid=42&clist=6&rsfilesize=250&fsunit=KB" \
  -H "Authorization: QB-USER-TOKEN <your user token>"

Rotate the image 90 degrees:

curl -X POST "https://.../api/rotate?clientid=Q#&appid=<app id>&dbid=<table id>&recid=42&clist=6&rotateval=90" \
  -H "Authorization: QB-USER-TOKEN <your user token>"

Use in Quickbase Pipelines

  1. Add a step that sends an HTTP request—for example, the Webhooks channel's Make Request step.

  2. Set the method to POST and the URL to the endpoint with your parameters. Use data from earlier steps for values such as the Record ID#—for example, recid={{a.id}}.

  3. Add the header Authorization with the value QB-USER-TOKEN followed by your user token.

  4. Optionally, add a condition after the request that checks the response's success value.