# QueryAirtableTable

### Description

Airtable is a spreadsheet-database hybrid. In Airtable an application is called base and each base can have multiple tables. A table consists of records (rows) and each record can have multiple fields (columns). The QueryAirtableTable processor can query records from a single base and table via Airtable's REST API. The processor utilizes streams to be able to handle a large number of records. It can also split large record sets to multiple FlowFiles just like a database processor.

### API Key

Airtable REST API calls requires an API Key that needs to be passed in a request. An Airtable account is required to generate an API Key.

### API rate limit

The Airtable REST API limits the number of requests that can be sent on a per-base basis to avoid bottlenecks. Currently, this limit is 5 requests per second per base. If this limit is exceeded you can't make another request for 30 seconds. It's your responsibility to handle this rate limit via configuring Yield Duration and Run Schedule properly. It is recommended to start off with the default settings and to increase both parameters when rate limit issues occur.

### Metadata API

Currently the Metadata API of Airtable is unstable, and we don't provide a way to use it. Until it becomes stable you can set up a ConvertRecord or MergeRecord processor with a JsonTreeReader to read the content and convert it into a Record with schema.