A Julia job talks to Trends API with one POST to https://api.trendsapi.ai/api, a Bearer key, and a JSON body that names a mode. There is no official Julia library. HTTP.jl sends the request. JSON.jl parses the envelope, then parses the body string a second time. Pulled on 2026-09-18, Google Search for julia programming scored 35.0 for the week of 2026-09-12, down 53.33% from 75.0. julia language scored 31.0, down 56.94% from 72.0. YouTube for julia programming scored 26.0, up 333.33% from 6.0. Do not treat the Search 7D drop as language collapse while YouTube bounces. The same helper that stores those rows also pulls a live Google Trends board; a rank-10 token that weekly Search printed at 34.0 with a 1-day mover of 61 is documented in Resident Evil movie live rank versus weekly Search.

How does a Julia client call Trends API?

POST https://api.trendsapi.ai/api
Authorization: Bearer <api_key>
Content-Type: application/json

{"mode":"get_growth","source":"google search","keyword":"julia programming","percent_growth":["7D","30D","3M","12M"]}
using HTTP, JSON

function trends_post(payload)
    key = get(ENV, "TRENDSAPI_API_KEY", "")
    isempty(key) && error("TRENDSAPI_API_KEY is unset")
    resp = HTTP.post(
        "https://api.trendsapi.ai/api",
        [
            "Authorization" => "Bearer $(key)",
            "Content-Type" => "application/json",
        ],
        JSON.json(payload),
    )
    if resp.status != 200
        error("HTTP $(resp.status)")
    end
    envelope = JSON.parse(String(resp.body))
    # body is a JSON string; parse it a second time
    JSON.parse(envelope["body"])
end

inner = trends_post(Dict(
    "mode" => "get_growth",
    "source" => "google search",
    "keyword" => "julia programming",
    "percent_growth" => ["7D", "30D", "3M", "12M"],
))
println(inner)

The first mistake most clients make is treating the body field as an object after one parse. It is still a JSON string. HTTP.jl returns bytes. The first JSON.parse yields the envelope. The second parse yields results. Library docs:

https://juliaweb.github.io/HTTP.jl/stable/
https://github.com/JuliaIO/JSON.jl

Free tier allows 100 successful requests per month. Only HTTP 200 responses count against quota. Starter is 5,000, Pro is 25,000, Business is 100,000. There is no Julia-specific source on this API. npm covers npmjs package names. python covers PyPI project names. A Julia watchlist that needs General registry download counts has to pull those from somewhere else. Compare the PyPI package julia on recent_volume, not on the 0-100 score.

What did get_growth return for Julia language tokens?

Pulled on 2026-09-18 with source set to google search. get_growth tips on 2026-09-12. The prior Saturday 2026-09-05 is the last full week in the same series. Bare julia is a name token. Store the phrase tokens.

Keyword Period Recent Baseline date Baseline Growth
julia programming 7D 35.0 2026-09-05 75.0 -53.33%
julia programming 14D 35.0 2026-08-29 30.0 +16.67%
julia programming 30D 35.0 2026-08-15 39.0 -10.26%
julia programming 3M 35.0 2026-06-13 89.0 -60.67%
julia programming 12M 35.0 2025-09-13 47.0 -25.53%
julia programming YTD 35.0 2026-01-03 40.0 -12.5%
julia language 7D 31.0 2026-09-05 72.0 -56.94%
julia language 14D 31.0 2026-08-29 51.0 -39.22%
julia language 3M 31.0 2026-06-13 92.0 -66.3%
julia language 12M 31.0 2025-09-13 56.0 -44.64%
julia 7D 57.0 2026-09-05 67.0 -14.93%
python 7D 43.0 2026-09-05 47.0 -8.51%
python programming 7D 37.0 2026-09-05 43.0 -13.95%
r programming 7D 39.0 2026-09-05 53.0 -26.42%
matlab 7D 100.0 2026-09-05 89.0 +12.36%
jupyter 7D 42.0 2026-09-05 40.0 +5.0%
numpy 7D 28.0 2026-09-05 31.0 -9.68%
juliacon 7D 4.0 2026-09-05 1.0 +300.0%
dart programming 7D 27.0 2026-09-05 34.0 -20.59%
rust programming 7D 14.0 2026-09-05 17.0 -17.65%

julia programming and YouTube for the same string closed at opposite 7D directions. Search fell 53.33% from 75.0 to 35.0. YouTube rose 333.33% from 6.0 to 26.0. julia language fell 56.94% to 31.0, in the same Search direction as the programming phrase. Bare julia scored 57.0, down 14.93% from 67.0. That is not the language series. matlab scored 100.0, up 12.36% from 89.0, the opposite 7D sign from julia programming. jupyter scored 42.0, up 5.0% from 40.0. juliacon scored 4.0, up 300.0% from 1.0, with data_quality low. Report 4.0 versus 1.0. Do not treat a conference token at 4.0 as language adoption. A job that alerts "Julia is down" off Search 7D while YouTube is up 333.33% is reading one source.

3M is a summer drop on the phrase tokens. julia programming is 35.0 versus 89.0 on 2026-06-13 (-60.67%). julia language is 31.0 versus 92.0 (-66.3%). python is 43.0 versus 88.0 (-51.14%). python programming is 37.0 versus 70.0 (-47.14%). r programming is 39.0 versus 97.0 (-59.79%). matlab is 100.0 versus 87.0 (+14.94%). jupyter is 42.0 versus 69.0 (-39.13%). numpy is 28.0 versus 79.0 (-64.56%). juliacon 30D is 4.0 versus 53.0 on 2026-08-15 (-92.45%). That 53.0 conference week is not the 7D bounce to 4.0. dart programming 3M is 27.0 versus 68.0 (-60.29%). rust programming 3M is 14.0 versus 40.0 (-65.0%). Do not copy matlab 100.0 onto julia programming 35.0.

get_time_series for julia programming on Google Search closed at 35 on 2026-09-12, matching get_growth 35.0. Adjacent weeks: 75 on 2026-09-05, 30 on 2026-08-29, 36 on 2026-08-22, 39 on 2026-08-15, 51 on 2026-08-08. The series hit 100 on 2026-06-06, with 96 on 2026-04-04 and 89 on 2026-06-13. The 2026-01-03 close was 40. The 2025-09-13 close was 47. The 7D drop from 75 to 35 sits after that June peak, not at a new high. Tip 35 is the week after a 75 spike, not a floor.

Bare julia YTD was 57.0 versus 58.0 on 2026-01-03 (-1.72%). Phrase token YTD was 35.0 versus 40.0 (-12.5%). python YTD was 43.0 versus 40.0 (+7.5%). python programming YTD was 37.0 versus 21.0 (+76.19%). Do not copy python YTD +7.5% onto julia programming. Do not copy bare julia 57.0 onto the phrase token.

The R sibling of this helper is R Trends API. The Python sibling is Python Trends API.

What did YouTube, News, Wikipedia, and PyPI return?

YouTube for julia programming tipped 26.0 on 2026-09-12, up 333.33% from 6.0 on 2026-09-05, the opposite 7D direction from Search -53.33%. 14D printed growth 999999 versus 0.0 on 2026-08-29. Report 26.0 versus 0.0. Do not store 999999. 30D was 26.0 versus 34.0 (-23.53%). 3M was 26.0 versus 38.0 (-31.58%). 12M printed growth 999999 versus 0.0 on 2025-09-13. YTD was 26.0 versus 34.0 (-23.53%). get_time_series closed at 26 on 2026-09-12, matching get_growth. Adjacent weeks: 6 on 2026-09-05, then 0 on 2026-08-29 and 2026-08-22, then 34 on 2026-08-15. Peak in this pull is 100 on 2022-07-23. Tip 26 is not that 2022 peak. The week of 2026-09-05 printed YouTube 6 while Search that week was 75. Do not copy YouTube 26.0 onto Search 35.0.

Keyword Google News for julia programming tipped 0.0 on 2026-09-12 versus 0.0 on every listed baseline. The payload marked data_quality low with a warning that the underlying signal is over 90% zeros. Report 0.0. Keyword News and the Google News Top News board are different feeds. Store the low-quality flag on the phrase token. Do not fill News from Search 35.0.

Wikipedia resolved two titles. Keyword Julia (programming language) resolved with August score 8.3 and 9,684 views versus July 11.1 / 10,141 (score -25.23%, volume -4.51%). 3M volume was 9,684 versus 10,534 on 2026-05-01 (score 8.3 versus 13.5, volume -8.07%). 12M volume was 9,684 versus 12,711 on 2025-08-01 (score 8.3 versus 26.8, volume -23.81%). 7D collapsed to the same monthly point. get_time_series also printed June 10.5 / 10,042 views and a 2022-11-01 peak of 100.0 / 24,673. Report both score and volume.

Keyword Julia is a different page. August score 0.2 with 1,319 views versus July 0.7 / 1,360 (score -71.43%, volume -3.01%). 12M volume was 1,319 versus 1,839 (-28.28%) while the score went 0.2 versus 6.9 (-97.1%). The language page has more August views than the short title (9,684 versus 1,319). Compare Wikipedia on volume. Do not join either page onto Search 35.0. Notes for the Wikipedia source sit on Wikipedia Trends.

PyPI (python) tips on 2026-09-07, five days before the Google weekly tip. Package julia scored 5.8 with 5,733 weekly downloads, up 23.4% in score and 11.34% in volume from 4.7 / 5,149 on 2026-08-31. 30D volume was 5,733 versus 11,750 on 2026-08-10 (-51.21%). 3M volume was 5,733 versus 9,664 (-40.68%). 12M volume was 5,733 versus 11,093 on 2025-09-08 (-48.32%). get_time_series closed at 5.8 / 5,733 on 2026-09-07, matching get_growth. Peak in this pull is 100.0 / 57,792 on 2024-11-25. Tip 5,733 is not that peak. Package pyjulia scored 3.7 with 89 weekly downloads, flat versus 89 on 2026-08-31. Compare those packages on recent_volume. Package numpy scored 57.4 with 179,418,169 weekly downloads. Do not copy numpy volume onto julia. There is no Julia General registry source.

How does a watchlist store live boards next to weekly scores?

get_top_trends has no keyword. It returns a ranked board. Pair it with get_growth for the tokens that appear, using the exact board string.

{"mode":"get_top_trends","type":"Google Trends","limit":25}
{"mode":"get_top_trends","type":"Google Trends","sort":"rank_change","window":"1d","limit":25}

The Google Trends board at 2026-09-18T10:01:45Z ranked how do i register to vote 1, ed sheeran 2, and resident evil movie 10. The 1-day rank_change sort (25 rows, baseline 2026-09-17T02:01:38Z) listed resident evil movie with rank_change 61 from prev_rank 71. The 7-day sort returned 2 rows and omitted that token. Weekly Search for the same phrase was 34.0, up 54.55% from 22.0. Live rank and the 1-day mover list can catch a token that the 7-day list still misses. The walk-through is Resident Evil movie live rank versus weekly Search.

That same 1-day sort listed julia stiles at rank 39 with rank_change 25 from prev_rank 64. That is a person token, not julia programming. A job that greps live rows for julia and writes an adoption alert is reading the actor series. Store the exact board string.

A Julia watchlist that stores six Search tokens (julia programming, julia language, python, r programming, matlab, juliacon) plus one Google Trends board uses 7 successful 200s. Four runs per 30-day month is 28 calls and fits the free cap of 100. Daily polling of that set is about 210 calls and needs Starter (5,000). Modes and sources for the modes live at https://trendsapi.ai/docs. Google Search board strings are not always valid get_growth keywords. Pair get_top_trends rank, rank_change, and get_growth before writing an alert. Source notes for Search sit on Google Trends.

The Elixir sibling of this helper is Elixir Trends API. The Dart sibling is Dart Trends API.

Envelope checklist

  1. POST https://api.trendsapi.ai/api with Authorization: Bearer <api_key>.
  2. Modes are get_time_series, get_growth, and get_top_trends only.
  3. Parse body twice before reading results or dated points.
  4. Google Search uses the exact token typed. julia, julia programming, julia language, and juliacon are four series. Wikipedia titles are resolved names; confirm the title and compare on volume before joining. PyPI julia is a download series, not Search.
  5. Quota counts successful 200 responses: free 100/month, then 5,000 / 25,000 / 100,000 on paid tiers.

No Julia library is required. A 40-line HTTP.jl helper covers growth, series, and board pulls for jobs that already run under systemd or a cron timer.