Trademark History
Details
Trademark History
Paginated prosecution event timeline for a trademark
GET
Trademark History
Overview
Returns the prosecution event timeline for a trademark, sourced from office records and normalized. Events cover filings, examinations, publications, registrations, renewals, assignments, oppositions, status changes, and ad-hoc letters from the office. Each event carries the canonical Signaevent_type, the office’s raw code and label, the event scope (right, class, designation, proceeding, or other), and an optional status_after_event snapshot. Use it to build prosecution timelines, audit ownership transfers, and reconcile renewal cycles.
Results are paginated and returned in reverse chronological order (newest first).
Path Parameters
Trademark ID prefixed with
tm_ (e.g. tm_8kLm2nPq).Query Parameters
Filter by one or more canonical event type codes, comma-separated. Example:
event_type=registration,renewal. Use the List Event Types endpoint for the full enum.Filter by event scope. One of
right, class, designation, proceeding, other.Earliest event date (inclusive), ISO
YYYY-MM-DD.Latest event date (exclusive), ISO
YYYY-MM-DD.Page size, between 1 and 100.
Opaque cursor returned in the previous response’s
pagination.cursor.Response
Always
list.Whether more events are available.
Cursor for the next page.
Unique request identifier for support and debugging.
Code Examples
Errors
| Status | Type | Description |
|---|---|---|
| 400 | validation_error | Invalid id format, malformed date, or event_date_gte greater than event_date_lt |
| 401 | unauthorized | Missing or invalid API key |
| 403 | forbidden | API key lacks the trademarks:read scope |
| 404 | not_found | Trademark ID does not exist |
| 429 | rate_limited | Rate limit exceeded |
Related Endpoints
- Get Trademark — current trademark data (the
?include=historyparameter is not supported on the detail endpoint; use this sub-resource endpoint to fetch event history) - List Event Types — canonical event type enum
- Trademark Changes — version-level field-by-field change log