--- title: "Extensions Downloader parameters" slug: "extensions-downloader-parameters" updated: 2026-10-09T18:20:23Z published: 2026-10-09T18:20:23Z canonical: "help.quickbase.com/extensions-downloader-parameters" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.quickbase.com/llms.txt > Use this file to discover all available pages before exploring further. # Extensions Downloader parameters ## Formula URL parameters: what's behind the link? 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](https://help.quickbase.com/quickbase-extensions/docs/en/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](https://help.quickbase.com/quickbase-extensions/docs/en/find-client-id-table-ids-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](https://help.quickbase.com/quickbase-extensions/docs/en/find-client-id-table-ids-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](https://help.quickbase.com/quickbase-extensions/docs/en/extensions-downloader-overview#who-can-open). ## 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](https://help.quickbase.com/quickbase-extensions/docs/en/extensions-downloader-messages). We understand these parameters can be complex. Submit a [technical support case](https://help.quickbase.com/docs/get-help-from-quickbase-technical-support) if you have any questions.