Skip to main content

API の概要

重要

APIを初めて使用する場合は、「 APIを開始する 」のヘルプページを参照してください。

重要

2022.1リリース以降、当社は、FIPSに準拠していないSHA1ハッシュを必要とするレガシーの公開OAuth1 APIエンドポイントを削除しました。この削除では、レガシーのWCF(Windows Communication Framework) エンドポイント、こうしたレガシーエンドポイントのSwagger、およびOAuth1ミドルウェアも対象になります。OAuth1 エンドポイントの代わりに、21.4 でリリースされたレガシー API の OAuth2 エンドポイント (FIPS 準拠) を使用できます。OAuth2 API では、OAuth1 API と同じ機能を利用できます。

サブスクリプション、V1 および V2 エンドポイントは、今後も OAuth2 でサポートされる予定です。

変換とその影響の詳細については、「 OAuth1からOAuth2への移行手順 」ヘルプページまたは「 移行手順 」を参照してください。

Server APIは、次の6つのAPIで構成されています。

  • Subscription API : ユーザーがサブスクリプション、ワークフロー、スケジュール(ジョブ)を操作するためのエンドポイントです。

  • User V2 API : ユーザーが資格情報、入力ファイル、スケジュール (ジョブ) を操作するためのエンドポイントです。

  • Admin V1 API : 管理者が管理インターフェースからリソースを取得するためのエンドポイントです。

  • Admin V2 API : 管理者が管理インターフェースからリソースを取得するためのエンドポイントのバージョン2です。

  • Admin V3 API : エンドポイントのバージョン 3 です。このバージョンでは OAuth 2 が使用されています。

  • User V3 API : ユーザー向けエンドポイントのバージョン3です。このバージョンでは OAuth 2 が使用されています。

注記

V3 API エンドポイント での新機能追加に加え、V1、サブスクリプション、V2 エンドポイントも OAuth 2 で使用できるようになりました。これまで使用していたエンドポイントと同じエンドポイントが、新しいベースアドレスで OAuth 2 に対応しました。

Web API アドレスは、OAuth 2 を使用する V1、V2、V3 に対してのみ設定できます。OAuth 1 を使用した V1、V2 の API ドキュメントの場合、アドレスは  http://{ServerHostname}/gallery/api-docs/ となります。

The Web API address can be set up in System Settings.

Server API リファレンスドキュメントの利用

すべての Server API エンドポイントに関する完全なリファレンスドキュメントは、Swaggerで提供されています。

Server UIには、Server APIリファレンスドキュメントにアクセスできる場所が2か所あります。

  1. 上部ツールバーの疑問符アイコンを選択し、 [ API ドキュメント ] を選択します。

    Thumbnail
  2. ユーザー名を選択し、[ My profile ]>[ Keys ] を選択します。API キーの横に API ドキュメントへのリンクがあります。

Server API の API リファレンスドキュメントは、URL: http(s)://serverhostname.domain/webapi/swagger を使用してアクセスすることもできます。Serverhostnameは、ServerインスタンスのURLです。

Server API リファレンスドキュメントへの認証

Server API のドキュメントは、パラメーターを入力してレスポンスを確認することができるインタラクティブなものとなっています。このインタラクティブ機能を使用するには、認証を行う必要があります。これを行うには、次の手順を実行します。

  1. Server UIでユーザー名を選択し、[ マイプロフィール ] > [ キー ] を選択します。認証したいAPIのAPIキーをコピーし、[ API キー ] フィールドと [ Shared Secret ] (共有暗号鍵) フィールドに貼り付けます。キーは [ Saved ] (保存済み) と表示されます。

  2. 実行したい呼び出しを選択し、パラメーターを入力して、[ 試してみる ] を選択します。

API キーと API アクセス

管理者(Server管理者)は、ユーザーにAPIへのアクセスを許可する必要があります。詳細については、「 Allow User Access to the Server API (Server API へのユーザーアクセスを許可する) 」を参照してください。API へのユーザーアクセスを許可すると、ユーザーは [ My Profile ] ページの [ Keys ] タブで API キーを見つけることができるようになります。APIキーにアクセスするには、ユーザー名を選択し、 [ マイプロフィール ] > [ キー ] を選択します。

API keys are located under My Profile Keys.

管理者ロールを有するユーザーは、 APIアクセス キーを使用して、Subscription API、User V2 API、V1 Admin V1 API、V2 Admin V2 API、V3 APIを含むすべてのAPIにアクセスすることができます。

すべての非管理者ユーザーは、 APIアクセス キーを使用してSubscription APIとUser V2 APIにアクセスできます。

認証

詳細については、「 Server APIの設定と認証 」の記事をご覧ください。

API エンドポイントの構築

APIエンドポイントを構築するには、 <hostname>/webapi/ というスキーマを使用します。

API エンドポイントとパラメーター

このセクションでは、次のエンドポイントについて詳しく説明します。

Server は、以下のシステムエンティティに対する変更を追跡します。

  • AppInfo (ワークフロー)

  • コレクション (Collection)

  • 資格情報

  • Subscription (サブスクリプション)

  • ユーザー

  • ユーザーグループ

Server API を使用して記録したイベントを取得

これらのエンティティが更新されると、AuditEventレコードが作成されます。これらのレコードは、パブリック管理者 API エンドポイントを介して返すことができます。

エンドポイント

AuditEvents のエンドポイント: GET /admin/v1/auditlog/

必須のクエリーパラメーター

  • entity : (文字列) 照会する監査ログエンティティ。

  • page : (整数) 返すページ。

  • pageSize : (整数)各ページで返すレコードの数。

応答は、監査イベントレコードの配列になります。

[
  {
    "id": "",
    "entity": "",
    "entityId": "",
    "userId": "",
    "timestamp": "Date",
    "event": "",
    "oldValues": "",
    "newValues": ""
  }
]

返されるプロパティは次のように定義されます。

  • id : 監査イベント ID。

  • entity : エンティティの名前。

  • entityId : エンティティのエンティティ ID。

  • userId : エンティティを変更したユーザーの ID。

  • timestamp : 監査イベントレコードが作成された日時。

  • event : 発生したイベント (挿入、更新、削除)。

  • oldValues : 更新前に更新されたプロパティの値。

  • newValues : 更新後に更新されたプロパティの値。

API経由で ファイル参照ツール を使用するワークフローを実行するには、 /user/v2/inputfiles エンドポイントを使用してファイルをアップロードします。File Browse Tool Icon ファイル参照ツール

  1. まず、 /user/v2/InputFiles エンドポイントに multipart/form-data POST リクエストを行い、一時ファイルを公開します。必須の form-data セクションの名前は inputFile です。

    curl --location --request POST 'http:{yourhostname}/api/user/v2/inputfiles/' \
    --form 'inputFile=@/file/path/filename.csv' 
  2. 次に、 /user/v2/workflows/{appId}/jobs/ エンドポイントにPOSTを行います 。

    1. その後、質問オブジェクトにファイル参照ツールの name を含めます。ファイル参照ツールの名前がわからない場合は、 /v1/workflows/{appId}/questions エンドポイントを使用してファイル参照ツールの名前を取得します。

    2. value は、入力ファイルの呼び出しが応答で返した参照IDです。

    curl --location --request POST 'http:{yourhostname}/api/user/v2/workflows/{appId}/jobs' \
    --header 'Content-Type: text/plain' \
    --header 'Authorization: OAuth oauth_consumer_key="{consumer key}",
                             oauth_signature_method="HMAC-SHA1",
                             oauth_timestamp="{timestamp}",
                             oauth_nonce="{nonce}",
                             oauth_signature="{signature}"' \
    --data-raw '{
        "questions": [
            {
                "name": "File Browse",
                "value": "{reference ID}"
            }
        ]
        "priority": "Low"
    }'
    

migratable エンドポイントを使用して、Server環境間でワークフローを移行します。これを利用して、開発およびテスト段階にあるワークフローのデプロイを管理することができます。

最初に、 ワークフローを移行できるようにする 必要があります。ワークフローに移行対象のマークを付けたら、以下の手順に従い、移行元の環境から移行先の環境の適切なサブスクリプション (スタジオ) に公開します。

ステップ 1.移行準備が整ったワークフローのリストを取得する

次に、次のエンドポイントを使用して、移行準備が整ったワークフローのリストを取得します。

  • 環境: 移行元

  • 方法: GET

  • エンドポイント: api/admin/v1/workflows/migratable/?subscriptionIds={subscriptionIds}/

クエリパラメーターとして、 subscriptionIds のカンマ区切りリストを含めます。サブスクリプション ID は、特定のスタジオを識別します。

指定されたサブスクリプション(スタジオ)下で移行準備完了とマークされた一連のワークフローが返されます。 subscriptionsIds を指定しない場合、移行準備完了としてマークされたすべてのワークフローが返されます。この戻り値には、 appId 、現在公開されている revisionId 、 ワークフローが属する subscriptionID の3つのプロパティが含まれます。

ステップ 2.ソース環境からワークフローをダウンロードする

次のエンドポイントは、ワークフローをYXZPファイルとしてダウンロードします。

  • 環境: 移行元

  • 方法: GET

  • エンドポイント: api/admin/v1/{appID}/package/

パスパラメーターとして appID を含めます。ワークフロー全体をパッケージとしたダウンロードが返されます。

ステップ 3.移行先の環境でワークフローを公開する

以下のエンドポイントは、ダウンロードしたワークフローを移行先の環境に公開します。

  • 環境: 移行先

  • 方法: POST

  • エンドポイント: api/admin/v1/workflows/

パラメーター

パラメータ

説明

必須

file

新しいワークフローのファイル名です。

文字列

True

name

新しいワークフロー名です。

文字列

True

owner

移行されたワークフローの所有者です。E メールアドレスは、移行先の環境に存在している必要があります。

文字列

True

validate

移行先の環境への移行時にワークフローを検証するためのフラグです。

ブール値

True

isPublic

ワークフローを公開に設定し、移行先の環境で「自社の Gallery」に表示させるためのフラグです。

ブール値

True

sourceId

移行されるワークフローの移行元環境の appId です。同じsourceIdを持つワークフローが存在する場合、移行先の環境でそのワークフローを置き換えます。それ以外の場合は、新しいワークフローが生成されます。

(appIDを指定しない場合は、空の文字列を送信します。)

文字列

True

workerTag

ワークフローにワーカータグを追加し、特定のワーカーがワークフローを実行するようにします。

(ワーカーを指定しない場合は、空の文字列を送信します。)

文字列

True

canDownload

移行先の環境の他のユーザーがワークフローをダウンロードできるように設定するフラグです。

ブール値

True

(オプション) ステップ 4.移行元の環境で移行設定のワークフローをリセットする

必要に応じて、 migratable エンドポイントを使用し、移行先の環境でワークフローを移行した後に、移行先の環境におけるワークフローの [ このワークフローを移行対象にする ] 設定を [ いいえ ] に戻すことができます。

  • 環境: 移行元

  • 方法: PUT

  • エンドポイント: api/admin/v1/workflows/migratable/{appID}/

すべてのServer APIエンドポイントの詳細については、「 Server API 」を参照してください。

Server API V3 エンドポイントとパラメーターの詳細については、「 Alteryx Server API V3 」のヘルプページを参照してください。

Server API

以下の表は、リリースされているすべてのServer APIの一覧です。ユーザーが使用できるAPIは、管理者も使用できます。

セクション

APIエンドポイント

バージョン

管理者リリースビルド

ユーザーリリースビルド

説明

1

監査ログ

GET /admin/v1/auditlog

v1

9.1

指定されたエンティティタイプの監査ログエントリを取得

2

コレクション

GET /v3/collections

v3

2021.4

アクセス可能なすべてのコレクションレコードを取得

3

コレクション

POST /v3/collections

v3

2021.4

新しいコレクションを作成します。

4

コレクション

DELETE /v3/collections/{collectionId}

v3

2021.4

コレクションを削除

5

コレクション

GET /v3/collections/{collectionId}

v3

2021.4

コレクションレコードを取得

6

コレクション

PUT /v3/collections/{collectionId}

v3

2021.4

既存のコレクションを更新して名前または所有者を変更

7

コレクション

PUT /v3/collections/{collectionId}/users//permissions

アクセス許可

v3

2021.4

コレクションのユーザー権限を更新します。

8

コレクション

PUT /v3/collections/{collectionId}/userGroups//permissions

アクセス許可

v3

2021.4

コレクションのユーザーグループの権限を更新

9

コレクション

POST /v3/collections/{collectionId}/users

v3

2021.4

ユーザーをコレクションに追加

10

コレクション

POST /v3/collections/{collectionId}/insights

v3

2021.4

インサイトをコレクションに追加

11

コレクション

POST /v3/collections/{collectionId}/schedules

v3

2021.4

スケジュールをコレクションに追加

12

コレクション

POST /v3/collections/{collectionId}/workflows

v3

2021.4

ワークフローをコレクションに追加

13

コレクション

POST /v3/collections/{collectionId}/userGroups

v3

2021.4

ユーザーグループをコレクションに追加

14

コレクション

DELETE /v3/collections/{collectionId}/users/{userId}

v3

2021.4

ユーザーをコレクションから削除

15

コレクション

DELETE /v3/collections/{collectionId}/workflows/{appId}

v3

2021.4

ワークフローをコレクションから削除

16

コレクション

DELETE /v3/collections/{collectionId}/insights/{insightId}

v3

2021.4

インサイトをコレクションから削除

17

コレクション

DELETE /v3/collections/{collectionId}

スケジュール

v3

2021.4

スケジュールをコレクションから削除します。

18

コレクション

DELETE /v3/collections/{collectionId}

userGroups

v3

2021.4

ユーザーグループをコレクションから削除

19

コレクション

GET /admin/v1/collections

v1

9.1

Gallery内のコレクションを検索

20

資格情報 (Credentials)

GET /v3/credentials/{credentialId}

v3

2021.4

2022.3

資格情報レコードを取得

21

資格情報 (Credentials)

GET /v3/credentials

v3

2021.4

2022.3

資格情報レコードを取得します。

22

資格情報 (Credentials)

DELETE /v3/credentials/{credentialId}

v3

2021.4

資格情報を削除

23

資格情報 (Credentials)

POST /v3/credentials/{credentialId}/users

v3

2021.4

資格情報をユーザーと共有

24

資格情報 (Credentials)

POST /v3/credentials/{credentialId}/userGroups

v3

2021.4

資格情報をユーザーグループと共有

25

資格情報 (Credentials)

DELETE /v3/credentials/{credentialId}/users/{userId}

v3

2021.4

ユーザーを資格情報から削除

26

資格情報 (Credentials)

DELETE /v3/credentials/{credentialId}

userGroups

v3

2021.4

ユーザーグループを資格情報から削除

27

資格情報 (Credentials)

GET /user/v2/credentials

v2

11.3

ユーザーと直接、またはサブ経由で共有されている資格情報を検索

28

DCMEConnections

GET /v3/DCMEConnections/{connectionId}

v3

2022.1

DCM.E接続を取得します。

29

Insights

GET /admin/v2/insights

v2

11.3

Gallery内のインサイトを検索

30

Insights

GET /admin/v1/insights

v1

9.1

Gallery内のインサイトを検索

31

ジョブ

GET /v3/jobs/

v3

2022.3

2022.3

ジョブおよびそのジョブの現在の状態を取得

32

ジョブ

POST /user/v2/workflows/{appId}/jobs

注記

ワークフローが資格情報を使用して公開されている場合は、共有資格情報をAPI呼び出しで明確に適用する必要があります。

v2

11.3

11.3

新しいジョブを作成し、ジョブ実行キューに追加

33

ジョブ

GET /v1/jobs/{id}/output/{outputId}

v1

9.1

9.1

指定されたジョブの出力を取得

34

ジョブ

GET /v1/jobs/{id}

v1

9.1

9.1

ジョブおよびそのジョブの現在の状態を取得

35

ジョブ

GET /v1/workflows/{appId}/jobs

v1

9.1

9.1

指定されたAlteryx Analyticsアプリのジョブを返す

36

ジョブ

POST /v1/workflows/{appId}/jobs

注記

ワークフローの実行に資格情報が必要な場合はPOST /user/v2/workflows/{appId}/jobsを使用します。

v1

9.1

9.1

指定されたワークフローのジョブ実行を、提供された回答とともにキューに入れる

37

ジョブ

GET /admin/v1/workflows/jobs

v1

9.1

最後に実行されたジョブと、そのジョブのワークフローの現在の状態を返す

38

スケジュール

DELETE /v3/schedules/{id}

v3

2021.4

スケジュールを削除

39

スケジュール

GET /v3/schedules/{id}

v3

2021.4

特定のスケジュールに関する情報を取得

40

スケジュール

PUT /v3/schedules/{id}

v3

2021.4

既存のスケジュールを更新

41

スケジュール

GET /v3/schedules

v3

2021.4

すべてのスケジュールを取得

42

スケジュール

POST /v3/schedules

v3

2021.4

新しいスケジュールを作成

43

スケジュール

GET /admin/v2/schedule/forecast

v2

11.3

指定された期間の今後の実行ジョブをすべて予測

44

スケジュール

GET /admin/v1/schedules

v1

9.1

Gallery内のスケジュールを検索

45

Server接続

GET /v3/serverDataConnections

v3

2021.4

すべてのサーバーデータ接続レコードを取得

46

Server接続

DELETE /v3/serverDataConnections/{dataConnectionId}

v3

2021.4

サーバーデータ接続を削除

47

Server接続

GET /v3/serverDataConnections/

{dataConnectionId}

v3

2021.4

サーバーデータ接続レコードを取得

48

Server接続

PUT /v3/serverDataConnections/

{dataConnectionId}

v3

2021.4

既存のサーバーデータ接続を更新して接続名を変更

49

Server接続

POST /v3/serverDataConnections//users

ユーザー

v3

2021.4

ユーザーを既存のServerデータ接続に追加

50

Server接続

POST /v3/serverDataConnections//users

userGroups

v3

2021.4

ユーザーグループを既存のServerデータ接続に追加

51

Server接続

DELETE /v3/serverDataConnections/

あります。

v3

2021.4

ユーザーを既存のサーバーデータ接続から削除

52

Server接続

DELETE /v3/serverDataConnections/

userGroups

v3

2021.4

ユーザーグループを既存のサーバーデータ接続から削除

53

Server接続

GET /admin/v1/serverdataconnections

v1

9.1

プライベートGalleryで作成されたデータ接続を返す

54

Subscriptions

GET /admin/v2/subscriptions

v2

11.3

Gallery内のサブスクリプションを検索

55

Subscriptions

GET /admin/v1/subscriptions

v1

9.1

Gallery内のサブスクリプションを検索

56

システムエイリアス

GET /admin/v1/systemdataconnections

v1

9.1

Alteryx Serverがインストールされているサーバー上に作成されたシステムデータ接続を返す

57

ユーザーグループ

GET /v3/usergroups

v3

2021.4

すべての顧客ユーザーグループを取得

58

ユーザーグループ

POST /v3/usergroups

v3

2021.4

新しいカスタムユーザグループの作成

59

ユーザーグループ

DELETE /v3/usergroups/{id}

v3

2021.4

カスタムユーザーグループをシステムから削除

60

ユーザーグループ

GET /v3/usergroups/{id}

v3

2021.4

カスタムユーザグループの取得

61

ユーザーグループ

PUT /v3/usergroups/{id}

v3

2021.4

ユーザーグループの名前とロールを更新

62

ユーザーグループ

POST /v3/usergroups/{id}/users

v3

2021.4

1人または複数のユーザーをユーザーグループに追加

63

ユーザーグループ

DELETE /v3/usergroups/{userGroupId}/users/{userId}

v3

2021.4

Active Directoryグループをサーバーのカスタムグループのメンバーとして追加します。

64

ユーザー

DELETE /v3/users/{id}

v3

2021.4

ユーザーをシステムから削除

65

ユーザー

GET /v3/users/{id}

v3

2021.4

ユーザーレコードを取得

66

ユーザー

GET /v3/users/{id}/assets

v3

2021.4

ユーザーが所有する全アセット一覧を取得します。

67

ユーザー

GET /v3/users

v3

2021.4

ユーザーレコードを検索

68

ユーザー

POST /v3/users

v3

2021.4

新しいユーザーレコードを作成

69

ユーザー

POST /v3/users/{id}/deactivate

v3

2021.4

システムでユーザーを無効化する

70

ユーザー

POST /v3/users/{id}/passwordReset

v3

2021.4

指定したユーザーにパスワードのリセット用のEメールを送信します。

71

ユーザー

PUT /v3/users/{id}

v3

2021.4

既存のユーザーを更新

72

ユーザー

GET /admin/v2/users

v2

11.3

Gallery内のユーザーを検索

73

ユーザー

GET /admin/v1/users

v1

9.1

Gallery内のユーザーを検索

74

ワークフロー

GET /v3/workflows/{workflowId}

v3

2021.4

ワークフローレコードを取得

75

ワークフロー

GET /v3/workflows/{workflowId}/package

v3

2022.3

2022.3

ワークフローパッケージをダウンロード

76

ワークフロー

GET /v3/workflows/{workflowId}/questions

v3

2022.3

2022.3

ワークフローの質問情報を取得

77

ワークフロー

GET /v3/workflows/{workflowId}/jobs

v3

2022.3

2022.3

既存のワークフローのジョブリストを取得します。

78

ワークフロー

GET /v3/workflows

v3

2021.4

2022.3

すべてのワークフローレコードを取得

79

ワークフロー

POST /v3/workflows

v3

2021.4

2022.3

新しいワークフローをアップロード

80

ワークフロー

DELETE /v3/workflows/{workflowId}

v3

2021.4

特定のワークフローを削除

81

ワークフロー

PUT /v3/workflows/{workflowId}

v3

2021.4

既存のワークフローを更新

82

ワークフロー

POST /user/v2/inputfiles

v2

2020.3

2020.3

後続のワークフロー実行で使用する一時ファイルをパブリッシュしました

83

ワークフロー

GET /admin/v2/workflows/all

v2

11.3

オプションにより日付でフィルタリングした、すべてのワークフローを返す

84

ワークフロー

GET /v1/workflows/{appId}/package

v1

9.1

9.1

要求されたアプリケーションを返す

85

ワークフロー

GET /v1/workflows/{appId}/questions

v1

9.1

9.1

指定されたAlteryx Analyticsアプリに関する質問を取得

86

ワークフロー

GET /v1/workflows/subscription

v1

9.1

9.1

サブスクリプション内のワークフローを検索

87

ワークフロー

GET /admin/v1/{appId}/package

v1

9.1

要求されたアプリケーションを返す

88

ワークフロー

GET /admin/v1/workflows/migratable

v1

9.1

移行準備完了としてマークされているGallery内のワークフローを検索

89

ワークフロー

GET /admin/v1/workflows/all

v1

9.1

オプションにより日付でフィルタリングした、すべてのワークフローを返す

90

ワークフロー

GET /admin/v1/workflows

v1

9.1

Gallery内のワークフローを検索

91

ワークフロー

POST /admin/v1/workflows

v1

9.1

YXZPをシステムに公開

92

ワークフロー

PUT /admin/v1/workflows/migratable/{appId}

v1

9.1

アプリの移行準備完了フラグを更新します。