dusk bot
integrationscreate records

dusk botintegrationsairtable

add new airtable rows without rewriting existing records

stop typing the same attendance list twice. give the bot your sign-in sheet and airtable destination.

by the dusk bot team · checked · how we made this

it matches the fields and adds up to ten new rows per request, leaving existing records alone. row creation can run without asking. put a preview in the routine so you choose what goes in.

pixel art: a yellow pixel bot, a blue pixel bot and a lime pixel bot beside the Airtable mark on a white tile, a notebook and a graduation cap on books, on a sandy path in front of a birch wood under purple hills, one saying "attendance rows ready"

where it helps

  • attendance without retyping. add confirmed people from a finished workshop.
  • equipment as it arrives. log each new item's category and arrival date.
  • expenses ready to file. add new rows without replacing earlier entries.
  • volunteer shifts. use the confirmed sign-up list; leave unclear dates for you.

the short version

new rows, without retyping the attendance sheet. name the base and table. the bot lists bases and reads the table fields before matching your values. this action adds records; it doesn't repair old ones.

keep automatic conversion off for the first run. airtable otherwise tries to interpret text as dates or other values. a tidy-looking cell can still contain the wrong thing.

step by step

  1. connect the two apps. drive only needs reading. airtable needs read and write to add rows.
  2. name the destination. ask which fields the attendance table expects before giving it a whole sheet.
  3. limit the actions. allow lookups and row creation. leave record updates and table changes off.
  4. try one batch. compare the saved names and session with the preview. pause the routine if they differ.

send this to your bot

paste this into a chat with your bot

on saturdays at 10, read sign-in sheets added this week to the 'workshop sign-ins' folder in google drive. use the workshop attendance table in the learning sessions base.

- read its fields and find existing rows with the same session and email
- show only new rows here and ask me before writing
- add the rows i approve, up to ten at a time, then report what you saved

never overwrite a record, guess an email or use automatic field conversion. skip existing matches. if a sheet is unclear, ask me.
when
saturdays at 10:00
needs
google drive read only; airtable read and write, including field reads and existing-row lookups

what comes back looks like this (an example)

attendance saved after your confirmation

workshop: product sketching
- rue tan, [email protected], attended
- bela roy, [email protected], attended

skipped one existing match for the same session and email.

what can go wrong

  • ten rows per request. larger sheets need batches. airtable allows five requests per second per base.
  • conversion can guess wrong. it starts off; leave it off until unclear values have an agreed meaning.
  • a retry can add everyone twice. inspect existing rows before repeating a request with an unclear result.
  • the preview is your review step. row creation does not wait for sending approval.

permissions and asking first

dusk bot counts Create records as a change: it alters something in Airtable, and the sending setting does not cover it. a bot you allow only to read can never call it.

the permissions Airtable asks for to run it: data.records:write.

inputs

inputrequiredwhat it is
baseIdyesThe unique identifier of the Airtable base.
recordsyesArray of record objects to create.
tableIdOrNameyesThe unique identifier or name of the table where records will be created.
typecastnoIf true, Airtable will perform best-effort automatic data conversion from string values to the appropriate cell type.
returnFieldsByFieldIdnoIf true, the returned field objects will use field IDs as keys instead of field names.

from composio's catalog for Airtable (action AIRTABLE_CREATE_RECORDS, read 12 november 20264). your bot fills these in from what you tell it.

try it in 2 minutes

  1. pick one finished sign-in sheet in drive
  2. name the airtable base and table
  3. ask for two proposed rows, without writing
  4. match the fields and look for existing attendees

mistakes people make

running the same list twice

look for the same session and email before adding rows, including after a timeout.

letting airtable guess a vague date

keep conversion off. ask which date the sign-in sheet means.

before the attendance goes in

  • the session and email identify a new attendance row
  • each value fits the table field
  • the preview contains no more than ten rows
  • the routine asks before writing

questions

can it add more than ten airtable records?

yes, in batches of ten or fewer. it must also stay within five requests per second per base.

will creating records update a matching row?

no, it adds another row. the routine reads existing records first and skips matches.

what if a date or category does not fit?

ask which date or category the sheet means. automatic conversion can interpret text, but it can pick the wrong meaning.

sources

  1. dusk bot docs: files and apps
  2. dusk bot docs: routines
  3. dusk bot docs: sending and approval settings
  4. composio, Airtable toolkit (catalog version 20261101_00), checked 12 november 2026

drafted with ai help from the dusk bot docs and the sources listed on this page, then checked against them. if something here is wrong or out of date, write to [email protected].