Skip to content

Every 15 minutes

Tag and score new Airtable records automatically

Each new record gets its category, sentiment or score filled in from its text, without anyone reading it first.

Runs
Every 15 minutes
Apps
Airtable
AI
Yes, uses the built-in AI allowance
Access
data.records:read, data.records:write, schema.bases:read

Send this to your assistant

Create a ClickRuntime automation: every 15 minutes, for new rows in my Airtable Reviews table, fill in Sentiment (positive, neutral or negative), Category and a one-line Summary from the review text.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Airtable bases are full of free text that someone has to interpret: customer feedback to tag by theme, support requests to classify by urgency, product descriptions to score for quality, applications to sort by fit. A person doing this by hand is slow and inconsistent, and the classifications tend to be filled in for the first fifty rows and then abandoned. The remaining records never get tagged, so the views and reports built on those tags are unreliable.

Every 15 minutes, the automation looks for records whose AI fields are empty, reads the prompt you wrote for each field (kept in the field description or in the configuration), runs it through ClickRuntime's built-in AI and writes the answer back to the record. Each field can have its own instruction, such as classify, tag, or score from 1 to 5.

It suits support teams, product managers, marketers and researchers who need labels on large volumes of text.

What you get out of it

  • Every record ends up classified

    Instead of tagging the first batch and giving up, every new record is labeled within 15 minutes of arriving. Reports and views built on those labels are complete rather than partial.

  • Consistent labels across the whole table

    The AI follows the same written instruction on every row, so two similar complaints get the same tag regardless of who is on shift or how busy the day is.

  • Each field gets its own instruction

    One field can tag sentiment while another scores urgency from 1 to 5. Because the prompts are separate, you can refine one without affecting the others. You can tighten one rule without risking the others.

  • Manual triage time is freed

    The team stops spending hours labeling and starts using the labels. Time moves from sorting feedback to acting on the themes that appear most often. Hours of repetitive tagging become a quick review of the output.

  • Prompts are visible and editable

    Keeping the instruction next to the field means anyone on the team can read how a label is decided, question it and suggest a change. That makes the AI easier to trust.

How it works

What happens, step by step

  1. Every 15 minutes, ClickRuntime looks for new Airtable records whose AI fields are still empty.

  2. For each field, it uses the instruction you wrote, such as "pick a category" or "rate the sentiment".

  3. AI reads the record's text and chooses the answer, for example Negative and Delivery for a late-order review.

  4. The answers are written into the record, so nobody has to read and tag it by hand.

Before it runs live

  • Connect Airtable

What you get

RunsEvery 15 minutes
Tag and score new Airtable records automaticallytoday, 9:00Succeeded
Airtable · ReviewsNegative · Delivery · "Order arrived a week late and the box was damaged."

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • 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

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • 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

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
fill_fields_with_ai_from_record_text.pyexample
from clickruntime import on_trigger, credentials, http, ai, report_fetched

BASE_ID = "appXXXXXXXXXXXXXX"
SCHEMA = {"type": "object", "properties": {
    "sentiment": {"enum": ["positive", "neutral", "negative"]},
    "category": {"enum": ["Product", "Delivery", "Price", "Support", "Other"]},
    "summary": {"type": "string"}}}

@on_trigger
def run(event):
    api = f"https://api.airtable.com/v0/{BASE_ID}/Reviews"
    headers = {"Authorization": f"Bearer {credentials.connection('airtable', 'work')}"}
    todo = http.get(api, headers=headers, params={
        "filterByFormula": "AND({Review}, {Sentiment} = '')", "maxRecords": 20}).json()["records"]
    report_fetched(len(todo))
    if not todo:
        return {"filled": 0}
    for rec in todo:
        out = ai.generate(rec["fields"]["Review"][:2000],
                          system="Classify this customer review and summarise it in one line.",
                          json_schema=SCHEMA, max_output_tokens=80).json
        http.patch(api, headers=headers, json={"typecast": True, "records": [{"id": rec["id"], "fields": {
            "Sentiment": out["sentiment"], "Category": out["category"], "Summary": out["summary"]}}]})
    return {"filled": len(todo)}

FAQ

Common questions

Where do I write the prompt for each field?
In the field's description in Airtable, or in the automation's configuration if you prefer. The automation reads it before it runs, so editing the description is enough to change how a field is filled. It is a normal Airtable text property, so anyone with edit access can adjust it.
Will it overwrite values that a person entered?
No. It only fills fields that are empty. If a person has set a value, the AI leaves it alone, which makes it safe to correct a label by hand and know it will stay.
Can the AI choose from a fixed list of options?
Yes. Give the allowed values in the prompt, such as Billing, Bug, Feature request and Other, and the AI answers with one of them. This keeps single-select fields clean. Listing the options also stops the AI from inventing new categories.
What permissions does it need?
data.records:read, data.records:write, schema.bases:read. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Tag and score new Airtable records automatically” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.