APIレシピを作成
このガイドでは、APIレシピを作成する方法について説明します。 外部のビジネスパートナーや内部関係者は、Workatoアカウントへのアクセスを必要とせずに、このエンドポイントを使用してデータにアクセスし、利用できます。
前提条件
APIレシピを作成するには、次の前提条件を満たしている必要があります:
- API platform機能へのアクセス。 API Platform機能は、特定の料金プランのお客様が利用できます。 詳細については、ご利用の料金プランおよび契約を参照してください。
- APIコレクションとエンドポイントおよびレシピの作成権限。
Workato API platformとGoogle Workspaceのインテグレーションを作成し、優先するCLIを使用して、またはBambooHRで新しい従業員が検出されたときにGoogle Workspaceにユーザーを追加できるようにする手順については、Google Workspaceにユーザーを追加ユースケースを参照してください。
サポートされているデータ型
コンテンツタイプドロップダウンメニューを使用して、コネクターが受け入れるデータ形式を設定します。 APIレシピは次のオプションをサポートしています:
- JSON: JavaScript Object Notation形式のデータを受け入れます。 ほとんどのREST APIと構造化ペイロードには、これを使用します。
- テキスト/XML: XML、SOAP、CSV、YAMLなどの未加工コンテンツを受け入れます。 非JSON形式またはプレーンテキストのペイロードを処理するには、これを使用します。
- Multipart: 複数のパートで構成されるリクエストを受け入れます。 混合データを含むリクエストには、これを使用します。
追加のデータ処理情報については、リクエスト本文を解析セクションを参照してください。
レシピを作成
APIレシピを作成するには、次の手順を実行します:
トラブルシューティング
発生した問題のトラブルシューティングを容易にするため、小さな手順でレシピを構築し、レシピを頻繁に保存してテストすることをお勧めします。
Workatoにサインインします。
レシピを作成する予定のプロジェクトを選択します。
作成>レシピをクリックするか、C+Rを押します。
新しいレシピを作成
Nameフィールドにレシピの名前を入力します。
Locationドロップダウンメニューを使用して、レシピを保存するプロジェクトを選択します。
ビルドを開始をクリックします。
レシピの構築を開始
開始点を選択>APIエンドポイントを構築をクリックします。 Workatoは新規APIリクエストトリガーを自動的に作成します。
新規APIリクエストトリガーを選択します。
エンドポイントリクエスト構造を設定します。
トリガーのリクエストセクションに移動します。
コンテンツタイプドロップダウンメニューを使用して、エンドポイントが受け入れるデータの種類を選択します。 たとえば、application/jsonを選択すると、エンドポイントは有効なJSONデータを受け入れます。
任意です。 リクエストヘッダーセクションを使用して、リクエストヘッダーで受け入れるパラメーターを定義します。
任意です。 パスパラメーターセクションを使用して、JSONおよびText/XMLリクエストのエンドポイントパスで受け入れるパラメーターを定義します。 サンプルJSONファイルをアップロードするか、フィールドを手動で入力できます。
リクエストスキーマセクションを使用して、JSONおよびMultipartリクエストのリクエスト本文のスキーマを定義します。 サンプルJSONファイルをアップロードするか、フィールドを手動で入力できます。
手順の概要
この手順では、新規APIリクエストトリガーのフィールドを使用して、エンドポイントのリクエスト構造を定義します。
エンドポイントレスポンス構造を設定します。
トリガーのレスポンスセクションに移動します。
コンテンツタイプドロップダウンメニューを使用して、レスポンスで送信するデータの種類を選択します。
任意です。 レスポンスヘッダーセクションを使用して、レスポンスヘッダーで送信するパラメーターを定義します。
レスポンスセクションに移動し、レスポンスを追加を選択します。
レスポンス#1セクションでレスポンスの名前を指定します。
HTTPステータスコードドロップダウンメニューを使用して、レスポンスのコードを選択します。 または、入力フィールドを標準レスポンスからカスタムレスポンスに切り替え、2xxから5xxまでのカスタムHTTPステータスコードを入力できます。
レスポンスセクションを使用して、レスポンス本文のスキーマを定義します。 サンプルJSONファイルをアップロードするか、フィールドを手動で入力できます。
ルートを含む親の間でプロパティをドラッグアンドドロップすることで、ネストされたスキーマレスポンスを作成できます。 または、スキーマを編集ボタンをクリックし、使用する予定のネストされたスキーマを指定します。
レスポンススキーマ
[
{
"name": "Accounts",
"type": "array",
"of": "object",
"label": "Accounts",
"optional": false,
"hint": "Found Salesforce accounts",
"properties": [
{
"control_type": "text",
"label": "ID",
"name": "ID",
"type": "string",
"optional": false,
"hint": "Account ID"
},
{
"control_type": "text",
"label": "Name",
"name": "Name",
"type": "string",
"optional": false,
"hint": "Account name"
}
]
}
]手順の概要
この手順では、新規APIリクエストトリガーのフィールドを使用して、エンドポイントのレスポンス構造を定義します。
+ Add stepをクリックし、Handle errorsを選択します。
エラー処理ステップを追加
MCPサーバー
APIエンドポイントをMCPサーバーで使用する予定の場合、エラー処理制御ステートメントは不要です。 MCPサーバーがAPI platformに接続する方法についてはMCPローカルサーバーのドキュメントを、MCPサーバーでAPIエンドポイントを作成して使用する方法の手順ガイドについてはMCPユースケースセクションを参照してください。
エラー処理制御ステートメントはどのように機能しますか?
エラー処理制御ステートメントを使用すると、プログラミング言語のtry/catchの概念と同様に、レシピ内のアクションのエラーを監視できます。 エラーが発生した場合、次のアクションを実行できます:
ネットワークの問題などの一時的なエラーであった場合に備えて、一連のアクションを再試行します。
メールまたはアプリ内のエラーメッセージを通じてユーザーにエラーを通知する、ロールバックを実行するなどの修復アクションを実行します。 たとえば、作成済みまたは作成途中のレコードを削除することで、ジョブを元に戻すことができます。
この制御ステートメントは、監視ブロックとエラーブロックの2つのブロックで構成されます。 エラーを監視する予定のアクションを監視ブロック内に配置します。 すべてのアクションが成功した場合、Workatoはエラーブロックを無視します。 ただし、監視ブロック内のいずれかのアクションでエラーが発生した場合、エラーブロック内のアクションが実行されます。
Monitorブロックを設定します。
APIエンドポイントを通じて公開する予定のアクションを、エラーを監視するアクションブロック内に追加します。 アプリの具体的なコネクションおよび設定手順については、コネクターのドキュメントを参照してください。
エラーを監視するアクションを追加
+ステップを追加>アプリ内のアクションをクリックします。
API platform by Workatoを検索して選択します。
操作でエラーが発生しない場合に送信するレスポンスの種類を、レスポンスドロップダウンメニューを使用して選択します。 このメニューのオプションは、レシピの新規APIリクエストトリガーで定義されたレスポンスによって決まります。
IF条件を使用すると、レシピデータに基づいて異なるレスポンスを送信できます。
レシピでエラーが発生しない場合にレスポンス本文で返すデータを設定するには、レスポンス本文セクションを使用します。 このセクションの構造は、新規APIリクエストトリガーで定義されたスキーマに基づいて異なります。
レシピでエラーが発生しない場合にレスポンスヘッダーで返すデータを設定するには、レスポンスヘッダーセクションを使用します。 このセクションの構造は、新規APIリクエストトリガーで定義したスキーマに基づいて異なります。
手順の概要
この手順では、APIエンドポイントを通じて公開するレシピロジックと、レシピでエラーが発生しない場合に送信するレスポンスデータを定義します。
Error found? ブロックを設定します。
Error found?ブロックでDo not retryを選択します。
Monitorブロックのアクションを再試行しますか?ドロップダウンメニューを使用して、失敗したアクションを再試行する回数を選択します。 Workatoでは最大3回まで再試行できます。
Select an app and actionをクリックします。
API platform by Workatoを検索して選択します。
操作でエラーが発生した場合に送信するレスポンスの種類を、レスポンスドロップダウンメニューを使用して選択します。 このメニューのオプションは、レシピの新規APIリクエストトリガーで定義したレスポンスによって決まります。
IF条件を使用すると、レシピデータに基づいて異なるレスポンスを送信できます。
レシピでエラーが発生した場合にレスポンス本文で返すデータを設定するには、レスポンス本文セクションを使用します。 このセクションの構造は、新規APIリクエストトリガーで定義したスキーマに基づいて異なります。
レシピでエラーが発生した場合にレスポンスヘッダーで返すデータを設定するには、レスポンスヘッダーセクションを使用します。 このセクションの構造は、新規APIリクエストトリガーで定義したスキーマに基づいて異なります。
手順の概要
この手順では、再試行設定と、レシピでエラーが発生した場合に送信するレスポンスデータを定義します。
APIレシピをテストして実装する準備ができました。
設定済みのAPIレシピ
APIパフォーマンス
APIレシピでレイテンシーを低減する必要がある場合は、レシピの設定>データリテンションタブに移動し、ジョブデータリテンション設定を構成してログの作成を無効にできます。
詳細については、レシピのデータリテンションの定義ガイドを参照してください。
リクエスト本文を解析
必要に応じて、Workatoのデータ処理コネクターを使用して、エンドポイントが受信したデータからデータピルを作成できます。
リクエスト本文を解析するには、次の手順を実行します:
+ステップを追加>アプリ内のアクションをクリックします。
データ処理コネクターを検索して選択します。例: XML tools by Workato。
コネクターのドキュメントを解析アクションを選択します。例: XMLドキュメントを解析。
コネクター固有のフィールドを設定するには、コネクターのドキュメントを参照してください。
入力の想定構造を定義するサンプルドキュメントを入力します。 Workatoはこれを使用して出力スキーマを生成します。
新規APIリクエストトリガーの出力からリクエスト本文Step 1データピルをドキュメントフィールドにマッピングします。
データ解析手順が完了しました。 Workatoは、サンプルドキュメントフィールドで定義された構造に基づいてデータピルを生成します。
APIエンドポイントを公開
レシピを作成した後、次の手順はAPIレシピをAPI platformのエンドポイントとして公開することです。 これにより、エンドポイントをプロダクションにリリースする前にテストし、期待どおりに動作することを確認できます。
レシピをエンドポイントとして公開するには、次の手順を実行します:
エンドポイント管理
APIエンドポイントは次のツールを使用して管理できます:
APIレシピコレクションは、配布とバージョン管理のためにエンドポイントをグループに整理します。
APIクライアントは、APIアクセス管理のためにユーザーをグループに整理します。
APIキーは、APIクライアントに安全な認証を提供します。
APIアクセスポリシーは、クライアントに対してレート制限とリクエスト制限を適用します。
レシピOpsコネクターを使用すると、ワークスペースを監視および管理するレシピを構築できます。 たとえば、API同時実行しきい値超過トリガーを使用して、ワークスペースの同時実行制限を監視できます。
Last updated: