Introduction
When using Public Upload in eXtendFiles,
you can pre-fill (set) values on the new
eXtendFiles record that gets created from the
upload.
You do this by appending additional URL
parameters to the generated Public Upload
link.
For full setup instructions for Public Upload
(including required fields and script
deployment), see:
What this article covers
- What “static field values” means in this
context
- The URL parameter format
- A step-by-step example (setting File
Type)
- An example with multiple fields
How it works (high level)
A Public Upload link is a URL generated on the
parent NetSuite record (transaction or custom
record). The URL already includes identifiers
like the record ID and record type.
To set field values on the eXtendFiles record
created by the upload, append additional
parameters to the URL in this format:
&<fieldId>=<value>
Where:
<fieldId>is the NetSuite field ID on the eXtendFiles record (not the parent transaction)<value>is the value to set for that field
Example goal
Set the eXtendFiles - File Type (Custom) field to Final Artwork during
upload.

Required information
Before you build your formula, gather:
- Field ID you want to set (on the eXtendFiles record)
- Example:
custrecord_extfile_type_custlist
- Example:
- The value to pass
- Example (select list option
internal ID for Final Artwork):
4
- Example (select list option
internal ID for Final Artwork):
- Your existing base Public Upload
URL (the link you are already
generating per the Public Upload setup
article)
Step 1: Create (or update) the URL formula
field
Create a Hyperlink custom field with a
formula that:
- Uses your working base URL.
- Appends the standard required parameters
(
idandrectype) if your base link does not already include them. - Appends your static field value
parameter(s).
Here is an example formula that appends the
File Type value:
CASE WHEN {BASE URL LINK} IS NOT NULL THEN CONCAT({BASE URL LINK}, CONCAT('&id=', CONCAT({id}, CONCAT('&rectype=', CONCAT({type}, CONCAT('&custrecord_extfile_type_custlist=', '4')))))) ELSE '' END
What to replace in the formula
- Replace
{BASE URL LINK}with the field you use for the base Public Upload link. - Replace
custrecord_extfile_type_custlistwith your target field ID (if different). - Replace
'4'with the value you want to set.
Step 2: Test the generated link
The hyperlink field on your record should
generate a URL similar to this:
https://exampledomain.suitextend.net/v2/files/public-upload/salesorder/9332dc21-ed51-4fa8-b3af-878589db69c9&recordid=81886&type=salesorder&storage=azure&id=81886&rectype=salesord&custrecord_extfile_type_custlist=4
Click the link and upload a file. After upload,
confirm the created eXtendFiles record
has:
- eXtendFiles - File Type (Custom) =
Final Artwork
Advanced example: set multiple fields
You can append multiple field assignments in a
single URL by adding more parameters.
CASE WHEN {BASE URL LINK} IS NOT NULL THEN CONCAT({BASE URL LINK}, CONCAT('&id=', {id}, CONCAT('&rectype=', {type}, CONCAT('&custrecord_extfile_type_custlist=', '4', CONCAT('&custrecord_ext_dept_ref=', '3', CONCAT('&custrecord_extfile_rs=', '1')))))) ELSE '' END
This will generate something like:
https://exampledomain.suitextend.net/v2/files/public-upload/salesorder/9332dc21-ed51-4fa8-b3af-878589db69c9&recordid=81886&type=salesorder&storage=azure&id=81886&rectype=salesord&custrecord_extfile_type_custlist=4&custrecord_ext_dept_ref=3&custrecord_extfile_rs=1
Using static values in email templates and Advanced PDF/HTML templates
If you already have a working Public Upload URL available in a NetSuite template (for example, an email template link, or an Advanced PDF/HTML template link), you can append the URL parameters directly in the template.
This can be useful when:
- You do not want to create another custom field just to generate a “special” link for use in a particular template.
- You want different links for different email/template contexts.
Example
Start with your existing Public Upload URL in the template, then append your parameters:
{BASE_PUBLIC_UPLOAD_URL}&custrecord_extfile_type_custlist=4
Notes
- Use
&to append additional parameters. - For select fields, pass the option internal ID (not the display name).
- Validate the final rendered link by sending yourself a test email or generating a sample PDF.
Important notes (value formats)
| Field type | What to pass in the URL | Example |
|---|---|---|
| Select fields | Use the option’s internal ID (not
the display name) | &custrecord_extfile_type_custlist=4 |
| Checkbox fields | Use T or true (case
sensitive) | &custrecord_extfile_generate_public_link=T |
Troubleshooting
- If the Public Upload page does not load
after you add parameters, remove the new
parameters and re-test your base
URL.
- If the upload works but the field is not set, double-check:
- The field ID is
correct.
- The field exists on the eXtendFiles record.
- You are passing the correct value
format (especially for select and
checkbox fields).
- The field ID is
correct.