get_time_series can return two numeric fields on the same point: value and volume. value is the 0-100 index documented on the score page. volume is an absolute count when the source has one. The official time-series shape on the API reference is {date, value, volume, keyword, source}. volume is typed as a number or null. The MCP server in this session describes the series as 0-100 values, plus volume when available. Parse the string body before reading either field.
The two fields
| Field | Unit | Always present |
|---|---|---|
value |
0-100 index for this series | Yes on keyword modes |
volume |
Absolute count for this source | No. Null or omitted when the source has no count |
POST https://api.trendsapi.ai/api
Authorization: Bearer <api_key>
Content-Type: application/json
{"mode":"get_time_series","source":"google search","keyword":"bitcoin"}
Do not invent a conversion from volume to value. The index is not volume rescaled on the client.
Which mode returns which
| Mode | value |
volume |
|---|---|---|
get_time_series |
Weekly points | When the source has it |
get_growth |
recent_value, baseline_value |
Not the primary output. growth is a percent |
get_top_trends |
No | No. Rank and label only |
get_growth answers "up or down." It is the wrong call if the next step is a raw-count chart. Window strings sit on growth windows. Live boards sit on the live feeds page.
When volume is null
Null (or a missing key) means this source, at this point, has no absolute series to ship. It does not mean zero events. It does not mean the keyword is dead. value is still the signal. Coercing null to 0 will create a fake cliff on any chart that plots volume.
If a source never returns volume for a keyword, keep value. If the job is "downloads this week" and volume is null, that source is the wrong object. Switch source rather than inventing a count. Source strings sit on the sources hub.
Do not plot both on one axis
value 80 next to volume 2,000,000 is two units. Dual-axis charts hide that. Compare value across sources. Keep volume on a per-source panel, and only when it is non-null.
Plan names stay on pricing. Keyword spelling rules sit on keyword formats.