Share and Bookmark Search Results
Share, bookmark, and construct human-readable search URLs to link directly to filtered file results in the Tetra Data Platform
When you apply filters on the Search page, the browser's address bar updates automatically with a clean URL that reflects your current search criteria. You can copy, share, or bookmark this URL, and anyone who opens it sees the same filtered results.
Search URL Example
/search?category=RAW&label.organism=mouse&created-at>=2025-01-01&sort=fileName&order=ascThis URL directs to the following Search page results:
- Show RAW files only
- Where the organism label is mouse
- Created on or after January 1, 2025
- Sorted by file name in ascending order
NOTEAll existing search links and bookmarks from Tetra Data Platform (TDP) versions prior to v4.5.0 continue to work. When you open a URL in TDP v4.5.x and later that uses the legacy formatting, the platform automatically converts it to the new format.
Share or Bookmark a Search
To share a filtered search with a colleague or save it as a bookmark, do the following:
- Open the Search page.
- Apply the filters you want by using the search bar and filter options.
- Copy the URL from your browser's address bar (for example:
/search?category=RAW&label.organism=mouse&source=Empower&page=1) - Share the URL with a colleague, or save it as a browser bookmark.
When someone opens the URL, the Search page loads with the same filters you applied. The URL in the address bar always stays in sync with your current filters. As you add, change, or remove filters, the URL updates automatically.
NOTEFor more advanced recurring searches, consider using Saved Searches, which are stored in the TDP and can be shared with your organization.
Link from an External Tool (LIMS, ELN, or Notebook)
You can construct search URLs manually and use them as hyperlinks in your LIMS, ELN, or lab notebook to link directly to filtered data in the TDP.
For example, to link to all RAW PDF files in a specific project folder:
https://{your-tdp-domain}/search?category=RAW&file-type=pdf&file-path^=/projects/study-42/Replace {your-tdp-domain} with your organization's TDP URL.
Find Files Created in a Date Range with Specific Labels
To find all files created in the first half of 2025 that are labeled with organism "mouse" and study "STUDY-001":
/search?created-at=2025-01-01..2024-06-30&label.organism=mouse&label.study=STUDY-001Exclude Archived Files from Results
To find RAW files while excluding anything tagged as "Archived":
/search?category=RAW&!tag.ArchivedYou can combine additional filters as needed. For more information about available operators, see Comparison Operators.
Search URL Formatting
A search URL follows this structure:
/search?filter1=value1&filter2=value2&filter3=value3Each filter is a key-value pair separated by &. When you specify multiple values for the same filter, separate them with commas:
/search?category=RAW,PROCESSED&source=EmpowerBy default, all filters are combined with AND logic. This means results must match every filter in the URL. To use OR logic, see Combine Filters with OR Logic.
Available Filters
Standard Filters
The following filter parameters are available in search URLs.
| URL Parameter | What It Filters | Example |
|---|---|---|
category | File category (RAW, PROCESSED, IDS) | category=RAW |
source | Data source name | source=Empower |
source-type | Source type | source-type=S3 |
file-type | File type or extension | file-type=pdf,csv |
file-path | File path | file-path=/projects/study-1/ |
file-size | File size in bytes (for example, 10485760 = 10 MB) | file-size>10485760 |
pipeline | Pipeline name | pipeline=my-pipeline |
workflow | Workflow name | workflow=my-workflow |
folder | Folder path | folder=/projects/study-1 |
created-at | File creation date | created-at>=2024-01-01 |
q | Full-text search term | q=chromatography |
Label, Metadata, and Tag Filters
You can filter by labels, metadata, and tags by using the following formats.
| Filter Type | URL Format | Example |
|---|---|---|
| Label with a specific value | label.{key}=value | label.organism=mouse |
| Label with multiple values | label.{key}=value1,value2 | label.organism=mouse,human |
| Metadata with a specific value | meta.{key}=value | meta.instrument=HPLC |
| Tag is present | tag.{name} | tag.Validated |
| Tag is absent | !tag.{name} | !tag.Archived |
| Label exists (any value) | label.{key}.exists | label.organism.exists |
| Label does not exist | label.{key}.not-exists | label.organism.not-exists |
| Metadata exists (any value) | meta.{key}.exists | meta.notes.exists |
| Metadata does not exist | meta.{key}.not-exists | meta.notes.not-exists |
NOTETag filters don't require a value. Include
tag.Validatedin the URL to filter for files that have the "Validated" tag. Use!tag.Archivedto exclude files with the "Archived" tag.
Comparison Operators
Text Operators
Use comparison operators to control how filter values are matched. By default, filters use exact matching (=).
| Operator | Meaning | Example | Description |
|---|---|---|---|
= | is | category=RAW | Matches the exact value |
!= | is not | category!=PROCESSED | Excludes the specified value |
~= | contains | file-path~=/study/ | Matches if the value appears anywhere |
!~= | does not contain | file-path!~=/archive/ | Excludes if the value appears anywhere |
^= | begins with | file-path^=/data/ | Matches if the value starts with the text |
$= | ends with | file-path$=.pdf | Matches if the value ends with the text |
Date and Number Operators
Use the following operators for date and numeric comparisons.
| Operator | Meaning | Example | Description |
|---|---|---|---|
> | after / greater than | created-at>2024-06-01 | Dates after, or sizes greater than |
>= | on or after / at least | created-at>=2024-01-01 | Dates on or after, or sizes at least |
< | before / less than | file-size<1048576 | Dates before, or sizes less than |
<= | on or before / at most | created-at<=2024-12-31 | Dates on or before, or sizes at most |
=X..Y | between (range) | created-at=2024-01-01..2024-06-30 | Matches values within a date range |
IMPORTANTNot all operators work with all filters. Text operators like contains (
~=) and begins with (^=) work withfile-path,label, andmetafilters. Numeric and date operators like>and<=work withfile-sizeandcreated-atfilters. Using an unsupported operator with a filter has no effect. For more information, see the Operator Compatibility Reference.
Operator Compatibility Reference
| Filter | = | != | ~= | !~= | ^= | $= | > >= < <= | Range (=X..Y) |
|---|---|---|---|---|---|---|---|---|
category | Yes | Yes | — | — | — | — | — | — |
source | Yes | Yes | — | — | — | — | — | — |
source-type | Yes | Yes | — | — | — | — | — | — |
file-type | Yes | Yes | — | — | — | — | — | — |
file-path | Yes | Yes | Yes | Yes | Yes | Yes | — | — |
file-size | Yes | — | — | — | — | — | Yes | — |
pipeline | Yes | Yes | — | — | — | — | — | — |
workflow | Yes | Yes | — | — | — | — | — | — |
created-at | Yes | — | — | — | — | — | Yes | Yes |
label.{key} | Yes | Yes | Yes | — | — | — | — | — |
meta.{key} | Yes | Yes | Yes | — | — | — | — | — |
Combine Filters with OR Logic
By default, all filters in a URL are combined with AND logic, which means results must match every filter. To use OR logic, wrap filters in an or=(...) group and separate them with pipes (|).
Syntax
or=(filter1=value1|filter2=value2|filter3=value3)Examples
Show files where the department label is "engineering" OR "sales":
/search?or=(label.dept=engineering|label.dept=sales)Combine multiple OR groups (each group is ANDed together):
/search?or=(label.dept=eng|label.dept=sales)&or=(meta.site=US|meta.site=EU)&category=RAWThis URL returns files where the department is "eng" or "sales", the site is "US" or "EU", and the category is RAW.
IMPORTANT
- Use the pipe character (
|) to separate filters inside an OR group. Do not use commas.- OR groups support label, metadata, and tag filters. They do not support nested OR groups.
- When you use multiple
or=groups in the same URL, the groups are combined with AND logic.
Pagination and Sorting
You can control which page of results to display and how results are ordered by using the following parameters.
| Parameter | Default | Valid Range | Example |
|---|---|---|---|
page | 1 | 1 to 10,000 | page=3 |
pageSize | 100 | 1 to 1,000 | pageSize=50 |
sort | createdAt | createdAt, filePath, fileName, fileSize, source, category, pipeline | sort=fileName |
order | desc | asc, desc | order=asc |
NOTEDefault values are automatically omitted from URLs to keep them clean. For example, if you are on page 1 with the default page size and sort order, the URL won't include
page,pageSize,sort, ororderparameters.
Special Characters in Search URLs
The TDP handles URL encoding automatically when you use the Search page filters. If you are constructing URLs manually, keep the following in mind:
| Character | How to Encode It | Example |
|---|---|---|
| Space | %20 or + | q=phase+2+trial |
Comma (,) | %2C | label.name=test%2Cvalue |
Pipe (|) | %7C | label.name=test%7Cvalue |
Equals (=) | %3D | label.key=name%3Dvalue |
Ampersand (&) | %26 | label.company=R%26D |
NOTEIf you type a URL directly in your browser's address bar, the browser handles most encoding for you automatically. You typically only need to worry about encoding when constructing URLs programmatically or in external tools.
Label and Metadata Keys with Dots
The dot (.) character is used to separate the prefix (label, meta, or tag) from the key name. If your label or metadata key itself contains dots, the TDP interprets only the first dot as the separator. For example:
label.Sample.Type=mouseThis is interpreted as: label key = Sample.Type, value = mouse.
Troubleshooting
My Shared Link Shows Different Results Than Expected
- Filter parameter names are case-sensitive. Make sure you use lowercase parameter names (for example,
category, notCategory). - Filter values are preserved exactly as entered. Check for extra spaces or typos.
An OR Group Is Not Working
- Use the pipe character (
|) to separate filters inside theor=(...)group, not commas. - Make sure the OR group is properly wrapped in parentheses:
or=(filter1|filter2).
Some Filters Seem to Be Ignored
- Check the spelling of the parameter name. Unknown parameters are silently ignored.
- Verify that the operator you are using is compatible with the filter type. For example,
~=(contains) works withfile-pathand labels, but not withcategory. See the Operator Compatibility Reference for details.
The Search URL Is Very Long
- Complex searches with many filters can produce long URLs. Most browsers support URLs up to several thousand characters, but for very complex recurring searches, consider using Saved Searches instead.
Documentation Feedback
Do you have questions about our documentation or suggestions for how we can improve it? Start a discussion in TetraConnect Hub. For access, see Access the TetraConnect Hub.
NOTEFeedback isn't part of the official TetraScience product documentation. TetraScience doesn't warrant or make any guarantees about the feedback provided, including its accuracy, relevance, or reliability. All feedback is subject to the terms set forth in the TetraConnect Hub Community Guidelines.
Updated about 11 hours ago
