# Auto-screen new Airtable submissions before they go live

> Every new community post, review or job listing gets scored against your policy, labeled by topic, and only the risky ones ever reach your team.

- Workflow type: code
- Services: Mistral AI, Airtable, Slack Bot
- Categories: Operations, Customer Support
- Published: 2026-08-07

## What it does

- Watches your submissions table and picks up every new community post, review or public job listing as it arrives.
- Scores each submission against standard policy categories and assigns a topic label, so the queue is both risk-ranked and sorted by subject.
- Writes the verdict straight back onto the record: auto-approved or needs review, the category that scored highest, the score itself, and the topic.
- Alerts your moderation channel only when a submission crosses the line, with the submitter, an excerpt and a direct link to the record.

## What you'll need

- An Airtable base with a submissions table that holds the text of each entry and who submitted it.
- Four columns on that table to receive the results: moderation status, top policy category, score, and topic label.
- A Mistral AI account for the scoring and labeling steps.
- A Slack workspace and a channel where your moderation team wants to be alerted.

## Prompt

Watch my Airtable submissions table with a poll trigger on the new_record event. Every time a new row appears, run this workflow once for that record. The table holds user-submitted content: community posts, reviews and public job listings. Each row has the submission text, the submitter, and the fields I want written back.

For each new record, take the submission text and send it to Mistral AI Moderations to score it against Mistral's moderation policy categories. Read the full set of category scores off the response, then work out which category scored highest and what that score was.

Also send the same submission text to Mistral AI Classifications to assign a topic or category label to the submission. Use the highest-scoring label from that response as the topic.

Use a single configurable score threshold to decide the outcome, defined as a constant at the top of the workflow and defaulting to 0.5. If the highest policy category score is at or above the threshold, the moderation status is needs review. If it is below the threshold, the status is auto-approved. If the moderation call fails, returns no scores, or returns anything I cannot read a numeric score out of, set the status to needs review rather than auto-approved. Never auto-approve a submission that the moderation step could not actually score.

Then use Airtable Update Record to write four values back onto that same record: the moderation status (auto-approved or needs review), the name of the highest-scoring policy category, the numeric score for that category, and the topic label from the classification step. Update only those four fields and leave the rest of the record untouched.

Only when a submission comes back as needs review, post an alert with Slack Bot Send a Message to my moderation channel. The message should name the submitter, include a short excerpt of the submission text (roughly the first 200 characters, trimmed on a word boundary), state the policy category and score that tripped the threshold, and include a direct link to the Airtable record built from the base id, table id and record id. Clean submissions are never posted to Slack, so the channel only ever contains things a human actually has to look at.

Keep the score threshold, the Slack channel, the Airtable base and table ids, and the excerpt length easy to change at the top of the workflow. Keep the logic strict and simple: score the text, compare against one threshold, write back four known fields, and notify only on the flagged path.

## How to customize

- Move the single score threshold up or down to control how much gets auto-approved versus held for a human.
- Change which Slack channel receives alerts, or send different topic labels to different channels.
- Adjust how much of the submission appears in the alert excerpt, or add more fields from the record to the message.

## FAQ

### What happens if a submission cannot be scored?

It is marked needs review, never auto-approved. The workflow will not let something through just because the scoring step failed or returned nothing readable, so a person always gets the last word on anything uncertain.

### Will clean submissions clutter up my Slack channel?

No. Only submissions that cross your threshold are posted. The channel only ever contains items someone actually has to look at, which is what keeps the alerts worth reading.

### Can I control how strict it is?

Yes. One score threshold decides auto-approved versus needs review. Lower it to catch more borderline content and send more to human review, raise it to auto-approve more aggressively.

### Does this delete or publish content on its own?

No. It only labels records and alerts your team. Actually removing or publishing a submission stays a human decision, so you keep full control over anything sensitive or contested.

### How quickly does it pick up new submissions?

It checks your submissions table on a regular schedule and processes new rows as they appear, so screening happens within minutes instead of whenever someone remembers to open the base.

### What kinds of content does this work for?

Anything text-based that lands in an Airtable table, including community posts, product reviews, public job listings, directory entries and form submissions.

Use this prompt in General Input: https://www.generalinput.com/prompts/auto-screen-new-airtable-submissions-before-they-go-live