T3 API Reports¶
A collection endpoint returns one page of records. A report endpoint returns the whole dataset in a single request (every active package, every harvest, every transfer manifest) already filtered, sorted, and formatted the way you asked for it.
T3+ required
Report endpoints are available to T3+ subscribers only. You can start a 30-day free trial at dash.trackandtrace.tools.
Your first report¶
Every report is one authenticated GET. Paste this into a browser and it downloads every active package on a license as a CSV:
https://api.trackandtrace.tools/v2/packages/active/report?secretKey=YOUR_SECRET_KEY&licenseNumber=EX-00001&contentType=csv&columns=label,item.name,quantity,unitOfMeasureAbbreviation,locationName&columnHeaderOverrides=Tag,Item,Quantity,Unit,Room&prependCsvMetadata=false
Read it one piece at a time:
| Piece | What it does |
|---|---|
https://api.trackandtrace.tools | The T3 API host. |
/v2/packages/active/report | The report endpoint. This one returns active packages; every other report is a different path, listed in Report Endpoints. |
?secretKey=YOUR_SECRET_KEY | Authentication. A URL carries the key as a parameter rather than a header because it is meant to be pasted somewhere: a browser, a spreadsheet formula, Power Query. |
&licenseNumber=EX-00001 | Which license to pull. Repeat the parameter to cover several at once, see Reporting Across Multiple Licenses. |
&contentType=csv | Return a CSV file. json, xlsx and googleSheets are the other choices, see Output and Delivery Format. |
&columns=label,item.name,quantity,unitOfMeasureAbbreviation,locationName | Which fields come back, in this order. Leave it off and you get the report's default columns. |
&columnHeaderOverrides=Tag,Item,Quantity,Unit,Room | The header names. Matched positionally against columns, so the first override names the first column. Without it the headers are title-cased from the field names, and unitOfMeasureAbbreviation arrives as Unit Of Measure Abbreviation. |
&prependCsvMetadata=false | Drop the eight-row preamble describing the request, so the headers land on row 1 and the first package on row 2. |
The file that comes back:
| Tag | Item | Quantity | Unit | Room |
|---|---|---|---|---|
| 1A4400000000000000001234 | Blue Dream | 1250 | g | Bulk Storage |
| 1A4400000000000000001235 | Blue Dream Preroll 1g | 480 | ea | Packaging Room |
| 1A4400000000000000001236 | GG4 Shake/Trim | 3400 | g | Bulk Storage |
| 1A4400000000000000001237 | Sour Diesel Distillate | 215.5 | g | Extraction Vault |
| 1A4400000000000000001238 | Wedding Cake Flower 3.5g | 96 | ea | Retail Vault |
One row per active package, all of them, in a single request. A license holding twelve thousand packages returns twelve thousand rows here.
Generate a secret key at the secret-key page. See Authentication for the alternatives, and Report Examples for the same requests written as Python scripts, where the key belongs in an X-T3-API-Key header instead.
Collection endpoint versus report endpoint¶
The same data is reachable both ways, and the difference is how much of it you get per request.
| Returns | Use it when | |
|---|---|---|
/v2/packages/active | One page of active packages | You are paging through records in an application |
/v2/packages/active/report | All active packages | You want the dataset exported in one go |
Because a report returns everything, the response can be very large, see Limits and Troubleshooting for the caps and how to stay under them.
You do not have to build these URLs by hand
T3 Reports in the Chrome Extension is a form over everything in this section. It assembles the URL, explains each parameter as you set it, previews the first few rows, and hands you the finished link, including the =IMPORTDATA() formula for Spreadsheet Sync. A URL it produces is an ordinary report URL, and a URL you write yourself can be pasted back into it.
Next Steps¶
- Find the path you need in Report Endpoints.
- Narrow what comes back with Shaping a Report.
- Choose a format and a destination in Output and Delivery Format and Delivering a Report.
- Attach related records with Super Reports.
- Copy a working script from Report Examples.