{
  "opencollection": "1.0.0",
  "info": {
    "name": "Airtable Metadata API",
    "version": "1.0.0"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Bases",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Airtable List All Bases",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.airtable.com/v0/meta/bases",
            "params": [
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "Pagination cursor from a previous response to fetch the next page."
              }
            ]
          },
          "docs": "Returns a paginated list of all bases that the authenticated user has access to. Each base includes its ID, name, and permission level. Use the offset parameter from the response to paginate through all available bases."
        },
        {
          "info": {
            "name": "Airtable Create a New Base",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.airtable.com/v0/meta/bases",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Creates a new base in the specified workspace. The request must include the workspace ID, base name, and at least one table definition with fields. Returns the newly created base with its schema."
        },
        {
          "info": {
            "name": "Airtable Get Base Schema",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.airtable.com/v0/meta/bases/:baseId/tables",
            "params": [
              {
                "name": "baseId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the base (starts with 'app')."
              },
              {
                "name": "include",
                "value": "",
                "type": "query",
                "description": "Additional information to include in the response. Pass visibleFieldIds to include visible field IDs for each view."
              }
            ]
          },
          "docs": "Returns the schema of the specified base, including all tables, their fields (with type and configuration), and views. This endpoint provides a complete structural overview of the base."
        },
        {
          "info": {
            "name": "Airtable Get Current User and Scopes",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.airtable.com/v0/meta/whoami"
          },
          "docs": "Returns the ID and scopes of the currently authenticated user or service account. Useful for verifying authentication and checking available permissions."
        }
      ]
    },
    {
      "info": {
        "name": "Tables",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Airtable Create a Table in a Base",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.airtable.com/v0/meta/bases/:baseId/tables",
            "params": [
              {
                "name": "baseId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the base (starts with 'app')."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Creates a new table within the specified base. The table must include a name and at least one field definition. Optionally include a description for the table."
        },
        {
          "info": {
            "name": "Airtable Update a Table",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.airtable.com/v0/meta/bases/:baseId/tables/:tableId",
            "params": [
              {
                "name": "baseId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the base (starts with 'app')."
              },
              {
                "name": "tableId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the table (starts with 'tbl')."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Updates the name and/or description of an existing table. Only the provided fields will be modified."
        }
      ]
    },
    {
      "info": {
        "name": "Fields",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Airtable Create a Field in a Table",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.airtable.com/v0/meta/bases/:baseId/tables/:tableId/fields",
            "params": [
              {
                "name": "baseId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the base (starts with 'app')."
              },
              {
                "name": "tableId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the table (starts with 'tbl')."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Creates a new field in the specified table. The field must include a name and type. Some field types (like singleSelect, multipleSelects) accept additional options for configuration. Note that formula and some computed field types cannot be created via the API."
        },
        {
          "info": {
            "name": "Airtable Update a Field",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.airtable.com/v0/meta/bases/:baseId/tables/:tableId/fields/:fieldId",
            "params": [
              {
                "name": "baseId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the base (starts with 'app')."
              },
              {
                "name": "tableId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the table (starts with 'tbl')."
              },
              {
                "name": "fieldId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the field (starts with 'fld')."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Updates the name, description, or configuration options of an existing field. Only the provided properties will be modified. Not all field properties can be updated after creation."
        }
      ]
    }
  ],
  "bundled": true
}