Airtable
Airtable 連接器可讓您針對 Airtable 資料執行插入、刪除、更新和讀取作業。
支援的版本
這個連接器支援 Airtable API 版本 0。
事前準備
使用 Airtable 連接器前,請先完成下列工作:
- 在 Google Cloud 專案中:
- 確認已設定網路連線。如要瞭解網路模式,請參閱「網路連線」。
- 將 roles/connectors.admin IAM 角色授予設定連接器的使用者。
- 將下列 IAM 角色授予要用於連接器的服務帳戶:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
服務帳戶是特殊的 Google 帳戶類型,主要用於代表需要驗證且必須取得授權才能存取 Google API 資料的非人類使用者。如果您沒有服務帳戶,請務必建立服務帳戶。詳情請參閱「建立服務帳戶」。
- 啟用下列服務:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(連接器 API)
如要瞭解如何啟用服務,請參閱「啟用服務」。
如果先前未為專案啟用這些服務或權限,系統會在設定連接器時提示您啟用。
- 如要瞭解如何建立 Airtable 工作區,請參閱「開始使用 Airtable」。 如需 Airtable API 的相關資訊,請參閱「Airtable API 參考資料」。
設定連接器
連線是特定資料來源的連線,也就是說,如果您有多個資料來源,則必須為每個資料來源建立個別的連線。如要建立連線,請按照下列步驟操作:
- 在 Cloud 控制台中,前往「Integration Connectors」>「Connections」頁面,然後選取或建立 Google Cloud 專案。
- 按一下「+ 建立新連線」,開啟「建立連線」頁面。
- 在「位置」部分,選擇連線的位置。
- 區域:從下拉式清單中選取位置。
如需所有支援地區的清單,請參閱「位置」一節。
- 點按「下一步」。
- 區域:從下拉式清單中選取位置。
- 在「連線詳細資料」部分中,完成下列操作:
- 連接器:從可用連接器的下拉式清單中選取「Airtable」。
- 連接器版本:從可用版本的下拉式清單中選取連接器版本。
- 在「Connection Name」欄位中,輸入連線例項的名稱。
連線名稱必須符合下列條件:
- 連線名稱可以包含英文字母、數字或連字號。
- 字母必須為小寫。
- 連線名稱的開頭必須是英文字母,結尾則須為英文字母或數字。
- 連結名稱不得超過 49 個半形字元。
- 視需要輸入連線例項的「Description」(說明)。
- 您可以選擇啟用 Cloud Logging,然後選取記錄層級。根據預設,記錄層級會設為
Error
。 - 服務帳戶:選取具備必要角色的服務帳戶。
- Base Id:Airtable 資料庫的 ID。如果指定了 Base ID,系統只會擷取相關聯的中繼資料。如果已啟用 Airtable Metadata API,您不需要指定 Base ID。
- Base Name:要使用的架構,對應至 Airtable 資料庫。只有在啟用 Airtable 中繼資料 API 時,才能使用這個欄位。
- 顯示物件 ID:選取這個選項,即可將結構定義、資料表、檢視畫面和欄名稱替換為對應的內部 ID。
- 路徑分隔符:指定要用來做為分隔符的字元,以便根據路徑建立資料欄名稱。
- 使用者定義的檢視畫面:指定包含自訂檢視畫面的 JSON 設定檔路徑。
- 值分隔符:指定要用於陣列值的單一字串分隔符。
- 您可以按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
- 點按「下一步」。
- 視需要設定連線節點設定:
- 節點數量下限:輸入連線節點數量下限。
- 節點數量上限:輸入連線節點數量上限。
節點是用來處理交易的連線單位 (或備用資源)。處理的交易量越多,就需要越多節點;反之,處理的交易量越少,就需要越少節點。如要瞭解節點對連接器定價的影響,請參閱「 連線節點的定價」。如果您未輸入任何值,系統預設會將最小節點設為 2 (以提高可用性),並將最大節點設為 50。
-
在「Authentication」部分中,輸入驗證詳細資料。
- 選取「驗證類型」並輸入相關詳細資料。
Airtable 連線支援下列驗證類型:
- 個人存取權杖
- 點按「下一步」。
如要瞭解如何設定這些驗證類型,請參閱「設定驗證」。
- 選取「驗證類型」並輸入相關詳細資料。
- 查看:查看連線和驗證詳細資料。
- 按一下 [建立]。
設定驗證機制
根據要使用的驗證方法輸入詳細資料。
- 個人存取權杖:包含個人存取權杖的 Secret Manager 密鑰。
- 密鑰版本:所選密鑰的密鑰版本。
連線設定範例
本節列出您在建立連線時設定的各種欄位範例值。
個人存取權杖連線類型
欄位名稱 | 詳細資料 |
---|---|
位置 | europe-west1 |
連接器 | Airtable |
連接器版本 | 1 |
連線名稱 | airtable-connection-new |
啟用 Cloud Logging | 是 |
服務帳戶 | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
基本 ID | appK32XeZXReEQzja |
基本名稱 | 汽車測試資料 |
路徑分隔符號 | 不適用 |
使用者定義的檢視畫面 | 不適用 |
值分隔符號 | 不適用 |
節點數量下限 | 2 |
節點數量上限 | 50 |
個人存取權杖 | 是 |
個人存取權杖 | projects/617888XXXX/secrets/airtable-new-conn/versions/3 |
密鑰版本 | 3 |
系統限制
Airtable 連接器每個節點每秒最多可處理 3 筆交易,並限制超出此限制的交易。根據預設,Integration Connectors 會為連線分配 2 個節點 (可提高可用性)。
如要瞭解 Integration Connectors 適用的限制,請參閱「限制」一節。
在整合中使用 Airtable 連線
建立連線後,即可在 Apigee Integration 和 Application Integration 中使用。您可以透過「連接器」工作,在整合中使用連線。
- 如要瞭解如何在 Apigee Integration 中建立及使用連接器工作,請參閱「連接器工作」。
- 如要瞭解如何在 Application Integration 中建立及使用連接器工作,請參閱「連接器工作」。
實體、作業和動作
所有整合連接器都為已連結應用程式的物件提供一層抽象層。您只能透過這個抽象層存取應用程式的物件。抽象概念會以實體、作業和動作的形式提供給您。
- 實體: 實體可視為已連結應用程式或服務中的物件或屬性集合。實體的定義與連接器至連接器的定義不同。舉例來說,在資料庫連接器中,資料表是實體;在檔案伺服器連接器中,資料夾是實體;在訊息系統連接器中,佇列是實體。
不過,連接器可能不支援或沒有任何實體,在這種情況下,
Entities
清單會是空白。 - 作業: 作業是指您可對實體執行的活動。您可以對實體執行下列任一操作:
從可用清單中選取實體後,系統會產生可用於該實體的作業清單。如需作業的詳細說明,請參閱連接器工作中的實體作業。不過,如果連接器不支援任何實體作業,則
Operations
清單中不會列出這些不支援的作業。 - 動作: 動作是透過連接器介面提供給整合項目的一流函式。動作可讓您變更實體或多個實體,而這些變更會因連接器而異。通常,動作會包含一些輸入參數和輸出參數。不過,連接器可能不支援任何動作,在這種情況下,
Actions
清單會為空白。
實體操作範例
本節說明如何在這個連接器中執行部分實體作業。
範例:聯絡資料 (記錄) 實體的列出作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
List
作業,然後按一下「Done」。 - 在「Connector」工作中的「Task Input」部分,您可以根據客戶需求設定「filterClause」。
請一律在單引號 (') 內指定篩選器子句值。
您也可以對下列實體執行清單作業:
Contacts Data.Main View、Contacts Data.Calendar、Contacts Data.Kanban、Contacts Data.Gallery、Contacts Data.List 和 Contacts Data_Collaborators
範例:取得聯絡資料 (記錄) 實體的記錄
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
GET
作業,然後按一下「Done」。 - 將實體 ID 設為「recg7qjPRMa7DBwIb」,這是要傳遞的 Key。如要設定實體 ID,請在「資料對應」的「資料對應」專區中,按一下「開啟資料對應編輯器」,然後在「輸入值」欄位中輸入
"recg7qjPRMa7DBwIb"
,並選擇「EntityId」做為區域變數。其中,實體 ID:「recg7qjPRMa7DBwIb」是唯一的主鍵值,必須直接傳遞。
如果實體具有複合式主鍵,您可以指定篩選器子句。
您也可以對下列實體執行 get 作業: Contacts Data.Main View、Contacts Data.Calendar、Contacts Data.Kanban、Contacts Data.Gallery、Contacts Data.List 和 Contacts Data_Collaborators。
範例:刪除「聯絡資料 (記錄)」實體的記錄
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
Delete
作業,然後按一下「Done」。 - 將實體 ID 設為「recg7qjPRMa7DBwIb」,這是要傳遞的鍵。如要設定實體 ID,請在「資料對應」的「資料對應」部分,按一下「開啟資料對應編輯器」,然後在「輸入值」欄位中輸入
"recg7qjPRMa7DBwIb"
,並選擇 EntityId 做為本機變數。
如果實體具有複合式主鍵,您可以指定篩選器子句。
範例:建立聯絡資料 (記錄) 實體的作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
Create
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。{ "First Name": "Demo4", "Last Name": "Alex", "Email": "cloudysanfrancisco@gmail.com", "DOB": "2000-04-14", "Office": "Denver", "Phone Number": "1-175-432-1437", "Current Brand": "Mercedes" }
如果整合成功,連接器工作
connectorOutputPayload
回應參數的值會類似以下:{ "Internal_Id": "recg7qjPRMa7DBwIb" } <pre> function helloWorld() { alert('Hello, world! This sentence is so long that it wraps onto a second line.'); } /n <h3>Example title</h3> </pre>
範例:聯絡資料 (記錄) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取ContactData
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "Phone Number": "1-175-432-4312", "Current Brand": "Honda" }
您也可以將 entityId 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。
如果整合成功,連接器工作 connectorOutputPayload
的輸出變數會:
{ "Internal_Id": "reckqGnFusjDlnmvs" }
範例 - 聯絡人資料 (附件) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "Attachment": "[{\"url\":\"https://media.istockphoto.com/id/2086323995/photo/global-communication-east-asia.jpg?s=2048x2048&w=is&k=20&c=Z50lesspQQzxWug0m11QrPZMOUzMeTufgnLHh_3COy4=\",\"filename\":\"BMW\"}]" }
您可以將 filterClause 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。如果整合成功,連接器工作
connectorOutputPayload
輸出變數會:{ "Internal_Id": "recoGHHp8y11aSx0E" }
範例:聯絡人資料 (核取方塊) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取Contact Data
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "Checkbox": true }
您可以將 filterClause 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。如果整合成功,連接器工作
connectorOutputPayload
的輸出變數會:{ "Internal_Id": "recoGHHp8y11aSx0E" }
範例:聯絡資料 (電話號碼) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取ContactData
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "Number": 1001.0 }
您可以將 filterClause 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。如果整合成功,連接器工作
connectorOutputPayload
輸出變數會:{ "Internal_Id": "recoGHHp8y11aSx0E" }
範例:聯絡人資料 (DateField) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取ContactData
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "DOB": "2000-04-14" }
您可以將 filterClause 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。如果整合成功,連接器工作
connectorOutputPayload
輸出變數會:{ "Internal_Id": "recoGHHp8y11aSx0E" }
範例 - 聯絡資料 (文字) 實體的更新作業
- 在
Configure connector task
對話方塊中,按一下Entities
。 - 從
Entity
清單中選取ContactData
。 - 選取
Update
運算,然後按一下「Done」。 - 在「資料對應」任務的「資料對應器」部分,按一下
Open Data Mapping Editor
,然後在Input Value
欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為「Local」變數。{ "Singlelinetext": "Airtable Application", "Long text": "Airtable is a cloud-based collaboration platform that combines the features of a spreadsheet with the capabilities of a database. " }
您可以將 filterClause 設為
Internal_Id='reckqGnFusjDlnmvs'
,而非指定 entityId。如果整合成功,連接器工作
connectorOutputPayload
的輸出變數會:{ "Internal_Id": "recoGHHp8y11aSx0E" }