---
title: "Get supported alert types"
method: GET
path: "/v4/subscription/types"
tags: ["Subscriptions"]
---

# Get supported alert types

`GET /v4/subscription/types`

## Request

- Base URL: `https://api.tatum.io`
- URL: `https://api.tatum.io/v4/subscription/types`
- Auth: API key in header `x-api-key`

/v4/subscription/types

**Free**

Returns every alert type that can be created, and for each type the blockchains it is available on together with the optional create fields those chains support. This is the same support matrix as `GET /v4/subscription/chains`, keyed by alert type instead of by chain — use whichever direction your picker needs.

Types created without a chain, such as `PRICE_CHANGE`, are marked `chainAgnostic: true` and carry an empty `chains` array.

The response is the same for every API key — it is not filtered by mainnet/testnet or by plan. Use the `testnet` flag on each chain to separate environments.

## Response `200`

OK

- SupportedAlertTypes
  - `types` SupportedAlertType[], required: Alert types creatable through v4, sorted by type.
    - `type` 'ADDRESS_EVENT' | 'CONTRACT_ADDRESS_LOG_EVENT' | 'INCOMING_NATIVE_TX' | 'OUTGOING_NATIVE_TX' | 'OUTGOING_FAILED_TX' | 'PAID_FEE' | 'INCOMING_INTERNAL_TX' | 'OUTGOING_INTERNAL_TX' | 'INCOMING_FUNGIBLE_TX' | 'OUTGOING_FUNGIBLE_TX' | 'INCOMING_NFT_TX' | 'OUTGOING_NFT_TX' | 'INCOMING_MULTITOKEN_TX' | 'OUTGOING_MULTITOKEN_TX' | 'MINT_TX' | 'BURN_TX' | 'SWAP_TX' | 'FAILED_TXS_PER_BLOCK' | 'PRICE_CHANGE', required: Type of the alert.
    - `chainAgnostic` boolean, required: Whether the type is created without a chain, in which case chains is empty.
    - `chains` SupportedAlertTypeChain[], required: Chains this alert type can be created on, sorted by chain slug.
      - `chain` string, required: Chain identifier accepted in attr.chain.
      - `currency` string, required: Legacy currency code, also accepted in attr.chain.
      - `testnet` boolean, required: Whether this chain is a test network.
      - `mempool` boolean, required: Whether the mempool flag is accepted on this chain.
      - `finality` boolean, required: Whether the finality field, attr.conditions and templateId are accepted on this chain. Create accepts all three or none.

## Other responses

- `401`: Unauthorized. Not valid or inactive subscription key present in the HTTP Header.
- `500`: Internal server error. There was an error on the server during the processing of the request.

---

[API](https://skmtc.dev/tatum/apis/blockchain-notifications.md) - [All operations](https://skmtc.dev/tatum/apis/blockchain-notifications/llms.txt) - [OpenAPI document](https://skmtc.dev/tatum/apis/blockchain-notifications/revisions/925883906ce5?raw)
