> For the complete documentation index, see [llms.txt](https://gitbook-docs.coinmetrics.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gitbook-docs.coinmetrics.io/cm-api-spec/atlas/chain-monitor-tools/transaction-tracker.md).

# Transaction tracker

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.

```json
{"openapi":"3.0.2","info":{"title":"Coin Metrics API v4","version":"4.0.0"},"tags":[{"name":"Chain Monitor tools","description":"Endpoints for working with chain monitor data.\n\n**Endpoints on this page:**\n- `GET /blockchain/{asset}/transaction-tracker` — Transaction tracker"}],"servers":[{"url":"https://api.coinmetrics.io/v4"},{"url":"wss://api.coinmetrics.io/v4"},{"url":"https://community-api.coinmetrics.io/v4"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"description":"Coin Metrics API key can be specified as `?api_key=` query parameter.","in":"query","name":"api_key","type":"apiKey"}},"parameters":{"BlockchainAsset":{"description":"Asset name.","in":"path","name":"asset","required":true,"schema":{"type":"string"}},"TxTrackerTransactions":{"description":"Comma separated list of transaction identifiers (txid) to track.","in":"query","name":"txids","schema":{"type":"array","items":{"type":"string"}},"explode":false},"ReplacementsForTransactions":{"description":"<b>BTC asset only.</b><br/> Comma separated list of transaction identifiers (txid) to get the corresponding replacement transactions for.<br/> Mutually exclusive with `txids`.<br/>","in":"query","name":"replacements_for_txids","schema":{"type":"array","items":{"type":"string"}},"explode":false},"OnlyReplacementTransactions":{"description":"<b>BTC asset only.</b><br/> Boolean indicating if the response should contain only the replacement transactions.","in":"query","name":"replacements_only","schema":{"type":"boolean"}},"TxTrackerAddresses":{"description":"<b>BTC asset only.</b><br/> 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.<br/> By default only transactions currently in mempool are returned. To return all associated transactions use `unconfirmed_only=false` parameter.<br/> Mutually exclusive with `txids`, `replacements_for_txids`, `replacements_for_txids` parameters.","in":"query","name":"addresses","schema":{"type":"array","items":{"type":"string"}},"explode":false},"OnlyUnconfirmedTransactions":{"description":"<b>BTC asset only.</b><br/> 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"}},"StartTime":{"description":"Start of the time interval.<br/> This field refers to the `time` field in the response.<br/> 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`.<br/> Inclusive by default.<br/> UTC timezone by default. `Z` suffix is optional and `timezone` parameter has a priority over it.<br/> If `start_time` is omitted, response will include time series from the **earliest** time available.","in":"query","name":"start_time","schema":{"type":"string"}},"EndTime":{"description":"End of the time interval.<br/> This field refers to the `time` field in the response.<br/> 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`.<br/> Inclusive by default.<br/> UTC timezone by default. `Z` suffix is optional and `timezone` parameter has a priority over it.<br/> If `end_time` is omitted, response will include time series up to the **latest** time available.","in":"query","name":"end_time","schema":{"type":"string"}},"StartInclusive":{"description":"Inclusive or exclusive corresponding `start_*` parameters.","in":"query","name":"start_inclusive","schema":{"default":true,"type":"boolean"}},"EndInclusive":{"description":"Inclusive or exclusive corresponding `end_*` parameters.","in":"query","name":"end_inclusive","schema":{"default":true,"type":"boolean"}},"Timezone":{"description":"Timezone name for `start_time` and `end_time` timestamps.<br/> This parameter does not modify the output times, which are always `UTC`.<br/> Format is defined by [TZ database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).","in":"query","name":"timezone","schema":{"default":"UTC","type":"string"}},"PageSize":{"description":"Number of items per single page of results.<br/> 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}},"PagingFrom":{"description":"Where does the first page start, at the start of the interval or at the end.<br/> 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}},"Format":{"description":"Format of the response.","in":"query","name":"format","schema":{"enum":["json","csv"],"type":"string","default":"json"}},"NextPageToken":{"description":"Token for receiving the results from the next page of a query.<br/> 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"}}},"responses":{"TxTracker":{"description":"Current status and its updates for the requested transactions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TxTrackerResponse"}}}},"Unauthorized":{"description":"Requested resource requires authorization.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"BlockchainForbidden":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Requested resource is not available with supplied credentials."}},"schemas":{"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"},"TxTrackerTransactions":{"type":"array","items":{"$ref":"#/components/schemas/TxTrackerTransaction"}},"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"},"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"},"TxTrackerMempoolApproximateQueuePosition":{"description":"<b>BTC asset only.</b><br/> Approximate position of the transaction in the mempool.<br/> Miners choose mempool transactions to be included in the next block by scanning mempool and sort pending transactions by feerate in descending order.<br/> The value starts with 0. A lower number means higher feerate.","type":"string"},"TxTrackerNextBlockApproxSettlementProbabilityPercentage":{"description":"<b>BTC asset only.</b><br/> Approximate probability of including the mempool transaction to the next mined block.<br/> Miners choose mempool transactions to be included in the next block by scanning mempool and sort pending transactions by feerate in descending order.<br/> The value starts is a percentage between 0 and 100. A higher number means a higher probability.","type":"string","format":"decimal"},"BlockchainBlockHash":{"description":"Hash of the block.","type":"string"},"BlockchainBlockHeight":{"description":"Height of the block.","type":"string","format":"int64"},"TxTrackerNConfirmations":{"description":"The number of blocks between the transaction's block and the latest block in the blockchain plus one.<br/> If the transaction is included in the last block, the value is 1.","type":"string","format":"int64"},"TxTrackerTxStatusUpdates":{"description":"A list of status updates for the transaction.","type":"array","items":{"$ref":"#/components/schemas/TxTrackerTxStatusUpdate"}},"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"]},"TxTrackerRemovalReason":{"description":"<b>BTC asset only.</b><br/> 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"},"TxTrackerReplacementTxid":{"description":"<b>BTC asset only.</b><br/> Identifier (txid) of the transaction.","type":"string"},"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"]},"BlockchainTransactionVersion":{"description":"Version of the transaction.","type":"string"},"TxTrackerTxAmount":{"description":"The total amount of the transaction.","type":"string","format":"decimal"},"TxTrackerReplaceByFeeSupported":{"description":"This field is set to true only if the transaction supports the replace-by-fee (RBF) feature.","type":"boolean"},"BlockchainTransactionFee":{"description":"Fee of the transaction.","type":"string","format":"decimal"},"BlockchainTransactionFeerate":{"description":"Feerate of the transaction.","type":"string","format":"decimal"},"BlockchainMempoolFeerate":{"description":"Aggregate function result over the feerate values of all the mempool transactions.","type":"string","format":"decimal"},"BlockchainTransactionConsensusSize":{"description":"Consensus size of the transaction.","type":"string","format":"decimal"},"BlockchainTransactionPhysicalSize":{"description":"Physical size of the transaction, bytes.","type":"string","format":"decimal"},"BlockchainNodeLocationSeenTimes":{"description":"<b>BTC asset only.</b>","type":"array","items":{"$ref":"#/components/schemas/BlockchainNodeLocationSeenTime"}},"BlockchainNodeLocationSeenTime":{"description":"Transaction tracker response.","properties":{"location":{"$ref":"#/components/schemas/NodeLocation"},"seen_time":{"$ref":"#/components/schemas/Time"}},"required":["location","seen_time"],"type":"object"},"NodeLocation":{"description":"A physical location of the blockchain node that have captured the transaction entering the mempool.","type":"string"},"TxTrackerTxOutputs":{"description":"<b>BTC asset only.</b><br/> A list of tx outputs associated with the transaction.","type":"array","items":{"$ref":"#/components/schemas/TxTrackerTxOutput"}},"TxTrackerTxOutput":{"properties":{"address":{"$ref":"#/components/schemas/TxTrackerTxAddress"}},"required":["address"]},"TxTrackerTxAddress":{"description":"Identifier of the address associated with the transaction.","type":"string"},"NextPageToken":{"description":"Token of the next page results for a given request.","type":"string"},"NextPageUrl":{"description":"URL of the next page results for a given request.","type":"string"},"ErrorResponse":{"properties":{"error":{"$ref":"#/components/schemas/ErrorObject"}},"required":["error"],"type":"object"},"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"}}},"paths":{"/blockchain/{asset}/transaction-tracker":{"get":{"summary":"Transaction tracker","description":"Returns status updates for the specified or all transactions.<br/> This endpoint can be helpful to track transaction settlement.<br/> 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"}],"responses":{"200":{"$ref":"#/components/responses/TxTracker"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/BlockchainForbidden"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://gitbook-docs.coinmetrics.io/cm-api-spec/atlas/chain-monitor-tools/transaction-tracker.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
