Python, RapidAPI Terms

APIs and tooling like Jupyter docs allows many opportunities in fields like Data Science. As more and more developers use APIs, they build standards in how you setup a client, send requests and receive information...

Covid19 RapidAPI Example

To begin the API journey. You need to find an API provider.

  • RapidAPI is a great option. You must setup and account, but there are many free options.
  • Goto this page for starters, the Corona virus World and India data- Under Code Snippets pick Python - Requests

RapidAPI, you will select Python Requests type of code to work with you Notebook.

  • The url is the endpoint to which the API is directed
  • The headers is a dictionary data structure to send special messaging to the endpoint
  • The requests.request() python function is used to send a request and retrieve their responses
  • The response variable receives result of of the request in JSON text

Next step, is to format the response according to your data science needs

"""
Requests is a HTTP library for the Python programming language. 
The goal of the project is to make HTTP requests simpler and more human-friendly. 
"""
import requests

"""
RapidAPI is the world's largest API Marketplace. 
Developers use Rapid API to discover and connect to thousands of APIs. 
"""
url = "https://corona-virus-world-and-india-data.p.rapidapi.com/api"
headers = {
    'x-rapidapi-key': "2348020badmshecfd384514830c4p1f8a42jsn72e4bf449cdf",
    'x-rapidapi-host': "corona-virus-world-and-india-data.p.rapidapi.com"
}

# Request Covid Data
response = requests.request("GET", url, headers=headers)
# print(response.text)  # uncomment this line to see raw data

#print(response.json())

# This code looks for "world data"
print("World Totals")
world = response.json().get('world_total')  # turn response to json() so we can extract "world_total"
for key, value in world.items():  # this finds key, value pairs in country
    print(key, value)

print()

# This code looks for USA in "countries_stats"
print("Country Totals")
countries = response.json().get('countries_stat')
for country in countries:  # countries is a list
    if country["country_name"] == "USA":  # this filters for USA
        for key, value in country.items():  # this finds key, value pairs in country
            print(key, value)
World Totals
total_cases 509,268,964
new_cases 204,268
total_deaths 6,242,509
new_deaths 630
total_recovered 461,827,849
active_cases 41,198,606
serious_critical 42,510
total_cases_per_1m_population 65,334
deaths_per_1m_population 800.9
statistic_taken_at 2022-04-24 11:18:01

Country Totals
country_name USA
cases 82,649,779
deaths 1,018,316
region 
total_recovered 80,434,925
new_deaths 0
new_cases 0
serious_critical 1,465
active_cases 1,196,538
total_cases_per_1m_population 247,080
deaths_per_1m_population 3,044
total_tests 1,000,275,726
tests_per_1m_population 2,990,303

Digital Coin Example

This example provides digital coin feedback (ie Bitcoin). It include popularity, price, symbols, etc.

  • A valid X-RapidAPI-Key is required. Look in code for link to RapidAPI page
  • Read all comments in code for further guidance
# RapidAPI page https://rapidapi.com/Coinranking/api/coinranking1/

# Begin Rapid API Code
import requests

url = "https://coinranking1.p.rapidapi.com/coins"
querystring = {"referenceCurrencyUuid":"yhjMzLPhuIDl","timePeriod":"24h","tiers[0]":"1","orderBy":"marketCap","orderDirection":"desc","limit":"50","offset":"0"}
headers = {
	"X-RapidAPI-Key": "2348020badmshecfd384514830c4p1f8a42jsn72e4bf449cdf",  # place your key here
	"X-RapidAPI-Host": "coinranking1.p.rapidapi.com"
}

response = requests.request("GET", url, headers=headers, params=querystring)
#print(response.text),code that was here, and prints data but not organized
# End Rapid API Code
json = response.json()  # convert response to python json object

# Observe data from an API.  This is how data transports over the internet in a "JSON" text form
# - The JSON "text" is formed in dictionary {} and list [] divisions
# - To read the result, Data Scientist of  Developer converts JSON into human readable form
# - Review the first line, look for the keys --  "status" and "data"

for coin in json["data"]["coins"]:
	print(f'{coin["symbol"]} {coin["name"]} {coin["price"]}')
BTC Bitcoin 19419.67711324255
ETH Ethereum 1318.6297411970286
USDT Tether USD 1.0012975674518958
USDC USDC 1.0008107120193481
BNB Binance Coin 277.0979738825133
XRP XRP 0.529397162130495
BUSD Binance USD 1.0014370575842966
ADA Cardano 0.42225115759772713
SOL Solana 32.86829260269943
DOGE Dogecoin 0.0620012325844447
DOT Polkadot 6.421905646964746
MATIC Polygon 0.8290265381640683
SHIB Shiba Inu 0.000010994307348535
DAI Dai 1.000670295768317
TRX TRON 0.06438140765932114
WETH Wrapped Ether 1330.967720950153
UNI Uniswap 6.525765366285679
AVAX Avalanche 16.904093604199197
CAKE PancakeSwap 4.576970421079306
ATOM Cosmos 13.096635544218561
OKB OKB 15.578310197153083
LTC Litecoin 54.09975835566112
FTT FTX Token 24.068231654174653
ETC Ethereum Classic 26.872418089227757
XMR Monero 146.0775004610458
XLM Stellar 0.12810987259216425
ALGO Algorand 0.33535078889721903
BCH Bitcoin Cash 116.92592251136927
BTCB Bitcoin BEP2 19428.45147632531
CRO Cronos 0.10790373853575119
NEAR NEAR Protocol 3.503457928030442
LUNC Terra Classic 0.000303560723047854
WEMIX WEMIX TOKEN 1.7730660145371016
ENS EnergySwap 17.668967203842325
FLOW Flow 1.6910710620156106
FIL Filecoin 5.403765550477781
VET VeChain 0.023435434207509993
ICP Internet Computer (DFINITY) 5.7919587386166596
MANA Decentraland 0.6907935244540142
QNT Quant 151.14607992497983
IMX Immutable X 0.7281289704150214
HBAR Hedera 0.0597103567717317
FRAX Frax 1.0004444317626124
EGLD Elrond 55.99412371677655
XTZ Tezos 1.4210468292330083
CHZ Chiliz 0.2141637864623629
SAND The Sandbox 0.8318685656540588
LDO Lido DAO Token 1.4498334980108805
EOS EOS 1.1222649905240965
AAVE Aave 75.30168002761593

Formatting Digital Coin example

JSON text transferred from the API in the previous cell was converted to a Python Dictionary called json. The "coins" in the dictionary contain a list of the most relevant data. Look at the code and comments to see how the original text is turned into something understandable. Additionally, there are error check to make sure we are starting the code with the expectation that the API was run correctly.

"""
This cell is dependent on valid run of API above.
- try and except code is making sure "json" was properly run above
- inside second try is code that is used to process Coin API data

Note.  Run this cell repeatedly to format data without re-activating API
"""

try:
    print("JSON data is Python type: " + str(type(json)))
    try:
        # Extracting Coins JSON status, if the API worked
        status = json.get('status')
        print("API status: " + status)
        print()
        
        # Extracting Coins JSON data, data about the coins
        data = json.get('data')
        
        # Procedural abstraction of Print code for coins
        def print_coin(c):
            print(c["symbol"], c["price"])
            print("Icon Url: " + c["iconUrl"])
            print("Rank Url: " + c["coinrankingUrl"])

        # Coins data was observed to be a list
        for coin in data['coins']:
            print_coin(coin)
            print()
            
    except:
        print("Did you insert a valid key in X-RapidAPI-Key of API cell above?")
        print(json)
except:
    print("This cell is dependent on running API call in cell above!")
JSON data is Python type: <class 'dict'>
API status: success

BTC 19419.67711324255
Icon Url: https://cdn.coinranking.com/bOabBYkcX/bitcoin_btc.svg
Rank Url: https://coinranking.com/coin/Qwsogvtv82FCd+bitcoin-btc

ETH 1318.6297411970286
Icon Url: https://cdn.coinranking.com/rk4RKHOuW/eth.svg
Rank Url: https://coinranking.com/coin/razxDUgYGNAdQ+ethereum-eth

USDT 1.0012975674518958
Icon Url: https://cdn.coinranking.com/mgHqwlCLj/usdt.svg
Rank Url: https://coinranking.com/coin/HIVsRcGKkPFtW+tetherusd-usdt

USDC 1.0008107120193481
Icon Url: https://cdn.coinranking.com/jkDf8sQbY/usdc.svg
Rank Url: https://coinranking.com/coin/aKzUVe4Hh_CON+usdc-usdc

BNB 277.0979738825133
Icon Url: https://cdn.coinranking.com/B1N19L_dZ/bnb.svg
Rank Url: https://coinranking.com/coin/WcwrkfNI4FUAe+binancecoin-bnb

XRP 0.529397162130495
Icon Url: https://cdn.coinranking.com/B1oPuTyfX/xrp.svg
Rank Url: https://coinranking.com/coin/-l8Mn2pVlRs-p+xrp-xrp

BUSD 1.0014370575842966
Icon Url: https://cdn.coinranking.com/6SJHRfClq/busd.svg
Rank Url: https://coinranking.com/coin/vSo2fu9iE1s0Y+binanceusd-busd

ADA 0.42225115759772713
Icon Url: https://cdn.coinranking.com/ryY28nXhW/ada.svg
Rank Url: https://coinranking.com/coin/qzawljRxB5bYu+cardano-ada

SOL 32.86829260269943
Icon Url: https://cdn.coinranking.com/yvUG4Qex5/solana.svg
Rank Url: https://coinranking.com/coin/zNZHO_Sjf+solana-sol

DOGE 0.0620012325844447
Icon Url: https://cdn.coinranking.com/H1arXIuOZ/doge.svg
Rank Url: https://coinranking.com/coin/a91GCGd_u96cF+dogecoin-doge

DOT 6.421905646964746
Icon Url: https://cdn.coinranking.com/RsljYqnbu/polkadot.svg
Rank Url: https://coinranking.com/coin/25W7FG7om+polkadot-dot

MATIC 0.8290265381640683
Icon Url: https://cdn.coinranking.com/WulYRq14o/polygon.png
Rank Url: https://coinranking.com/coin/uW2tk-ILY0ii+polygon-matic

SHIB 0.000010994307348535
Icon Url: https://cdn.coinranking.com/D69LfI-tm/shib.png
Rank Url: https://coinranking.com/coin/xz24e0BjL+shibainu-shib

DAI 1.000670295768317
Icon Url: https://cdn.coinranking.com/mAZ_7LwOE/mutli-collateral-dai.svg
Rank Url: https://coinranking.com/coin/MoTuySvg7+dai-dai

TRX 0.06438140765932114
Icon Url: https://cdn.coinranking.com/behejNqQs/trx.svg
Rank Url: https://coinranking.com/coin/qUhEFk1I61atv+tron-trx

WETH 1330.967720950153
Icon Url: https://cdn.coinranking.com/KIviQyZlt/weth.svg
Rank Url: https://coinranking.com/coin/Mtfb0obXVh59u+wrappedether-weth

UNI 6.525765366285679
Icon Url: https://cdn.coinranking.com/1heSvUgtl/uniswap-v2.svg?size=48x48
Rank Url: https://coinranking.com/coin/_H5FVG9iW+uniswap-uni

AVAX 16.904093604199197
Icon Url: https://cdn.coinranking.com/S0C6Cw2-w/avax-avalanche.png
Rank Url: https://coinranking.com/coin/dvUj0CzDZ+avalanche-avax

CAKE 4.576970421079306
Icon Url: https://cdn.coinranking.com/aRtgdw7bQ/pancakeswap-cake-logo.png
Rank Url: https://coinranking.com/coin/ncYFcP709+pancakeswap-cake

ATOM 13.096635544218561
Icon Url: https://cdn.coinranking.com/HJzHboruM/atom.svg
Rank Url: https://coinranking.com/coin/Knsels4_Ol-Ny+cosmos-atom

OKB 15.578310197153083
Icon Url: https://cdn.coinranking.com/xcZdYtX6E/okx.png
Rank Url: https://coinranking.com/coin/PDKcptVnzJTmN+okb-okb

LTC 54.09975835566112
Icon Url: https://cdn.coinranking.com/BUvPxmc9o/ltcnew.svg
Rank Url: https://coinranking.com/coin/D7B1x_ks7WhV5+litecoin-ltc

FTT 24.068231654174653
Icon Url: https://cdn.coinranking.com/WyBm4_EzM/ftx-exchange.svg
Rank Url: https://coinranking.com/coin/NfeOYfNcl+ftxtoken-ftt

ETC 26.872418089227757
Icon Url: https://cdn.coinranking.com/rJfyor__W/etc.svg
Rank Url: https://coinranking.com/coin/hnfQfsYfeIGUQ+ethereumclassic-etc

XMR 146.0775004610458
Icon Url: https://cdn.coinranking.com/Syz-oSd_Z/xmr.svg
Rank Url: https://coinranking.com/coin/3mVx2FX_iJFp5+monero-xmr

XLM 0.12810987259216425
Icon Url: https://cdn.coinranking.com/78CxK1xsp/Stellar_symbol_black_RGB.svg
Rank Url: https://coinranking.com/coin/f3iaFeCKEmkaZ+stellar-xlm

ALGO 0.33535078889721903
Icon Url: https://cdn.coinranking.com/lzbmCkUGB/algo.svg
Rank Url: https://coinranking.com/coin/TpHE2IShQw-sJ+algorand-algo

BCH 116.92592251136927
Icon Url: https://cdn.coinranking.com/By8ziihX7/bch.svg
Rank Url: https://coinranking.com/coin/ZlZpzOJo43mIo+bitcoincash-bch

BTCB 19428.45147632531
Icon Url: https://cdn.coinranking.com/Swr_SeZio/4023.png
Rank Url: https://coinranking.com/coin/9_jH48RBW+bitcoinbep2-btcb

CRO 0.10790373853575119
Icon Url: https://cdn.coinranking.com/2o91jm73M/cro.svg
Rank Url: https://coinranking.com/coin/65PHZTpmE55b+cronos-cro

NEAR 3.503457928030442
Icon Url: https://cdn.coinranking.com/Cth83dCnl/near.png
Rank Url: https://coinranking.com/coin/DCrsaMv68+nearprotocol-near

LUNC 0.000303560723047854
Icon Url: https://cdn.coinranking.com/F-PJdF8Um/LUNA.svg
Rank Url: https://coinranking.com/coin/AaQUAs2Mc+terraclassic-lunc

WEMIX 1.7730660145371016
Icon Url: https://cdn.coinranking.com/1N84MQsoO/7548.png
Rank Url: https://coinranking.com/coin/08CsQa-Ov+wemixtoken-wemix

ENS 17.668967203842325
Icon Url: https://cdn.coinranking.com/fmYxEUV5a/cropped-logo37-Converted-01-192x192.png
Rank Url: https://coinranking.com/coin/SbWqqTui-+energyswap-ens

FLOW 1.6910710620156106
Icon Url: https://cdn.coinranking.com/xh8X8QBss/flow.png
Rank Url: https://coinranking.com/coin/QQ0NCmjVq+flow-flow

FIL 5.403765550477781
Icon Url: https://cdn.coinranking.com/vUmvv-IQA/FIL3-filecoin.svg?size=48x48
Rank Url: https://coinranking.com/coin/ymQub4fuB+filecoin-fil

VET 0.023435434207509993
Icon Url: https://cdn.coinranking.com/B1_TDu9Dm/VEN.svg
Rank Url: https://coinranking.com/coin/FEbS54wxo4oIl+vechain-vet

ICP 5.7919587386166596
Icon Url: https://cdn.coinranking.com/1uJ_RVrmC/dfinity-icp.png
Rank Url: https://coinranking.com/coin/aMNLwaUbY+internetcomputerdfinity-icp

MANA 0.6907935244540142
Icon Url: https://cdn.coinranking.com/ph_svUzXs/decentraland(1).svg
Rank Url: https://coinranking.com/coin/tEf7-dnwV3BXS+decentraland-mana

QNT 151.14607992497983
Icon Url: https://cdn.coinranking.com/a-i9Dl392/quant.png
Rank Url: https://coinranking.com/coin/bauj_21eYVwso+quant-qnt

IMX 0.7281289704150214
Icon Url: https://cdn.coinranking.com/naRGT2Y_X/10603.png
Rank Url: https://coinranking.com/coin/Z96jIvLU7+immutablex-imx

HBAR 0.0597103567717317
Icon Url: https://cdn.coinranking.com/dSCnSLilQ/hedera.svg
Rank Url: https://coinranking.com/coin/jad286TjB+hedera-hbar

FRAX 1.0004444317626124
Icon Url: https://cdn.coinranking.com/BpVNCX-NM/frax.png
Rank Url: https://coinranking.com/coin/KfWtaeV1W+frax-frax

EGLD 55.99412371677655
Icon Url: https://cdn.coinranking.com/X62ruAuZQ/Elrond.svg
Rank Url: https://coinranking.com/coin/omwkOTglq+elrond-egld

XTZ 1.4210468292330083
Icon Url: https://cdn.coinranking.com/HkLUdilQ7/xtz.svg
Rank Url: https://coinranking.com/coin/fsIbGOEJWbzxG+tezos-xtz

CHZ 0.2141637864623629
Icon Url: https://cdn.coinranking.com/gTsOlSnwR/4066.png
Rank Url: https://coinranking.com/coin/GSCt2y6YSgO26+chiliz-chz

SAND 0.8318685656540588
Icon Url: https://cdn.coinranking.com/kd_vwOcnI/sandbox.png
Rank Url: https://coinranking.com/coin/pxtKbG5rg+thesandbox-sand

LDO 1.4498334980108805
Icon Url: https://cdn.coinranking.com/Wp6LFY6ZZ/8000.png
Rank Url: https://coinranking.com/coin/Pe93bIOD2+lidodaotoken-ldo

EOS 1.1222649905240965
Icon Url: https://cdn.coinranking.com/PqOYrWSje/eos2.svg
Rank Url: https://coinranking.com/coin/iAzbfXiBBKkR6+eos-eos

AAVE 75.30168002761593
Icon Url: https://cdn.coinranking.com/4bpYKqV4X/AAVE.png
Rank Url: https://coinranking.com/coin/ixgUfzmLR+aave-aave

My API

I chose Holidays in the World API I chose to use Currency Exchange API found on RapidAPI

import requests

url = "https://public-holiday.p.rapidapi.com/2019/US"

headers = {
	"X-RapidAPI-Key": "2348020badmshecfd384514830c4p1f8a42jsn72e4bf449cdf",
	"X-RapidAPI-Host": "public-holiday.p.rapidapi.com"
}

response = requests.request("GET", url, headers=headers)

print(response.text)
[{"date":"2019-01-01","localName":"New Year's Day","name":"New Year's Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-01-21","localName":"Martin Luther King, Jr. Day","name":"Martin Luther King, Jr. Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-02-18","localName":"Presidents Day","name":"Washington's Birthday","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-04-19","localName":"Good Friday","name":"Good Friday","countryCode":"US","fixed":false,"global":false,"counties":["US-CT","US-DE","US-HI","US-IN","US-KY","US-LA","US-NC","US-ND","US-NJ","US-TN"],"launchYear":null,"type":"Public"},{"date":"2019-04-19","localName":"Good Friday","name":"Good Friday","countryCode":"US","fixed":false,"global":false,"counties":["US-TX"],"launchYear":null,"type":"Optional"},{"date":"2019-05-27","localName":"Memorial Day","name":"Memorial Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-07-04","localName":"Independence Day","name":"Independence Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-09-02","localName":"Labor Day","name":"Labour Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-10-14","localName":"Columbus Day","name":"Columbus Day","countryCode":"US","fixed":false,"global":false,"counties":["US-AL","US-AZ","US-CO","US-CT","US-DC","US-GA","US-ID","US-IL","US-IN","US-IA","US-KS","US-KY","US-LA","US-ME","US-MD","US-MA","US-MS","US-MO","US-MT","US-NE","US-NH","US-NJ","US-NM","US-NY","US-NC","US-OH","US-OK","US-PA","US-RI","US-SC","US-TN","US-UT","US-VA","US-WV"],"launchYear":null,"type":"Public"},{"date":"2019-11-11","localName":"Veterans Day","name":"Veterans Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"},{"date":"2019-11-28","localName":"Thanksgiving Day","name":"Thanksgiving Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":1863,"type":"Public"},{"date":"2019-12-25","localName":"Christmas Day","name":"Christmas Day","countryCode":"US","fixed":false,"global":true,"counties":null,"launchYear":null,"type":"Public"}]
import requests

url = "https://public-holiday.p.rapidapi.com/2019/US"

headers = {
	"X-RapidAPI-Key": "2348020badmshecfd384514830c4p1f8a42jsn72e4bf449cdf",
	"X-RapidAPI-Host": "public-holiday.p.rapidapi.com"
}

response = requests.request("GET", url, headers=headers)

#print(response.text)

#holidays = response.json().get('Public Holidays')
#for date in holidays: # Refer to list
    #if date["2019-01-01"] == "2019-01-01": # Supposed to not include this date
        #for key, value in date.items(): # Find specific date in API
            #print(key, value)

#ids = response.json().get('data')
#for id in ids:
    #if id["_id"] == "61d8eefe8d2a7580b2f9bebe":
        #for key, value in date.items():
            #print(key, value) 


#items = response.json().get('data')
#for date in items:  # the specific item in the list
    #if date["date"] == "2019-01-01":  # this filters 
        #for key, value in date.items():  # looks for the key and value and outputs it
            #print(key, value)

print("Holidays")
Holidays
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb Cell 12 in <cell line: 18>()
     <a href='vscode-notebook-cell://wsl%2Bubuntu/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb#X14sdnNjb2RlLXJlbW90ZQ%3D%3D?line=13'>14</a> print("Holidays")
     <a href='vscode-notebook-cell://wsl%2Bubuntu/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb#X14sdnNjb2RlLXJlbW90ZQ%3D%3D?line=16'>17</a> holidays = response.json().get('Public Holidays')
---> <a href='vscode-notebook-cell://wsl%2Bubuntu/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb#X14sdnNjb2RlLXJlbW90ZQ%3D%3D?line=17'>18</a> for date in holidays: # Refer to list
     <a href='vscode-notebook-cell://wsl%2Bubuntu/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb#X14sdnNjb2RlLXJlbW90ZQ%3D%3D?line=18'>19</a>     if date["2019-01-01"] == "2019-01-01": # Supposed to not include this date
     <a href='vscode-notebook-cell://wsl%2Bubuntu/home/edwin/vscode/fastpage1/_notebooks/2022-10-03-PBL-python_rapidapi.ipynb#X14sdnNjb2RlLXJlbW90ZQ%3D%3D?line=19'>20</a>         for key, value in date.items(): # Find specific date in API

TypeError: 'NoneType' object is not iterable
import requests

# https://rapidapi.com/fyhao/api/currency-exchange/
# The link for the API I used

url = "https://currency-exchange.p.rapidapi.com/listquotes"

headers = {
	"X-RapidAPI-Key": "2348020badmshecfd384514830c4p1f8a42jsn72e4bf449cdf",
	"X-RapidAPI-Host": "currency-exchange.p.rapidapi.com"
}

response = requests.request("GET", url, headers=headers)

print(response.text)
["SGD","MYR","EUR","USD","AUD","JPY","CNH","HKD","CAD","INR","DKK","GBP","RUB","NZD","MXN","IDR","TWD","THB","VND"]

Go deeper into APIs

Web Development vs Jupyter Notebook. A notebook is certainly a great place to start. But, for your end of Trimester project we want you to build the skill to reference and use APIs within your Project. Here are some resources to get you started with this journey.

Hacks

Find and use an API as part of your project. An API and a little coding logic will be a big step toward getting meaningful data for a project. There are many API providers, find one that might work for your project to complete this hack. When picking an API you are looking for something that will work with either JavaScript Fetch or Python Request.

  • RapidAPI- Google Developer I used an API from RapidAPI and this helped me and I used Currencies and it listed it Show API and format results in either Web Page or Jupyter Notebook. Ultimately, I will expect that we do APIs in backend (Python/Flask).