A run that runs out of time now stops cleanly instead of being cut off.
- A run close to its time limit now stops itself, with its summary intact. A country's request can take up to half a minute, so a run that had just enough time left to start one could be cut off by the platform mid-request — losing the summary row that tells you what was delivered and what is still owed. The run now declines to start a request it cannot finish, ends successfully, and hands back the same summary and resume list any other clean stop produces. The country it did not reach is listed as still owed and is not reported as a country with no trends; nothing is charged for it.
- Your own
maxRunSeconds is now respected by the same rule, not just the platform timeout, so a short run you asked for ends the way you asked for it.
A country that could not be reached is now reported as something to re-run, never as a country with no trends.
- A blocked or unreadable response is no longer reported as "Google published nothing". When a request came back as something other than the trending list — a consent page, an error page, a truncated or empty response — the run used to say Google had answered normally and published no trending searches for that country. It was a temporary problem described as a permanent one, and it sent people away instead of back. Such a run now returns one uncharged row saying the request did not get through and asking you to re-run. A country that genuinely publishes nothing still gets the honest empty row it always did.
- A country whose trending list is not served now says so in its own words. It used to be reported as a country Google publishes no trends for. The row now says the list was not served on this run, invites a re-run, and notes that a country where it keeps happening may no longer have a trending list at all. It is marked re-runnable, and nothing is charged for it.
A typo in an input field name now gets a helpful pointer instead of sample rows.
- A misspelled field name is answered with the field you meant. Sending your country under a
name this actor does not have —
country instead of geo, say — or filling in only the limits
and no country, used to come back as the uncharged sample rows. Those samples are all stamped
US, so a run that asked for another country and misspelled the field read like a real answer
for the wrong one. Such a run now returns one uncharged row that names the field the actor did
not recognise, names the one it does, and shows the shape to send. Runs that do name a country
are unchanged, and a run with nothing set at all still returns the sample rows.
- Hardening in the shared Google Trends engine this actor is built on: a reply that comes
back valid but empty is now recognised as Google declining the request rather than
accepted as a genuine empty answer, on every surface the engine can read. Such a reply
is retried, and an answer that never arrives is reported as an uncharged miss. The
trending feed this actor reads already behaved this way, so its own output is unchanged.
- A run that gets moved to another server part-way through — or one you resurrect
from the console — now carries on where it stopped. Trending searches already in
your dataset are not collected again and are never charged twice, and the run
finishes only the countries it had not reached.
maxItems is now a limit on the whole run rather than on each restart. An
interrupted run could previously deliver up to twice the cap you set.
maxRunSeconds and the actor's own time ceiling are measured from when the run
started, so an interrupted run no longer gets a second full time budget.
- If a restarted run cannot read back what it already delivered and it has already
been charged, it now stops charging altogether and says so in the run status
instead of risking a second bill. Rows still ship, marked
charged: false.
- The suite directory at the end of this page now links straight to
Social Trends · 4 Platforms, which is live.
Initial release.
- Google's trending searches for any country, off Google's own trending feed.
- Poll several countries in one run — each is fetched independently, and one
country being unavailable never blocks the others.
- No start fee. You are charged per trending search delivered and nothing
else, so an hourly schedule costs the same per trend as a single run.
- Every row carries
charged, status and missReason, so the invoice
reconciles from the dataset itself.
- Nothing is charged for a country Google does not cover, a country that
published nothing, a request Google rate-limited, or trends your own
minTraffic filtered out. Each of those ships as an uncharged row that says
what happened and names the fix.
maxTrendsPerGeo, maxItems and maxRunSeconds are hard limits: the run
stops cleanly, still succeeds, and the final summary row names which limit
bound and which countries were not reached.
- Running with no country set returns uncharged sample rows and contacts
nothing, so you can see the exact output shape before spending anything.