Skip to main content

Counterparties

Addresses your workspace has transacted with, automatically classified where Kryptos recognises them — as an exchange or a DeFi protocol.

Base URL: https://api-v2.kryptos.io · Required Permission: contacts:read

Endpoint
GET/v1/counter-parties

Note the hyphen: the path is /v1/counter-parties, not /v1/counterparties.

contacts:read is not in the default client scope set

Your client has to be registered with it — see Contacts. Without it this endpoint returns 403 insufficient_scope.

Request

curl -X GET "https://api-v2.kryptos.io/v1/counter-parties?resolved=false&ignored=false" \
-H "Authorization: Bearer ACCESS_TOKEN"

Query Parameters

ParameterTypeDefaultDescription
resolvedstringtrue or false — whether Kryptos identified the address
ignoredstringtrue or false — whether it has been dismissed
typestringexchange or protocol
searchstringMatch on address and name
pageinteger1Page number
limitinteger50Max 200

resolved and ignored are string enums, not booleans — send ?resolved=false, not ?resolved=0.

?resolved=false&ignored=false is the useful default for a review queue: unidentified addresses nobody has dismissed yet.

Response

The response spreads the result beside success{ success: true, data: [...], ...pagination }.

A resolved counterparty is one Kryptos matched to a known exchange or protocol, so it carries a name you can display. An unresolved one is just an address. type distinguishes the two kinds of match: exchange for a centralized venue, protocol for a DeFi contract.

Naming an unresolved address is done by attaching it to a contact, where a manual name takes precedence over any automatic one.