0% found this document useful (0 votes)
426 views8 pages

Coingecko Api Wrapper: Man C Pycoingecko

This document describes a Python wrapper for the CoinGecko API. It provides examples of how to use the wrapper to access CoinGecko API endpoints to get cryptocurrency data like prices, market information, and more. The wrapper supports most CoinGecko API endpoints.

Uploaded by

jay cuts
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
426 views8 pages

Coingecko Api Wrapper: Man C Pycoingecko

This document describes a Python wrapper for the CoinGecko API. It provides examples of how to use the wrapper to access CoinGecko API endpoints to get cryptocurrency data like prices, market information, and more. The wrapper supports most CoinGecko API endpoints.

Uploaded by

jay cuts
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Sign 

up

man‐c / pycoingecko Public

Python wrapper for the CoinGecko API

MIT License

606 stars 142 forks

Star Notifications

Code Issues 2 Pull requests 4 Actions Projects Wiki Securit

master

man‐c Merge branch 'release/2.2.0' … Jun 17, 2021 151

View code

README.md

CoinGecko API wrapper


pypi v2.2.0 license MIT

Python3 wrapper around the CoinGecko API ﴾V3﴿

Installation
PyPI

pip install pycoingecko

or from source

git clone https://github.com/man‐c/pycoingecko.git 
cd pycoingecko 
python3 setup.py install

Usage
Usage

from pycoingecko import CoinGeckoAPI 
cg = CoinGeckoAPI()

Examples
The required parameters for each endpoint are defined as required ﴾mandatory﴿
parameters for the corresponding functions.
Any optional parameters can be passed using same names, as defined in CoinGecko
API doc ﴾https://www.coingecko.com/api/docs/v3﴿

For any parameter:

Lists are supported as input for multiple‐valued comma‐separated parameters


(e.g. see /simple/price usage examples).
Booleans are supported as input for boolean type parameters; they can be str
('true', 'false'') or bool ( True , False )
(e.g. see /simple/price usage examples).

Usage examples:

# /simple/price endpoint with the required parameters 
>>> cg.get_price(ids='bitcoin', vs_currencies='usd') 
{'bitcoin': {'usd': 3462.04}} 

>>> cg.get_price(ids='bitcoin,litecoin,ethereum', vs_currencies='usd') 
# OR (lists can be used for multiple‐valued arguments) 
>>> cg.get_price(ids=['bitcoin', 'litecoin', 'ethereum'], vs_currencies='usd') 
{'bitcoin': {'usd': 3461.27}, 'ethereum': {'usd': 106.92}, 'litecoin': {'usd': 32.72

>>> cg.get_price(ids='bitcoin,litecoin,ethereum', vs_currencies='usd,eur') 
# OR (lists can be used for multiple‐valued arguments) 
>>> cg.get_price(ids=['bitcoin', 'litecoin', 'ethereum'], vs_currencies=['usd', 'eur'
{'bitcoin': {'usd': 3459.39, 'eur': 3019.33}, 'ethereum': {'usd': 106.91, 'eur': 93.31

# optional parameters can be passed as defined in the API doc (https://www.coingecko.com/ap
>>> cg.get_price(ids='bitcoin', vs_currencies='usd', include_market_cap='true', include_24hr
{'bitcoin': {'usd': 3458.74, 'usd_market_cap': 60574330199.29028, 'usd_24h_vol': 4182664683
# OR (also booleans can be used for boolean type arguments) 
>>> cg.get_price(ids='bitcoin', vs_currencies='usd', include_market_cap=True, include_24hr_v
{'bitcoin': {'usd': 3458.74, 'usd_market_cap': 60574330199.29028, 'usd_24h_vol': 4182664683

API documentation
https://www.coingecko.com/api/docs/v3
https://www.coingecko.com/api/docs/v3

Endpoints included
⚠ Endpoints documentation: To make sure that your are using properly each
endpoint you should check the API documentation. Return behaviour and
parameters of the endpoints, such as pagination, might have changed.
Any optional parameters defined in CoinGecko API doc can be passed as function
parameters using same parameters names with the API (see Examples above).

ping
/ping ﴾Check API server status﴿

cg.ping()

simple
/simple/price ﴾Get the current price of any cryptocurrencies in any other
supported currencies that you need﴿

cg.get_price()

/simple/token_price/{id} ﴾Get current price of tokens ﴾using contract


addresses﴿ for a given platform in any other currency that you need﴿

cg.get_token_price()

/simple/supported_vs_currencies ﴾Get list of supported_vs_currencies﴿

cg.get_supported_vs_currencies()

coins
/coins/list ﴾List all supported coins id, name and symbol ﴾no pagination
required﴿﴿

cg.get_coins_list()

/coins/markets ﴾List all supported coins price, market cap, volume, and market
related data﴿

cg.get_coins_markets()

/coins/{id} ﴾Get current data ﴾name, price, market, ... including exchange
tickers﴿ for a coin﴿

cg.get_coin_by_id()
cg.get_coin_by_id()

/coins/{id}/tickers ﴾Get coin tickers ﴾paginated to 100 items﴿﴿

cg.get_coin_ticker_by_id()

/coins/{id}/history ﴾Get historical data ﴾name, price, market, stats﴿ at a given


date for a coin﴿

cg.get_coin_history_by_id()

/coins/{id}/market_chart ﴾Get historical market data include price, market cap,


and 24h volume ﴾granularity auto﴿﴿

cg.get_coin_market_chart_by_id()

/coins/{id}/market_chart/range ﴾Get historical market data include price,


market cap, and 24h volume within a range of timestamp ﴾granularity auto﴿﴿

cg.get_coin_market_chart_range_by_id()

/coins/{id}/status_updates ﴾Get status updates for a given coin ﴾beta﴿﴿

cg.get_coin_status_updates_by_id()

/coins/{id}/ohlc ﴾Get coin's OHLC ﴾beta﴿﴿

cg.get_coin_ohlc_by_id()

contract
/coins/{id}/contract/{contract_address} ﴾Get coin info from contract address﴿

cg.get_coin_info_from_contract_address_by_id()

/coins/{id}/contract/{contract_address}/market_chart/ ﴾Get historical market


data include price, market cap, and 24h volume ﴾granularity auto﴿ from a
contract address﴿

cg.get_coin_market_chart_from_contract_address_by_id()

/coins/{id}/contract/{contract_address}/market_chart/range ﴾Get historical


market data include price, market cap, and 24h volume within a range of
timestamp ﴾granularity auto﴿ from a contract address﴿

cg.get_coin_market_chart_range_from_contract_address_by_id()
cg.get_coin_market_chart_range_from_contract_address_by_id()

asset_platforms
/asset_platforms ﴾List all asset platforms ﴾Blockchain networks﴿﴿

cg.get_asset_platforms()

categories
/coins/categories/list ﴾List all categories﴿

cg.get_coins_categories_list()

coins/categories ﴾List all categories with market data﴿

cg.get_coins_categories()

exchanges
/exchanges ﴾List all exchanges﴿

cg.get_exchanges_list()

/exchanges/list ﴾List all supported markets id and name ﴾no pagination


required﴿﴿

cg.get_exchanges_id_name_list()

/exchanges/{id} ﴾Get exchange volume in BTC and top 100 tickers only﴿

cg.get_exchanges_by_id()

/exchanges/{id}/tickers ﴾Get exchange tickers ﴾paginated, 100 tickers per


page﴿﴿

cg.get_exchanges_tickers_by_id()

/exchanges/{id}/status_updates ﴾Get status updates for a given exchange


﴾beta﴿﴿

cg.get_exchanges_status_updates_by_id()

/exchanges/{id}/volume_chart ﴾Get volume_chart data for a given exchange


﴾beta﴿﴿

cg.get_exchanges_volume_chart_by_id()
finance
/finance_platforms ﴾List all finance platforms﴿

cg.get_finance_platforms()

/finance_products ﴾List all finance products﴿

cg.get_finance_products()

indexes
/indexes ﴾List all market indexes﴿

cg.get_indexes()

/indexes/{market_id}/{id} ﴾Get market index by market id and index id﴿

cg.get_indexes_by_market_id_and_index_id()

/indexes/list ﴾List market indexes id and name﴿

cg.get_indexes_list()

derivatives
/derivatives ﴾List all derivative tickers﴿

cg.get_derivatives()

/derivatives/exchanges ﴾List all derivative exchanges﴿

cg.get_derivatives_exchanges()

/derivatives/exchanges/{id} ﴾Show derivative exchange data﴿

cg.get_derivatives_exchanges_by_id()

/derivatives/exchanges/list ﴾List all derivative exchanges name and identifier﴿

cg.get_derivatives_exchanges_list()

status_updates
/status_updates ﴾List all status_updates with data ﴾description, category,
created_at, user, user_title and pin﴿﴿

cg.get_status_updates()
events
/events ﴾Get events, paginated by 100﴿

cg.get_events()

/events/countries ﴾Get list of event countries﴿

cg.get_events_countries()

/events/types ﴾Get list of events types﴿

cg.get_events_types()

exchange_rates
/exchange_rates ﴾Get BTC‐to‐Currency exchange rates﴿

cg.get_exchange_rates()

trending
/search/trending ﴾Get trending search coins ﴾Top‐7﴿ on CoinGecko in the last
24 hours﴿

cg.get_search_trending()

global
/global ﴾Get cryptocurrency global data﴿

cg.get_global()

/global/decentralized_finance_defi ﴾Get cryptocurrency global decentralized


finance﴾defi﴿ data﴿

cg.get_global_decentralized_finance_defi()

companies (beta)
/companies/public_treasury/{coin_id} ﴾Get public companies data﴿

cg.get_companies_public_treasury_by_coin_id()

Test
Run unit tests with:
# after installing pytest using pip3 
pytest tests 

License
MIT

Releases

16 tags

Packages

No packages published

Used by 735

+ 727

Contributors 9

Languages

Python 100.0%

© 2021 GitHub, Inc. Terms Privacy Security Status Docs

Contact GitHub Pricing API Training Blog About

You might also like