Preview Watch
Watches
Preview Watch
Dry-run a watch query: get a match count without creating a watch
POST
Preview Watch
Overview
Returns the number of trademarks that would have alerted if this query had been a live watch over the lasttrial_window_days (default 7). Uses the same evaluation logic as a live watch,
so the count is a faithful preview, not a separate query engine. Use it before
Create Watch to estimate volume and tune
strategies / min_match_tier for similarity watches.
Requires the portfolios:manage scope.
Preview is a read-shaped operation, so the
Idempotency-Key header is not required. Sending
one, as in the example below, is always safe.Body Parameters
object
required
Same DSL as Create Watch, see
the query reference. ID-bearing filters
(
filters.trademarkIds, filters.ownerId, …) accept the same tm_* / own_* prefixed
forms as create.integer
Backtest window in days (1-365). Default 7.
boolean
Skip the matching marks and return just
estimated_match_count. Default false.integer
Page size for
results (1-50). Default 20. Ignored when count_only is true.Response
string
Always
"watch_preview".integer
Trademarks that would have alerted in the trial window.
array
A page of the actual matching trademarks, in the same summary shape as search results. Omitted when
count_only is true.boolean
Whether more matches exist beyond
results. Omitted when count_only is true.integer
Effective page size used for
results. Omitted when count_only is true.string
Present only when
estimated_match_count is an upper bound rather than an exact count (the
value is "candidacy_upper_bound"). This happens when the underlying scan is large enough to
hit the server-side cap, or the time budget runs out after some matches were already found.
Absent when the count is exact.integer
Echo of the requested window.
string
Request identifier.
Latency and limits
Preview runs synchronously with a server-side time budget of about 20 seconds.class, mark,
and owner previews typically complete in a few seconds; similarity previews over broad
scopes and long windows are the heaviest and can approach the budget.
- If the budget runs out after some matches were found, the response is a
200with a partial count andestimate_basis: "candidacy_upper_bound". - If it runs out before any usable result exists, the response is a
504(see Errors). - Concurrent previews are limited per organization; exceeding the limit returns
429with aRetry-Afterheader. See Rate limits for header semantics.
Errors
504 preview_timeout
Code Examples
Related Endpoints
- Create Watch - turn a preview into a live watch
- Bulk Create Watches - create up to 100 watches at once
- Rate limits - request and concurrency limits