Changes & History

List changes

Retrieve change history for organizations. Filter by CIN, change type, or date range to track modifications over time.

get/changes

Request

  • Base URL: https://api.apino.sk/api/v1
  • URL: https://api.apino.sk/api/v1/changes
  • Auth: HTTP bearer

Query parameters

cinstring

Filter by CIN (IČO).

cinsstring

Comma-separated CINs — the portfolio you want to watch. Up to 100 per request, so a client tracking a customer list polls once rather than once per company. Takes precedence over cin when both are given.

since_idinteger

Return only changes recorded after this id, oldest first, and include next_cursor in the response. This is how you synchronise a feed: start at since_id=0, follow next_cursor until has_more is false, store it, and pass it on your next poll.

A cursor walk will not skip a change. A change becomes visible here only once every transaction older than it has finished, so a row can never appear behind a cursor you have already moved past. The trade is at the head of the feed: a change can be held back for a moment after it is written, and if something holds a long transaction open in our database it waits for that. Nothing is lost, it arrives later.

As a belt-and-braces reconciliation, re-reading a window with date_from every so often and de-duplicating on id costs you nothing and covers mistakes neither of us has thought of yet.

Use this rather than offset for polling. The feed grows at the head, so between two polls an offset-paged client is handed rows it already has while rows it has not seen are pushed past the end of its window.

Ids increase in the order changes are recorded, which is not the order they happened: a historical backfill records old changes with new ids. Add source=daily if you only want changes detected by the daily sync.

countriesstring

Comma-separated country codes to include (SK, CZ). Default: SK (Slovak data only). Use "SK,CZ" to query both countries.

change_type'name' | 'address' | 'legal_form' | 'status' | 'identifier' | 'activities' | 'statutory_bodies' | 'stakeholders' | 'equities' | 'establishment' | 'termination' | 'vat_registration' | 'vat_deregistration_grounds' | 'vat_unreliable_payer' | 'tax_reliability' | 'peppol_registration' | 'financial_statement' | 'financial_statement_missing'

Filter by change type.

date_fromstring date

From date (YYYY-MM-DD).

date_tostring date

To date (YYYY-MM-DD).

source'daily' | 'historical' | 'tax' | 'ruz' | 'peppol'

Filter by change source: daily (detected from daily RPO sync diffs), historical (extracted from JSONB temporal arrays), tax (detected from the Financial Administration and the Czech VAT register), ruz (a set of accounts newly filed in the Register účtovných závierok) or peppol (joining or leaving the Peppol network).

limitinteger

Results per page, 1–100.

offsetinteger

Pagination offset.

Response

Paginated list of changes

countinteger

Number of results in this page

limitinteger

Limit used

offsetinteger

Offset used

has_moreboolean

Whether more results exist beyond this page

next_cursorinteger

Present only when since_id was used and the page is non-empty. The id of the last change on this page — pass it as since_id on your next request. On the final page it is the value to store until your next poll.

Changes

No recorded changes to this operation across all 1 revision of this API.