- 印刷する
目的
Tulip APIを設定して使用し、他のシステムからTulipとやり取りする。
注:上級者向け記事。
APIの使用経験があることを前提としています。
:::(Info) (注)上級者向け記事です:APIに関する以前の経験を想定しています :::
Tulipは、コネクタを介して他の多くのシステムのAPIと相互作用します。コネクタの使用 Tulipアプリは、HTTPまたはSQLクエリを開始することができます。
また、Tulip内にしか存在しないデータを外部システムから照会したい場合もあります。Tulip APIを使用して、外部システムからTulipと通信することが可能です。この記事では、Tulip APIのセットアップとテストについて説明します。
Tulip APIは、このような外部システムとTulipを統合するのに便利です。このAPIは現在のところTulipのテーブルに対してのみ動作します。これには、テーブルのレコードを新しい情報で更新したり、テーブルを作成したり、テーブルのレコード数を取得したりすることが含まれます。
APIの追加
Tulipアカウントの設定ページに移動します。
設定メニューで、APIトークンを選択します。
このページでは、API Key、secret、authorization headerを備えたAPI設定である "API Tokens "を設定できます。APIトークンを追加するには、このページの右上にある「Add API Token」ボタンを選択します。APIトークンを選択したら、必要に応じてAPIトークンを設定します。
API トークンに名前を付け、実行を許可するスコープを定義します。この例では、API TokenはTulip Tablesから読み取り、またTulip Tablesに書き込むことができます。APIトークンは、使用しない場合はアーカイブすることができます。
Createをクリックすると、API情報が表示されます。この情報は必ず保存してください!
この情報を使って、Tulip APIへの接続を設定できます。
APIのテスト
情報ポップアップを閉じ、APIトークンの作成オプションの隣にあるAPI Documentationボタンに移動します。
これにより、作成したキーでAPIをテストできるページに移動します。また、ドキュメントや、様々な用途のリクエストボディの例も提供されています。
このページには、外部システムからのAPIリクエストを設定するために必要なサーバーURLも記載されている。APIに慣れるために、Authorizeボタンをクリックしてください。
このボタンをクリックすると、テスト目的のAPIの設定に関する詳細情報が表示されます。フィールドに以下を入力します:
- ユーザー名:APIキー
- パスワード: 秘密
authorizeをクリックすると、Tableに対する一般的なHTTPリクエストのテストを開始できます。
このページの各オプションを展開してテストすることができます。各リクエストは、対応するレスポンスに関する有用な情報を提供します。
このページには、Tulipのいくつかのコンポーネントのスキーマに関する情報もあります。例えば、テーブルのレコードを作成するには、各カラムの適切なJSONフォーマットを知っておくと便利です。以下に列のスキーマ例を示します:
フィルターによるクエリ
フィルターは、興味のあるデータだけを抽出するのに非常に便利です。これらのフィルターは、時にその構文が少しトリッキーになることがあります。以下では、レコードのGETリクエストの例で、それぞれがどのように形成されるかを概説し、その後に完全な例を示します。
カスタムフィールドのフィールド名には、常に5桁の文字列識別子が先頭に付きます。これらは、GET allリクエストでフィールドの本当の名前を確認した後に最も簡単に見つけることができます。
- 例"field"="maytq_scrap_count"
引数値は多くの場合、単純明快である。テキスト値の場合は、必ず引用符で囲んでください。
- 例"arg":15
使用したい関数型に合わせる。
- 例"functionType": "greaterThan"
完全なリクエストは以下のようになる:
https://brian.tulip.co/api/v3/tables/W2HPvyCZrjMMHTiip/records?limit=100&sortBy=_sequenceNumber&sortDir=asc&filters=[{"field": "maytq_scrap_count", "arg": 15, "functionType": "greaterThan"}]&filterAggregator=any
複数のフィルター
場合によっては、テーブルでチェックするフィルタが複数あることがあります。この場合、filtersオブジェクトに複数のフィルタを追加することができます。次のようになります:
filters=[{"field": "maytq_scrap_count", "arg": 15, "functionType": "greaterThan"},{"field": "maytq_scrap_reason", "arg": "scratch", "functionType": "equal"}].
例
以下の例では、Tulip APIへのリクエストの手順を説明します。これらの例では、TulipからのリクエストにPostmanを使用します。
テーブル名と情報の取得
このGetリクエストにより、外部システムはTulipインスタンス内のすべてのテーブルのIDとカラム情報を取得できます。これは、POSTリクエストを設定するために、興味のあるテーブルを見つける方法として有用でしょう。
Postman で Authorization を Basic Auth に設定し、API Key と Secret を入力します。
さて、リクエストは適切な場所に行く必要がある。Tulipで、APIドキュメントから作りたいリクエストを見つける。この場合、リクエストはすべてのテーブル情報を取得することだ。
リクエストURLを取得するために、実行ボタンを実行し、リクエスト情報を確認します。
このリクエストURLは、PostmanからのGETリクエストを処理するためのサーバURLとして使用できます。
送信をクリックすると、リクエストはテーブルからすべての情報を返します。
テーブルレコードの作成
POSTと上記のテーブルIDを使用して、外部システムからテーブルレコードを作成できます。Authorization と Header は同じままですが、Request URL は少し異なります。
まず、レコードを作成するテーブルを決定します。リクエストURLは常に以下の構造に従います:
https://.tulip.co/api/v3/tables//records
入力されたリクエストは、POSTを適切に処理するためにボディを必要とします。カラムのスキーマは、上記のテストのセクションに記載されており、APIのドキュメントにも記載されています。これを成功させるために完全に必要なカラムはIDカラムだけである。その他のカラムが追加されていない場合は、作成時にテーブルレコードにnullとして格納されます。この内容をリクエストのBodyとして追加する。
送信時に、Postmanはレコードが作成されたことを確認します。
お探しのものは見つかりましたか?
community.tulip.coで質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!