Lodol Docs

Airtable

API actions for the Airtable integration.

Airtable

Work with Airtable bases, tables, and records.


Create record

Create a new record in an Airtable table.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID from list_bases response (bases[].id).
table_namestringYesAirtable table name from list_tables response (tables[].name).
fieldsobjectYesRecord fields to create as key-value pairs matching the table's field names.

Response

{
  "createdTime": "2024-01-15T10:30:00Z",
  "fields": {
    "Email": "john@example.com",
    "Name": "John Smith",
    "Status": "Active"
  },
  "id": "rec9K3L2mN4P5Q6R"
}

Delete record

Delete a record from an Airtable table.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID from list_bases response (bases[].id).
table_namestringYesAirtable table name from list_tables response (tables[].name).
record_idstringYesRecord ID from list_records or create_record response (records[].id or id).

Response

{
  "deleted": true
}

Get record

Retrieve a single record by ID.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID from list_bases response (bases[].id).
table_namestringYesAirtable table name from list_tables response (tables[].name).
record_idstringYesRecord ID from list_records or create_record response (records[].id or id).

Response

{
  "createdTime": "2024-01-15T10:30:00Z",
  "fields": {
    "Email": "john@example.com",
    "Name": "John Smith",
    "Status": "Active"
  },
  "id": "rec9K3L2mN4P5Q6R"
}

List bases

Retrieve all accessible Airtable bases for the connected account.

Response

{
  "bases": [
    {
      "id": "appaBc123DeFg456",
      "name": "Marketing Campaigns",
      "permissionLevel": "create"
    }
  ]
}

List records

Retrieve records from an Airtable table with optional filtering.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID from list_bases response (bases[].id).
table_namestringYesAirtable table name from list_tables response (tables[].name).
max_recordsnumberNoMaximum number of records to return
filter_formulastringNoAirtable filterByFormula expression

Response

{
  "records": [
    {
      "createdTime": "2024-01-15T10:30:00Z",
      "fields": {
        "Email": "john@example.com",
        "Name": "John Smith",
        "Status": "Active"
      },
      "id": "rec9K3L2mN4P5Q6R"
    }
  ]
}

List tables in a base

Fetch all tables for a specific Airtable base.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID. Use list_bases first to get available base IDs from the response's bases[].id field.

Response

{
  "tables": [
    {
      "id": "tblXyz789AbC123",
      "name": "Contacts",
      "primaryFieldId": "fldPqR456StU789"
    }
  ]
}

Update record

Update fields on an existing Airtable record.

Parameters

ParameterTypeRequiredDescription
base_idstringYesAirtable base ID from list_bases response (bases[].id).
table_namestringYesAirtable table name from list_tables response (tables[].name).
record_idstringYesRecord ID from list_records or create_record response (records[].id or id).
fieldsobjectYesFields to update on the record as key-value pairs.

Response

{
  "createdTime": "2024-01-15T10:30:00Z",
  "fields": {
    "Email": "john@example.com",
    "Name": "John Smith",
    "Status": "Inactive"
  },
  "id": "rec9K3L2mN4P5Q6R"
}

On this page