/v1/keywords endpoint returns that dataset so you can pipe it into your own dashboards, alerts, or agents.
Get an API key
- Open your Jam workspace and go to Settings, Developer.
- Click Generate API key.
- Copy the key. It is shown once. Test keys begin with
sk_test_and are available on every plan. Live keys begin withsk_live_and are enabled on paid plans.
Keys are scoped to the workspace that created them. Regenerating a key immediately invalidates the old one.
Endpoint
Try it in your terminal
Export the key once per shell session, then pipe results intojq.
Use with Claude
The response is structured so an agent can act on it directly. The simplest setup is to runclaude in a shell that already has JAM_API_KEY exported, then paste the prompt below. Claude Code calls the endpoint with its built-in shell tool and summarises what came back.
Request examples
Query parameters
enum
Restrict to one engine:
google, chatgpt, perplexity, or gemini. Omit to include every engine Jam tracks.enum
Restrict to a single topic:
seo, geo, or social. Omit to include all topics.string
Optional substring filter, applied to the keyword term. Useful for pulling one cluster at a time.
boolean
Pass
true to return only keywords where you currently rank, or false for keywords you track but do not yet rank for.integer
default:"50"
How many keywords to return per page. Max 200.
string
Pagination cursor. Pass the
nextCursor value from a previous response.Response
200 OK
Response fields
array
The list of tracked keywords.
boolean
true if another page of results is available.string | null
Pass this back as the
cursor query param to fetch the next page.Errors
Rate limits
Each API key is limited to 60 requests per minute. Every response carriesX-RateLimit-Remaining, and throttled responses include Retry-After in seconds. Keep polling loops modest: the tracked keyword set changes at most a few times a day.