# Get Supported Crypto Currencies List

This endpoint allows you to retrieve a list of supported Curypto Currencies. This is useful in the following context:

* **Pay-In Requests**: When creating a Pay-In request, the currency used must be from the Supported Currencies List. For instance, if you’re selling an item priced at BTC 100, but your customer wishes to pay in USDT, or if the item is priced in USDT and the payment is made in USDT, both the `fromCurrency` and `toCurrency` fields must reflect valid cryptocurrencies from this list.
* **Pay-Out Requests**: Similarly, when processing a Pay-Out request, you can select the cryptocurrency being disbursed. This must also be a currency listed in the Supported Crypto Currencies List to ensure compliance and proper transaction execution.

**Endpoint**

<mark style="color:green;">**`GET`**</mark>`https://api.tylt.money/transactions/merchant/getSupportedCryptoCurrenciesList`

**Request Headers**

{% tabs %}
{% tab title="Headers" %}

<table data-full-width="true"><thead><tr><th width="133">Name</th><th width="79">Type</th><th width="167">Example</th><th>Description</th></tr></thead><tbody><tr><td>X-TLP-APIKEY</td><td>string</td><td>93ee3c5e133697251b5362bcf9cc8532476785t8768075616f58d88</td><td>Your Tylt API Key, used to identify your account in API requests.</td></tr><tr><td>X-TLP-SIGNATURE</td><td>string</td><td>d0afef3853dfc8489c8b9affa5825171fdd7y7685675e4966a05f66ed2b3eaf9462b3c9c0</td><td>HMAC SHA-256 signature generated using the API Secret Key to secure the request.</td></tr></tbody></table>
{% endtab %}
{% endtabs %}

{% hint style="info" %}
When using the API, ensure to include your API Key and generate the signature for the request payload using your API Secret. The tables provided above contain example values for illustration purposes only. Please refer to the code snippets for detailed instructions on how to sign the request and generate the signature properly.
{% endhint %}

**Code Snippet**

{% tabs %}
{% tab title="Node JS" %}

```javascript
const axios = require('axios');
const crypto = require('crypto');

// Replace with your API Key and Secret
const apiKey = 'your-api-key';
const apiSecret = 'your-api-secret';

// Create HMAC SHA-256 signature (no params for this request)
const signature = crypto
  .createHmac('sha256', apiSecret)
  .update('{}') // No parameters to sign
  .digest('hex');

// Define headers
const headers = {
  "X-TLP-APIKEY": apiKey,
  "X-TLP-SIGNATURE": signature
};

// Send the GET request
axios.get("https://api.tylt.money/transactions/merchant/getSupportedCryptoCurrenciesList", { headers })
  .then(response => console.log(response.data))
  .catch(error => console.error(error));

```

{% endtab %}

{% tab title="Python" %}

```python
import requests
import hmac
import hashlib

# Replace with your API Key and Secret
api_key = 'your-api-key'
api_secret = 'your-api-secret'

# Create HMAC SHA-256 signature (no params for this request)
signature = hmac.new(api_secret.encode(), b'{}', hashlib.sha256).hexdigest()

# Define headers
headers = {
    "X-TLP-APIKEY": api_key,
    "X-TLP-SIGNATURE": signature
}

# Send the GET request
response = requests.get("https://api.tylt.money/transactions/merchant/getSupportedCryptoCurrenciesList", headers=headers)

# Print the response
if response.status_code == 200:
    print("Response:", response.json())
else:
    print(f"Failed with status code {response.status_code}: {response.text}")

```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const crypto = require('crypto');
const fetch = require('node-fetch');

// Replace with your API Key and Secret
const apiKey = 'your-api-key';
const apiSecret = 'your-api-secret';

// Create HMAC SHA-256 signature (no params for this request)
const signature = crypto
  .createHmac('sha256', apiSecret)
  .update('{}') // No parameters to sign
  .digest('hex');

// Define headers
const myHeaders = {
  "X-TLP-APIKEY": apiKey,
  "X-TLP-SIGNATURE": signature
};

// Send the GET request
fetch("https://api.tylt.money/transactions/merchant/getSupportedCryptoCurrenciesList", { headers: myHeaders })
  .then(response => response.json())
  .then(result => console.log(result))
  .catch(error => console.error(error));

```

{% endtab %}
{% endtabs %}

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "data": [
        {
            "currencyName": "Dai",
            "currencySymbol": "DAI",
            "networks": [
                {
                    "standard": "BEP20",
                    "canDeposit": 1,
                    "canWithdraw": 1,
                    "networkFees": 0,
                    "networkName": "Binance Smart Chain",
                    "networkSymbol": "BSC",
                    "maximumDeposit": 100,
                    "minimumDeposit": 1,
                    "contractAddress": "0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3",
                    "maximumWithdrawal": 100,
                    "minimumWithdrawal": 0
                }
            ]
        },
        {
            "currencyName": "Tether",
            "currencySymbol": "USDT",
            "networks": [
                {
                    "standard": "BEP20",
                    "canDeposit": 1,
                    "canWithdraw": 1,
                    "networkFees": 0,
                    "networkName": "Binance Smart Chain",
                    "networkSymbol": "BSC",
                    "maximumDeposit": 100,
                    "minimumDeposit": 1,
                    "contractAddress": "0x55d398326f99059fF775485246999027B3197955",
                    "maximumWithdrawal": 100,
                    "minimumWithdrawal": 0
                },
                {
                    "standard": "ERC20",
                    "canDeposit": 1,
                    "canWithdraw": 1,
                    "networkFees": 0,
                    "networkName": "Ethereum",
                    "networkSymbol": "ETH",
                    "maximumDeposit": 100,
                    "minimumDeposit": 1,
                    "contractAddress": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
                    "maximumWithdrawal": 100,
                    "minimumWithdrawal": 0
                }
            ]
        }
    ],
    "errorCode": 0,
    "msg": ""
}
```

{% endtab %}

{% tab title="Response Fields" %}

<table data-header-hidden><thead><tr><th></th><th width="101"></th><th></th></tr></thead><tbody><tr><td><strong>Field Name</strong></td><td><strong>Type</strong></td><td><strong>Description</strong></td></tr><tr><td><code>currencyName</code></td><td>string</td><td>The name of the cryptocurrency (e.g., Dai, Tether).</td></tr><tr><td><code>currencySymbol</code></td><td>string</td><td>The symbol representing the cryptocurrency (e.g., DAI, USDT). <mark style="color:purple;">Use this as input in other API requests.</mark></td></tr><tr><td><code>networks</code></td><td>array</td><td>A list of networks where the cryptocurrency is supported.</td></tr><tr><td><code>networks[].standard</code></td><td>string</td><td>The token standard for the network (e.g., BEP20, ERC20).</td></tr><tr><td><code>networks[].canDeposit</code></td><td>number</td><td>Indicates if deposits are allowed on this network (1: Yes, 0: No).</td></tr><tr><td><code>networks[].canWithdraw</code></td><td>number</td><td>Indicates if withdrawals are allowed on this network (1: Yes, 0: No).</td></tr><tr><td><code>networks[].networkFees</code></td><td>number</td><td>The network fees for transactions on this network.</td></tr><tr><td><code>networks[].networkName</code></td><td>string</td><td>The name of the network (e.g., Binance Smart Chain, Ethereum).</td></tr><tr><td><code>networks[].networkSymbol</code></td><td>string</td><td>The symbol representing the network (e.g., BSC, ETH). <mark style="color:purple;">Use this as an input in other API requests.</mark></td></tr><tr><td><code>networks[].maximumDeposit</code></td><td>number</td><td>The maximum deposit amount allowed on this network.</td></tr><tr><td><code>networks[].minimumDeposit</code></td><td>number</td><td>The minimum deposit amount allowed on this network.</td></tr><tr><td><code>networks[].contractAddress</code></td><td>string</td><td>The contract address for the token on this network.</td></tr><tr><td><code>networks[].maximumWithdrawal</code></td><td>number</td><td>The maximum withdrawal amount allowed on this network.</td></tr><tr><td><code>networks[].minimumWithdrawal</code></td><td>number</td><td>The minimum withdrawal amount allowed on this network.</td></tr></tbody></table>
{% endtab %}
{% endtabs %}
