airtable
Add context to all requests
에어 테이블 API에 액세스하기위한 간단한 #Golang 패키지.
Golang Airtable API는 GO 1.13 ON UP과 호환되는 테스트되었습니다.
go get github.com/mehanizm/airtable
AirTable 계정 페이지에서 your_api_token
가져와야합니다
client := airtable . NewClient ( "your_api_token" )
여기에서 사용자 정의 HTTP 클라이언트를 사용할 수 있습니다
client . SetCustomClient ( http . DefaultClient )
아래 각 방법은 사용자 정의 컨텍스트와 함께 사용할 수 있습니다. MethodNameContext
호출을 사용하고 컨텍스트를 첫 번째 인수로 제공하십시오.
bases , err := client . GetBases (). WithOffset ( "" ). Do ()
schema , err := client . GetBaseSchema ( "your_database_ID" ). Do ()
your_database_ID
를 얻으려면 기본 API 페이지로 이동하여 데이터베이스를 선택해야합니다.
table := client . GetTable ( "your_database_ID" , "your_table_name" )
테이블에서 레코드를 얻으려면 이와 같은 것을 사용할 수 있습니다.
records , err := table . GetRecords ().
FromView ( "view_1" ).
WithFilterFormula ( "AND({Field1}='value_1',NOT({Field2}='value_2'))" ).
WithSort ( sortQuery1 , sortQuery2 ).
ReturnFields ( "Field1" , "Field2" ).
InStringFormat ( "Europe/Moscow" , "ru" ).
Do ()
if err != nil {
// Handle error
}
recordsToSend := & airtable. Records {
Records : [] * airtable. Record {
{
Fields : map [ string ] any {
"Field1" : "value1" ,
"Field2" : true ,
},
},
},
}
receivedRecords , err := table . AddRecords ( recordsToSend )
if err != nil {
// Handle error
}
record , err := table . GetRecord ( "recordID" )
if err != nil {
// Handle error
}
하나의 레코드를 부분 업데이트하기 위해
res , err := record . UpdateRecordPartial ( map [ string ] any { "Field_2" : false })
if err != nil {
// Handle error
}
전체 업데이트 레코드로
toUpdateRecords := & airtable. Records {
Records : [] * airtable. Record {
{
Fields : map [ string ] any {
"Field1" : "value1" ,
"Field2" : true ,
},
},
{
Fields : map [ string ] any {
"Field1" : "value1" ,
"Field2" : true ,
},
},
},
}
updatedRecords , err := table . UpdateRecords ( toUpdateRecords )
if err != nil {
// Handle error
}
res , err := record . DeleteRecord ()
if err != nil {
// Handle error
}
최대 10 개의 레코드를 삭제합니다
records , err := table . DeleteRecords ([] string { "recordID1" , "recordsID2" })
if err != nil {
// Handle error
}
Go Trello API에서 영감을 얻었습니다