MENU navbar-image

₿ Crypto

The Crypto API offers essential endpoints for retrieving information on coins, obtaining quotes, accessing modules, fetching profiles, and viewing holders' data. These endpoints provide crucial data points and insights into the cryptocurrency market, supporting various analytical and informational needs for developers and traders alike.

GET /v1/crypto/profile

requires authentication

Get profile for a specific crypto currency

Example request:
import requests
import json

url = 'https://api.steadyapi.com/v1/crypto/profile'
params = {
  'key': 'bitcoin',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()
$client = new \GuzzleHttp\Client();
$url = 'https://api.steadyapi.com/v1/crypto/profile';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
        ],
        'query' => [
            'key' => 'bitcoin',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://api.steadyapi.com/v1/crypto/profile"
);

const params = {
    "key": "bitcoin",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
curl --request GET \
    --get "https://api.steadyapi.com/v1/crypto/profile?key=bitcoin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Example response (200, Success):


{
    "meta": {
        "version": "v1.0",
        "status": 200,
        "copywrite": "https://steadyapi.com",
        "key": "Bitcoin"
    },
    "body": {
        "key": "bitcoin",
        "name": "Bitcoin",
        "symbol": "BTC",
        "category": "coin",
        "description": "## What Is Bitcoin (BTC)?\n\n[Bitcoin](https://coinmarketcap.com/alexandria/article/an-intro-to-bitcoin) is a decentralized [cryptocurrency](https://coinmarketcap.com/alexandria/article/what-are-cryptocurrencies) originally described in a 2008 [whitepaper](https://coinmarketcap.com/alexandria/glossary/whitepaper) by a person, or group of people, using the alias [Satoshi Nakamoto](https://coinmarketcap.com/alexandria/article/who-is-satoshi-nakamoto). It was launched soon after, in January 2009.\n\n[Bitcoin](https://coinmarketcap.com/alexandria/article/what-is-bitcoin) is a peer-to-peer online currency, meaning that all [transactions](https://coinmarketcap.com/alexandria/article/how-long-does-a-bitcoin-transaction-take) happen directly between equal, independent network participants, without the need for any intermediary to permit or facilitate them. Bitcoin was created, according to Nakamoto’s own words, to allow “online payments to be sent directly from one party to another without going through a financial institution...",
        "dateAdded": "2010-07-13T00:00:00.000Z",
        "status": "active",
        "urls": {
            "website": [
                "https://bitcoin.org/"
            ],
            "technical_doc": [
                "https://bitcoin.org/bitcoin.pdf"
            ],
            "explorer": [
                "https://blockchain.info/",
                "https://live.blockcypher.com/btc/",
                "https://blockchair.com/bitcoin",
                "https://explorer.viabtc.com/btc",
                "https://www.oklink.com/btc"
            ],
            "source_code": [
                "https://github.com/bitcoin/bitcoin"
            ],
            "message_board": [
                "https://coinmarketcap.com/community/profile/Bitcoin_CMC",
                "https://coinmarketcap.com/community/search/top/bitcoin",
                "https://bitcointalk.org"
            ],
            "chat": [],
            "announcement": [],
            "reddit": [
                "https://reddit.com/r/bitcoin"
            ],
            "facebook": [],
            "twitter": []
        }
    }
}
 

Example response (401, Unauthenticated):


{
    "message": "Unauthenticated."
}
 

Example response (403, Unauthorized):


{
    "message": "This action is unauthorized."
}
 

Example response (404, Not Found):


{
    "success": false,
    "message": "Resource Not Found"
}
 

Example response (422, Error Validations):


{
    "message": "The ticker field is required.",
    "errors": {
        "ticker": [
            "The ticker field is required."
        ]
    }
}
 

Request      

GET v1/crypto/profile

Headers

Authorization Bearer {YOUR_AUTH_KEY}

Query Parameters

Parameter Type Description
key required string

Provide the crypto ID. Example: bitcoin

GET /v1/crypto/holders

requires authentication

Get the number of holders for a specific crypto currency

Example request:
import requests
import json

url = 'https://api.steadyapi.com/v1/crypto/holders'
params = {
  'key': 'bitcoin',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()
$client = new \GuzzleHttp\Client();
$url = 'https://api.steadyapi.com/v1/crypto/holders';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
        ],
        'query' => [
            'key' => 'bitcoin',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://api.steadyapi.com/v1/crypto/holders"
);

const params = {
    "key": "bitcoin",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
curl --request GET \
    --get "https://api.steadyapi.com/v1/crypto/holders?key=bitcoin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Example response (200, Success):


{
  "meta": {
    "version": "v1.0",
    "status": 200,
    "copywrite": "https://steadyapi.com",
    "key": "Bitcoin",
    "holderCount": 48834937,
    "dailyActive": 963625,
    "total": 100
  },
  "data": [
    {
      "address": "34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo",
      "balance": 248597.3905837,
      "share": 1.18
    },
    { ... }
  ]
}
 

Example response (401, Unauthenticated):


{
    "message": "Unauthenticated."
}
 

Example response (403, Unauthorized):


{
    "message": "This action is unauthorized."
}
 

Example response (404, Not Found):


{
    "success": false,
    "message": "Resource Not Found"
}
 

Example response (422, Error Validations):


{
    "message": "The ticker field is required.",
    "errors": {
        "ticker": [
            "The ticker field is required."
        ]
    }
}
 

Request      

GET v1/crypto/holders

Headers

Authorization Bearer {YOUR_AUTH_KEY}

Query Parameters

Parameter Type Description
key required string

Provide the crypto ID. Example: bitcoin

GET /v1/crypto/quotes

requires authentication

Get quotes for a specific crypto currency

Example request:
import requests
import json

url = 'https://api.steadyapi.com/v1/crypto/quotes'
params = {
  'key': 'bitcoin',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()
$client = new \GuzzleHttp\Client();
$url = 'https://api.steadyapi.com/v1/crypto/quotes';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
        ],
        'query' => [
            'key' => 'bitcoin',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://api.steadyapi.com/v1/crypto/quotes"
);

const params = {
    "key": "bitcoin",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
curl --request GET \
    --get "https://api.steadyapi.com/v1/crypto/quotes?key=bitcoin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Example response (200, Success):


{
    "meta": {
        "version": "v1.0",
        "status": 200,
        "copywrite": "https://steadyapi.com",
        "key": "Bitcoin",
        "total": 48
    },
    "data": {
        "price": 27777.48286131564,
        "priceChangePercentage1h": -2.15185151,
        "priceChangePercentage24h": -4.02576734,
        "priceChangePercentage7d": -5.49823801,
        "priceChangePercentage30d": -7.16085892,
        "priceChangePercentage60d": 4.37805208,
        "priceChangePercentage90d": 3.1949905,
        "priceChangePercentageAll": 449231.6256237841,
        "marketCap": 540557260846.61,
        "marketCapChangePercentage24h": -4.0204,
        "fullyDilutedMarketCap": 583327140087.63,
        "fullyDilutedMarketCapChangePercentage24h": -4.03,
        "circulatingSupply": 19460268,
        "totalSupply": 19460268,
        "maxSupply": 21000000,
        "marketCapDominance": 48.8796,
        "rank": 1,
        "roi": 44923077.09278923,
        "low24h": 27718.146260229056,
        "high24h": 29192.260813211757,
        "low7d": 27718.146260229056,
        "high7d": 29660.25433927243,
        "low30d": 27718.146260229056,
        "high30d": 30330.64039201111,
        "low90d": 24797.167848615383,
        "high90d": 31814.51481206781,
        "low52w": 15599.047175382899,
        "high52w": 31814.51481206781,
        "lowAllTime": 0.04864654,
        "highAllTime": 68789.62593892214,
        "lowAllTimeChangePercentage": 57100534.21,
        "highAllTimeChangePercentage": -59.62,
        "lowAllTimeTimestamp": "2010-07-14T19:24:00.000Z",
        "highAllTimeTimestamp": "2021-11-10T14:17:02.000Z",
        "lowYesterday": 28701.77952453054,
        "highYesterday": 29221.97574297547,
        "openYesterday": 29169.074019916276,
        "closeYesterday": 28701.77952453054,
        "priceChangePercentageYesterday": -1.6,
        "volumeYesterday": 14949271904.13,
        "turnover": 0.03826141,
        "ytdPriceChangePercentage": 67.0818,
        "volumeRank": 2,
        "volumeMcRank": 2235,
        "mcTotalNum": 9598,
        "volumeTotalNum": 9598,
        "volumeMcTotalNum": 9598,
        "status": "",
        "volume": 20682484655.138218,
        "volumeChangePercentage24h": 48.7042
    }
}
 

Example response (401, Unauthenticated):


{
    "message": "Unauthenticated."
}
 

Example response (403, Unauthorized):


{
    "message": "This action is unauthorized."
}
 

Example response (404, Not Found):


{
    "success": false,
    "message": "Resource Not Found"
}
 

Example response (422, Error Validations):


{
    "message": "The ticker field is required.",
    "errors": {
        "ticker": [
            "The ticker field is required."
        ]
    }
}
 

Request      

GET v1/crypto/quotes

Headers

Authorization Bearer {YOUR_AUTH_KEY}

Query Parameters

Parameter Type Description
key required string

Provide the crypto ID. Example: bitcoin

GET /v1/crypto/coins

requires authentication

Get a list of all crypto currencies

Example request:
import requests
import json

url = 'https://api.steadyapi.com/v1/crypto/coins'
params = {
  'page': '1',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()
$client = new \GuzzleHttp\Client();
$url = 'https://api.steadyapi.com/v1/crypto/coins';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
        ],
        'query' => [
            'page' => '1',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://api.steadyapi.com/v1/crypto/coins"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
curl --request GET \
    --get "https://api.steadyapi.com/v1/crypto/coins?page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Example response (200, Success):


{
  "meta": {
    "version": "v1.0",
    "status": 200,
    "copywrite": "https://steadyapi.com",
    "page": "1",
    "total": "10458"
  },
  "body": [
    {
      "id": 1,
      "name": "Bitcoin",
      "symbol": "BTC",
      "slug": "bitcoin",
      "cmcRank": 1,
      "marketPairCount": 12000,
      "circulatingSupply": 19842075,
      "selfReportedCirculatingSupply": 0,
      "totalSupply": 19842075,
      "maxSupply": 21000000,
      "ath": 109114.884834088,
      "atl": 0.04864654,
      "high24h": 88542.3946728374,
      "low24h": 86359.4926625361,
      "isActive": 1,
      "lastUpdated": "2025-03-26T04:40:00.000Z",
      "dateAdded": "2010-07-13T00:00:00.000Z",
      "quotes": [
        {
          "name": "BTC",
          "price": 1,
          "volume24h": 331733.807450252,
          "volume7d": 2522819.47458302,
          "volume30d": 10317236.9067138,
          "marketCap": 19842075,
          "selfReportedMarketCap": 0,
          "percentChange1h": 0,
          "percentChange24h": 0,
          "percentChange7d": 0,
          "lastUpdated": "2025-03-26T04:40:00.000Z",
          "percentChange30d": 0,
          "percentChange60d": 0,
          "percentChange90d": 0,
          "fullyDilluttedMarketCap": 1835504320348.81,
          "marketCapByTotalSupply": 19842075,
          "dominance": 60.6059,
          "turnover": 0.01671871,
          "ytdPriceChangePercentage": -7.4294,
          "percentChange1y": 23.80301685
        },
        {
          "name": "ETH",
          "price": 42.498197559466,
          "volume24h": 14098088.8861746,
          "volume7d": 107215280.437697,
          "volume30d": 438463972.329336,
          "marketCap": 843252423.339741,
          "selfReportedMarketCap": 0,
          "percentChange1h": -0.147407,
          "percentChange24h": 0.497907,
          "percentChange7d": -0.994794,
          "lastUpdated": "2025-03-26T04:40:00.000Z",
          "percentChange30d": 20.575073,
          "percentChange60d": 34.083485,
          "percentChange90d": 48.530835,
          "fullyDilluttedMarketCap": 1835504320348.81,
          "marketCapByTotalSupply": 843252423.339741,
          "dominance": 60.6059,
          "turnover": 0.01671871,
          "ytdPriceChangePercentage": -7.4294,
          "percentChange1y": 23.80301685
        },
        {
          "name": "USD",
          "price": 87404.9676356577,
          "volume24h": 28995182703.8427,
          "volume7d": 220506954526.536,
          "volume30d": 901777757920.731,
          "marketCap": 1734295923199.29,
          "selfReportedMarketCap": 0,
          "percentChange1h": 0.30272694,
          "percentChange24h": 1.03877854,
          "percentChange7d": 5.36278451,
          "lastUpdated": "2025-03-26T04:40:00.000Z",
          "percentChange30d": -8.15481455,
          "percentChange60d": -16.57444939,
          "percentChange90d": -11.19494517,
          "fullyDilluttedMarketCap": 1835504320348.81,
          "marketCapByTotalSupply": 1734295923199.29,
          "dominance": 60.6059,
          "turnover": 0.01671871,
          "ytdPriceChangePercentage": -7.4294,
          "percentChange1y": 23.80301685
        }
      ],
      "isAudited": false,
      "auditInfoList": [],
      "badges": [1]
    },
    { ... }
  ]
  }
 

Example response (401, Unauthenticated):


{
    "message": "Unauthenticated."
}
 

Example response (403, Unauthorized):


{
    "message": "This action is unauthorized."
}
 

Example response (404, Not Found):


{
    "success": false,
    "message": "Resource Not Found"
}
 

Example response (422, Error Validations):


{
    "message": "The ticker field is required.",
    "errors": {
        "ticker": [
            "The ticker field is required."
        ]
    }
}
 

Request      

GET v1/crypto/coins

Headers

Authorization Bearer {YOUR_AUTH_KEY}

Query Parameters

Parameter Type Description
page required string

Provide page number. Example: 1

GET /v1/crypto/modules

requires authentication

Get global metrics, crypto top gainers/losers, trends, new coins, etc...

Example request:
import requests
import json

url = 'https://api.steadyapi.com/v1/crypto/modules'
params = {
  'module': 'trending',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()
$client = new \GuzzleHttp\Client();
$url = 'https://api.steadyapi.com/v1/crypto/modules';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
        ],
        'query' => [
            'module' => 'trending',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://api.steadyapi.com/v1/crypto/modules"
);

const params = {
    "module": "trending",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
curl --request GET \
    --get "https://api.steadyapi.com/v1/crypto/modules?module=trending" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}"

Example response (200, Success):


{
  "meta": {
    "version": "v1.0",
    "status": 200,
    "copywrite": "https://steadyapi.com",
    "total": 10,
    "module": "trendingList"
  },
  "body": [
    {
      "id": 24781,
      "dataType": 2,
      "name": "CyberConnect",
      "symbol": "CYBER",
      "rank": 378,
      "status": "active",
      "marketCap": 43825691.01,
      "selfReportedMarketCap": 0,
      "priceChange": {
        "price": 3.9704376710966343,
        "priceChange24h": -5.25190314,
        "priceChange7d": 120.13555185,
        "priceChange30d": 120.13555185,
        "volume24h": 39253295.67980275,
        "lastUpdate": "2023-08-17T17:31:00.000Z"
      }
    },
    { ... }
  ]
}
 

Example response (401, Unauthenticated):


{
    "message": "Unauthenticated."
}
 

Example response (403, Unauthorized):


{
    "message": "This action is unauthorized."
}
 

Example response (404, Not Found):


{
    "success": false,
    "message": "Resource Not Found"
}
 

Example response (422, Error Validations):


{
    "message": "The ticker field is required.",
    "errors": {
        "ticker": [
            "The ticker field is required."
        ]
    }
}
 

Request      

GET v1/crypto/modules

Headers

Authorization Bearer {YOUR_AUTH_KEY}

Query Parameters

Parameter Type Description
module required string

Provide a module.

  • global_matric: Global Metric data.
  • trending: Top Trending cryptocurrencies.
  • most_visited: Most visited cryptocurrencies sites.
  • new_coins: Newly launched cryptocurrencies.
  • gainer: Top cryptocurrency gainers.
  • loser: Top cryptocurrency losers. Example: trending