npabisz / coingecko-api
PHP API Client for CoinGecko.com
v1.0.0
2022-12-01 21:14 UTC
Requires
- php: >=7.2
- ext-json: *
- guzzlehttp/guzzle: ^7.4
Requires (Dev)
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2025-03-29 00:50:13 UTC
README
PHP API client for coingecko.com.
Requirements
- PHP >= 7.2
- ext-json
Installation
composer require npabisz/coingecko-api
Example
use CoinGecko\Client; // Basic usage $client = new Client(); // Modify underlying HTTP client config $client = new Client([], [ 'timeout' => 15, ]) // Use PRO api $client = new Client([ 'api_mode' => 'pro', 'api_key' => '************', ]); $response = $client->Ping->get();
Ping
// [/ping] $response = $client->Ping->get();
Simple
// [/simple/price] $response = $client->Simple->Price->get([ 'ids' => 'bitcoin', 'vs_currencies' => 'usd', ]); // [/simple/token_price/{id}] $response = $client->Simple->TokenPrice('ethereum')->get([ 'contract_addresses' => '0xdac17f958d2ee523a2206206994597c13d831ec7', 'vs_currencies' => 'usd', ]); // [/simple/supported_vs_currencies] $response = $client->Simple->SupportedVsCurrencies->get()
Coins
// [/coins/list] $response = $client->Coins->List->get(); // [/coins/markets] $response = $client->Coins->Markets->get([ 'vs_currency' => 'usd', ]); // [/coins/{id}] $response = $client->Coins('bitcoin')->get(); // [/coins/{id}/tickers] $response = $client->Coins('bitcoin')->Tickers->get(); // [/coins/{id}/history] $response = $client->Coins('bitcoin')->History->get([ 'date' => '30-11-2022' ]); // [/coins/{id}/market_chart] $response = $client->Coins('bitcoin')->MarketChart->get([ 'vs_currency' => 'usd', 'days' => 7, ]); // [/coins/{id}/market_chart/range] $response = $client->Coins('bitcoin')->MarketChart->Range->get([ 'vs_currency' => 'usd', 'from' => 1669676400, 'to' => 1669762800, ]); // [/coins/{id}/ohlc] $response = $client->Coins('bitcoin')->Ohlc->get([ 'vs_currency' => 'usd', 'days' => 7, ]);
Contract
// [/coins/{id}/contract/{contract_address}] $response = $client->Coins('ethereum')->Contract('0xdac17f958d2ee523a2206206994597c13d831ec7')->get(); // [/coins/{id}/contract/{contract_address}/market_chart] $response = $client->Coins('ethereum')->Contract('0xdac17f958d2ee523a2206206994597c13d831ec7')->MarketChart->get([ 'vs_currency' => 'usd', 'days' => 7, ]); // [/coins/{id}/contract/{contract_address}/market_chart/range] $response = $client->Coins('ethereum')->Contract('0xdac17f958d2ee523a2206206994597c13d831ec7')->MarketChart->Range->get([ 'vs_currency' => 'usd', 'from' => 1669676400, 'to' => 1669762800, ]);
AssetsPlatforms
// [/assets_platforms] $response = $client->AssetPlatforms->get();
Categories
// [/coins/categories] $response = $client->Coins->Categories->get(); // [/coins/categories/list] $response = $client->Coins->Categories->List->get();
Exchanges
// [/exchanges] $response = $client->Exchanges->get(); // [/exchanges/list] $response = $client->Exchanges->List->get(); // [/exchanges/{id}] $response = $client->Exchanges('binance')->get(); // [/exchanges/{id}/tickers] $response = $client->Exchanges('binance')->Tickers->get(); // [/exchanges/{id}/volume_chart] $response = $client->Exchanges('binance')->VolumeChart->get([ 'days' => 7, ]);
Indexes
// [/indexes] $response = $client->Indexes->get(); // [/indexes/{market_id}/{id}] $response = $client->Indexes($marketId, $id)->get(); // [/indexes/list] $response = $client->Indexes->List->get();
Derivatives
// [/derivatives] $response = $client->Derivatives->get(); // [/derivatives/exchanges] $response = $client->Derivatives->Exchanges->get(); // [/derivatives/exchanges/list] $response = $client->Derivatives->Exchanges()->List->get(); // [/derivatives/exchanges/{id}] $response = $client->Derivatives->Exchanges('binance_futures')->get();
NFTs
// [/nfts/list] $response = $client->Nfts->List->get(); // [/nfts/{id}] $response = $client->Nfts('8bit')->get(); // [/nfts/{asset_platform_id}/contract/{contract_address}] $response = $client->Nfts('ethereum')->Contract('0xaae71bbbaa359be0d81d5cbc9b1e88a8b7c58a94')->get();
ExchangeRates
// [/exchange_rates] $response = $client->ExchangeRates->get();
Search
// [/search] $response = $client->Search->get([ 'query' => 'bitcoin', ]);
Trending
// [/search/trending] $response = $client->Search->Trending->get();
Global
// [/global] $response = $client->Global->get(); // [/global/decentralized_finance_defi] $response = $client->Global->DecentralizedFinanceDefi->get();
Companies
// [/companies/public_treasury/{coin_id}] $response = $client->Companies->PublicTreasury('ethereum')->get();
API PRO Version
// [/nfts/markets] $response = $client->Nfts->Markets->get(); // [/nfts/{id}/market_chart] $response = $client->Nfts('8bit')->MarketChart->get(); // [/nfts/{id}/tickers] $response = $client->Nfts('8bit')->Tickers->get(); // [/global/market_cap_chart] $response = $client->Global->MarketCapChart->get();
License
npabisz/coingecko-api
is released under the MIT License. See the bundled LICENSE for details.