Event Subscription API
イベント登録でサポートされている Adobe Workfront オブジェクトでアクションが発生した場合、目的のエンドポイントに応答を送信するように Workfront を設定できます。つまり、サードパーティアプリケーションは、発生後すぐに、Workfront API を介して Workfront とのやり取りから更新を受け取ることができます。一般に、ログに記録されるデータ変更から 5 秒未満で web フック通知を受信すると予想できます。平均的に、顧客は、ログに記録されるデータ変更から 1 秒未満で web フック通知を受け取ります。
ファイアウォール経由でイベント登録ペイロードを受け取るには、次の IP アドレスを許可リストに追加する必要があります。
ヨーロッパの顧客の場合:
- 52.30.133.50
- 52.208.159.124
- 54.220.93.204
- 52.17.130.201
- 34.254.76.122
- 34.252.250.191
ヨーロッパ以外の場所の顧客の場合:
- 54.244.142.219
- 44.241.82.96
- 52.36.154.34
- 34.211.224.9
- 54.218.48.56
- 52.39.217.230
次のトピックでは、Event Subscription API がサポートされています。
イベント登録でサポートされるオブジェクト
次の Workfront オブジェクトは、イベント登録でサポートされています。
- 割り当て
- 会社
- ダッシュボード
- ドキュメント
- 費用
- フィールド
- 時間
- イシュー
- メモ
- ポートフォリオ
- プログラム
- プロジェクト
- レコード
- レコードタイプ
- レポート
- タスク
- テンプレート
- タイムシート
- ユーザー
- ワークスペース
イベント登録オブジェクトでサポートされるフィールドのリストについては、イベント登録リソースフィールドを参照してください。
イベント登録認証
イベント登録を作成、クエリ、削除するには、Workfront ユーザーが次の条件を満たす必要があります。
登録リソースを作成
登録リソースには、次のフィールドが含まれます。
-
objId(オプション)
- 文字列 - イベントが発生したオブジェクト(指定された objCode のオブジェクト)の ID。このフィールドを指定しない場合、ユーザーは、指定されたタイプのすべてのオブジェクトのイベントを受け取ります。
-
objCode(必須)
-
文字列 - 変更に登録されるオブジェクトの objCode。objCode に指定できる値を次の表に示します。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 16-row-2 17-row-2 18-row-2 19-row-2 20-row-2 layout-auto オブジェクト objCode 割り当て ASSGN 会社 CMPY ダッシュボード PTLTAB ドキュメント DOCU 費用 EXPNS フィールド FIELD 時間 時間 イシュー OPTASK メモ メモ ポートフォリオ PORT プログラム PRGM プロジェクト PROJ レコード RECORD レコードタイプ RECORD_TYPE レポート PTLSEC タスク タスク テンプレート TMPL タイムシート TSHET ユーザー ユーザー ワークスペース WORKSPACE
-
-
eventType(必須)
-
文字列 - オブジェクトが登録されているイベントのタイプを表す値。使用可能なイベントタイプは次のとおりです。
- 作成
- DELETE
- UPDATE
-
-
url(必須)
- 文字列 - 登録イベントペイロードが HTTP で送信されるエンドポイントの URL。
-
authToken(必須)
- 文字列 - 「URL」フィールドで指定された URL での認証に使用される OAuth2 ベアラートークン。
イベント登録 API リクエストの作成
ユーザーに管理者アクセス権を確実に付与し、登録リソースを作成したら、イベント登録を作成する準備が整います。
次の構文を使用して、URL を作成します。
リクエスト URL:
POST https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions
リクエストヘッダー:
リクエスト本文の例:
{
"objCode": "PROJ",
"eventType": "UPDATE",
"url": "http://requestb.in/ua5hi2ua",
"authToken": "EauthTokenWorkfrontRocks1234_"
}
登録リソースをリクエストの本文として渡すと(content-type は「application/json」)、指定されたオブジェクトのイベント登録が作成されます。応答コード 201(作成済み)は、登録が作成されたことを示します。201 以外の応答コードは、登録が作成 されなかった ことを意味します。
応答ヘッダーの例:
→0
→Wed, 05 Apr 2017 21:23:33 GMT
→https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions/750a636c-5628-48f5-ba26-26b7ce537ac2
→Apache-Coyote/1.1
イベント登録のクエリ
Workfront の HTTP をクエリする場合は、GET メソッドを使用します。イベント登録をクエリするには、2 とおりの方法があります。つまり、登録 ID でクエリする方法(以下を参照)と、すべてのイベント登録をクエリする方法です。
すべてのイベント登録をクエリする方法
ある顧客のイベント登録をすべてクエリすることができます。また、次のオプションを使用して応答を管理することもできます。
- page:返すページ数を指定するクエリパラメーターオプション。デフォルトは 1 です。
- limit:1 ページあたりに返す結果の数を指定するクエリパラメーターオプション。デフォルトは 100 で、最大値は 1000 です。
特定の顧客のイベント登録をすべてリストするためのリクエスト構文は、次のとおりです。
リクエスト URL:
GET https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions
リクエストヘッダー:
応答コード:
応答ヘッダーの例:
→application/json;charset=UTF-8
→Wed, 05 Apr 2017 21:29:32 GMT
→Apache-Coyote/1.1
→chunked
応答本文の例:
{
"id": "750a636c-5628-48f5-ba26-26b7ce537ac2",
"date_created": "2024-04-11T17:10:10.305981",
"date_modified": "2024-04-11T17:10:10.305981",
"customerId": "504f9640000013401be513579fbebffa",
"objId": null,
"objCode": "PROJ",
"url": "http://requestb.in/ua5hi2ua",
"eventType": "UPDATE",
"authToken": "authTokenWorkfrontRocks1234_"
"subscription_url": {
"url": "http://requestb.in/ua5hi2ua",
"date_created": "2024-04-11T15:56:14.169489",
"successes": 11,
"failures": 2,
"disabled_at": null,
"frozen_at": null
}
}
ここで
- page と limit は、リクエストで指定された値、または値が指定されていない場合はデフォルトです。
- page_count は、クエリを実行できるページの合計数です。
- total_count は、クエリに一致するサブスクリプションの合計数です。
イベント登録 IDによるクエリ
イベント登録 IDで、イベント登録をクエリできます。イベント登録をリストするためのリクエスト構文は次のとおりです。
リクエストURL:
GET https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions/<SUBSCRIPTION ID>
リクエストヘッダー:
応答コード:
応答本文の例:
{
"id": "750a636c-5628-48f5-ba26-26b7ce537ac2",
"date_created": "2024-04-11T17:10:10.305981",
"date_modified": "2024-04-11T17:10:10.305981",
"customerId": "504f9640000013401be513579fbebffa",
"objId": null,
"objCode": "PROJ",
"url": "http://requestb.in/ua5hi2ua",
"eventType": "UPDATE",
"authToken": "authTokenWorkfrontRocks1234_"
"subscription_url": {
"url": "http://requestb.in/ua5hi2ua",
"date_created": "2024-04-11T15:56:14.169489",
"successes": 11,
"failures": 2,
"disabled_at": null,
"frozen_at": null
}
}
イベント登録のフィルタリング
イベント登録のフィルタリングを使用して、関連するメッセージのみを確実に受け取るようにできます。サブスクリプションのフィルターを作成すると、エンドポイントで使用する必要のあるメッセージの数が大幅に減る場合があります。
例えば、更新 - タスク イベント登録は、イベントペイロードの newState が、taskStatus を current として定義する場合にのみトリガーするように設定できます。
-
フィルターフィールドに空でない値が含まれる場合、フィルターキーと値を含む newState のメッセージだけが購読されたURLに送信されます。
-
オブジェクトの newState AND/OR oldState に含まれるカスタムデータによってのみフィルタリングできます
-
フィルターは、特定の値と等しいかどうかに基づいてのみ評価されます
-
フィルターの構文が正しくないか、ペイロードの newState に含まれるデータに一致しない場合、エラーが発生したことを示す検証メッセージは返されません。
-
現在存在するサブスクリプションでは、フィルターを更新できません。新しいサブスクリプションは、新しいフィルターパラメーターを使用して作成する必要があります。
-
1 つの登録に複数のフィルターを適用でき、その登録は、すべてのフィルター条件が満たされた場合にのみ対応されます。
-
1 つの登録に複数のフィルターを適用する方法は、AND 論理演算子を使用する場合と同等です。
-
1 つ以上のイベント登録フィールドパラメーターがイベント登録ごとに異なる限り、複数のイベント登録を 1 つのオブジェクトに適用できます。
-
1 つのオブジェクトに複数のイベント登録が割り当てられている場合、そのオブジェクトに関連付けられているすべてのイベント登録を 1 つのエンドポイントに返すことができます。この方法は、フィルターパラメーターを使用する場合には設定できない論理演算子 OR の同等の代替手段として使用できます。
-
次のフィールドはフィルタリングできません。
- DOCU.groups
- RECORD.data
- RECORD_TYPE.data
- RECORD_TYPE.fields
比較演算子の使用
フィルターフィールドと一緒に比較フィールドを指定できます。比較結果をフィルタリングするには、このフィールドで比較演算子を使用します。例えば、タスクのステータスが現在と異なる場合にのみペイロードを送信する UPDATE - TASK 登録を作成できます。次の比較演算子を使用できます。
eq:次と等しい
このフィルターを使用すると、発生した変更がフィルター内の fieldValue
と正確に一致する場合に、メッセージが届きます。fieldValue
値では大文字と小文字が区別されます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "again",
"comparison": "eq"
}
]
}
ne:次と等しくない
このフィルターを使用すると、発生した変更がフィルター内の fieldValue
と正確に一致しない場合に、メッセージが届きます。fieldValue
値では大文字と小文字が区別されます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "again",
"comparison": "ne"
}
]
}
gt:次よりも大きい
このフィルターを使用すると、指定された fieldName
に対する更新が fieldValue
の値よりも大きい場合に、メッセージが届きます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "plannedCompletionDate",
"fieldValue": "2022-12-11T16:00:00.000-0800",
"comparison": "gt"
}
]
}
gte:次よりも大きいか等しい
このフィルターを使用すると、指定された fieldName
に対する更新が fieldValue
の値よりも大きいか等しい場合に、メッセージが届きます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "plannedCompletionDate",
"fieldValue": "2022-12-11T16:00:00.000-0800",
"comparison": "gte"
}
]
}
lt:次よりも小さい
このフィルターを使用すると、指定された fieldName
に対する更新が fieldValue
の値よりも小さい場合に、メッセージが届きます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "plannedCompletionDate",
"fieldValue": "2022-12-18T16:00:00.000-0800",
"comparison": "lt"
}
]
}
lte:次よりも小さいか等しい
このフィルターを使用すると、指定された fieldName
に対する更新が fieldValue
の値よりも小さいか等しい場合に、メッセージが届きます。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "plannedCompletionDate",
"fieldValue": "2022-12-18T16:00:00.000-0800",
"comparison": "lte"
}
]
}
が次を含む
このフィルターを使用すると、発生した変更がフィルター内の fieldValue
を含んでいる場合に、メッセージが届きます。fieldValue
値では大文字と小文字が区別されます
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "again",
"comparison": "contains"
}
]
}
changed:変更
このフィルターを使用すると、指定されたフィールド(fieldName
)で oldState と newState の値が異なる場合にのみ、メッセージが届きます。指定されたフィールド(fieldName
)以外のフィールドを更新しても、その変更は返されません。
fieldValue
による影響はありません。{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "",
"comparison": "changed"
}
]
}
状態
このコネクタを使用すると、作成または更新されたオブジェクトの新しい状態または古い状態にフィルターが適用されます。これは、状態が変化した場所を把握する場合に役立ちます。oldState
は、CREATE eventTypes
では使用できません。
again
が oldState
に含まれているメッセージのみを返します。この場合のユースケースは、状態が変化した objCode メッセージを見つけることです。例えば、「Research Some name」から「Research TeamName Some name」に変更されたタスクをすべて検索するには、次のように指定します。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "again",
"comparison": "contains",
"state": "oldState"
}
]
}
コネクタフィールドの使用
登録ペイロードの filterConnector
フィールドを使用すると、フィルターの適用方法を選択できます。デフォルトは「AND」です。この場合、登録メッセージが届くためには、フィルターがすべて true
である必要があります。「OR」が指定されている場合、登録メッセージが届くためには、1 つのフィルターのみが一致する必要があります。
{
"objCode": "TASK",
"eventType": "UPDATE",
"authToken": "token",
"url": "https://domain-for-subscription.com/API/endpoint/UpdatedTasks",
"filters": [
{
"fieldName": "name",
"fieldValue": "again",
"comparison": "contains"
},
{
"fieldName": "name",
"fieldValue": "also",
"comparison": "contains"
}
],
"filterConnector": "AND"
}
イベント登録の削除
Workfront の HTTP を削除する場合は、DELETE メソッドを使用します。登録 ID で 1 つのイベント登録を削除するためのリクエスト構文は、次のとおりです。
リクエスト URL:
DELETE https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions/<SUBSCRIPTION ID>
リクエストヘッダー:
応答コード:
応答ヘッダーの例:
→Wed, 05 Apr 2017 21:33:41 GMT
→Apache-Coyote/1.1
応答本文の例: 該当なし
イベントペイロードの例
ユーザーが受信するペイロードは、オブジェクトの種類によって異なりますが、様々なペイロードが配信される一貫した形式があります。
例えば、次のプロパティは、すべてのイベントペイロードで一貫性を保ちます。
- eventType
- subscriptionId
- oldState
- newState
- eventTime
形式は一貫していますが、プロパティ内に含まれる値は、オブジェクトやオブジェクトの種類によって異なります。
UPDATE イベントと CREATE イベントのペイロードの例を以下に示します。UPDATE の例では、oldState オブジェクトと newState オブジェクトは同じですが、CREATE の例では、oldState オブジェクトは空です(NULL ではありません)。
次は、UPDATE イベントのペイロードの例です。
{
"eventType": "UPDATE",
"subscriptionId": "8a0d839d5ef32c9a015ef336a5ed0002",
"eventTime": {
"nano": 998000000,
"epochSecond": 1507319336
},
"newState": {
"ID": "59d7ddf7000002322d791eb08bafddfb",
"name": "EventSub Test updated",
"objCode": "PROJ",
"entryDate": "2017-10-06T13:48:07.776-0600",
"accessorIDs": [
"544820df0000142362741fc0c368de19"
],
"lastUpdateDate": "2017-10-06T13:48:56.980-0600",
"groupID": "544820df0000140f6a9c1faa7cacadd3",
"sponsorID": null,
"description": null,
"plannedCompletionDate": "2017-10-06T09:00:00.000-0600",
"enteredByID": "544820df0000142362741fc0c368de19",
"ownerID": "544820df0000142362741fc0c368de19",
"templateID": null,
"priority": 0,
"companyID": null,
"portfolioID": null,
"referenceNumber": 1894,
"lastUpdatedByID": "544820df0000142362741fc0c368de19",
"customerID": "544820df0000135b7719dcca654391f6",
"currency": null, "categoryID": null,
"status": "CUR",
"parameterValues": {}
},
"oldState": {
"ID": "59d7ddf7000002322d791eb08bafddfb",
"name": "EventSub Test 180fd595-63fb-4fa9-bd47-58bf6e53d964",
"objCode": "PROJ",
"entryDate": "2017-10-06T13:48:07.776-0600",
"accessorIDs": [
"544820df0000142362741fc0c368de19"
],
"lastUpdateDate": "2017-10-06T13:48:07.792-0600",
"groupID": "544820df0000140f6a9c1faa7cacadd3",
"sponsorID": null,
"description": null,
"plannedCompletionDate": "2017-10-06T09:00:00.000-0600",
"enteredByID": "544820df0000142362741fc0c368de19",
"ownerID": "544820df0000142362741fc0c368de19",
"templateID": null,
"priority": 0,
"companyID": null,<
"portfolioID": null,
"referenceNumber": 1894,
"lastUpdatedByID": "544820df0000142362741fc0c368de19",
"customerID": "544820df0000135b7719dcca654391f6",
"currency": null,
"categoryID": null,
"status": "CUR",
"parameterValues": {}
}
}
次に、CREATE イベントのペイロードの例を示します。
{
"eventType": "CREATE",
"subscriptionId": "4028e3815ebf03a7015ebfa53b6d0002",
"eventTime": {
"nano": 232000000,
"epochSecond": 1506453831
},
"newState": {
"ID": "59caa946000000e07b0afc3383230c67",
"name": "EventSub Test fe16d470-0a40-4290-92f4-6a0389fb536c",
"objCode": "PROJ",
"entryDate": "2017-09-26T13:23:50.746-0600",
"accessorIDs": ["544820df0000142362741fc0c368de19"],
"lastUpdateDate": "2017-09-26T13:23:50.927-0600",
"groupID": "544820df0000140f6a9c1faa7cacadd3",
"sponsorID": null,
"description": null,
"plannedCompletionDate": "2017-09-26T09:00:00.000-0600",
"enteredByID": "544820df0000142362741fc0c368de19",
"ownerID": "544820df0000142362741fc0c368de19",
"templateID": null,
"priority": 0,
"companyID": null,
"portfolioID": null,
"referenceNumber": 1750,
"lastUpdatedByID": "544820df0000142362741fc0c368de19",
"customerID": "544820df0000135b7719dcca654391f6",
"currency": null,
"categoryID": null,
"status": "CUR",
"parameterValues": {}
},
"oldState": {}
}
Base 64 エンコーディング
イベント登録に含まれる特殊文字とネットワーク設定との競合が原因でイベント購読が拒否された場合は、Base64 エンコードを使用してイベント登録を渡すことができます。Base64 は、任意のデータを ASCII 文字列形式に変換できる一連のエンコーディングスキームです。Base64 はセキュリティ暗号化の一種ではないことに注意する必要があります。
Base 64 エンコーディングフィールド
base64Encoding フィールドは、イベント登録ペイロードの Base64 エンコーディングを有効にするために使用されるオプションのフィールドです。デフォルト値は false で、指定可能な値は true、false および「 」(空白)です。
base64Encoding フィールドを使用したリクエストの例
base64Encoding フィールドを true に設定してリクエストを行うと、ペイロード内の newState および oldState オブジェクトは、Base 64 エンコーディング文字列として配信されます。base64Encoding フィールドが false に設定されている場合、空白のままの場合、またはリクエストに含まれていない場合、返されるペイロードは Base 64 でエンコードされません。
次に、base64Encoding フィールドを使用するリクエストの例を示します。
{
"objCode": "PROJ",
"eventType": "UPDATE",
"url": "http://requestb.in/ua5hi2ua"",
"authToken": "EauthTokenWorkfrontRocks1234_",
"base64Encoding": "true"
}
Base64 エンコーディングの応答ペイロードの例
{
"eventType": "UPDATE",
"subscriptionId": "8a0d839d5ef32c9a015ef336a5ed0002",
"eventTime": {
"nano": 998000000,
"epochSecond": 1507319336
},
"newState": "ewogICAgICAgIklEIjogIjU5ZDdkZGY3MDAwMDAyMzIyZDc5MWViMDhiYWZkZGZiIiwgCiAgICAgICAibmFtZSI6ICJFdmVudFN1YiBUZXN0IHVwZGF0ZWQiLAogICAgICAgIm9iakNvZGUiOiAiUFJPSiIsCiAgICAgICAiZW50cnlEYXRlIjogIjIwMTctMTAtMDZUMTM6NDg6MDcuNzc2LTA2MDAiLAogICAgICAgImFjY2Vzc29ySURzIjogWwogICAgICAgICAgICI1NDQ4MjBkZjAwMDAxNDIzNjI3NDFmYzBjMzY4ZGUxOSIKICAgICAgIF0sCiAgICAgICAibGFzdFVwZGF0ZURhdGUiOiAiMjAxNy0xMC0wNlQxMzo0ODo1Ni45ODAtMDYwMCIsCiAgICAgICAiZ3JvdXBJRCI6ICI1NDQ4MjBkZjAwMDAxNDBmNmE5YzFmYWE3Y2FjYWRkMyIsCiAgICAgICAic3BvbnNvcklEIjogbnVsbCwKICAgICAgICJkZXNjcmlwdGlvbiI6IG51bGwsCiAgICAgICAicGxhbm5lZENvbXBsZXRpb25EYXRlIjogIjIwMTctMTAtMDZUMDk6MDA6MDAuMDAwLTA2MDAiLAogICAgICAgImVudGVyZWRCeUlEIjogIjU0NDgyMGRmMDAwMDE0MjM2Mjc0MWZjMGMzNjhkZTE5IiwKICAgICAgICJvd25lcklEIjogIjU0NDgyMGRmMDAwMDE0MjM2Mjc0MWZjMGMzNjhkZTE5IiwKICAgICAgICJ0ZW1wbGF0ZUlEIjogbnVsbCwKICAgICAgICJwcmlvcml0eSI6IDAsCiAgICAgICAiY29tcGFueUlEIjogbnVsbCwKICAgICAgICJwb3J0Zm9saW9JRCI6IG51bGwsCiAgICAgICAicmVmZXJlbmNlTnVtYmVyIjogMTg5NCwKICAgICAgICJsYXN0VXBkYXRlZEJ5SUQiOiAiNTQ0ODIwZGYwMDAwMTQyMzYyNzQxZmMwYzM2OGRlMTkiLAogICAgICAgImN1c3RvbWVySUQiOiAiNTQ0ODIwZGYwMDAwMTM1Yjc3MTlkY2NhNjU0MzkxZjYiLAogICAgICAgImN1cnJlbmN5IjogbnVsbCwKICAgICAgICJjYXRlZ29yeUlEIjogbnVsbCwKICAgICAgICJzdGF0dXMiOiAiQ1VSIiwKICAgICAgICJwYXJhbWV0ZXJWYWx1ZXMiOiB7fQogICAgfQ==",
"oldState": "ewogICAgICAgICJJRCI6ICI1OWQ3ZGRmNzAwMDAwMjMyMmQ3OTFlYjA4YmFmZGRmYiIsCiAgICAgICAgIm5hbWUiOiAiRXZlbnRTdWIgVGVzdCAxODBmZDU5NS02M2ZiLTRmYTktYmQ0Ny01OGJmNmU1M2Q5NjQiLAogICAgICAgICJvYmpDb2RlIjogIlBST0oiLAogICAgICAgICJlbnRyeURhdGUiOiAiMjAxNy0xMC0wNlQxMzo0ODowNy43NzYtMDYwMCIsCiAgICAgICAgImFjY2Vzc29ySURzIjogWwogICAgICAgICAgICAiNTQ0ODIwZGYwMDAwMTQyMzYyNzQxZmMwYzM2OGRlMTkiCiAgICAgICAgXSwKICAgICAgICAibGFzdFVwZGF0ZURhdGUiOiAiMjAxNy0xMC0wNlQxMzo0ODowNy43OTItMDYwMCIsCiAgICAgICAgImdyb3VwSUQiOiAiNTQ0ODIwZGYwMDAwMTQwZjZhOWMxZmFhN2NhY2FkZDMiLAogICAgICAgICJzcG9uc29ySUQiOiBudWxsLAogICAgICAgICJkZXNjcmlwdGlvbiI6IG51bGwsCiAgICAgICAgInBsYW5uZWRDb21wbGV0aW9uRGF0ZSI6ICIyMDE3LTEwLTA2VDA5OjAwOjAwLjAwMC0wNjAwIiwKICAgICAgICAiZW50ZXJlZEJ5SUQiOiAiNTQ0ODIwZGYwMDAwMTQyMzYyNzQxZmMwYzM2OGRlMTkiLAogICAgICAgICJvd25lcklEIjogIjU0NDgyMGRmMDAwMDE0MjM2Mjc0MWZjMGMzNjhkZTE5IiwKICAgICAgICAidGVtcGxhdGVJRCI6IG51bGwsCiAgICAgICAgInByaW9yaXR5IjogMCwKICAgICAgICAiY29tcGFueUlEIjogbnVsbCw8CiAgICAgICAgInBvcnRmb2xpb0lEIjogbnVsbCwKICAgICAgICAicmVmZXJlbmNlTnVtYmVyIjogMTg5NCwKICAgICAgICAibGFzdFVwZGF0ZWRCeUlEIjogIjU0NDgyMGRmMDAwMDE0MjM2Mjc0MWZjMGMzNjhkZTE5IiwKICAgICAgICAiY3VzdG9tZXJJRCI6ICI1NDQ4MjBkZjAwMDAxMzViNzcxOWRjY2E2NTQzOTFmNiIsCiAgICAgICAgImN1cnJlbmN5IjogbnVsbCwKICAgICAgICAiY2F0ZWdvcnlJRCI6IG51bGwsCiAgICAgICAgInN0YXR1cyI6ICJDVVIiLAogICAgICAgICJwYXJhbWV0ZXJWYWx1ZXMiOiB7fQogICAgfQ=="
}
すべてのイベント登録をクエリする非推奨メソッド
次の API エンドポイントは非推奨(廃止予定)となっており、新しい実装では使用しないでください。また、古い実装を上記の「イベント登録をクエリ」セクションで説明されているメソッドに移行させることもお勧めします。
sessionID 値で指定された顧客のすべてのイベント登録をクエリできます。特定の顧客に関するすべてのイベント登録を一覧表示するためのリクエスト構文は、次の URL です。
GET https://<HOSTNAME>/attask/eventsubscription/api/v1/subscriptions/list
リクエストヘッダー:
応答コード:
応答本文の例
[
{
"id": "37c4bcf5-e0b5-4256-aba3-a51cba7bf997",
"customer_id": "504f9640000013401be513579fbebffa",
"obj_id": "ObjId1234",
"obj_code": "TASK",
"url": "http://test.test.net/test/1234",
"event_type": "UPDATE",
"auth_token": "auth_token"
},
{
"id": "750a636c-5628-48f5-ba26-26b7ce537ac2",
"customer_d": "504f9640000013401be513579fbebffa",
"obj_id": null,
"obj_code": "PROJ",
"url": "http://requestb.in/ua5hi2ua",
"event_type": "UPDATE",
"auth_token": "authTokenWorkfrontRocks1234_"
}
]