Changelog¶
2.3.3 (2024-03-22)¶
2.3.2 (2024-03-18)¶
Fixed a bug affecting
pyairtable.metadata.get_table_schema()
. - PR #349.
2.3.1 (2024-03-14)¶
Fixed a bug affecting how timezones are parsed by
DatetimeField
. - PR #342.Fixed a bug affecting
create_table()
. - PR #345.
2.3.0 (2024-02-25)¶
A breaking API change was accidentally introduced. Read more in Migrating from 2.2 to 2.3.
Added support for Managing permissions and shares and Managing users. - PR #337.
Added
Enterprise.audit_log
to iterate page-by-page through audit log events. - PR #330.Api.base
,Api.table
, andBase.table
will use cached base metadata when called multiple times withvalidate=True
, unless the caller passes a new keyword argumentforce=True
. This allows callers to validate the IDs/names of many bases or tables at once without having to perform expensive network overhead each time. - PR #336.
2.2.2 (2024-01-28)¶
Enterprise methods
user()
,users()
, andgroup()
now return collaborations by default. - PR #332.Added more helper functions for formulas:
LESS()
,LESS_EQUAL()
,GREATER()
,GREATER_EQUAL()
, andNOT_EQUAL()
. - PR #323.
2.2.1 (2023-11-28)¶
2.2.0 (2023-11-13)¶
2.1.0 (2023-08-18)¶
2.0.0 (2023-07-31)¶
See Migrating from 1.x to 2.0 for detailed migration notes.
Added
Comment
class; see Commenting on Records. - PR #282.batch_upsert()
now returns the full payload from the Airtable API. - PR #281.ORM module is no longer experimental and has a stable API. - PR #277.
Added
Model.batch_save
andModel.batch_delete
. - PR #274.Added
Api.whoami
method. - PR #273.pyAirtable will automatically retry requests when throttled by Airtable’s QPS. - PR #272.
ORM Meta attributes can now be defined as callables. - PR #268.
Removed
ApiAbstract
. - PR #267.Implemented strict type annotations on all functions and methods. - PR #263.
Return Model instances, not dicts, from
Model.all
andModel.first
. - PR #262.Dropped support for Python 3.7. - PR #261.
1.5.0 (2023-05-15)¶
Add support for Airtable’s upsert operation (see Updating Records). - PR #255.
Fix
return_fields_by_field_id
inbatch_create()
andbatch_update()
. - PR #252.Fix ORM crash when Airtable returned additional fields. - PR #250.
Use POST for URLs that are longer than the 16k character limit set by the Airtable API. - PR #247.
Added ORM
LookupField
. - PR #182.Dropped support for Python 3.6 (reached end of life 2021-12-23) - PR #213.
1.4.0 (2022-12-14)¶
Added
pyairtable.retry_strategy()
.Misc fix in sleep for batch requests PR #180.
1.3.0 (2022-08-23)¶
Added new
LOWER
formula - PR #171. Seepyairtable.formulas
.Added
match(..., match_any=True)
tomatch()
Added
return_fields_by_field_id
inget()
1.2.0 (2022-07-09)¶
Fixed missing rate limit in
batch_update()
- PR #162.Added support for new parameter return_fields_by_field_id - PR #161. See updated Parameters.
Added new
OR
formula - PR #148. Seepyairtable.formulas
.
1.1.0 (2022-02-21)¶
Added support for
cellFormat
- PR #140. See updated Parameters.
1.0.0 (2021-08-11)¶
pyAirtable rewrite for 1.x - see Migration Guide.