プロジェクト API

Workato では、自動化アセットをまとめ、アクセスを制御するためにプロジェクトを使用します。プロジェクトには、コネクション、レシピ、サブフォルダーなど、自動化に関連するアセットが格納されます。

これらの API を使用できるアカウント

Environments 機能が有効になっているアカウントは、このガイドで紹介している API を使用できます。この機能が有効になっていないアカウントから送信されたリクエストには、400 - Environments not provisioned レスポンスが返されます。

プロジェクト API を使用すると、ワークスペースにプロビジョニングされた環境内で、プログラムによりプロジェクトを管理およびデプロイメントすることができます。


プロジェクトのデプロイメントについて

Workato では、以下の2つの方法でプロジェクトをデプロイメントできます。

  • 作成してからデプロイメントする。 外部バージョン管理システムにパッケージをコミットする場合は、この方法を使用できます。この方法を実行する手順は以下のようになります。

    1

    プロジェクトを作成します。POST /api/projects/:id/build

    2

    プロジェクトが正しく作成されたことを確認します。GET /api/project_builds/:id

    3

    GitHub などのバージョン管理システムにコミットする場合は、ステップ2のレスポンスからの download_url を使用して、パッケージをダウンロードします。

    4

    バージョン管理システムにパッケージをコミットします。

    5

    プロジェクトビルドを環境にデプロイメントします。POST /api/project_builds/:id/deploy?environment_type=:environment_type

    6

    プロジェクトが正しくデプロイメントされたことを確認します。GET /api/deployments/:id

  • 1ステップで作成してデプロイメントする。 バージョン管理システムにプロジェクトをコミットする必要がない場合は、この方法を使用できます。

    1

    プロジェクトを作成して、環境にデプロイメントします。POST /api/projects/:id/deploy?environment_type=:environment_type

    2

    プロジェクトが正しくデプロイメントされたことを確認します。GET /api/deployments/:id


クイックリファレンス

エンドポイント説明
POST /projects/:id/build プロジェクトを作成します。プロジェクトを環境にデプロイメントするには、プロジェクトビルドのデプロイメントエンドポイントを使用します。
GET /project_builds/:id 一意の ID でプロジェクトビルドを取得します。
POST /project_builds/:id/deploy?environment_type=:environment_type プロジェクトビルドを環境にデプロイメントします。プロジェクトを先にビルドするには、プロジェクトの作成エンドポイントを使用します。
POST /projects/:id/deploy?environment_type=:environment_type プロジェクトを作成して、環境にデプロイメントします。
GET /deployments/:id 一意の ID で1つのデプロイメントを取得します。
GET /deployments デプロイメントのリストを取得します。クエリーパラメータを使用して、特定のプロジェクト、フォルダー、日付範囲などで結果を絞り込むことができます。

プロジェクトのビルド

プロジェクトを作成します。プロジェクトを環境にデプロイメントするには、プロジェクトビルドのデプロイメントエンドポイントを使用します。

shell
POST /api/projects/:id/build

リクエスト

URL パラメータ

名前説明
idinteger
必須
プロジェクト ID。このパラメータでは以下の値を使用できます。

リクエスト本文の引数

名前説明
descriptionstring
任意
ビルドの簡単な説明。

サンプルリクエスト

プロジェクト ID を使用する場合

shell
curl  -X POST https://www.workato.com/api/projects/10416/build \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
      -d '{
            "description": "Fixes bugs"
          }'

フォルダー ID を使用する場合

shell
curl  -X POST https://www.workato.com/api/projects/f660222/build \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
      -d '{
            "description": "Fixes bugs"
          }'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、1つのプロジェクトビルドオブジェクトを返します。

json
{
    "id": 46,
    "created_at": "2021-12-09T22:09:29.997-08:00",
    "updated_at": "2021-12-09T22:09:30.004-08:00",
    "description": "Fixes bugs",
    "project_id": "10416",
    "state": "pending",
    "performed_by_name": "Finn the Human",
    "download_url": null
}
名前説明
idintegerビルド ID。
created_attimestampビルドが作成された日時。
updated_attimestampビルドが最後に更新された日時。
descriptionstringビルドの説明。リクエストで指定されていない場合は、null になります。
project_build_idintegerビルドに関連するプロジェクトビルドの ID。
project_idstring作成されたプロジェクトの ID。
statestringビルドの現在の状態。
performed_by_namestringプロジェクトを作成したユーザーの名前。
download_urlstringプロジェクトビルドをダウンロードできる URL。

400 BAD REQUEST - MISSING REQUIRED PARAMETERS

リクエストの形式が正しくない場合は、API により 400 BAD REQUEST ステータスと以下のエラーが返されることがあります。

environment_type パラメータの欠如 :

{
   "message": "Missing parameter environment_type"
}

404 NOT FOUND - INVALID PARAMETERS

以下の理由で、API により 404 NOT FOUND ステータスと Not found エラーが返されることがあります。

  • 無効な id
  • 無効な environment_type

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


プロジェクトビルドの取得

一意の ID でプロジェクトビルドを取得します。

shell
GET /api/project_builds/:id

リクエスト

URL パラメータ

名前説明
idinteger
必須
取得するプロジェクトビルドの ID。

サンプルリクエスト

shell
curl  -X POST https://www.workato.com/api/project_builds/72 \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、1つのプロジェクトビルドオブジェクトを返します。

json
{
    "id": 72,
    "created_at": "2021-12-10T11:39:15.738-08:00",
    "updated_at": "2021-12-10T11:39:16.218-08:00",
    "description": null,
    "project_id": "10416",
    "state": "success",
    "performed_by_name": "Erin Cochran",
    "download_url": "https://workato-assets.s3.us-west-2.amazonaws.com/packages/zip_files/000/714/699/original/<PROJECT_NAME_DATE>.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=<CREDENTIAL>"
}
名前説明
idintegerビルド ID。
created_attimestampビルドが作成された日時。
updated_attimestampビルドが最後に更新された日時。
descriptionstringビルドの説明。ビルドを作成したリクエストで指定されていない場合は、null になります。
project_idstring作成されたプロジェクトの ID。
statestringビルドの現在の状態。
performed_by_namestringプロジェクトを作成したユーザーの名前。
download_urlstringプロジェクトビルドをダウンロードできる URL。
404 NOT FOUND - INVALID PARAMETERS

API は以下の理由で、404 NOT FOUND ステータスおよび Not found エラーを返す場合があります。

  • 無効なプロジェクトビルド id

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


プロジェクトビルドのデプロイメント

プロジェクトビルドを環境にデプロイメントします。プロジェクトを先にビルドするには、プロジェクトの作成エンドポイントを使用します。

shell
POST /api/project_builds/:id/deploy?environment_type=:environment_type

リクエスト

URL パラメータ

名前説明
idinteger
必須
デプロイメントするビルドの ID。

クエリーパラメータ

名前説明
environment_typestring
必須
ビルドのデプロイメント先の環境。指定可能な値 :
  • test
  • prod

リクエスト本文の引数

名前説明
descriptionstring
任意
ビルドの簡単な説明。

サンプルリクエスト

shell
curl  -X POST https://www.workato.com/api/project_builds/46/deploy?environment_type=test \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、1つのデプロイメントオブジェクトを返します。

json
{
    "id": 67,
    "created_at": "2021-12-10T11:59:03.426-08:00",
    "updated_at": "2021-12-10T11:59:03.426-08:00",
    "description": null,
    "project_build_id": 46,
    "environment_type": "test",
    "project_id": "10416",
    "state": "pending",
    "performed_by_name": "Finn the Human"
}
名前説明
idintegerデプロイメント ID。
created_attimestampデプロイメントが作成された日時。
updated_attimestampデプロイメントが最後に更新された日時。
descriptionstringデプロイメントの説明。リクエストで提供されていない場合は、null になります。
project_build_idintegerデプロイメントに関連するプロジェクトビルドの ID。
environment_typestringビルドのデプロイメント先の環境。
project_idstringデプロイメントされたビルドに関連するプロジェクトの ID。
statestringデプロイメントの現在の状態。
performed_by_namestringビルドをデプロイメントしたユーザーの名前。

400 BAD REQUEST - MISSING REQUIRED PARAMETERS

リクエストの形式が正しくない場合は、API により 400 BAD REQUEST ステータスと以下のエラーが返されることがあります。

environment_type パラメータの欠如 :

{
   "message": "Missing parameter environment_type"
}

404 NOT FOUND - INVALID PARAMETERS

以下の理由で、API により 404 NOT FOUND ステータスと Not found エラーが返されることがあります。

  • 無効な id
  • 無効な environment_type

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


プロジェクトのデプロイメント

プロジェクトを作成して、環境にデプロイメントします。

shell
POST /api/projects/:id/deploy?environment_type=:environment_type

リクエスト

URL パラメータ

名前説明
idinteger
必須
プロジェクト ID。このパラメータでは以下の値を使用できます。

クエリーパラメータ

名前説明
environment_typestring
必須
プロジェクトのデプロイメント先の環境。指定可能な値 :
  • test
  • prod

リクエスト本文の引数

名前説明
descriptionstring
任意
デプロイメントの簡単な説明。

サンプルリクエスト

プロジェクト ID を使用する場合
shell
curl  -X POST https://www.workato.com/api/projects/10416/deploy?environment_type=test \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
フォルダー ID を使用する場合
shell
curl  -X POST https://www.workato.com/api/projects/f660222/deploy?environment_type=test \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、1つのデプロイメントオブジェクトを返します。

json
{
    "id": 47,
    "created_at": "2021-12-09T22:37:30.025-08:00",
    "updated_at": "2021-12-09T22:37:30.025-08:00",
    "description": null,
    "project_build_id": 52,
    "environment_type": "test",
    "project_id": "10416",
    "state": "pending",
    "performed_by_name": "Finn the Human"
}
名前説明
idintegerデプロイメント ID。
created_attimestampデプロイメントが作成された日時。
updated_attimestampデプロイメントが最後に更新された日時。
descriptionstringデプロイメントの説明。リクエストで提供されていない場合は、null になります。
project_build_idintegerデプロイメントに関連するプロジェクトビルドの ID。
environment_typestringプロジェクトのデプロイメント先の環境。
project_idstringデプロイメントされたプロジェクトの ID。
statestringデプロイメントの現在の状態。
performed_by_namestringプロジェクトをデプロイメントしたユーザーの名前。

400 BAD REQUEST - MISSING REQUIRED PARAMETERS

リクエストの形式が正しくない場合は、API により 400 BAD REQUEST ステータスと以下のエラーが返されることがあります。

environment_type パラメータの欠如 :

{
   "message": "Missing parameter environment_type"
}

404 NOT FOUND - INVALID PARAMETERS

以下の理由で、API により 404 NOT FOUND ステータスと Not found エラーが返されることがあります。

  • 無効な id
  • 無効な environment_type

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


デプロイメントの取得

一意の ID で1つのデプロイメントを取得します。

shell
GET /api/deployments/:id

リクエスト

URL パラメータ

名前説明
idinteger
必須
取得するデプロイメントの ID。

サンプルリクエスト

shell
curl  -X POST https://www.workato.com/api/deployments/43 \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、1つのデプロイメントオブジェクトを返します。

json
{
    "id": 43,
    "created_at": "2021-12-09T22:30:09.005-08:00",
    "updated_at": "2021-12-09T22:30:09.933-08:00",
    "description": null,
    "project_build_id": 46,
    "environment_type": "test",
    "project_id": "10416",
    "state": "success",
    "performed_by_name": "Finn the Human"
}
名前説明
idintegerデプロイメント ID。
created_attimestampデプロイメントが作成された日時。
updated_attimestampデプロイメントが最後に更新された日時。
descriptionstringデプロイメントの説明。デプロイメントを作成したリクエストで指定されていない場合は、null になります。
project_build_idintegerデプロイメントに関連するプロジェクトビルドの ID。
environment_typestringデプロイメントに関連する環境。
project_idstringデプロイメントに関連するプロジェクトの ID。
statestringデプロイメントの現在の状態。
performed_by_namestringデプロイメントを実行したユーザーの名前。
404 NOT FOUND - INVALID PARAMETERS

API は以下の理由で、404 NOT FOUND ステータスおよび Not found エラーを返す場合があります。

  • 無効な deployment_id

404 NOT FOUND - INVALID PARAMETERS

以下の理由で、API により 404 NOT FOUND ステータスと Not found エラーが返されることがあります。

  • 無効な id
  • 無効な environment_type

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


デプロイメントの列挙

デプロイメントのリストを取得します。クエリーパラメータを使用して、特定のプロジェクト、フォルダー、日付範囲などで結果を絞り込むことができます。

shell
GET /api/deployments

リクエスト

クエリーパラメータ

名前説明
project_idstring
任意
プロジェクト ID。指定すると、このプロジェクトに関連するデプロイメントのみがレスポンスに含まれます。
folder_idstring
任意
f{:folder_id} 形式のフォルダー ID。例 : f660222。指定すると、このフォルダーに関連するデプロイメントのみがレスポンスに含まれます。

これらの ID を取得するには、フォルダーの列挙エンドポイントを使用します。
environment_typestring
任意
環境のタイプ。指定すると、この環境に関連するデプロイメントのみがレスポンスに含まれます。以下のいずれかである必要があります。
  • test
  • prod
statestring
任意
取得するデプロイメントの状態。指定すると、指定した状態のデプロイメントのみがレスポンスに含まれます。以下のいずれかである必要があります。
  • pending
  • success
  • failed
fromtimestamp
任意
この日時より後に作成されたデプロイメントが、レスポンスに含まれます。値は ISO 8601タイムスタンプである必要があります。
totimestamp
任意
この日時より前に作成されたデプロイメントが、レスポンスに含まれます。値は ISO 8601タイムスタンプである必要があります。

サンプルリクエスト

クエリーパラメータを使用しない場合
shell
curl  -X POST https://www.workato.com/api/deployments \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
フォルダー ID を使用する場合
shell
curl  -X POST https://www.workato.com/api/deployments?folder_id=f660222 \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

レスポンス

200 OK

成功すると、API は 200 OK ステータスと、デプロイメントオブジェクトのリストを返します。

json
{
  "items": [
      {
          "id": 49,
          "created_at": "2021-12-09T22:58:45.306-08:00",
          "updated_at": "2021-12-09T22:58:46.483-08:00",
          "description": "Resolve bugs",
          "project_build_id": 54,
          "environment_type": "dev",
          "project_id": "10416",
          "state": "success",
          "performed_by_name": "Finn the Human"
      },
      {
          "id": 48,
          "created_at": "2021-12-09T22:57:10.820-08:00",
          "updated_at": "2021-12-09T22:57:11.865-08:00",
          "description": "Add functionality",
          "project_build_id": 53,
          "environment_type": "dev",
          "project_id": "10416",
          "state": "success",
          "performed_by_name": "Finn the Human"
      },
      {
          "id": 47,
          "created_at": "2021-12-09T22:37:30.025-08:00",
          "updated_at": "2021-12-09T22:37:31.186-08:00",
          "description": null,
          "project_build_id": 52,
          "environment_type": "dev",
          "project_id": "10416",
          "state": "success",
          "performed_by_name": "Finn the Human"
      }
  ]
}
名前説明
itemsarrayデプロイメントオブジェクトのリスト。
名前説明
idintegerデプロイメント ID。
created_attimestampデプロイメントが作成された日時。
updated_attimestampデプロイメントが最後に更新された日時。
descriptionstringデプロイメントの説明。デプロイメントを作成したリクエストで指定されていない場合は、null になります。
project_build_idintegerデプロイメントに関連するプロジェクトビルドの ID。
environment_typestringデプロイメントに関連する環境。
project_idstringデプロイメントに関連するプロジェクトの ID。
statestringデプロイメントの現在の状態。
performed_by_namestringデプロイメントを実行したユーザーの名前。

404 NOT FOUND - INVALID URI

以下の理由で、API により 404 NOT FOUND ステータスと API not found エラーが返されることがあります。

  • サポートされていない方法
  • 正しくない URI


Last updated: