Skip to main content

Airtable Bubble

Airtable integration for managing records in bases and tables

Quick Start

import { AirtableBubble } from '@bubblelab/bubble-core';
import { CredentialType } from '@bubblelab/shared-schemas';
const result = await new AirtableBubble({
operation: 'list_records',
credentials: {
[CredentialType.AIRTABLE_CRED]: process.env.AIRTABLE_CRED as string,
},
}).action();

Operation Details

list_records

operation 'list_records' required
List records from an Airtable table with filtering and sorting
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
fields string[]
Array of field names to include in results (returns all fields if not specified)
filterByFormula string
Airtable formula to filter records (e.g., "{Status} = 'Done'")
maxRecords number
Maximum number of records to return (1-100, returns all if not specified)
pageSize number
Number of records per page for pagination (1-100)
sort object[]
Array of sort specifications to order records
view string
View name or ID to use (includes view's filters and sorts)
cellFormat 'json' | 'string'
Format for cell values: json (structured) or string (formatted)
timeZone string
Time zone for date/time fields (e.g., "America/Los_Angeles")
userLocale string
Locale for formatting (e.g., "en-US")
offset string
Pagination offset from previous response
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_record

operation 'get_record' required
Retrieve a single record by its ID
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
recordId string required
Record ID to retrieve (starts with rec)
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

create_records

operation 'create_records' required
Create one or more new records in an Airtable table
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
records object[] required
Array of records to create (max 10 per request)
typecast boolean
Automatically convert field values to the appropriate type
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

update_records

operation 'update_records' required
Update existing records in an Airtable table
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
records object[] required
Array of records to update (max 10 per request)
typecast boolean
Automatically convert field values to the appropriate type
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

delete_records

operation 'delete_records' required
Delete one or more records from an Airtable table
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
recordIds string[] required
Array of record IDs to delete (max 10 per request)
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

list_bases

operation 'list_bases' required
List all bases accessible with the current API key
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_base_schema

operation 'get_base_schema' required
Get the schema for a specific base including all tables and fields
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

create_table

operation 'create_table' required
Create a new table in an Airtable base
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
name string required
Name for the new table
description string
Optional description for the table
fields object[] required
Array of field definitions for the table
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

update_table

operation 'update_table' required
Update table properties like name and description
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
name string
New name for the table
description string
New description for the table
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

create_field

operation 'create_field' required
Create a new field in an Airtable table
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
name string required
Name for the new field
type 'singleLineText' | 'multilineText' | 'richText' | 'email' | 'url' | 'phoneNumber' | 'number' | 'percent' | 'currency' | 'rating' | 'duration' | 'singleSelect' | 'multipleSelects' | 'singleCollaborator' | 'multipleCollaborators' | 'date' | 'dateTime' | 'checkbox' | 'multipleRecordLinks' | 'multipleAttachments' | 'barcode' | 'button' | 'formula' | 'createdTime' | 'lastModifiedTime' | 'createdBy' | 'lastModifiedBy' | 'autoNumber' | 'externalSyncSource' | 'count' | 'lookup' | 'rollup' required
Field type
description string
Field description
options Record<string,unknown>
Field-specific options
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

update_field

operation 'update_field' required
Update field properties like name, type, or description
baseId string required
Airtable base ID (e.g., appXXXXXXXXXXXXXX)
tableIdOrName string required
Table ID (e.g., tblXXXXXXXXXXXXXX) or table name
fieldIdOrName string required
Field ID (e.g., fldXXXXXXXXXXXXXX) or field name
name string
New name for the field
description string
New description for the field
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)