Skip to main content
GET
/
v1
/
saved-searches
/
{id}
/
results
Execute Saved Search
curl --request GET \
  --url https://api.example.com/v1/saved-searches/{id}/results
{
  "object": "list",
  "data": [
    {
      "id": "tm_abc123",
      "object": "trademark",
      "mark_text": "NIKE",
      "relevance_score": 100,
      "office_code": "uspto",
      "status": { "primary": "active", "stage": "registered" },
      "filing_date": "1971-01-22",
      "nice_classes": [25]
    }
  ],
  "search_meta": { "took_ms": 92, "total_results": 142 },
  "has_more": true,
  "pagination": { "cursor": "eyJpZCI6..." },
  "livemode": true,
  "request_id": "req_xyz"
}

Overview

Re-executes the stored query against current data and returns the same response shape as POST /v1/trademarks/search. Side effect: updates the saved search’s last_executed_at and result_count fields. Requires both the portfolios:manage and search:read scopes. The response is never cached (Cache-Control: private, no-store).

Path Parameters

id
string
required
Saved search UUID.

Query Parameters

limit
integer
Override the saved query’s page size (1-100). Defaults to the stored value or 20.
cursor
string
Pagination cursor from a previous response.

Response

Same shape as POST /v1/trademarks/search: data[], aggregations, search_meta, has_more, pagination, livemode, request_id. include_total is forced on so the saved search execution stats can be updated.
{
  "object": "list",
  "data": [
    {
      "id": "tm_abc123",
      "object": "trademark",
      "mark_text": "NIKE",
      "relevance_score": 100,
      "office_code": "uspto",
      "status": { "primary": "active", "stage": "registered" },
      "filing_date": "1971-01-22",
      "nice_classes": [25]
    }
  ],
  "search_meta": { "took_ms": 92, "total_results": 142 },
  "has_more": true,
  "pagination": { "cursor": "eyJpZCI6..." },
  "livemode": true,
  "request_id": "req_xyz"
}

Code Examples

curl "https://api.signa.so/v1/saved-searches/550e8400-e29b-41d4-a716-446655440000/results?limit=20" \
  -H "Authorization: Bearer sig_live_YOUR_KEY_HERE"

Errors

StatusTypeDescription
400validation_errorInvalid UUID or limit
401unauthorizedMissing or invalid API key
403forbiddenAPI key lacks portfolios:manage or search:read
404not_foundSaved search does not exist or belongs to another org
422saved_search_outdatedStored query is malformed or uses an older schema; recreate the saved search