openapi: 3.0.2 info: title: Coin Metrics API v4 Blockchain Explorer Job Chain Monitor tools API description: '[Coin Metrics Homepage](https://coinmetrics.io/)
[API Backward Compatibility Policy](https://docs.coinmetrics.io/access-our-data/api#backward-compatibility)
[Python API Client](https://coinmetrics.github.io/api-client-python/site/index.html)

HTTP API root endpoint URL is `https://api.coinmetrics.io/v4`. Coin Metrics' paid product.
WebSocket API root endpoint is `wss://api.coinmetrics.io/v4`. Coin Metrics' paid product.

The Community HTTP API root endpoint URL is `https://community-api.coinmetrics.io/v4`. API key is not required when accessing community endpoints. Available to the community under the [Creative Commons](https://creativecommons.org/licenses/by-nc/4.0/) license. # Authentication # Response headers Note that Coin Metrics API responses have a `CF-RAY` HTTP header e.g. `88a6ec1d2f930774-IAD` which can be used for diagnostic purposes. When raising Support requests, please ensure to provide the value of this header. ' termsOfService: https://coinmetrics.io/api/terms contact: name: Coin Metrics Support url: https://coinmetrics.io/support/ email: support@coinmetrics.io license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html version: 4.0.0 servers: - url: https://api.coinmetrics.io/v4 - url: wss://api.coinmetrics.io/v4 - url: https://community-api.coinmetrics.io/v4 tags: - name: Chain Monitor tools description: Endpoints for working with chain monitor data. paths: /blockchain/{asset}/transaction-tracker: servers: - url: https://api.coinmetrics.io/v4 get: summary: Transaction tracker description: Returns status updates for the specified or all transactions.
This endpoint can be helpful to track transaction settlement.
The transaction tracker keeps the history of the transaction updates for one month since the last update. operationId: getTxTracker tags: - Chain Monitor tools parameters: - $ref: '#/components/parameters/BlockchainAsset' - $ref: '#/components/parameters/TxTrackerTransactions' - $ref: '#/components/parameters/ReplacementsForTransactions' - $ref: '#/components/parameters/OnlyReplacementTransactions' - $ref: '#/components/parameters/TxTrackerAddresses' - $ref: '#/components/parameters/OnlyUnconfirmedTransactions' - $ref: '#/components/parameters/StartTime' - $ref: '#/components/parameters/EndTime' - $ref: '#/components/parameters/StartInclusive' - $ref: '#/components/parameters/EndInclusive' - $ref: '#/components/parameters/Timezone' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PagingFrom' - $ref: '#/components/parameters/Pretty' - $ref: '#/components/parameters/Format' - $ref: '#/components/parameters/NextPageToken' x-codeSamples: - label: Shell source: '# Gets data on the status of the most recent bitcoin transactions curl --compressed "https://api.coinmetrics.io/v4/blockchain/btc/transaction-tracker?pretty=true&api_key=" ' - label: Python source: '# Gets data on the status of the most recent bitcoin transactions import requests response = requests.get(''https://api.coinmetrics.io/v4/blockchain/btc/transaction-tracker?pretty=true&api_key='').json() print(response) ' responses: '200': $ref: '#/components/responses/TxTracker' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/BlockchainForbidden' security: - api_key: [] components: parameters: OnlyUnconfirmedTransactions: description: BTC asset only.
Can be used only in conjunction with `addresses` parameter. Controls whether all or only unconfirmed transactions (currently in mempool) are returned. in: query name: unconfirmed_only schema: type: boolean StartInclusive: description: Inclusive or exclusive corresponding `start_*` parameters. in: query name: start_inclusive schema: default: true type: boolean ReplacementsForTransactions: description: BTC asset only.
Comma separated list of transaction identifiers (txid) to get the corresponding replacement transactions for.
Mutually exclusive with `txids`.
in: query name: replacements_for_txids schema: type: array items: type: string explode: false EndInclusive: description: Inclusive or exclusive corresponding `end_*` parameters. in: query name: end_inclusive schema: default: true type: boolean StartTime: description: 'Start of the time interval.
This field refers to the `time` field in the response.
Multiple formats of ISO 8601 are supported: `2006-01-20T00:00:00Z`, `2006-01-20T00:00:00.000Z`, `2006-01-20T00:00:00.123456Z`, `2006-01-20T00:00:00.123456789Z`, `2006-01-20`, `20060120`.
Inclusive by default.
UTC timezone by default. `Z` suffix is optional and `timezone` parameter has a priority over it.
If `start_time` is omitted, response will include time series from the **earliest** time available.' in: query name: start_time schema: type: string PagingFrom: description: Where does the first page start, at the start of the interval or at the end.
The value of this parameter is ignored if the endpoint supports the `format` parameter and its value is set to `json_stream`. in: query name: paging_from schema: default: end enum: - start - end type: string format: PagingFrom Pretty: description: Human-readable formatting of JSON responses. in: query name: pretty schema: type: boolean default: false TxTrackerAddresses: description: BTC asset only.
Comma separated list of bitcoin addresses to track transactions for. Transactions in which at least one of the addresses is either a sender or recipient will be returned.
By default only transactions currently in mempool are returned. To return all associated transactions use `unconfirmed_only=false` parameter.
Mutually exclusive with `txids`, `replacements_for_txids`, `replacements_for_txids` parameters. in: query name: addresses schema: type: array items: type: string explode: false OnlyReplacementTransactions: description: BTC asset only.
Boolean indicating if the response should contain only the replacement transactions. in: query name: replacements_only schema: type: boolean PageSize: description: Number of items per single page of results.
The value of this parameter is ignored if the endpoint supports the `format` parameter and its value is set to `json_stream`. in: query name: page_size schema: default: 100 type: integer format: int32 minimum: 1 maximum: 10000 BlockchainAsset: description: Asset name. in: path name: asset required: true schema: type: string Format: description: Format of the response. in: query name: format schema: enum: - json - csv type: string default: json TxTrackerTransactions: description: Comma separated list of transaction identifiers (txid) to track. in: query name: txids schema: type: array items: type: string explode: false NextPageToken: description: Token for receiving the results from the next page of a query.
Should not be used directly. To iterate through pages just use `next_page_url` response field. in: query name: next_page_token schema: type: string EndTime: description: 'End of the time interval.
This field refers to the `time` field in the response.
Multiple formats of ISO 8601 are supported: `2006-01-20T00:00:00Z`, `2006-01-20T00:00:00.000Z`, `2006-01-20T00:00:00.123456Z`, `2006-01-20T00:00:00.123456789Z`, `2006-01-20`, `20060120`.
Inclusive by default.
UTC timezone by default. `Z` suffix is optional and `timezone` parameter has a priority over it.
If `end_time` is omitted, response will include time series up to the **latest** time available.' in: query name: end_time schema: type: string Timezone: description: Timezone name for `start_time` and `end_time` timestamps.
This parameter does not modify the output times, which are always `UTC`.
Format is defined by [TZ database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). in: query name: timezone schema: example: America/New_York default: UTC type: string schemas: NextPageToken: description: Token of the next page results for a given request. type: string TxTrackerResponse: description: Transaction tracker response. properties: data: $ref: '#/components/schemas/TxTrackerTransactions' next_page_token: $ref: '#/components/schemas/NextPageToken' next_page_url: $ref: '#/components/schemas/NextPageUrl' required: - data type: object TxTrackerTransaction: properties: txid: $ref: '#/components/schemas/TxTrackerTxid' time: $ref: '#/components/schemas/Time' first_seen_time: $ref: '#/components/schemas/Time' status: $ref: '#/components/schemas/TxTrackerTxStatus' status_update_time: $ref: '#/components/schemas/Time' mempool_approx_queue_position: $ref: '#/components/schemas/TxTrackerMempoolApproximateQueuePosition' next_block_approx_settlement_probability_pct: $ref: '#/components/schemas/TxTrackerNextBlockApproxSettlementProbabilityPercentage' block_hash: $ref: '#/components/schemas/BlockchainBlockHash' height: $ref: '#/components/schemas/BlockchainBlockHeight' n_confirmations: $ref: '#/components/schemas/TxTrackerNConfirmations' status_updates: $ref: '#/components/schemas/TxTrackerTxStatusUpdates' details: $ref: '#/components/schemas/TxTrackerTxDetails' geo: $ref: '#/components/schemas/BlockchainNodeLocationSeenTimes' replacement_for_txid: $ref: '#/components/schemas/TxTrackerReplacementTxid' inputs: $ref: '#/components/schemas/TxTrackerTxOutputs' outputs: $ref: '#/components/schemas/TxTrackerTxOutputs' required: - txid - time - first_seen_time - status - status_update_time - status_updates - details TxTrackerTxid: description: Identifier (txid) of the transaction. type: string BlockchainTransactionPhysicalSize: description: Physical size of the transaction, bytes. type: string format: decimal TxTrackerTxStatusUpdates: description: A list of status updates for the transaction. type: array items: $ref: '#/components/schemas/TxTrackerTxStatusUpdate' BlockchainTransactionVersion: description: Version of the transaction. type: string TxTrackerMempoolApproximateQueuePosition: description: BTC asset only.
Approximate position of the transaction in the mempool.
Miners choose mempool transactions to be included in the next block by scanning mempool and sort pending transactions by feerate in descending order.
The value starts with 0. A lower number means higher feerate. type: string TxTrackerTxAddress: description: Identifier of the address associated with the transaction. type: string BlockchainTransactionFeerate: description: Feerate of the transaction. type: string format: decimal BlockchainBlockHash: description: Hash of the block. type: string ErrorResponse: properties: error: $ref: '#/components/schemas/ErrorObject' required: - error type: object TxTrackerTxOutput: properties: address: $ref: '#/components/schemas/TxTrackerTxAddress' required: - address TxTrackerTxStatusUpdate: properties: time: $ref: '#/components/schemas/Time' status: $ref: '#/components/schemas/TxTrackerTxStatus' block_hash: $ref: '#/components/schemas/BlockchainBlockHash' height: $ref: '#/components/schemas/BlockchainBlockHeight' removal_reason: $ref: '#/components/schemas/TxTrackerRemovalReason' replacement_txid: $ref: '#/components/schemas/TxTrackerReplacementTxid' required: - time - status TxTrackerTxDetails: description: Static information about the transaction. properties: version: $ref: '#/components/schemas/BlockchainTransactionVersion' amount: $ref: '#/components/schemas/TxTrackerTxAmount' replace_by_fee_supported: $ref: '#/components/schemas/TxTrackerReplaceByFeeSupported' fee: $ref: '#/components/schemas/BlockchainTransactionFee' feerate: $ref: '#/components/schemas/BlockchainTransactionFeerate' mempool_feerate_mean_at_first_seen_time: $ref: '#/components/schemas/BlockchainMempoolFeerate' mempool_feerate_min_at_first_seen_time: $ref: '#/components/schemas/BlockchainMempoolFeerate' consensus_size: $ref: '#/components/schemas/BlockchainTransactionConsensusSize' physical_size: $ref: '#/components/schemas/BlockchainTransactionPhysicalSize' required: - amount NodeLocation: description: A physical location of the blockchain node that have captured the transaction entering the mempool. type: string TxTrackerRemovalReason: description: 'BTC asset only.
Why the transaction has been removed. This field is only present for `REMOVED` status. The possible values are: `EXPIRY`, `SIZE_LIMIT`, `REORG`, `CONFLICT`, `REPLACED`.' type: string BlockchainTransactionFee: description: Fee of the transaction. type: string format: decimal BlockchainNodeLocationSeenTime: description: Transaction tracker response. properties: location: $ref: '#/components/schemas/NodeLocation' seen_time: $ref: '#/components/schemas/Time' required: - location - seen_time type: object Time: description: The time in ISO 8601 date-time format. Always with nanoseconds precision. type: string format: date-time TxTrackerTxStatus: description: 'Transaction status. Can have the following values: `UNCONFIRMED`, `CONFIRMED`, `REMOVED` (BTC asset only).' type: string TxTrackerReplaceByFeeSupported: description: This field is set to true only if the transaction supports the replace-by-fee (RBF) feature. type: boolean TxTrackerNextBlockApproxSettlementProbabilityPercentage: description: BTC asset only.
Approximate probability of including the mempool transaction to the next mined block.
Miners choose mempool transactions to be included in the next block by scanning mempool and sort pending transactions by feerate in descending order.
The value starts is a percentage between 0 and 100. A higher number means a higher probability. type: string format: decimal BlockchainBlockHeight: description: Height of the block. type: string format: int64 TxTrackerTxAmount: description: The total amount of the transaction. type: string format: decimal TxTrackerTxOutputs: description: BTC asset only.
A list of tx outputs associated with the transaction. type: array items: $ref: '#/components/schemas/TxTrackerTxOutput' ErrorObject: properties: type: description: Error type string. Can be used for error identification. type: string message: description: Human-friendly error description. Can be amended without prior notification. Do not use for error identification in your code. type: string required: - type - description type: object BlockchainTransactionConsensusSize: description: Consensus size of the transaction. type: string format: decimal TxTrackerReplacementTxid: description: BTC asset only.
Identifier (txid) of the transaction. type: string NextPageUrl: description: URL of the next page results for a given request. type: string BlockchainNodeLocationSeenTimes: description: BTC asset only. type: array items: $ref: '#/components/schemas/BlockchainNodeLocationSeenTime' TxTrackerTransactions: type: array items: $ref: '#/components/schemas/TxTrackerTransaction' TxTrackerNConfirmations: description: The number of blocks between the transaction's block and the latest block in the blockchain plus one.
If the transaction is included in the last block, the value is 1. type: string format: int64 BlockchainMempoolFeerate: description: Aggregate function result over the feerate values of all the mempool transactions. type: string format: decimal responses: BlockchainForbidden: content: application/json: example: error: type: forbidden message: Requested resource is not available with supplied credentials. schema: $ref: '#/components/schemas/ErrorResponse' description: Requested resource is not available with supplied credentials. Unauthorized: description: Requested resource requires authorization. content: application/json: examples: unauthorized: summary: Unauthorized error response. value: error: type: unauthorized message: Requested resource requires authorization. wrong_credentials: summary: Wrong credentials error response. value: error: type: wrong_credentials message: Supplied credentials are not valid. schema: $ref: '#/components/schemas/ErrorResponse' TxTracker: description: Current status and its updates for the requested transactions. content: application/json: schema: $ref: '#/components/schemas/TxTrackerResponse' example: data: - txid: 04b743bc2451c2a8c9fb3bb946de4eb1305a4c0c51fd7a02ee5975fb4cecf4da time: '2021-06-08T11:48:21.000000000Z' first_seen_time: '2021-06-08T10:41:55.396000000Z' status: CONFIRMED status_update_time: '2021-06-08T10:44:38.224000000Z' status_updates: - time: '2021-06-08T10:41:57.421000000Z' status: UNCONFIRMED - time: '2021-06-08T10:44:38.224000000Z' status: CONFIRMED block_hash: 000000000000000000003eee54fd5f1ae769400e66b3cd9475b5fd6255de1834 height: '686786' details: version: '1' amount: '0.10302613' replace_by_fee_supported: false fee: '0.0009' feerate: '473.6842' mempool_feerate_mean_at_first_seen_time: '25.5569' mempool_feerate_min_at_first_seen_time: '1' consensus_size: '760' physical_size: '380' block_hash: 000000000000000000003eee54fd5f1ae769400e66b3cd9475b5fd6255de1834 height: '686786' n_confirmations: '1' inputs: - address: 112dvb4DogEpcp3yUR59HQuN1LFJbPErAT - address: 112duuEvfsJDVsuVn7Xe27bpxtq5mnuvtX outputs: - address: 112jmDkNGHSbhhY17JGpxU3sMA9ZExG7b2 - address: 112dtXeVfH3QgRJJwCiQe1FuRAKBqWfY3U next_page_token: MjAyMS0wNi0wOFQxMDo0MTo1NS4zOTZafEJMZER2Q1JSd3FqSi16dTVSdDVPc1RCYVRBeFJfWG9DN2xsMS0wenM5Tm8 next_page_url: https://api.coinmetrics.io/v4/blockchain/btc/transaction-tracker?api_key=&pretty=true&txids=04b743bc2451c2a8c9fb3bb946de4eb1305a4c0c51fd7a02ee5975fb4cecf4da,edb7e7b0dc1914d29ef978b332a45b89c225c555f18d6d4cfbcec0963d432544&page_size=1&paging_from=start&next_page_token=MjAyMS0wNi0wOFQxMDo0MTo1NS4zOTZafEJMZER2Q1JSd3FqSi16dTVSdDVPc1RCYVRBeFJfWG9DN2xsMS0wenM5Tm8 securitySchemes: api_key: description: Coin Metrics API key can be specified as `?api_key=` query parameter. in: query name: api_key type: apiKey x-tagGroups: - name: General tags: - Rate limits - name: Reference Data tags: - Reference Data - Profile - Taxonomy - Taxonomy Metadata - name: Catalog tags: - Catalog - Full catalog - Catalog v2 - Full catalog v2 - name: Timeseries tags: - Timeseries - Timeseries stream - name: Universal blockchain explorer tags: - List of blockchain entities v2 - Full blockchain entities v2 - Blockchain Explorer Job - Blockchain Explorer Job Results - name: Tools tags: - Chain Monitor tools - name: Security Master tags: - Security Master - name: Constituents tags: - Constituent Snapshots - Constituent Timeframes - name: Blockchain Metadata tags: - Blockchain Metadata - name: Jobs tags: - Jobs