PHPackages                             lee-to/laravel-airtable - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. lee-to/laravel-airtable

ActiveLibrary

lee-to/laravel-airtable
=======================

AirTable API client for Laravel

v1.1(5y ago)5283MITPHPPHP ^7.1CI failing

Since Jul 10Pushed 3y agoCompare

[ Source](https://github.com/lee-to/laravel-airtable)[ Packagist](https://packagist.org/packages/lee-to/laravel-airtable)[ Docs](https://github.com/lee-to/laravel-airtable)[ RSS](/packages/lee-to-laravel-airtable/feed)WikiDiscussions master Synced yesterday

READMEChangelog (2)Dependencies (3)Versions (3)Used By (0)

AirTable API client for Laravel
===============================

[](#airtable-api-client-for-laravel)

AirTable API client for Laravel. Used library \[AirTable PHP)()

Installation
------------

[](#installation)

The AirTable Client Laravel can be installed with [Composer](https://getcomposer.org/). Run this command:

```
composer require lee-to/laravel-airtable
```

Publish provider
----------------

[](#publish-provider)

```
php artisan vendor:publish --provider="AirTableLaravel\Providers\AirTableServiceProvider"
```

.env:
-----

[](#env)

```
AIRTABLE_TOKEN=
AIRTABLE_BASE=
AIRTABLE_TABLE=
```

config/app.php:
---------------

[](#configappphp)

Add alias

```
'aliases' => [
        ...

        'AirTable' => \AirTableLaravel\Facades\AirTableFacade::class,
    ],
```

Add provider

```
'providers' => [

        ...

        AirTableLaravel\Providers\AirTableServiceProvider::class,
    ],
```

Usage
-----

[](#usage)

Get token and base from [AirTable Account](http://airtable.com/account) and [AirTable API](http://airtable.com/api)

### Import.

[](#import)

```
use Airtable;
```

#### Get records from that table

[](#get-records-from-that-table)

- List table records

```
Airtable::table('table_name')->get();
```

Or use default table

```
Airtable::get();
```

Or get all records

```
Airtable::all();
```

#### Get one record from table.

[](#get-one-record-from-table)

```
Airtable::table('table_name')->find('ID');
```

Or use default table

```
Airtable::find('ID');
```

#### Filter records

[](#filter-records)

- First argument is the column name
- Second argument is the operator or the value if you want to use equal '=' as an operator.
- Third argument is the value of the filter

```
Airtable::table('table_name')->where("column", "operator", "value")->get();
```

#### Sort records

[](#sort-records)

- First argument is the column name
- Second argument is direction.

```
Airtable::table('table_name')->orderBy("column", "direction")->get();
```

#### Fields

[](#fields)

- Only data for fields whose names are in this list will be included in the result. If you don't need every field, you can use this parameter to reduce the amount of data transferred

```
Airtable::table('table_name')->fields(["Column1", "Column2"])->get();
```

Or

```
Airtable::all(["Column1", "Column2"]);
```

#### Max records

[](#max-records)

- The maximum total number of records that will be returned in your requests. If this value is larger than pageSize (which is 100 by default), you may have to load multiple pages to reach this total.

```
Airtable::table('table_name')->limit(5)->get();
```

#### Update

[](#update)

- Update one record

```
Airtable::table('table_name')->update('ID', ["Column1" => "Value"]);
```

OR

```
foreach(Airtable::get() as $record) {
    $record->update(["Column1" => "Value"]);
}
```

#### Update or create

[](#update-or-create)

- Update or create record

```
Airtable::table('table_name')->updateOrCreate('ID', ["Column1" => "Value"]);
```

#### Create

[](#create)

- Create a new record

```
Airtable::table('table_name')->create(["Column1" => "Value"]);
```

#### First or create

[](#first-or-create)

- Create a new record or find first match

```
Airtable::table('table_name')->firstOrCreate(["Column1" => "Value"]);
```

#### Delete

[](#delete)

- Delete one record

```
Airtable::table('table_name')->delete('ID');
```

OR

```
foreach(Airtable::table('table_name')->get() as $record) {
    $deleted = $record->delete();

    $deleted->isDeleted(); // Check is deleted or not
}
```

#### Get fields of record

[](#get-fields-of-record)

```
foreach(Airtable::table('table_name')->get() as $record) {
    $record->getId(); // ID

    $record->COLUMN1; // Any fields in table
}
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Danil Shutsky](https://github.com/lee-to)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

Security
--------

[](#security)

If you have found a security issue, please contact the maintainers directly at .

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 80% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~13 days

Total

2

Last Release

2118d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1861327?v=4)[Danil Shutsky](/maintainers/lee-to)[@lee-to](https://github.com/lee-to)

---

Top Contributors

[![lee-to](https://avatars.githubusercontent.com/u/1861327?v=4)](https://github.com/lee-to "lee-to (4 commits)")[![Abhilash-k-p](https://avatars.githubusercontent.com/u/32009784?v=4)](https://github.com/Abhilash-k-p "Abhilash-k-p (1 commits)")

---

Tags

airtableairtable-apilaravelphpphp-airtablephplaravelairtable

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lee-to-laravel-airtable/health.svg)

```
[![Health](https://phpackages.com/badges/lee-to-laravel-airtable/health.svg)](https://phpackages.com/packages/lee-to-laravel-airtable)
```

###  Alternatives

[tomatophp/filament-users

Manage your users with a highly customizable user resource for FilamentPHP with integration of filament-shield and filament-impersonate

90102.0k7](/packages/tomatophp-filament-users)[octw/aramex

A Library to integrate with Aramex APIs

2925.2k](/packages/octw-aramex)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
