Extensions Downloader parameters

Prev Next

An Extensions Downloader link is a URL made of your server address followed by parameters that say which account and app the link belongs to, which storage to read from, and which file to get. The installation wizard builds these links for you in the View File fields it adds (see Extensions Downloader overview). This article explains every parameter so you can change those fields or build your own links. For your Client ID and field IDs, see Find your Client ID, table IDs, and field IDs.

Base address

"https://..."  // your Extensions Downloader server URL, created by the installation wizard

Replace https://... with your designated Extensions Downloader server URL, created by the installation wizard. It ends in /Download.aspx?. The easiest way to get it is to copy it from a View File field the wizard created in your app.

How parameters are written

A link can carry its parameters in one of two forms. Both use the same parameter names.

Form

What it looks like

Use it when

Plain

Parameters joined with &, for example clientid=Q1234&appid=bxxxxxxxx&cloud=S3&cloudkey=...

The installation wizard writes this form for Document Portal's View File field.

You build a link yourself, or you want the file to open in the browser. All parameters, including forcedownload, work in this form. Wrap values that come from fields in URLEncode() so spaces and characters such as & or # reach the Extensions Downloader intact.

Encoded

A single parameter, request=, followed by the whole parameter string encoded with Base64Encode().

The installation wizard writes this form for the View File fields of XL Docs, Exact Forms Plus, and PDF Stamper.

You keep the wizard's field as it is. When request is present, every other parameter in the URL is ignored. Values inside the encoded string are read exactly as written, so don't wrap them in URLEncode().

A few practical notes:

  • Encoded links always download. To open files in the browser, use the plain form with forcedownload=false.

  • Keep keys simple in encoded links. Letters (A-Z), numbers, spaces, and common punctuation work. Accented or non-English characters don't survive the encoded form; use the plain form with URLEncode() for those keys.

  • Names and storage codes aren't case-sensitive. cloud=S3 and cloud=s3 mean the same thing. Keys are case-sensitive, because your storage treats them that way.

  • Unknown parameters are ignored. Older links may include parameters such as apptoken. The Extensions Downloader ignores them, so they're harmless, but they don't do anything either.

Parameter reference

Parameter

Description

Sample in formula

Authorization parameters: identify the account and application the link belongs to.

clientid

Required. Your Quickbase Extensions Client ID: Q followed by a number, assigned to your account. The installation wizard writes it into every link it creates. See Find your Client ID, table IDs, and field IDs.

"clientid=Q1234"

appid

Required. The ID of the Quickbase application the link is in. The Extensions Downloader checks that this app is authorized for a Quickbase Extension that works with it, such as XL Docs, Exact Forms Plus, PDF Stamper, or Document Portal. Use the built-in function AppID() so the link keeps working if the formula is copied. If you copy the whole app, the copy has a new app ID and must be authorized in the installation wizard.

"&appid=" & AppID()

File parameters: which storage to read and which file to get.

cloud

Required. Where the file is stored:

  • S3: Amazon S3

  • DB: Dropbox

  • EG: Egnyte

The account used is the one connected in the installation wizard and saved on your Quickbase Extensions account.

"&cloud=S3"

cloudkey

Required. The file's key in your storage. It's usually the key field the extension filled in when it saved the file (S3 Key, Dropbox Key, Egnyte File ID, or Document Portal's Cloud Key).

  • Amazon S3: the object key, including any folder path inside the bucket, for example invoices/INV-1001.pdf.

  • Dropbox: the file's path inside the Dropbox folder, for example Contracts/Contract-1001.pdf, or a Dropbox file ID such as id:a4ayc_80_OEAAAAAAAAAXw.

  • Egnyte: the file's path inside the Egnyte folder, or an Egnyte file ID in the form entry_id: followed by the ID. The extensions save Egnyte files with the entry_id: form.

If the key field is empty, the link can't work. The wizard's fields show no link until the key field has a value; do the same in your own formulas with If().

"&cloudkey=" & URLEncode([S3 Key])

clouddir

Optional. Reads from a different place than the default saved on your account:

  • Amazon S3: the bucket name.

  • Dropbox: the folder. A leading / is added if you leave it out.

  • Egnyte: the folder that path keys are relative to.

Leave it blank or leave it out to use your account's default. The installation wizard fills it in with the bucket or folder you entered for the extension, or leaves it blank. Keys that are file IDs (id: for Dropbox, entry_id: for Egnyte) find the file by its ID, so the folder doesn't matter for them.

"&clouddir=my-company-documents"

Display parameters: what the browser does with the file.

forcedownload

Optional. Plain form only.

  • true (default): the file downloads.

  • false: the browser is asked to open the file in the window instead. This works for types the browser can show, such as PDFs and images. Other types, such as Word or Excel files, still download. Dropbox files may download even with false.

"&forcedownload=false"

Who can open a link, and whether it expires, doesn't depend on any parameter: a link opens the file for anyone who has it, and it doesn't expire. See Who can open a link.

Examples

Each example is the formula for a Formula - URL field. In the field's properties, set the link text (for example Download from S3) and choose to open the link in a new window, as the wizard does. Replace Q1234, the field names, and the bucket or folder names with your own.

The wizard's View File formula

For XL Docs, Exact Forms Plus, and PDF Stamper, the installation wizard writes a formula like this one. It shows the link only when the key field has a value, and it uses the encoded form. clouddir holds the bucket you entered in the wizard, or is blank.

If([S3 Key] > "",
"https://..."  // your Extensions Downloader server URL, created by the installation wizard
& "request="
& Base64Encode(
"clientid=Q1234"
& "&appid=" & AppID()
& "&cloud=s3"
& "&cloudkey=" & [S3 Key]
& "&clouddir="
),
"")

The Dropbox and Egnyte versions are the same, with cloud=db and [Dropbox Key], or cloud=eg and [Egnyte File ID]. Document Portal's View File field uses the plain form with [Cloud Key].

Amazon S3: download a file

If([S3 Key] > "",
"https://..."  // your Extensions Downloader server URL, created by the installation wizard
& "clientid=Q1234"  // your Client ID
& "&appid=" & AppID()
& "&cloud=S3"
& "&cloudkey=" & URLEncode([S3 Key]),
"")

Amazon S3: open a PDF in the browser from another bucket

If([S3 Key] > "",
"https://..."  // your Extensions Downloader server URL, created by the installation wizard
& "clientid=Q1234"  // your Client ID
& "&appid=" & AppID()
& "&cloud=S3"
& "&cloudkey=" & URLEncode([S3 Key])
& "&clouddir=my-company-archive"  // bucket name
& "&forcedownload=false",
"")

Dropbox: download from a specific folder

If([Dropbox Key] > "",
"https://..."  // your Extensions Downloader server URL, created by the installation wizard
& "clientid=Q1234"  // your Client ID
& "&appid=" & AppID()
& "&cloud=DB"
& "&cloudkey=" & URLEncode([Dropbox Key])
& "&clouddir=" & URLEncode("/Signed Documents"),  // leave out to use your account's folder
"")

Egnyte: open a file by its ID

If([Egnyte File ID] > "",
"https://..."  // your Extensions Downloader server URL, created by the installation wizard
& "clientid=Q1234"  // your Client ID
& "&appid=" & AppID()
& "&cloud=EG"
& "&cloudkey=" & URLEncode([Egnyte File ID])  // for example entry_id:...
& "&forcedownload=false",
"")

If a link shows a message instead of the file, see Extensions Downloader messages and troubleshooting. We understand these parameters can be complex. Submit a technical support case if you have any questions.