# API プラットフォーム

API プラットフォーム API を使用すれば、エンドポイント、コレクション、クライアント、アクセスプロファイルなどの API プラットフォームアセットをプログラムで作成して管理することができます。

ここに列挙するすべてのエンドポイントは、Embedded ベンダー API で、oem_vendor 権限が必要です。API プラットフォーム機能は、パートナー管理者アカウントとカスタマーアカウントで有効にする必要がある機能アドオンでもあります。Workato の担当者に両方の権限を有効にするように伝えてください。

カスタマーアカウントに対して API プラットフォームを有効にする予定の Embedded パートナーは、このガイドで詳細を確認してください。

# クイックリファレンス

タイプ リソース 説明
GET /api_collections カスタマーアカウント内の API コレクション を列挙します。
POST /api_collections カスタマーアカウント内に API コレクション を作成します。
GET /api_endpoints コレクション内の API エンドポイント を列挙します。
PUT /api_endpoints/:api_endpoint_id/enable コレクション内の API エンドポイント を有効にします。
PUT /api_endpoints/:api_endpoint_id/disable コレクション内の API エンドポイント を無効にします。
GET /api_clients カスタマーアカウント内の API クライアント を列挙します。
POST /api_clients カスタマーアカウント内に API クライアント を作成します。
GET /api_access_profiles カスタマーアカウント内の API クライアントに属している アクセスプロファイル を列挙します。
POST /api_access_profiles カスタマーアカウント内の API クライアントに属している アクセスプロファイル を作成します。
PUT /api_access_profiles カスタマーアカウント内の API クライアントに属している アクセスプロファイル を更新します。
PUT /api_access_profiles/:api_access_profile_id/enable カスタマーアカウント内の API クライアントに属している アクセスプロファイル を有効にします。
PUT /api_access_profiles/:api_access_profile_id/disable カスタマーアカウント内の API クライアントに属している アクセスプロファイル を無効にします。
PUT /api_access_profiles/:access_profile_id/refresh_secret アクセスプロファイル トークンまたはシークレット を更新します。

# ベースパス

上記すべての API で、ベースパスは /api/managed_users/:id です。ここで、URL パラメータとしてカスタマーアカウント ID が必要になります。

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

例 :

https://www.workato.com/api/managed_users/5454/api_collections

# API コレクションの列挙

カスタマーアカウント内のすべての API コレクションを列挙します。

GET /api/managed_users/:id/api_collections

# レスポンス

{
    "result": [
        {
            "id": 1388,
            "name": "Zuora sync",
            "version": "5",
            "url": "https://api.na.workato.com/abstergoi/created-collection-v5",
            "api_spec_url": "https://www.workato.com/doc/service/created-collection-v5/swagger?token=65989339c72899ahjk9fb173c657cf9511",
            "created_at": "2020-07-31T08:09:29.062-07:00",
            "updated_at": "2020-07-31T08:19:27.703-07:00"
        }
    ]
}

# API コレクションの作成

カスタマーアカウント内に API コレクションを作成します。

POST /api/managed_users/:id/api_collections

# ペイロード

名前 説明
name string
必須
コレクションの名前

# サンプルリクエスト

curl  -X POST https://www.workato.com/api/managed_users/5454/api_collections \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \
      -d '{
            "name": "Netsuite customers",
          }'

# レスポンス

{
    "id": 1397,
    "name": "Netsuite customers",
    "version": "1.0",
    "url": "https://api.na.workato.com/abstergoi/netsuite-customers-v1",
    "api_spec_url": "https://www.workato.com/doc/service/netsuite-customers-v1/swagger?token=774513f8a712djkls90s7f5a3165eb96d",
    "created_at": "2020-07-31T08:24:31.439-07:00",
    "updated_at": "2020-07-31T08:24:31.439-07:00"
}

# API エンドポイントの列挙

カスタマーアカウント内のすべての API エンドポイントを列挙します。特定のコレクション内のエンドポイントのリストを取得する場合は、api_collection_id を指定します。

GET /api/managed_users/:id/api_endpoints

# URL パラメータ

名前 説明
api_collection_id string
API コレクションの ID。パラメータを指定しなかった場合は、すべての API エンドポイントが返されます。

# サンプルリクエスト

curl  -X GET 'https://www.workato.com/api/managed_users/5454/api_endpoints?api_collection_id=1391' \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \

# レスポンス

{
    "result": [
        {
            "id": 9903,
            "api_collection_id": 1391,
            "flow_id": 39999,
            "name": "salesforce search",
            "method": "GET",
            "url": "https://api.na.workato.com/abstergoi/netsuite-customers-v1/salesforce/search",
            "legacy_url": null,
            "base_path": "/abstergoi/netsuite-customers-v1/salesforce/search",
            "path": "salesforce/search",
            "active": false,
            "legacy": false,
            "created_at": "2020-08-05T05:59:55.991-07:00",
            "updated_at": "2020-08-05T05:59:55.991-07:00"
        }
    ]
}

# API エンドポイントの有効化

API エンドポイントを有効にします。API エンドポイントを正常に有効にするには、基礎となるレシピを開始する必要があります。

PUT /api/managed_users/:id/api_endpoints/:api_endpoint_id/enable

# URL パラメータ

名前 説明
api_endpoint_id string
API エンドポイントの ID。

# サンプルリクエスト

curl  -X GET https://www.workato.com/api/managed_users/5454/api_endpoints/1213/enable \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \

# API エンドポイントの無効化

アクティブな API エンドポイントを無効にします。エンドポイントはクライアントから呼び出されなくなります。

PUT /api/managed_users/:id/api_endpoints/:api_endpoint_id/disable

# URL パラメータ

名前 説明
api_endpoint_id string
API エンドポイントの ID。

# サンプルリクエスト

curl  -X GET https://www.workato.com/api/managed_users/5454/api_endpoints/1213/disable \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \

# API クライアントの列挙

カスタマーアカウント内のすべての API クライアントを列挙します。

GET /api/managed_users/:id/api_clients

# レスポンス

{
    "result": [
        {
            "id": 1255,
            "name": "Automation Inc.",
            "created_at": "2020-07-31T03:44:22.435-07:00",
            "updated_at": "2020-07-31T03:44:22.435-07:00"
        },
        {
            "id": 1890,
            "name": "Umbrella Corporation",
            "created_at": "2020-07-31T03:44:22.435-07:00",
            "updated_at": "2020-07-31T03:44:22.435-07:00"
        }
    ]
}

# API クライアントの作成

カスタマーアカウント内に新しい API クライアントを作成します。

POST /api/managed_users/:id/api_clients

# ペイロード

名前 説明
name string
必須
クライアントの名前

# サンプルリクエスト

curl  -X POST https://www.workato.com/api/managed_users/5454/api_clients \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \
      -d '{
            "name": "Automation Inc.",
          }'

# レスポンス

{
    "id": 1255,
    "name": "Automation Inc.",
    "created_at": "2020-07-31T03:44:22.435-07:00",
    "updated_at": "2020-07-31T03:44:22.435-07:00"
}

# アクセスプロファイルの列挙

カスタマーアカウント内の API クライアントに属しているすべてのアクセスプロファイルを列挙します。

GET /api/managed_users/:id/api_clients/:api_client_id/api_access_profiles

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : EA2300)、URL エンコードしてください。token jwt oauth2
api_client_id string
必須
API クライアント ID

# サンプルリクエスト

curl  -X GET 'https://www.workato.com/api/managed_users/4243/api_access_profiles?api_client_id=1255'\
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'

# レスポンス

{
    "id": 4676,
    "exteranl_id": "A298247",
    "name": "Customer A",
    "notification_email": "[email protected]",
    "plan_id": "business_yearly",
    "in_trial": false,
    "created_at": "2019-07-11T10:08:41.693-07:00",
    "updated_at": "2019-07-11T10:22:35.132-07:00"
}

# アクセスプロファイルの作成

カスタマーアカウント内の API クライアントに属しているアクセスプロファイルを作成します。このエンドポイントを使用するには、カスタマーアカウントがアクセスプロファイルに割り当てる API コレクションを1つ以上所有している必要があります。

返されるレスポンスは、選択された認証タイプ (Auth トークンJSON Web トークン、または OAuth 2.0) によって異なります。

  • Auth トークン認証では、secret レスポンスで auth トークンが返されます。
  • JWT トークンには、HMAC と RSA という2つの署名方法があります。選択された方法に応じて、それぞれのシークレットまたは公開鍵がペイロードで返されます。
  • OAuth 2.0認証では、oauth_client_idoauth_client secret でクライアント ID とシークレットが返されます。
POST /api/managed_users/:id/api_clients/:api_client_id/api_access_profiles

# URL パラメータ

名前 説明
id string
必須
Embedded カスタマーアカウント ID または外部 ID。
外部 ID は、E を先頭に付ける必要があります (例 : EA2300)、URL エンコードしてください。token jwt oauth2
api_client_id string
必須
API クライアント ID

# ペイロード

名前 説明
name string
必須
アクセスプロファイルの名前
api_collection_ids List of integers
必須
アクセスプロファイルに追加するコレクションの ID
active boolean
必須
アクセスプロファイルを有効にするか、無効にするか。アクセスプロファイルが無効になっているクライアントは API を呼び出すことができません。
auth_type string
必須
リクエストを検証するための認証方法。使用可能なオプションは、tokenjwt、および oauth2 です。これらは、それぞれ、Auth トークンJSON Web トークン、および OAuth 2.0に対応します。
jwt_method string JWT 署名方法。auth_typejwt の場合は、これが必須です。使用可能なオプションは hmacrsa です。これらは、それぞれ、HMAC と RSA に対応します。
jwt_secret string 方法に基づいて、HMAC 共有シークレットまたは RSA 公開鍵を指定します。

# サンプルリクエスト (Auth トークン)

curl  -X POST 'https://www.workato.com/api/managed_users/4243/api_access_profile?api_client_id=1255'\
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
      -d '{
  	          "name": "Sales team",
  	          "api_collection_ids": [1391, 1388],
              "auth_type": "token",
  	          "active": true
           }'

# サンプルリクエスト (JWT HMAC)

curl  -X POST 'https://www.workato.com/api/managed_users/4243/api_access_profile?api_client_id=1255'\
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
      -d '{
	           "name": "HMAC API",
	           "api_collection_ids": [1391, 1388],
	           "auth_type": "jwt",
	           "jwt_method": "rsa",
	           "jwt_secret": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4ngjihh5hXDRe0c1qPNc\nrF7RIoAG/iNZXruTspeX8e2auMBXTwVI0sLgwUo26lMXCRAvC004JWKugzh1UHXY\nsjmtwZFRznqhb/ojJDi785+zbmVNLWmbIB/ChBUyckBSExsmR0nOpQhiW0przr2J\ncQIDAQAB\n-----END PUBLIC KEY-----",
	           "active": true
           }'

# レスポンス (Auth トークン)

{
    "id": 26967,
    "name": "Sales team",
    "api_group_ids": [
        1391,
        1388
    ],
    "active": true,
    "auth_type": "token",
    "jwt_method": null,
    "jwt_secret": null,
    "oauth_client_id": null,
    "oauth_client_secret": null,
    "secret": "xxxxxxxxxxx",
    "created_at": "2020-07-31T09:48:55.337-07:00",
    "updated_at": "2020-07-31T09:48:55.337-07:00"
}

# アクセスプロファイルの更新

カスタマーアカウント内の API クライアントに属しているアクセスプロファイルを更新します。

返されるレスポンスは、選択された認証タイプ (Auth トークンJSON Web トークン、または OAuth 2.0) によって異なります。

  • Auth トークン認証では、secret レスポンスで auth トークンが返されます。
  • JWT トークンには、HMAC と RSA という2つの署名方法があります。選択された方法に応じて、それぞれのシークレットまたは公開鍵がペイロードで返されます。
  • OAuth 2.0認証では、oauth_client_idoauth_client secret でクライアント ID とシークレットが返されます。
PUT /api/managed_users/:id/api_access_profiles/:api_access_profile_id

# パスパラメータ

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

# クエリパラメータ

名前 説明
api_client_id string
必須
API クライアント ID。

# ペイロード

名前 説明
name string
必須
アクセスプロファイルの名前
api_collection_ids string
必須
アクセスプロファイルに追加するコレクションの ID
active boolean
必須
アクセスプロファイルを有効にするか、無効にするか。アクセスプロファイルが無効になっているクライアントは API を呼び出すことができません。
auth_type string
必須
リクエストを検証するための認証方法。使用可能なオプションは、tokenjwt、および oauth2 です。これらは、それぞれ、Auth トークンJSON Web トークン、および OAuth 2.0に対応します。
jwt_method string JWT 署名方法。auth_typejwt の場合は、これが必須です。使用可能なオプションは hmacrsa です。これらは、それぞれ、HMAC と RSA に対応します。
jwt_secret string 方法に基づいて、HMAC 共有シークレットまたは RSA 公開鍵を指定します。

# サンプルリクエスト (Auth トークン)

curl  -X PUT 'https://www.workato.com/api/managed_users/4243/api_access_profiles/178294?api_client_id=1255'\
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>'
      -d '{
  	          "name": "Sales team",
  	          "api_collection_ids": [1391, 1388],
              "auth_type": "token",
  	          "active": true
           }'

# アクセスプロファイルの有効化

カスタマーアカウント内の API クライアントに属しているアクセスプロファイルを有効にします。アクセスプロファイルを有効にすると、プロファイルが有効になっている API 呼び出しを受け入れることができます。

この呼び出しでは、success または無許可/不正リクエストの場合のエラーメッセージが返されます。

PUT /api/managed_users/:id/api_access_profiles/:api_access_profile_id/enable

# URL パラメータ

名前 説明
api_access_profile_id string
必須
アクセスプロファイルの ID。

# サンプルリクエスト (Auth トークン)

curl  -X PUT https://www.workato.com/api/managed_users/1279482/api_access_profiles/1213/enable \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \

# アクセスプロファイルの無効化

カスタマーアカウント内の API クライアントに属しているアクセスプロファイルを無効にします。アクセスプロファイルを無効にすると、アクセスプロファイルが設定された API 呼び出しの受け入れが停止されます。

この呼び出しでは、success または無許可/不正リクエストの場合のエラーメッセージが返されます。

PUT /api/managed_users/:id/api_access_profiles/:api_access_profile_id/disable

# URL パラメータ

名前 説明
api_access_profile_id string
必須
アクセスプロファイルの ID。

# サンプルリクエスト (Auth トークン)

curl  -X PUT https://www.workato.com/api/managed_users/127894/api_access_profiles/1213/disable \
      -H 'x-user-email: <email>' \
      -H 'x-user-token: <token>' \
      -H 'Content-Type: application/json' \

# トークン/シークレットの更新

Auth トークンまたは OAuth 2.0クライアントシークレットを更新します。アクセスプロファイル上の認証タイプが JWT の場合は、このエンドポイントが失敗します。

返されるレスポンスは、アクセスプロファイルの認証タイプ (Auth トークンまたは OAuth 2.0) によって異なります。

  • Auth トークン認証では、secret レスポンスで新しい Auth トークンが返されます。
  • OAuth 2.0認証では、oauth_client_idoauth_client secret で新しいクライアント ID とシークレットが返されます。
PUT /api/managed_users/:id/api_access_profiles/:access_profile_id/refresh_secret

# URL パラメータ

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

# レスポンス (Auth トークン)

{
    "id": 26962,
    "name": "Sales team",
    "api_client_id": 1255,
    "api_collection_ids": [
        1391
    ],
    "active": true,
    "auth_type": "token",
    "jwt_method": null,
    "jwt_secret": null,
    "oauth_client_id": null,
    "oauth_client_secret": null,
    "secret": "xxxxxxxxxxx",
    "created_at": "2020-07-31T09:10:03.310-07:00",
    "updated_at": "2020-08-05T06:08:46.290-07:00"
}


Last updated: 2024/1/12 16:26:53