Hourly or daily
Keep Airtable prices up to date
The prices and values in your table update on their own every hour.
- Runs
- Hourly or daily
- Apps
- Airtable
- AI
- Not needed
- Access
- data.records:read, data.records:write
Send this to your assistant
Create a ClickRuntime automation: every hour, get the current USD price from CoinGecko for each coin in my Airtable Portfolio table and update the Price and Value columns.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Plenty of Airtable bases are built around numbers that change somewhere else: crypto prices, weather by city, sports scores, exchange rates, public statistics. The usual way to keep them current is to copy and paste on a regular basis, or to pay for a sync that offers only a handful of sources. Pasting stops the day a person is busy, and then the table is out of date while views, formulas and dashboards continue to display the old values as if they were fresh.
On the schedule you pick, hourly or daily, the automation reads the records in your table, calls the public API for each key (a ticker, a city or a team), and updates the fields in batches of 10, the number Airtable allows per request. It can also email a short summary of what changed.
It suits hobbyists, analysts and small businesses that track outside data next to their own.
What you get out of it
Data is current without manual work
The values update on schedule, so formulas, charts and interface pages built on the table always show recent numbers, not whatever was pasted last week. Nobody has to remember to update the table before a meeting, and dashboards stay honest.
Any public API can feed the table
You are not limited to the sources a native sync supports. If an API returns the data, the automation can read it and place it in a field. A weather, sports or financial API that is not covered by native sync is still within reach.
Your own data and public data sit side by side
A portfolio table with live prices, or a travel table with the forecast, lets you combine outside numbers with your own notes and calculations in one place. That makes the table more useful than either data set on its own.
Updates are batched safely
Writing ten records per request keeps within Airtable's limits, so a table with hundreds of rows refreshes reliably instead of failing partway. A larger table simply takes more requests, not more effort from you, and the process stays reliable.
A summary email shows what moved
If you choose it, a short email lists the biggest changes, so you can check your table without opening it and spot unusual jumps. It is a quick way to notice big moves without opening the base at all.
How it works
What happens, step by step
Every hour (or once a day if you prefer), the automation reads the rows in your Airtable table.
For each row it looks up the latest price or value from a public data source, such as a crypto price.
It updates the price and value fields in Airtable.
If you want, it also emails you a short summary of what changed.
Before it runs live
- Connect Airtable
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Airtable steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http
BASE_ID = "appXXXXXXXXXXXXXX"
@on_trigger
def run(event):
api = f"https://api.airtable.com/v0/{BASE_ID}/Portfolio"
headers = {"Authorization": f"Bearer {credentials.connection('airtable', 'work')}"}
records = http.get(api, headers=headers).json()["records"]
ids = sorted({r["fields"]["Coin ID"] for r in records if r["fields"].get("Coin ID")})
prices = http.get("https://api.coingecko.com/api/v3/simple/price",
params={"ids": ",".join(ids), "vs_currencies": "usd"}).json()
updates = []
for r in records:
price = prices.get(r["fields"].get("Coin ID"), {}).get("usd")
if price is not None:
qty = float(r["fields"].get("Quantity") or 0)
updates.append({"id": r["id"], "fields": {"Price": price, "Value": round(price * qty, 2)}})
for i in range(0, len(updates), 10):
http.patch(api, headers=headers, json={"records": updates[i:i + 10]}).raise_for_status()
return {"updated": len(updates)}FAQ
Common questions
Do I need an API key for the data source?
How often can it refresh?
What if the API is down for a run?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Clean up and check Airtable fields
Image links become attachments and records with bad email addresses are flagged, every hour.
See how it worksSend a daily team reminder and log it in Airtable
Your team gets the same reminder in Slack each day, and every one sent is logged in Airtable.
See how it worksGet a daily email of new Airtable records
Each evening you see everything added to your table that day in one email.
See how it worksKeep exploring
Set up “Keep Airtable prices up to date” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.