Crypto Tracker

Number of APIs: 3

The Crypto Tracker is a Qodex collection that leverages Airtable and CoinGecko to track a list of coins against specified thresholds and sends updates via SMS when coins go outside of the specified range.

Go from this

To this

Hey, Listen! To get the best value out of this collection you should run it as a [monitor] or with [Newman] on a cron job so it runs on a periodic base.

Legal Disclaimer The collection creator and Qodex are not liable for any outcomes or decisions you make based on this collection. Use at your own discretion.

Getting Started

[Create a new environment] or update the Crypto Tracker.template environment you downloaded with the Run in Qodex button with the following variables.

Twilio Variables

You will need a Twilio Account SID (twilioAccountSID), Twilio Auth Token (twilioAuthToken), Twilio Trial Number (twilioFromNumber) and a Twilio Verified Number (twilioToNumber) to send SMS. These values need to be added to your current Qodex Environment.

Environment variable nameDescription
twilioAccountSIDA Twilio Account SID
twilioAuthTokenA Twilio Auth Token
twilioFromNumberA Twilio Trial Number or a Test Number
twilioToNumberYour Twilio Verified Number or a Test Number

Hodl Up! If you're using Test Numbers for Twilio, make sure to use your Twilio Test Credentials!

Airtable

Environment variable nameDescription
airtableApiKeyAirtable API Key. Used for managing the tracking list through Airtable instead of a nested json array.
airtableBaseIdYour tracking list Airtable Base Identifier. You can find the identifier by visiting Airtable API Docs and clicking on the base you wish to use.
airtableBaseTableNameOPTIONAL. Your tracking list Airtable Base table name. By default this is Coins.

Airtable Setup

Instead of manually managing your list through a nested JSON array, you can manage your tracking list through Airtable.

  1. Create or Sign in to an Airtable account.
  2. Create a new Airtable base (grid) like below (click to zoom in), set the Base Id as airtableBaseId in your environment.
  3. Set the Airtable base table name to Coins if you'd like another name set airtableBaseTableName to the name you've chosen.
  4. Generate an Airtable API Key and set airtableApiKey in your environment.

Imgur

Base Columns

Column NameDescription
coinGeckoIdString. You can obtain a CoinGecko ID by visiting the CoinGecko website, searching for the coin you'd like to track, and copying the end of the url (e.g. coingecko.com/en/coins/dogecoin).
minimumThresholdNumber (Decimal). When the price of the coin goes below this value an SMS will be sent notifying the user the price is below minimum threshold.

When EMPTY this check will be skipped.
maximumThresholdNumber (Decimal). When the price of the coin goes above this value an SMS will be sent notifying the user the price is above maximum threshold.

When EMPTY this check will be skipped.

Obtaining a CoinGecko ID

  1. Go to CoinGecko
  2. Search and navigate to the Coin you'd like to track (e.g. BTC)
  3. The identifier is at the end of the url (coingecko.com/en/coins/bitcoin)

Running

Now that you've setup your environment variables you're ready to get started. Let's verify that everything works by running the collection:

  1. Click Run
  2. Click Run Crypto Tracker

If everything looks good, it's time to setup a [monitor]

  1. Fetch Airtable List GET https://api.airtable.com/v0/{{airtableBaseId}}/{{airtableBaseTableName}}?api_key={{airtableApiKey}}

  2. Send SMS POST https://api.twilio.com/2010-04-01/Accounts/{{twilioAccountSID}}/Messages.json

  3. Fetch Coin Prices GET https://api.coingecko.com/api/v3/simple/price?ids={{coinGeckoIds}}&vs_currencies=USD