# レシピ

# クイックリファレンス

タイプ リソース 説明
GET /api/managed_users/:id/recipes カスタマーアカウントに属しているレシピのリストを表示します。
GET /api/managed_users/:id/recipes/:recipe_id カスタマーアカウントに属しているレシピの詳細を取得します。
GET /api/recipes/search 公開レシピを検索します。
POST /api/managed_users/:managed_user_id/recipes カスタマーアカウント内にレシピを作成します。
PUT /api/managed_users/:id/recipes/:recipe_id カスタマーアカウント内のレシピを更新します。
DELETE /api/managed_users/:id/recipes/:recipe_id カスタマーアカウント内のレシピを削除します。
PUT /api/managed_users/:id/recipes/:recipe_id/start カスタマーアカウント内のレシピを開始します。
PUT /api/managed_users/:managed_user_id/recipes/:recipe_id/stop カスタマーアカウント内のレシピを停止します。

# カスタマーアカウント内のレシピのリストの表示

認証されたユーザーに属しているレシピのリストを返します。レシピは ID の降順に返されます。[Lifetime task count (存続期間中のタスク数)] には、2021年3月19日以降のタスクデータが含まれています。

レシピは、状態 (実行中または停止) で絞り込んでから、停止日と理由でさらに絞り込むことができます。

GET /api/managed_users/:id/recipes

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。

# クエリパラメータ

名前 説明
adapter_names_any string
任意
アダプター名のリスト。結果のレシピでは、指定されたアダプターの少なくとも1つが使用されます。
adapter_names_all string
任意
アダプター名のリスト。結果のレシピでは、指定されたアダプターのすべてが使用されます。
page integer
任意
ページ番号 (デフォルト値は1)。
per_page integer
任意
ページサイズ (デフォルト値は10、最大許容値は1ページあたり100)。
since_id integer
任意
指定された ID より小さい ID を持つレシピを検索します。
folder_id string
任意
指定されたフォルダー内のレシピを返します。
running boolean
任意
true の場合に、実行中のレシピを返します。
stopped_after string
任意
指定された日付と時刻以降に停止されたレシピを除外します。日付と時刻は ISO 8601形式で指定する必要があります。
stop_cause string
任意
レシピが停止された理由。考えられる理由 —
trigger_errors_limit : 連続トリガーエラーが原因でレシピが停止された
action_quota_limit : カスタマーがプランのタスク数の上限を超えた
trial_expired : カスタマーのトライアルの期限が切れた
txn_quota_limit : カスタマーがプランのジョブ数の上限を超えた

# サンプルリクエスト

curl  -X GET https://www.workato.com/api/managed_users/91829/recipes?active=true \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

# レスポンス

{
    "result": [
        {
            "id": 51554,
            "user_id": 4248,
            "name": "Send mail",
            "created_at": "2021-10-28T05:15:40.869-07:00",
            "updated_at": "2021-10-28T05:15:40.869-07:00",
            "copy_count": 1,
            "trigger_application": "clock",
            "action_applications": [
                "email"
            ],
            "applications": [
                "clock",
                "email"
            ],
            "description": "When there is a trigger on a specified interval, send email via Workato",
            "parameters_schema": [],
            "parameters": {},
            "folder_id": 4520,
            "running": true,
            "job_succeeded_count": 0,
            "job_failed_count": 0,
            "lifetime_task_count": 0,
            "last_run_at": "2016-08-03T11:06:51.481-07:00",
            "stopped_at": "2021-09-03T11:06:51.481-07:00",
            "version_no": 2,
            "webhook_url": null,
            "stop_cause": null,
            "config": [
                {
                    "keyword": "application",
                    "name": "clock",
                    "provider": "clock",
                    "account_id": null
                },
                {
                    "keyword": "application",
                    "name": "email",
                    "provider": "email",
                    "account_id": null
                }
            ],
            "code": "{\"number\":0,\"provider\":\"clock\",\"name\":\"timer\",\"as\":\"timer\",\"keyword\":\"trigger\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{\"interval\":\"5\",\"start_at\":\"\"},\"block\":[{\"number\":1,\"provider\":\"email\",\"name\":\"send_mail\",\"as\":\"send_mail\",\"keyword\":\"action\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{},\"uuid\":\"cd865246-ece7-4188-845e-33d021664be3\"}],\"uuid\":\"c4b0778d-5a23-4c52-a5bb-4a99ae5d25ae\"}"
        }
    ]
}

# カスタマーアカウント内のレシピの取得

指定されたレシピの詳細を返します。

GET /api/managed_users/:id/recipes/:recipe_id

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。
recipe_id integer
必須
レシピ ID。

# サンプルリクエスト

curl  -X GET https://www.workato.com/api/managed_users/91829/recipes?active=true \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

# レスポンス

{
    "result": [
      {
          "id": 281302,
          "user_id": 4848,
          "name": "New webhook call will get JIRA ticket information",
          "created_at": "2016-08-03T11:06:23.950-07:00",
          "updated_at": "2021-11-29T23:31:58.735-08:00",
          "copy_count": 3,
          "trigger_application": "workato_webhooks",
          "action_applications": [
              "jira"
          ],
          "applications": [
              "workato_webhooks",
              "jira"
          ],
          "description": "New webhook call will get JIRA ticket information",
          "parameters_schema": [],
          "parameters": {},
          "folder_id": 4724,
          "running": false,
          "job_succeeded_count": 0,
          "job_failed_count": 0,
          "lifetime_task_count": 0,
          "last_run_at": "2016-08-03T11:06:51.481-07:00",
          "stopped_at": "2016-08-03T11:22:57.285-07:00",
          "version_no": 2,
          "webhook_url": "https://www.workato.com/webhooks/rest/51b6a38f-0102-494d-8290-9d550aeeab3c/webhook_recipe",
          "stop_cause": null,
          "config": [
              {
                  "name": "jira",
                  "provider": "jira",
                  "keyword": "application",
                  "skip_validation": false,
                  "account_id": null
              },
              {
                  "keyword": "application",
                  "name": "workato_webhooks",
                  "provider": "workato_webhooks",
                  "skip_validation": false,
                  "account_id": null
              }
          ],
          "code": "...truncated...",
          "author_name": "Kevin Smith",
          "version_author_name": "Jennifer Diaz"
      }
    ]
}

# 公開レシピの検索

公開レシピを検索して、リストを返します。一致するコネクターが見つからなかった場合は、空のリストを返します。

GET /api/recipes/search

# URL パラメータ

名前 説明
term string
任意
検索語。
boost_owned boolean
任意
true の場合は、返される結果によってアカウント内のレシピに優先度が設定されます。デフォルトで false に設定されます。
page integer
任意
ページ番号。デフォルトで0に設定されます。
per_page integer
任意
ページサイズ。デフォルトで20に設定されます。最大値は20です。

# クエリパラメータ

名前 説明
applications string
必須
カンマ区切りのコネクター識別子 (例: salesforce、service_now)。

# サンプルリクエスト

curl  -X GET https://www.workato.com/api/recipes/search?per_page=1 \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \
      -d '{
            "applications": "salesforce,service_now"
          }'

# レスポンス

{
  "items": [
    {
      "id": 59,
      "user_id": 50,
      "name": "Recipe 58",
      "created_at": "2015-05-26T22:53:39.032Z",
      "updated_at": "2015-05-26T22:53:39.032Z",
      "copy_count": 1,
      "trigger_application": null,
      "action_applications": [
        "salesforce",
        "service_now"
      ],
      "applications": [
        "salesforce"
      ],
      "description": "Recipe description 58",
      "parameters_schema": []
    }
  ]
}

# カスタマーアカウント内のレシピの作成

リクエスト内のパラメータに基づいて Workato 内にレシピを作成します。

POST /api/managed_users/:id/recipes

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。

# ペイロード

名前 説明
recipe object
必須
レシピオブジェクト。
recipe[name] string
任意
レシピの名前。
recipe[code] string
任意
レシピ行を表す JSON 文字列。
recipe[config] string
任意
コネクション行を表す JSON 文字列。
recipe[folder_id] string
任意
レシピのフォルダ。

# サンプルリクエスト

curl  -X POST https://www.workato.com/api/managed_users/recipes \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \
      -d  '{
             "recipe": {
               "name":"Send mail",
               "code":"{\"number\":0,\"provider\":\"clock\",\"name\":\"scheduled_event\",\"as\":\"timer\",\"title\":null,\"description\":\"<span class=\\\"provider\\\">Trigger</span> on a <span class=\\\"provider\\\">specified schedule</span>\",\"keyword\":\"trigger\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{\"time_unit\":\"minutes\",\"trigger_every\":\"5\"},\"extended_input_schema\":[{\"type\":\"string\",\"name\":\"trigger_every\",\"control_type\":\"integer\",\"label\":\"Trigger every\",\"hint\":\"Define repeating schedule. Enter whole numbers only.\\n                        This field can be set to a minimum of 5 minutes.\",\"default\":\"5\",\"optional\":false,\"extends_schema\":true},{\"type\":\"date_time\",\"name\":\"start_after\",\"control_type\":\"date_time\",\"label\":\"Start after\",\"hint\":\"Set date and time to start or leave blank to start immediately. <b>Once recipe has been run or tested, value cannot be changed.</b>\",\"optional\":true,\"extends_schema\":true,\"since_field\":true,\"render_input\":\"date_time_conversion\",\"parse_output\":\"date_time_conversion\"}],\"block\":[{\"number\":1,\"provider\":\"email\",\"name\":\"send_mail\",\"as\":\"send_mail\",\"keyword\":\"action\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{\"email_type\":\"html\"},\"uuid\":\"cd865246-ece7-4188-845e-33d021664be3\"}],\"uuid\":\"c4b0778d-5a23-4c52-a5bb-4a99ae5d25ae\"}",
               "config":"[{\"keyword\":\"application\",\"name\":\"clock\",\"provider\":\"clock\"},{\"keyword\":\"application\",\"name\":\"email\",\"provider\":\"email\"}]",
               "folder_id": "17254"
             }
          }'

# レスポンス

{
  "success": true,
  "id": 11613
}

# カスタマーアカウント内のレシピの更新

レシピ ID に基づいて指定された Workato 内の既存のレシピを更新します。レシピの詳細は、リクエスト内のパラメータに基づいて定義されます。

PUT /api/managed_users/:id/recipes/:recipe_id

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。
recipe_id integer
必須
レシピ ID。

# ペイロード

名前 説明
recipe object
任意
レシピオブジェクト。
recipe[name] string
任意
レシピの名前。
recipe[code] string
任意
レシピ行を表す JSON 文字列。
recipe[config] string
任意
コネクション行を表す JSON 文字列。
recipe[folder_id] string
任意
レシピのフォルダ。

# サンプルリクエスト

curl  -X PUT 'https://www.workato.com/api/managed_users/17829/recipes/1389' \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \
      -d  '{
            "recipe": {
              "name": "Send mail",
              "code": "{\"number\":0,\"provider\":\"clock\",\"name\":\"timer\",\"as\":\"timer\",\"keyword\":\"trigger\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{\"interval\":\"5\",\"start_at\":\"\"},\"block\":[{\"number\":1,\"provider\":\"email\",\"name\":\"send_mail\",\"as\":\"send_mail\",\"keyword\":\"action\",\"dynamicPickListSelection\":{},\"toggleCfg\":{},\"input\":{},\"uuid\":\"cd865246-ece7-4188-845e-33d021664be3\"}],\"uuid\":\"c4b0778d-5a23-4c52-a5bb-4a99ae5d25ae\"}",
              "config": "[{\"keyword\":\"application\",\"name\":\"clock\",\"provider\":\"clock\"},{\"keyword\":\"application\",\"name\":\"email\",\"provider\":\"email\"}]",
              "folder_id": "17254"
             }
          }'

# レスポンス

{
  "success": true
}

実行中のレシピは更新できません

実行中のレシピに対する更新呼び出しを行うと、エラーが返されます。

# カスタマーアカウント内のレシピの削除

レシピ ID に基づいて指定された Workato 内の既存のレシピを削除します。

DELETE /api/managed_users/:id/recipes/:recipe_id

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。
recipe_id integer
必須
レシピ ID。

# サンプルリクエスト

curl  -X DELETE 'https://www.workato.com/api/managed_users/17829/recipes/1389' \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json'

# レスポンス

{
  "success": true
}

# カスタマーアカウント内のレシピの開始

レシピ ID によって指定されたカスタマーアカウント内のレシピを開始します。

PUT /api/managed_users/:managed_user_id/recipes/:recipe_id/start

# URL パラメータ

名前 説明
managed_user_id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。
recipe_id integer
任意
レシピ ID。

# サンプルリクエスト

curl  -X PUT https://www.workato.com/api/managed_users/91929/recipes/1028949/start \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

# レスポンス

{
  "success": true
}

# カスタマーアカウント内のレシピの停止

レシピ ID によって指定されたカスタマーアカウント内のレシピを停止します。

PUT /api/managed_users/:managed_user_id/recipes/:recipe_id/stop

# URL パラメータ

名前 説明
managed_user_id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : Ea2300)。結果として返される ID は URL エンコードされます。
recipe_id integer
任意
レシピ ID。

# サンプルリクエスト

curl  -X PUT https://www.workato.com/api/managed_users/91929/recipes/1028949/stop \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

# レスポンス

{
  "success": true
}

# レシピトリガーのリセット 

顧客のレシピトリガーカーソルをレシピIDでリセットします。このエンドポイントを使用して、ソースアプリケーションからデータを再同期します。レシピは重複レコードを処理できるように設計する必要があります。再同期はすべてのレコードを再処理します。データ統合シナリオ以外でこのエンドポイントを使用すると、データの損失や破損などの意図しない動作が発生する可能性があります。レシピトリガーをリセットすると、ジョブ履歴が保持され、レシピのアクティビティ監査ログにイベントが記録されます。

アクティブなレシピでトリガーをリセットする場合、実行中、延期中、保留中のジョブが実行され、完了した後にリセットトリガーによって作成された新しいジョブに進みます。

トリガーの互換性

このエンドポイントは、ポーリングおよびスケジュールトリガーとのみ互換性があります。他のトリガーをリセットすると、効果がないか、意図しない動作が発生する可能性があります。これらのトリガーには次のものがあります:

  • フォルダー内の新しいCSVファイルトリガー
  • 関数トリガー
  • APIトリガー
  • RecipeOpsトリガー
  • Workbotトリガー
  • Kafkaトリガー
POST /api/managed_users/:managed_user_id/recipes/:recipe_id/reset_trigger

# パスパラメータ

名前 タイプ 説明
managed_user_id string
必須
Workato組み込み顧客アカウントID/外部ID。
外部IDはEで始まる必要があり、結果のIDはURLエンコードする必要があります。
recipe_id integer
必須
リセットするレシピのID。

# サンプルリクエスト

curl  -X POST https://www.workato.com/api/managed_users/E1234/recipes/91929/reset_trigger \
      -H 'Authorization: Bearer <api_token>'

# レスポンス

{
    "success": true
}

# ポーリングトリガーの即時開始

レシピIDを指定してリアルタイムでポーリングトリガーのレシピを開始します。

特定のレシピのステータスを確認するには、ジョブAPIを使用します。

POST /api/managed_users/:managed_user_id/recipes/:recipe_id/poll_now

# パスパラメータ

名前 タイプ 説明
recipe_id integer
必須
開始するレシピのID。

# サンプルリクエスト

curl  -X POST https://www.workato.com/api/managed_users/E1234/recipes/12345/poll_now \
      -H 'Authorization: Bearer <api_token>'

# レスポンス

# ジョブが開始されました

{
    "success": true
}

# ジョブが既に進行中です

{ 
    "message": "Recipe is currently in trigger back off mode till 2023-06-23T23:02" }
}

# エラーコード

名前 説明 サンプルの返信
404 見つかりません {"success": false, "message": "Not Found"}
429 リクエストが多すぎます。Retry-Afterヘッダー (opens new window)には、新しいリクエストを行う前に待機する時間が指定されています。 {"message": "Recipe is currently in trigger back off mode till 2023-06-23T11:02"}, または {"message": "Not enough transaction credit"}, または {"message": "Not enough action quota"}
400 不正なリクエスト {"message":"Trial has expired"}


Last updated: 2024/2/13 16:59:53