How it works
There are two ways to get a saved search the API can read. From the API. Run AI search, take thequery_id it returns, and pass it to Create saved search with a name. The search is shared with the API and your organization on creation, so it is readable immediately.
From the app. Build the search in the relevant feed, save it as a named search, then open the saved-searches index, click the three-dot menu (⋯) next to it, and turn on “Share to API”. A search shared only within your team is not reachable.
Either way, Get all saved searches lists every search the API can see, with its product type and query ID, and you then call the matching “results” endpoint for that product.
To change a search’s filters, edit it in the app. The API can create, read and delete a saved search, but not update one.
New to saved searches? Follow the step-by-step walkthrough for building and managing them in the app in the Saved Searches guide in the Specter Help Center.
Endpoints
Discover and manage
Details and results (by product type)
“Details” gives counts (total matched, newly added, with highlights) cheaply; “results” returns the matching records, paginated.How to use the API
Get started monitoring a search:- Get a saved search. Create one with Create saved search, or save and share one in the app (see “How it works” above).
- Find it. Get all saved searches → note the
query_idand product type. - Pull results. Call the matching results endpoint for that type, paginated.
- Poll for new matches. Pass
new_results_afterwith the timestamp of your last read to get only what has been added since — you choose the window, so a scheduled job never double-reads or skips. Every product’s results endpoint takes it. - Check counts cheaply. The “details” endpoint returns total matched / newly added without pulling every record; handy for dashboards.
Good to know
- The API can create, read, query and delete a saved search, but not update one. Editing filters is done in the app.
- A search is reachable when it was created by the API, explicitly shared to the API via “Share to API”, or is a global search curated by Specter. A search shared only within your team is not accessible from the API.
- A search created through the API is assigned to an organization admin, returned as
owner_id, and is visible to your team in the app. new_results_after(every product) restricts results to what was added to the search from that moment on. Additions are tracked for 60 days; an older cutoff returns422rather than a partial answer.- Results are paginated; empty results are valid, not an error.
- Unknown or non-visible searches return
404.