# プロジェクト API

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

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

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

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

# プロジェクトの作成

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

POST /api/projects/:id/build 

# リクエスト

# URL パラメータ

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

# リクエスト本文の引数

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

# サンプルリクエスト

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

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 を使用する場合

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つのプロジェクトビルドオブジェクトを返します。

{
    "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
}
名前 説明
id integer ビルド ID。
created_at timestamp ビルドが作成された日時。
updated_at timestamp ビルドが最後に更新された日時。
description string ビルドの説明。リクエストで指定されていない場合は、null になります。
project_build_id integer ビルドに関連するプロジェクトビルドの ID。
project_id string 作成されたプロジェクトの ID。
state string ビルドの現在の状態。
performed_by_name string プロジェクトを作成したユーザーの名前。
download_url string プロジェクトビルドをダウンロードできる 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 でプロジェクトビルドを取得します。

    GET /api/project_builds/:id
    

    # リクエスト

    # URL パラメータ

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

    # サンプルリクエスト

    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つのプロジェクトビルドオブジェクトを返します。

    {
        "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>"
    }
    
    名前 説明
    id integer ビルド ID。
    created_at timestamp ビルドが作成された日時。
    updated_at timestamp ビルドが最後に更新された日時。
    description string ビルドの説明。ビルドを作成したリクエストで指定されていない場合は、null になります。
    project_id string 作成されたプロジェクトの ID。
    state string ビルドの現在の状態。
    performed_by_name string プロジェクトを作成したユーザーの名前。
    download_url string プロジェクトビルドをダウンロードできる 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

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

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

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

    # リクエスト

    # URL パラメータ

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

    # クエリーパラメータ

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

    # リクエスト本文の引数

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

    # サンプルリクエスト

    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つのデプロイメントオブジェクトを返します。

    {
        "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"
    }
    
    名前 説明
    id integer デプロイメント ID。
    created_at timestamp デプロイメントが作成された日時。
    updated_at timestamp デプロイメントが最後に更新された日時。
    description string デプロイメントの説明。リクエストで提供されていない場合は、null になります。
    project_build_id integer デプロイメントに関連するプロジェクトビルドの ID。
    environment_type string ビルドのデプロイメント先の環境。
    project_id string デプロイメントされたビルドに関連するプロジェクトの ID。
    state string デプロイメントの現在の状態。
    performed_by_name string ビルドをデプロイメントしたユーザーの名前。

    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

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

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

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

    # リクエスト

    # URL パラメータ

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

    # クエリーパラメータ

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

    # リクエスト本文の引数

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

    # サンプルリクエスト

    # プロジェクト ID を使用する場合
    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 を使用する場合
    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つのデプロイメントオブジェクトを返します。

    {
        "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"
    }
    
    名前 説明
    id integer デプロイメント ID。
    created_at timestamp デプロイメントが作成された日時。
    updated_at timestamp デプロイメントが最後に更新された日時。
    description string デプロイメントの説明。リクエストで提供されていない場合は、null になります。
    project_build_id integer デプロイメントに関連するプロジェクトビルドの ID。
    environment_type string プロジェクトのデプロイメント先の環境。
    project_id string デプロイメントされたプロジェクトの ID。
    state string デプロイメントの現在の状態。
    performed_by_name string プロジェクトをデプロイメントしたユーザーの名前。

    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つのデプロイメントを取得します。

    GET /api/deployments/:id
    

    # リクエスト

    # URL パラメータ

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

    # サンプルリクエスト

    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つのデプロイメントオブジェクトを返します。

    {
        "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"
    }
    
    名前 説明
    id integer デプロイメント ID。
    created_at timestamp デプロイメントが作成された日時。
    updated_at timestamp デプロイメントが最後に更新された日時。
    description string デプロイメントの説明。デプロイメントを作成したリクエストで指定されていない場合は、null になります。
    project_build_id integer デプロイメントに関連するプロジェクトビルドの ID。
    environment_type string デプロイメントに関連する環境。
    project_id string デプロイメントに関連するプロジェクトの ID。
    state string デプロイメントの現在の状態。
    performed_by_name string デプロイメントを実行したユーザーの名前。
    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

  • # デプロイメントの列挙

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

    GET /api/deployments
    

    # リクエスト

    # クエリーパラメータ

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

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

    # サンプルリクエスト

    # クエリーパラメータを使用しない場合
    curl  -X POST https://www.workato.com/api/deployments \
          -H 'x-user-email: <email>' \
          -H 'x-user-token: <token>'
    
    # フォルダー ID を使用する場合
    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 ステータスと、デプロイメントオブジェクトのリストを返します。

    {
      "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"
          }
      ]
    }
    
    名前 説明
    items array デプロイメントオブジェクトのリスト。
    名前 説明
    id integer デプロイメント ID。
    created_at timestamp デプロイメントが作成された日時。
    updated_at timestamp デプロイメントが最後に更新された日時。
    description string デプロイメントの説明。デプロイメントを作成したリクエストで指定されていない場合は、null になります。
    project_build_id integer デプロイメントに関連するプロジェクトビルドの ID。
    environment_type string デプロイメントに関連する環境。
    project_id string デプロイメントに関連するプロジェクトの ID。
    state string デプロイメントの現在の状態。
    performed_by_name string デプロイメントを実行したユーザーの名前。

    404 NOT FOUND - INVALID URI

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

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


  • Last updated: 2023/8/31 1:07:14