# Stablecoin Exchange Flows

This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time. We constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points. The update is done in periodic and automatic way: Tuesday 00:00 UTC every week. Supported exchanges can be found in the `/stablecoin/status/entity-list` endpoint. In addition to that, we support the following aggregated exchanges:

<br>

#### Supported Aggregated Exchanges

| Name                 | Exchange              | Supported Stablecoins |
| -------------------- | --------------------- | --------------------- |
| All Exchanges        | `all_exchange`        | All Tokens            |
| Spot Exchanges       | `spot_exchange`       | All Tokens            |
| Derivative Exchanges | `derivative_exchange` | All Tokens            |

<br>

> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.

<br>

## Reserve

> This endpoint returns the full historical on-chain balance of Stablecoin exchanges.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"responses_Reserve-2":{"description":"The amount of Stablecoin on a given exchange on this window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/schemas_ReserveResponse-2"}}}}},"schemas":{"schemas_ReserveResponse-2":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["reserve"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"reserve":{"type":"decimal","description":"The amount of Stablecoin on a given exchange."}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/reserve":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Reserve","description":"This endpoint returns the full historical on-chain balance of Stablecoin exchanges.","operationId":"StablecoinGetReserve","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/responses_Reserve-2"}}}}}}
```

## Netflow

> The difference between coins flowing into exchanges and flowing out of exchanges. Netflow usually helps us to figure out an increase of idle coins waiting to be traded in a certain time frame.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"Netflow":{"description":"netflow_total","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NetflowResponse"}}}}},"schemas":{"NetflowResponse":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["netflow_total"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"netflow_total":{"type":"decimal","description":"The difference between coins flowing into/out of exchanges."}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/netflow":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Netflow","description":"The difference between coins flowing into exchanges and flowing out of exchanges. Netflow usually helps us to figure out an increase of idle coins waiting to be traded in a certain time frame.","operationId":"StablecoinGetExchangeNetflow","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/Netflow"}}}}}}
```

## Inflow

> This endpoint returns the inflow of Stablecoin into exchange wallets for as far back as we track. The average inflow is the average transaction value for transactions flowing into exchange wallets on a given day.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"responses_Inflow-2":{"description":"inflow_total, inflow_top10, inflow_mean","content":{"application/json":{"schema":{"$ref":"#/components/schemas/schemas_InflowResponse-2"}}}}},"schemas":{"schemas_InflowResponse-2":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["inflow_total","inflow_top10","inflow_mean"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"inflow_total":{"type":"decimal","description":"The total amount of Stablecoin that transferred to the exchange."},"inflow_top10":{"type":"decimal","description":"The total Stablecoin amount of top 10 transactions (in terms of total tokens sent) flowing out of exchange wallets for every day that the exchange wallets we track have been live on the blockchain."},"inflow_mean":{"type":"decimal","description":"The mean of tokens per transaction sent an exchange."}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/inflow":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Inflow","description":"This endpoint returns the inflow of Stablecoin into exchange wallets for as far back as we track. The average inflow is the average transaction value for transactions flowing into exchange wallets on a given day.","operationId":"StablecoinGetInflow","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/responses_Inflow-2"}}}}}}
```

## Outflow

> This endpoint returns the outflow of Stablecoin into exchange wallets for as far back as we track. The average outflow is the average transaction value for transactions flowing into exchange wallets on a given day.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"responses_Outflow-2":{"description":"outflow_total, outflow_top10, outflow_mean","content":{"application/json":{"schema":{"$ref":"#/components/schemas/schemas_OutflowResponse-2"}}}}},"schemas":{"schemas_OutflowResponse-2":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["outflow_total","outflow_top10","outflow_mean"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"outflow_total":{"type":"decimal","description":"The total amount of Stablecoin that transferred from the exchange"},"outflow_top10":{"type":"decimal","description":"The total Stablecoin amount of top 10 transactions (in terms of total tokens sent) flowing out of exchange wallets for every day that the exchange wallets we track have been live on the blockchain."},"outflow_mean":{"type":"decimal","description":"The mean of tokens per transaction sent from an exchange."}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/outflow":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Outflow","description":"This endpoint returns the outflow of Stablecoin into exchange wallets for as far back as we track. The average outflow is the average transaction value for transactions flowing into exchange wallets on a given day.","operationId":"StablecoinGetOutflow","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/responses_Outflow-2"}}}}}}
```

## Transactions Count

> This endpoint returns the number of transactions flowing in/out of Stablecoin exchanges.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"TransactionsCountEF":{"description":"transactions_count_inflow, transactions_count_outflow","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransactionsCountEFResponse"}}}}},"schemas":{"TransactionsCountEFResponse":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["transactions_count_inflow","transactions_count_outflow"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"transactions_count_inflow":{"type":"decimal","description":"The number of transactions sent to the exchange ."},"transactions_count_outflow":{"type":"decimal","description":"The number of transactions sent from the exchange."}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/transactions-count":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Transactions Count","description":"This endpoint returns the number of transactions flowing in/out of Stablecoin exchanges.","operationId":"StablecoinGetTransactionsCountEF","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/TransactionsCountEF"}}}}}}
```

## Addresses Count

> This endpoint returns the number of addresses involved in inflow/outflow transactions.

```json
{"openapi":"3.0.0","info":{"title":"CryptoQuant Data API","version":"1.3.0"},"tags":[{"name":"Stablecoin Exchange Flows","description":"This endpoint returns the flows of Stablecoin tokens into exchange wallets for as far back as we track. Please note that the transfer generally occurs after a certain amount of time from the contract created time.\nWe constantly keep updating new exchange wallets, which means that there can be slight modification in values especially for recent data points.\nThe update is done in periodic and automatic way: Tuesday 00:00 UTC every week.\nSupported exchanges can be found in the `/stablecoin/status/entity-list` endpoint.\nIn addition to that, we support the following aggregated exchanges:\n\n<br>\n\n### Supported Aggregated Exchanges\n| Name       |   Exchange       | Supported Stablecoins |\n|----------------|----------------|-------------------------------|\n|   All Exchanges| `all_exchange` | All Tokens |\n| Spot Exchanges  | `spot_exchange`  | All Tokens   |\n| Derivative Exchanges  | `derivative_exchange`  | All Tokens   |\n\n<br>\n\n> **Note:** This endpoint does not support Point-In-Time (PIT) accuracy due to periodic updates to wallet address clustering. Historical data may change as new exchange wallets are discovered, added, and validated.\n\n<br>"}],"servers":[{"url":"https://api.cryptoquant.com/v1/","description":"Default server"}],"security":[{"Access Token":[]}],"components":{"securitySchemes":{"Access Token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"For each API request, include this HTTP header:\n`Authorization` with the `Bearer {access_token}`. Bearer access token is the type of HTTP Authorization.  You have to include access token to the HTTP header and note that leading bearer is required.\nYou must include your access token in HTTP header in every request you make. The token is unique, issued for each client, and regularly changed(once a year). To obtain an access token, please [upgrade your plan](https://cryptoquant.com/pricing) to Professional or Premium plan. You'll be able to see your access token on the [API tab](https://cryptoquant.com/settings/api) of your profile page after the subscription."}},"parameters":{"token_stablecoin":{"description":"A Stablcoin token from the table that we support. [See here](#tag/Supported-Stablecoin-List)","explode":false,"in":"query","name":"token","required":true,"schema":{"type":"string"},"style":"form"},"exchange_stablecoin":{"description":"An exchange from the table that we support. Please check the supported exchanges for each token from [here](#tag/Stablecoin-Exchange-Flows).","explode":false,"in":"query","name":"exchange","required":true,"schema":{"type":"string"},"style":"form"},"window_dbh":{"description":"Currently we support `day`, `hour`, and `block`.","explode":false,"in":"query","name":"window","schema":{"type":"string","default":"day"},"style":"form"},"from":{"description":"This defines the starting time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the earliest time.","explode":false,"in":"query","name":"from","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"to":{"description":"This defines the ending time for which data will be gathered, formatted as YYYYMMDDTHHMMSS (indicating YYYY-MM-DDTHH:MM:SS, UTC time). If window=day is used, it can also be formatted as YYYYMMDD (date). If window=block is used, you can also specify the exact block height (e.g. 510000). If this field is not specified, response will include data from the latest time.","explode":false,"in":"query","name":"to","required":false,"schema":{"YYYYMMDDTHHMMSS":{"type":"string"}},"style":"form"},"limit":{"description":"The maximum number of entries to return before the latest data point (or before `to` if specified). This field ranges from 1 to 100,000.","explode":false,"in":"query","name":"limit","required":false,"schema":{"type":"integer","default":100,"minimum":1,"maximum":100000},"style":"form"},"format":{"description":"A format type about return message type. Supported formats are json, csv.","explode":false,"in":"query","name":"format","required":false,"schema":{"type":"string","default":"json"},"style":"form"}},"responses":{"AddressesCountEF":{"description":"The number of addresses evoking inflow/outflow transactions to exchange wallets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressesCountEFResponse"}}}}},"schemas":{"AddressesCountEFResponse":{"type":"object","required":["status","result"],"properties":{"status":{"$ref":"#/components/schemas/Status"},"result":{"type":"object","required":["window","data"],"properties":{"window":{"$ref":"#/components/schemas/Window_DBH"},"data":{"type":"array","items":{"type":"object","required":["addresses_count_inflow","addresses_count_outflow"],"properties":{"blockheight":{"$ref":"#/components/schemas/Blockheight"},"date":{"$ref":"#/components/schemas/Date"},"datetime":{"$ref":"#/components/schemas/Datetime_H"},"addresses_count_inflow":{"type":"decimal","description":"The number of addresses evoking inflow transactions to exchange wallets"},"addresses_count_outflow":{"type":"decimal","description":"The number of addresses evoking outflow transactions from exchange wallets"}}}}}}}},"Status":{"type":"object","description":"The status object is return with most of requests and indicates if the request was successful. If it is not successful, error information is included.","properties":{"code":{"type":"integer","format":"int32","description":"HTTP status code"},"message":{"type":"string","description":"Text description of the error or success."}},"required":["code","message"]},"Window_DBH":{"type":"string","description":"The size of window. It can be day, hour, or block, and it depends on the user request."},"Blockheight":{"type":"string","description":"The height of the block. This optional field only appears when window=block is used."},"Date":{"type":"string","description":"The date in YYYY-DD-MM. This optional field only appears when window=day is used."},"Datetime_H":{"type":"string","description":"The date and time formatted as YYYY-MM-DD HH:MM:SS (UTC time). This field only appears when window=block or window=hour is used."}}},"paths":{"/stablecoin/exchange-flows/addresses-count":{"get":{"tags":["Stablecoin Exchange Flows"],"summary":"Addresses Count","description":"This endpoint returns the number of addresses involved in inflow/outflow transactions.","operationId":"StablecoinGetAddressesCountEF","parameters":[{"$ref":"#/components/parameters/token_stablecoin"},{"$ref":"#/components/parameters/exchange_stablecoin"},{"$ref":"#/components/parameters/window_dbh"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/format"}],"responses":{"200":{"$ref":"#/components/responses/AddressesCountEF"}}}}}}
```
