Airtable 1.4.0

dotnet add package Airtable --version 1.4.0
NuGet\Install-Package Airtable -Version 1.4.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Airtable" Version="1.4.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Airtable --version 1.4.0
#r "nuget: Airtable, 1.4.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Airtable as a Cake Addin
#addin nuget:?package=Airtable&version=1.4.0

// Install Airtable as a Cake Tool
#tool nuget:?package=Airtable&version=1.4.0

Airtable .NET API Client

Airtable.net is the C-Sharp client of the public APIs of Airtable. It builds a Windows class library that targets .NET Standard named AirtableClientApi.dll. AirtableClientApi.dll facilitates the usage of Airtable APIs without having to worry about interfacing with raw HTTP, the low-level concepts like HTTP status codes and records paging. The users can write C-Sharp applications which integrate with Airtable by consuming what Airtable public APIs have to offer programmatically such as List Records, Create Record, Retrieve Record, Update Record, Replace Record, Delete Record.

Installation

Install the latest nuget package Airtable.1.4.0.nupkg

Requirements

Operating System: Windows 10 or newer Microsoft Visual Studio 2022 or newer (only if you choose to build AirtableApiClient.dll from source files using the instructions below.) .NET Standard 2.0 and the usage of System.Text.Json are supported in Visual Studio 2022.

Build AirtableApiClient.dll

Download Airtable.net c# source files from github.com. To compile to an assembly, simply create a new project in visual studio of C# .NET Standard Class Library and add these source files to the project.

Refer to this link for downloading VS 2022 Community Edition: https://visualstudio.microsoft.com/free-developer-offers/

Refer to the link below for downloading .NET SDK for VS 2022 https://github.com/dotnet/core/blob/main/release-notes/7.0/7.0.3/7.0.3.md?WT.mc_id=dotnet-35129-website

Refer to the link below to learn more about what's in .NET Standard 2.0 https://docs.microsoft.com/en-us/dotnet/standard/net-standard

Quickstart

Example demonstrating usage of the API to list records:



using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Linq;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Text.Json;
using System.Text.Json.Serialization;
using AirtableApiClient;

readonly string baseId = YOUR_BASE_ID;
readonly string appKey = YOUR_APP_KEY_OR_ACCESS_TOKEN;



    string offset = null;
    string errorMessage = null;
    var records = new List<AirtableRecord>();

    using (AirtableBase airtableBase = new AirtableBase(appKeyOrAccessToken, baseId))
    {
       //
       // Use 'offset' and 'pageSize' to specify the records that you want
       // to retrieve.
       // Only use a 'do while' loop if you want to get multiple pages
       // of records.
       //

       do
       {
            Task<AirtableListRecordsResponse> task = airtableBase.ListRecords(
                   YOUR_TABLE_ID_OR_NAME,
                   offset,
                   fieldsArray,
                   filterByFormula,
                   maxRecords,
                   pageSize,
                   sort,
                   view,
                   cellFormat,
                   timeZone,
                   userLocale,
                   returnFieldsByFieldId,
                   includeCommentCount);

            AirtableListRecordsResponse response = await task;

            if (response.Success)
            {
                records.AddRange(response.Records.ToList());
                offset = response.Offset;
            }
            else if (response.AirtableApiError is AirtableApiException)
            {
                errorMessage = response.AirtableApiError.ErrorMessage;
                if (response.AirtableApiError is AirtableInvalidRequestException)
                {
                    errorMessage += "\nDetailed error message: ";
                    errorMessage += response.AirtableApiError.DetailedErrorMessage;
                }
                break;
            }
            else
            {
                errorMessage = "Unknown error";
                break;
            }
        } while (offset != null);
    }

    if (!string.IsNullOrEmpty(errorMessage))
    {
        // Error reporting
    }
    else
    {
        // Do something with the retrieved 'records' and the 'offset'
        // for the next page of the record list.
    }


Documentation

View the full documentation

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Airtable:

Package Downloads
SquidDraftLeague.Airtable

Airtable integration with SDL's drafting system.

Airtable.EFCore

Package Description

Musoq.DataSources.Airtable

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.4.0 27,546 12/1/2023
1.3.0 121,338 3/8/2023
1.2.0 60,942 7/23/2022
1.1.6 20,318 2/22/2022
1.1.5 75,347 12/22/2020
1.1.4 7,465 8/25/2020
1.1.2 17,667 3/26/2020
1.1.0 33,409 10/20/2019
1.0.2 74,736 2/17/2019
1.0.0 2,147 10/29/2018
0.9.3 1,438 10/17/2018
0.9.2 2,403 11/30/2017
0.9.0 1,754 4/29/2017

PR#76: Added support for Webhooks
Fixed PR#79: Include CreatedRecords and UpdatedRecords when performing an upsert
   Added 2 more properties in AirtableCreateUpdateReplaceMultipleRecordsResponse:
       string[] UpdatedRecords and string[] CreatedRecords.
Fixed PR#71 and PR#77: support for returnFieldsByFieldId is added in RetrieveRecord().
Merged enhancements in the README.MD file  by NiJeTi.
Added more test methods in AirtableApiClient.Tests.