Hello,
I am currently using JSON files uploaded to HubSpot’s Files tool, reading them from our own app, and using them to control the display of the “New Arrivals” popup within the app.
■ The Issue
Upon checking the response headers for the file, I found that it is cached with max-age=1209600 (2 weeks).
As a result, even when I update the file’s content, the changes are not reflected immediately on users’ devices, making it impossible to trigger the new arrivals popup at the intended time.
■ Desired State
• I would like to shorten Cache-Control to no-cache or approximately max-age=86400 (1 day).
• Alternatively, I am interested in any workarounds that could achieve a similar effect.
■ Support Inquiry Results
I contacted HubSpot Support, but they stated that “there is currently no feature to individually configure Cache-Control for files uploaded to Files,” so I did not receive a clear solution.
■ Question
Has anyone else used Files as a data source for external apps and faced issues with immediate reflection of updates?
I am currently considering the following two workarounds, but I would appreciate any advice if there is a better approach.
- Re-upload the file each time with a versioned filename (e.g.,
data_20260721.json)
- Append a query parameter to the reference URL on the app side (e.g.,
data.json?v=20260721)
If you have experience with similar use cases, I would greatly appreciate your insights.
Thank you.
Hi @muramasa and welcome, it’s a pleasure to have you here!
Thanks for reaching out to the HubSpot Community!
I can confirm that, at the moment, the files tool serves files via CDN with automatic browser and server caching, and there’s no way to configure Cache-Control per file.
I’ve noticed a similar idea already present in our Ideas Forum: Website/landing pages should link to latest file version . To contribute, you can upvote the existing idea and share more details about your specific use case in the comments.
As an alternative, instead of a static JSON file, you could be storing your “New Arrivals” config data in a HubDB table. You can query it externally via the HubDB API, and since it’s an API response (not a CDN-cached static file), updates are reflected immediately after publishing the table.
I’d love to hear from our Top Experts: Hi @Makoto, @marykashima and @skimura can you think of other workarounds to help @muramasa, please?
Thanks so much and have a lovely day!
Bérangère
This post was created with the assistance of AI tools
Since Support already confirmed the file headers are not configurable, I wouldn’t try to use Files as the live control plane for this popup.
If you keep the JSON in Files, the safer workaround is to make the app request a versioned config URL and change that URL whenever the popup content changes, for example new-arrivals.v2026-07-21.json or a ?v=2026-07-21-1 query string if your consuming path respects query strings. That works with the two-week cache instead of fighting it: old requests may keep the old config, but new requests point at a fresh object.
For same-day campaign timing, HubDB or a small API endpoint is the cleaner fit. I’d only use Files when some staleness is acceptable.
Disclosure: drafted with AI assistance.
I’ve run into the same caching issue. Using versioned filenames or appending query parameters has worked well for me to force refreshes, since HubSpot doesn’t let us change Cache-Control directly. Both approaches are simple and reliable.
Thank you! It seems that specifying query parameters can solve the issue!
Thank you! It looks like I can resolve it by specifying query parameters!!!
Thank you! It looks like specifying query parameters can solve it!!!
I learned something new from this post. Caching improves performance, but having more control over cache duration would be very helpful for external app integrations.