Setting API Keys
The Keys Module
API (Application Programming Interface) keys are access credentials for obtaining data from a particular source. They are a string of random characters assigned, by the data provider, to an individual account. Most vendors offer a free tier requiring only a valid email address, some will require an account with proper KYC (Know Your Customer). Each source is entered into the SDK with the openbb.keys
module, using the syntax described in the sections below. Wrapping the command with help()
will print the docstrings to the screen. For example:
help(openbb.keys.reddit)
Which prints:
Set Reddit key
Parameters
----------
client_id: str
Client ID
client_secret: str
Client secret
password: str
User password
username: str
User username
useragent: str
User useragent
persist: bool, optional
If False, api key change will be contained to where it was changed. For example, a Jupyter notebook session.
If True, api key change will be global, i.e. it will affect terminal environment variables.
By default, False.
show_output: bool, optional
Returns
-------
str
Status of key set
Examples
--------
>>> from openbb_terminal.sdk import openbb
>>> openbb.keys.reddit(
client_id="example_id",
client_secret="example_secret",
password="example_password",
username="example_username",
useragent="example_useragent"
)
A message similar to the one below will be printed when a function requesting data from an API is called but the key has not yet been entered.
openbb.stocks.quote("AAPL")
API_KEY_FINANCIALMODELINGPREP not defined. Set API Keys in ~/.openbb_terminal/.env or under keys menu.
The menu also provides a method for testing the validity of a key upon entry. It can be easy to copy & paste the string with a missing character; so, if the test fails, check that the values were correctly recorded with the command:
openbb.keys.mykeys(show = True)
We recommend gradually obtaining keys, when the use of a specific function requires it.
Instructions by Source
This section covers all API keys listed above and include detailed instructions how to obtain each API key. By clicking on each name, the section will expand and instructions are provided. Include, persist = True
in the syntax to permanently store the key on the machine.
AlphaVantage
Alpha Vantage provides enterprise-grade financial market data through a set of powerful and developer-friendly data APIs and spreadsheets. From traditional asset classes (e.g., stocks, ETFs, mutual funds) to economic indicators, from foreign exchange rates to commodities, from fundamental data to technical indicators, Alpha Vantage is your one-stop-shop for real-time and historical global market data delivered through cloud-based APIs, Excel, and Google Sheets.
Instructions
Go to: https://www.alphavantage.co/support/#api-key
Fill out the form, pass Captcha, and click on, "GET FREE API KEY". The issued key can be entered into the OpenBB SDK with:
openbb.keys.av(key = 'REPLACE_WITH_KEY', persist = True)
Binance
Binance cryptocurrency exchange - We operate the worlds biggest bitcoin exchange and altcoin crypto exchange in the world by volume
Instructions
Go to: https://www.binance.com/en/support/faq/how-to-create-api-360002502072
These instructions should provide clear guidance for obtaining an API Key. Enter the issued credentials into the OpenBB SDK with:
openbb.keys.binance(
key = 'REPLACE_WITH_KEY',
secret = 'REPLACE_WITH_SECRET',
persist = True
)
Bitquery
Bitquery is an API-first product company dedicated to power and solve blockchain data problems using the ground truth of on-chain data.
Instructions
Go to: https://bitquery.io/<
Click "Try GraphQL API", which opens the following screen:
After creating an account and verifying the email address, get the value for the key by clicking on the "API Key" tab.
Enter this API key into the OpenBB SDK with:
openbb.keys.bitquery(key = 'REPLACE_WITH_KEY', persist = True)
BizToc
BizToc is the one-stop business and finance news hub, encapsulating the top 200 US news providers in real time.
Instructions
The BizToc API is hosted on RapidAPI. To set up, go to: https://rapidapi.com/thma/api/biztoc.
In the top right, select "Sign Up". After answering some questions, you will be prompted to select one of their plans.
After signing up, navigate back to https://rapidapi.com/thma/api/biztoc. If you are logged in, you will see a header called X-RapidAPI-Key.
Copy the key to the clipboard, and enter this key into the OpenBB Terminal with:
openbb.keys.biztoc(key = "REPLACE_WITH_KEY", persist=True)
CoinMarketCap
CoinMarketCap is the world's most-referenced price-tracking website for cryptoassets in the rapidly growing cryptocurrency space. Its mission is to make crypto discoverable and efficient globally by empowering retail users with unbiased, high quality and accurate information for drawing their own informed conclusions.
Instructions
Go to: https://coinmarketcap.com/api
Click on, "Get Your Free API Key Now", which opens to the page:
Once the account has been created, copy the API key displayed within the dashboard.
Enter the API key into the OpenBB SDK with:
openbb.keys.cmc(key = 'REPLACE_WITH_KEY', persist = True)
Coinbase
Coinbase is a secure online platform for buying, selling, transferring, and storing cryptocurrency.
Instructions
Go to: https://help.coinbase.com/en/exchange/managing-my-account/how-to-create-an-api-key
Follow the instructions to obtain the credentials for the specific account. Enter the three values into the OpenBB SDK with:
openbb.keys.coinbase(
key = 'REPLACE_WITH_KEY',
secret = 'REPLACE_WITH_SECRET',
passphrase = 'REPLACE_WITH_PASSPHRASE',
persist = True
)
Coinglass
Coinglass is a cryptocurrency futures trading & information platform,where you can find the Bitcoin Liquidations ,Bitcoin open interest, Grayscale Bitcoin Trust,Bitcoin longs vs shorts ratio and actively compare funding rates for crypto futures.Above all the quantities are shown as per their respective contract value.
Instructions
Go to: https://www.coinglass.com/
Click, "Log in", and then sign up for an account. This opens the page:
With the account created, find the assigned API key within the account profile page. Enter this value into the OpenBB SDK with:
openbb.keys.coinglass(key = 'REPLACE_WITH_KEY', persist = True)
Companies House
The Companies House API lets you retrieve information about limited companies (and other companies that fall within the Companies Act 2006). The data returned is live and real-time, and is simple to use and understand.
Instructions
Setup an account by following the instructions here.
After creating the account and logging in, click on, Create an Application. Fill out the form and then click the Create
button at the bottom of the page.
Once the application is created, an API key can be generated by clicking on View all Applications
, and then the Create new key
button at the bottom. Copy the API key value to the clipboard and then enter it into the OpenBB SDK with:
openbb.keys.companieshouse('REPLACE_WITH_KEY', persist = True)
Crypto Panic
CryptoPanic is a news aggregator platform indicating impact on price and market for traders and cryptocurrency enthusiasts.
Instructions
Go to: https://cryptopanic.com/developers/api/
Click on, "Sign up", and after creating, the API Key will be displayed on the documentation page, "Your free API auth token".
Enter that value in the OpenBB SDK with:
openbb.keys.cpanic(key = 'REPLACE_WITH_KEY', persist = True)
Databento
Databento eliminates tens of thousands of dollars in upfront expenses per dataset without sacrificing data integrity. We give you the flexibility to pick up real-time full exchange feeds and terabytes of historical data, whenever you need it.
Instructions
Go to: https://docs.databento.com/getting-started
Click on, Sign up, and after creating an account, the API key is found in the account portal.
Enter this into the terminal with:
openbb.keys.databento(key = 'REPLACE_WITH_KEY')
Degiro
DEGIRO is Europe's fastest growing online stock broker. DEGIRO distinguishes itself from its competitors by offering extremely low trading commissions.
Instructions
Go to: https://www.degiro.com/
Click on, "Open an account", and then go through the registration process. After setting up the account, the login credentials can be entered in the OpenBB SDK with:
openbb.keys.degiro(
username = 'USERNAME',
password = 'PASSWORD',
persist = True
)
Instructions for setting up 2FA authorization are here.
EODHD
Historical End of Day, Intraday, and Live prices API, with Fundamental Financial data API for more than 120000 stocks, ETFs and funds all over the world.
Instructions
Go to: https://eodhistoricaldata.com/r/?ref=869U7F4J
Clicking on, "Registration", opens the page:
Once registered, the API Key will be next to "API TOKEN".
Enter this string into the OpenBB SDK with:
openbb.keys.eodhd(key = 'REPLACE_WITH_KEY', persist = True)
Finnhub
With the sole mission of democratizing financial data, we are proud to offer a FREE realtime API for stocks, forex and cryptocurrency.
Instructions
Go to: https://finnhub.io/
Click on, "Get free api key", to open the page:
Once the account has been created, find the API key in the account dashboard.
Add this key to the OpenBB SDK with:
openbb.keys.finnhub(key = 'REPLACE_WITH_KEY', persist = True)
Financial Modeling Prep
Enhance your application with our data that goes up to 30 years back in history. Earnings calendar, financial statements, multiple exchanges and more!
Instructions
Go to: https://site.financialmodelingprep.com/developer/docs
Click on, "Get my API KEY here", and sign up for a free account.
With an account created, sign in and navigate to the Dashboard, which shows the assigned token. by pressing the "Dashboard" button which will show the API key.
Enter the key into the OpenBB SDK with:
openbb.keys.fmp(key = 'REPLACE_WITH_KEY', persist = True)
FRED
FRED is the trusted source for economic data since 1991. Download, graph, and track 819,000 US and international time series from 110 sources.
Instructions
Go to: https://fred.stlouisfed.org
Click on, "My Account", create a new account or sign in with Google:
After completing the sign-up, go to "My Account", and select "API Keys". Then, click on, "Request API Key".
Fill in the box for information about the use-case for FRED, and by clicking, "Request API key", at the bottom of the page, the API key will be issued.
Enter the API key into the OpenBB SDK with:
openbb.keys.fred(key = 'REPLACE_WITH_KEY', persist = True)
GitHub
GitHub is where over 100 million developers shape the future of software.
Instructions
Sign up for, or sign in to, GitHub. Once logged in, navigate to the apps page, under account settings.
Select, "New GitHub App":
After creating the app, the key will be issued. Enter this token into the OpenBB SDK with:
openbb.keys.github(key = 'REPLACE_WITH_KEY', persist = True)
Glassnode
Glassnode makes blockchain data accessible for everyone. We source and carefully dissect on-chain data, to deliver contextualized and actionable insights.
Instructions
Go to: https://studio.glassnode.com
Click on, "Sign up", and create an account:
After creating an account, navigate to the account settings and generate an API Key.
Enter this key in the OpenBB SDK with:
openbb.keys.glassnode(key = 'REPLACE_WITH_KEY', persist = True)
Intrinio
Intrinio is more than a financial data API provider – we're a real time data partner. That means we're your guide to every step of the financial data.
Instructions
Go to: https://intrinio.com/starter-plan
An API key will be issued with a subscription. Find the token value within the account dashboard, and enter it into the OpenBB SDK with:
openbb.keys.intrinio(key = 'REPLACE_WITH_KEY', persist = True)
Messari
Gain an edge over the crypto market with professional grade data, tools, and research.
Instructions
Go to: https://messari.io
Click on, "Sign up", and create an account.
After creating the account, navigate to the account page, and click on the tab for, API Access.
Copy the API key and add it to the OpenBB SDK with:
openbb.keys.messari(key = 'REPLACE_WITH_KEY', persist = True)
News API
News API is a simple, easy-to-use REST API that returns JSON search results for current and historic news articles published by over 80,000 worldwide sources.
Instructions
Go to: https://newsapi.org
Click on, "Get API Key", and fill out the form.
Register for an account and the next screen will provide the API Key.
Add this API key into the OpenBB SDK with:
openbb.keys.news(key = 'REPLACE_WITH_KEY', persist = True)
Oanda
OANDA's Currency Converter allows you to check the latest foreign exchange average bid/ask rates and convert all major world currencies.
Instructions
Go to: https://developer.oanda.com
After creating an account, follow the steps below.
Upon completion of the account setup, enter the credentials into the OpenBB SDK with:
openbb.keys.oanda(
account = 'REPLACE_WITH_ACCOUNT',
access_token = 'REPLACE_WITH_TOKEN',
account_type = 'REPLACE_WITH_LIVE_OR_PRACTICE',
persist = True
)
Polygon
Live & historical data for US stocks for all 19 exchanges. Instant access to real-time and historical stock market data.
Instructions
Go to: https://polygon.io
Click on, "Get your Free API Key".
After signing up, the API Key is found at the bottom of the account dashboard page.
Enter the key into the OpenBB SDK with:
openbb.keys.polygon(key = 'REPLACE_WITH_KEY', persist = True)
Quandl
The premier source for financial, economic, and alternative datasets, serving investment professionals. Quandl’s platform is used by over 400,000 people, including analysts from the world’s top hedge funds, asset managers and investment banks.
Instructions
Click on, "Sign Up", and register a new account.
Follow the sign-up instructions, and upon completion the API key will be assigned.
Enter the key into the OpenBB SDK with:
openbb.keys.quandl(key = 'REPLACE_WITH_KEY', persist = True)
Reddit
Reddit is a network of communities where people can dive into their interests, hobbies and passions.
Instructions
Sign in to Reddit, and then go to: https://old.reddit.com/prefs/apps/
Scroll down and click on "create application", selecting "script".
Once the application is created, you must register it here
Click on, "Read the full API terms and sign up for usage", and fill out the form.
After submitting the form, check for a confirmation email. The credentials will be displayed here, add them to the OpenBB SDK with:
openbb.keys.reddit(
client_id = 'REPLACE_WITH_CLIENT_ID',
client_secret = 'REPLACE_WITH_CLIENT_SECRET',
username = 'REPLACE_WITH_REDDIT_USERNAME',
password = 'REPLACE_WITH_REDDIT_PASSWORD',
useragent = 'REPLACE_WITH_USER_AGENT',
persist = True
)
Robinhood
Robinhood has commission-free investing, and tools to help shape your financial future.
Instructions
Go to: https://robinhood.com/us/en
After registering for an account, it can be added to the OpenBB SDK with:
openbb.keys.rb(
username = 'REPLACE_WITH_USERNAME',
password = 'REPLACE_WITH_PASSWORD',
persist = True
The first login will request 2FA authorization from the device connected to the account.
Santiment
We provide tools to help you analyze crypto markets and find data-driven opportunities to optimize your investing.
Instructions
Go to: https://app.santiment.net
Click on, "Sign up", and register for an account.
Navigate to the account dashboard and generate a key.
Add it to the OpenBB SDK with:
openbb.keys.santiment(key = 'REPLACE_WITH_KEY', persist = True)
Stocksera
Empowering investors to take advantage of alternative data. We track trending tickers on social media and provide alternative data for easy due-diligence & analysis.
Instructions
Go to: https://stocksera.pythonanywhere.com
Click on, "Log in", and create an account.
Once logged in, navigate to the "Developers" tab and copy the API key.
Add the key to the OpenBB SDK with:
openbb.keys.stocksera(key = 'REPLACE_WITH_KEY', persist = True)
Token Terminal
Token Terminal is a platform that aggregates financial data on the leading blockchains and decentralized applications.
Instructions
Go to: https://tokenterminal.com
Click on, "Log in" and sign up for an account.
Verify the email address, and then navigate go to the "API" tab and copy the API key to the clipboard.
Add the key to the OpenBB SDK with:
openbb.keys.tokenterminal(key = 'REPLACE_WITH_KEY', persist = True)
Tradier
Tradier, the home of active traders. Our open collaboration platform allows investors to truly customize their trading experience like never before.
Instructions
Go to: https://documentation.tradier.com
Click on, "Open Account", to start the sign-up process. After the account has been setup, navigate to Tradier Broker Dash and create the application. Request a sandbox access token, and enter this key into the OpenBB SDK with:
openbb.keys.tradier(key = 'REPLACE_WITH_KEY', persist = True)
Twitter
From breaking news and entertainment to sports and politics, get the full story with all the live commentary.
Upcoming changes to the Twitter API will deprecate the current functionality, it is uncertain if the features will continue to work.
Whale Alert
Whale Alert continuously collects and analyzes billions of blockchain transactions and related-off chain data from hundreds of reliable sources and converts it into an easy to use standardized format. Our world-class analytics and custom high speed database solutions process transactions the moment they are made, resulting in the largest and most up-to-date blockchain dataset in the world.
Instructions
Go to: https://docs.whale-alert.io
Click on, "sign up here".
After creating the account, click on, "Create", to issue the API Key.
Enter the key into the OpenBB SDK with:
openbb.keys.walert(key = 'REPLACE_WITH_KEY', persist = True)