AD), which is small, so results are easy to check.
Before you start
You need an API key. Pinakel issues keys when your agreement is set up; use the Request API key button at the top of this page if you do not have one. Apk_test_ key returns the same data as a live key, is not billed, and is the right key for trying things out.
Put the key in an environment variable so it stays out of your code and your shell history:
Authorization: Bearer $PINAKEL_API_KEY. See Authentication for the details.
1
Search
Search for marks containing the word “noky” in the Andorran register. Filters are query parameters; different parameters are combined with AND.The response is a list of
trademark_summary objects:Response (abridged)
has_more: false means this is the only page. When it is true, send the same request again with cursor set to next_cursor (see Pagination).2
Retrieve the full record
Store the Every field is always present.
id. It is the record’s permanent identifier, and it fetches the full record:Response
null means the office did not state the value, so "country": null above means the Andorran record gives the owner’s address but no country code. The trademark record explains each field.3
Subscribe to changes
The changes feed lists every record that changed, in publication order. The first call, without Store
since or cursor, subscribes from now: it returns an empty page and a cursor.Response
next_cursor. At most every 15 minutes, call the feed again with the same jurisdiction and the stored cursor, upsert each trademark by its id, and store the new next_cursor after every page. Syncing shows the complete loop, including how to load your starting state.What’s next
Searching
Every filter, how values combine, and sorting.
Syncing
Initial load, the polling loop, bursts and reloads.
Errors
Which errors to fix, which to retry, and how.
API reference
Endpoints, parameters and response schemas, with a playground.