# Platform API

**Deprecated. API v1 shutdown: November 1, 2026.** Use [Platform API v2](https://docs.vilna.io/apis/platform) for new integrations.
This reference documents the v1 operations for blockchain monitoring, invoice reconciliation and activity notifications. See [authentication](https://docs.vilna.io/apis/authentication) for service credentials and [errors](https://docs.vilna.io/apis/errors) for problem responses.

Version: 1.4.1
License: Apache 2.0

## Servers

Vilna API.
```
https://api.vilna.io/v1
```

## Security

### Auth

API key for authenticating requests. Include your key in the `X-Api-Key` header. Keys can be created in the Vilna Dashboard or via the Management API. The scopes listed per operation indicate which permissions the key must have.

Type: apiKey
In: header
Name: X-Api-Key

## Download OpenAPI description

 - [Platform API](https://docs.vilna.io/_bundle/@l10n/ru/apis/platform/@v1/api.yaml)

## Activity

 - [GET /activity](https://docs.vilna.io/ru/apis/platform/v1/api/activity/list-activity.md): List balance changes across tracked addresses with filtering and pagination.
## Balances

 - [GET /balances](https://docs.vilna.io/ru/apis/platform/v1/api/balance/list-balances.md): List current balances for tracked addresses with filtering and pagination.
## Addresses

 - [GET /public_keys/{public_key_id}/addresses](https://docs.vilna.io/ru/apis/platform/v1/api/address/list-public-key-addresses.md): List addresses derived from the public key.
 - [POST /public_keys/{public_key_id}/addresses](https://docs.vilna.io/ru/apis/platform/v1/api/address/generate-public-key-addresses.md): Generate one or more addresses for the public key by indexes or range.
 - [POST /public_keys/{public_key_id}/addresses/next](https://docs.vilna.io/ru/apis/platform/v1/api/address/generate-next-public-key-address.md): Generate the next sequential address for the public key.
 - [GET /addresses](https://docs.vilna.io/ru/apis/platform/v1/api/address/list-addresses.md): List tracked addresses (HD and external) with filtering and pagination.
 - [POST /addresses/external](https://docs.vilna.io/ru/apis/platform/v1/api/address/create-external-address.md): Import an externally managed address for tracking.
 - [POST /addresses/external/resolve](https://docs.vilna.io/ru/apis/platform/v1/api/address/resolve-external-address.md): Compute a blockchain address from a raw public key and create an external address. The public key is used only for address computation and is not stored. If an address with the computed value already
 - [GET /addresses/hd](https://docs.vilna.io/ru/apis/platform/v1/api/address/list-hd-addresses.md): List only HD-derived addresses (excludes external). Use GET /addresses for all types.
 - [DELETE /addresses/{address}](https://docs.vilna.io/ru/apis/platform/v1/api/address/delete-address.md): Delete a tracked address. This operation is irreversible.
 - [GET /addresses/{address}](https://docs.vilna.io/ru/apis/platform/v1/api/address/get-address.md): Get tracked address details by address value.
 - [PATCH /addresses/{address}](https://docs.vilna.io/ru/apis/platform/v1/api/address/patch-address.md): Update tracked address metadata.
 - [GET /addresses/{address}/balances](https://docs.vilna.io/ru/apis/platform/v1/api/address/list-address-balances.md): List current balances for active assets on the address.
 - [GET /addresses/{address}/utxos](https://docs.vilna.io/ru/apis/platform/v1/api/address/list-address-utxos.md): List unspent Bitcoin outputs held by the address.
## Address Tags

 - [GET /address_tags](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/list-address-tags.md): List address tags with pagination.
 - [POST /address_tags](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/create-address-tag.md): Create a named collection of addresses within a project. Tag names are unique per project (case-insensitive). Creating a tag whose name already exists returns the existing tag.
 - [GET /address_tags/{address_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/get-address-tag.md): Get an address tag.
 - [PATCH /address_tags/{address_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/patch-address-tag.md): Rename an address tag.
 - [DELETE /address_tags/{address_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/delete-address-tag.md): Delete an address tag.
 - [POST /address_tags/{address_tag_id}/actions/add](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/add-address-tag-addresses.md): Add addresses to an address tag by address value.
 - [POST /address_tags/{address_tag_id}/actions/remove](https://docs.vilna.io/ru/apis/platform/v1/api/address_tag/remove-address-tag-addresses.md): Remove addresses from an address tag by address value.
## Extended Public Keys

 - [GET /public_keys](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/list-public-keys.md): List registered extended public keys with filtering and pagination.
 - [POST /public_keys](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/create-public-key.md): Register an extended public key for HD address derivation.
 - [DELETE /public_keys/{public_key_id}](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/delete-public-key.md): Delete a registered public key by ID.
 - [GET /public_keys/{public_key_id}](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/get-public-key.md): Get public key details by ID.
 - [PATCH /public_keys/{public_key_id}](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/patch-public-key.md): Update public key metadata.
 - [POST /public_keys/{public_key_id}/children](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/create-public-key-child.md): Derive and register a child key from an account-level public key. The server derives the child extended public key using BIP-32 derivation — no cryptography needed on the client side. If a standalone
 - [GET /public_keys/{public_key_id}/addresses](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/list-public-key-addresses.md): List addresses derived from the public key.
 - [POST /public_keys/{public_key_id}/addresses](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/generate-public-key-addresses.md): Generate one or more addresses for the public key by indexes or range.
 - [POST /public_keys/{public_key_id}/addresses/next](https://docs.vilna.io/ru/apis/platform/v1/api/public_key/generate-next-public-key-address.md): Generate the next sequential address for the public key.
## Transactions

 - [GET /transactions](https://docs.vilna.io/ru/apis/platform/v1/api/transaction/list-transactions.md): List blockchain transactions with filtering, sorting, and pagination.
 - [GET /transactions/{chain_gid}/{hash}](https://docs.vilna.io/ru/apis/platform/v1/api/transaction/get-transaction.md): Get transaction details with events and balance changes.
## Invoices

 - [GET /invoices](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/list-invoices.md): List invoices with filtering and pagination.
 - [POST /invoices](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/create-invoice.md): Create a payment invoice for a specific address and token. The address must belong to the current project and must not have an active invoice.
 - [GET /invoices/{invoice_id}](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/get-invoice.md): Get full invoice details including merchant notes and metadata.
 - [DELETE /invoices/{invoice_id}](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/delete-invoice.md): Delete an invoice once it's in a terminal status: `confirmed`, `cancelled`, or `expired`. Active invoices (`pending`, `underpaid`) must be cancelled first. `paid` and `overpaid` are in-between states
 - [POST /invoices/{invoice_id}/actions/cancel](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/cancel-invoice.md): Cancel an active invoice. Only invoices in `pending` or `underpaid` status can be cancelled. Cancelling frees the address for new invoices. This operation is idempotent: cancelling an already-cancelle
 - [GET /public/invoices/{invoice_id}](https://docs.vilna.io/ru/apis/platform/v1/api/invoice/get-public-invoice.md): Public endpoint for payers. Returns invoice details needed for payment. No authentication required — the invoice UUID is the access token.
## Notification Channels

 - [GET /channels](https://docs.vilna.io/ru/apis/platform/v1/api/channel/list-channels.md): List channels with filtering and pagination.
 - [POST /channels](https://docs.vilna.io/ru/apis/platform/v1/api/channel/create-channel.md): Create a channel. Channel schema is selected by `config.kind`.
 - [GET /channels/{channel_id}](https://docs.vilna.io/ru/apis/platform/v1/api/channel/get-channel.md): Get channel details by ID.
 - [DELETE /channels/{channel_id}](https://docs.vilna.io/ru/apis/platform/v1/api/channel/delete-channel.md): Delete a channel by ID.
 - [PATCH /channels/{channel_id}](https://docs.vilna.io/ru/apis/platform/v1/api/channel/patch-channel.md): Update channel metadata or configuration.
 - [POST /channels/{channel_id}/actions/test](https://docs.vilna.io/ru/apis/platform/v1/api/channel/test-channel.md): Send a test event through the channel and return the log entry ID. Check the channel logs endpoint to see whether delivery succeeded.
 - [GET /channels/{channel_id}/logs](https://docs.vilna.io/ru/apis/platform/v1/api/channel/list-channel-logs.md): List delivery logs for a channel with filtering and pagination.
 - [GET /channels/{channel_id}/webhook-secrets](https://docs.vilna.io/ru/apis/platform/v1/api/channel/get-channel-webhook-secrets.md): Returns the channel's signing secrets: always a `current` secret, plus a `previous` secret during the 24-hour rotation overlap window. Only valid for channels with `kind=webhook`; otherwise returns 40
 - [POST /channels/{channel_id}/webhook-secrets/actions/rotate](https://docs.vilna.io/ru/apis/platform/v1/api/channel/rotate-channel-webhook-secret.md): Issues a new signing secret, demotes the existing current to previous for a 24-hour overlap window, and returns the new plaintext value. The plaintext is returned only here; store it immediately. Duri
 - [DELETE /channels/{channel_id}/webhook-secrets/previous](https://docs.vilna.io/ru/apis/platform/v1/api/channel/delete-channel-previous-webhook-secret.md): Ends the rotation overlap window early. After this call, outgoing webhooks are signed only with the current secret. Idempotent: if there is no previous secret (the channel has never been rotated, or i
## Notification Subscriptions

 - [GET /subscriptions](https://docs.vilna.io/ru/apis/platform/v1/api/subscription/list-subscriptions.md): List subscriptions with filtering and pagination.
 - [POST /subscriptions](https://docs.vilna.io/ru/apis/platform/v1/api/subscription/create-subscription.md): Create a subscription binding a channel to an event type.
 - [GET /subscriptions/{subscription_id}](https://docs.vilna.io/ru/apis/platform/v1/api/subscription/get-subscription.md): Get subscription details by ID.
 - [DELETE /subscriptions/{subscription_id}](https://docs.vilna.io/ru/apis/platform/v1/api/subscription/delete-subscription.md): Delete a subscription by ID.
 - [PATCH /subscriptions/{subscription_id}](https://docs.vilna.io/ru/apis/platform/v1/api/subscription/patch-subscription.md): Update subscription name or enabled status.
## Blockchains

 - [GET /blockchains](https://docs.vilna.io/ru/apis/platform/v1/api/blockchain/list-blockchains.md): List supported blockchains with filtering and pagination.
 - [GET /blockchains/{chain_gid}](https://docs.vilna.io/ru/apis/platform/v1/api/blockchain/get-blockchain.md): Get blockchain details by chain GID.
## Tokens

 - [GET /tokens](https://docs.vilna.io/ru/apis/platform/v1/api/token/list-tokens.md): List tracked tokens with filtering and pagination.
 - [POST /tokens/{chain_gid}/{asset_path}](https://docs.vilna.io/ru/apis/platform/v1/api/token/create-token.md): Create a token by chain GID and asset path. Metadata is resolved from chain data.
 - [GET /tokens/{chain_gid}/{asset_path}](https://docs.vilna.io/ru/apis/platform/v1/api/token/get-token.md): Get token details by chain GID and asset path.
## Token Tags

 - [GET /token_tags](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/list-token-tags.md): List token tags with pagination.
 - [POST /token_tags](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/create-token-tag.md): Create a named collection of tokens within a project. Tag names are unique per project (case-insensitive). Creating a tag whose name already exists returns the existing tag.
 - [GET /token_tags/{token_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/get-token-tag.md): Get a token tag.
 - [PATCH /token_tags/{token_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/patch-token-tag.md): Rename a token tag.
 - [DELETE /token_tags/{token_tag_id}](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/delete-token-tag.md): Delete a token tag.
 - [POST /token_tags/{token_tag_id}/actions/add](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/add-token-tag-assets.md): Add tokens to a token tag by asset GID.
 - [POST /token_tags/{token_tag_id}/actions/remove](https://docs.vilna.io/ru/apis/platform/v1/api/token_tag/remove-token-tag-assets.md): Remove tokens from a token tag by asset GID.
## Simulation

 - [POST /simulate/evm/{chain_gid}](https://docs.vilna.io/ru/apis/platform/v1/api/simulate/simulate-evm.md): Simulate one or more EVM transactions and return execution results.
## Version

 - [GET /version](https://docs.vilna.io/ru/apis/platform/v1/api/version/get-version.md): Get the current API version.
