Summaries are built from one row per record, so a page of 100 comes back quickly. The full record adds parties, classification, identifiers, designations and the office’s own status wording. Use the summary to decide which records you need, then fetch those in a batch of up to 100.
Rules that apply to every field
- Every field is always present. A field never disappears because it has no value.
nullmeans the office did not state the value. Pinakel never fills a gap with a default or a computed value: an expiry date is never calculated from a filing date, and a missing country is never guessed from an address.- Arrays are never
null. An empty list means the record has none. - Dates are calendar dates as the office states them,
YYYY-MM-DD, with no time zone. See Dates. - Timestamps are UTC with microseconds and a
Zsuffix:2026-11-10T09:02:13.512000Z. - Enumerations are open. New values can appear in later versions; treat an unknown value like
other. See Versioning.
The full record
This is an Albanian application for a figurative mark. It has no mark text, somark.text is null, and it carries the office’s own status wording in Albanian.
Fields
Each party has the same fields:
Enumerations
Filter values and response values are the same strings, so a value you read can be passed straight back as a filter.other means the office used a value that has no mapping yet. For status, the office’s wording is in status.office_status; for the other fields it is in source_record. Each of these fields can also be null when the office stated nothing; filter for that with the value none. Status explains the difference between null, other and unknown.
The summary
Search results and feed items carry these fields. Their meaning is the same as in the full record.Optional blocks
Retrieve and batch retrieve acceptinclude to add blocks. A block appears only when you ask for it.
Batch requests with
goods_services, assignments or source_record are limited to 25 ids. On search and the changes feed, include accepts only full, which returns full trademark objects instead of summaries and limits the page to 25.
Records that cannot be built
Rarely, a record exists but cannot be assembled at that moment, for example while its source document is being replaced. Such a record is left out of search and feed pages, listed underunavailable in a batch response, and answered with 503 unavailable on retrieve. Retry later.
What is not in v1
- When Pinakel first saw a record. Backfills restamp that time, so it would mislead; it will be added once it is reliable.
- Images.
media.has_imagetells you whether one exists. - Opposition details, and removal events in the changes feed.
- Sparse fieldsets (
fields=).