trocco APIについて
  • 26 Jul 2023
  • 2 分で読み終わります
  • ダーク
    ライト

trocco APIについて

  • ダーク
    ライト

Article Summary

概要

troccoの以下の機能をAPIを用いて実行できます。

補足

trocco API機能は、有償オプションとなっております。
ご利用になる場合は、営業担当者またはカスタマーサクセスまでお問い合わせください。

制約

APIコール制限

trocco APIは以下のコール数制限を設けています。

  • 最大10,000コール/1日
  • 最大100コール/15分

事前準備

APIキーの発行

  1. troccoトップ画面の右上にある設定からAPI KEYの設定をクリックし、API KEY一覧画面を開きます。

image.png

  1. 右上の新規作成よりAPIキーを発行します。
    発行されたAPIキーは各種エンドポイントのリクエストヘッダーで指定していただきます。

image.png

APIベースURL

https://trocco.io/api

APIエンドポイント

転送ジョブの実行
POST /jobs

リクエスト

サンプル
{}で囲まれた箇所が設定値となります。コマンド実行時は{}は含めないでください。

curl 'https://trocco.io/api/jobs?job_definition_id={JOB_DEFINITION_ID}' \
-X POST \
-H 'Authorization:Token {API_KEY}' \
-d 'context_time={YYYY-MM-DD HH:MM:SS}' \
-d 'time_zone=Asia/Tokyo' \
-d 'custom_variables[][name]=${VARIABLE_NAME}$' \
-d 'custom_variables[][value]={VARIABLE_VALUE}'
項目名必須タイプ説明
job_definition_id-クエリパラメータ
転送設定IDを指定してください。
転送設定IDの確認方法はこちらを参照ください。
Authorizationstringリクエストヘッダー
APIキーを指定してください。
context_time-stringリクエストボディ
転送設定でカスタム変数 時刻・日付(キューイング時) を利用する場合、展開される日時を指定できます。
YYYY-MM-DD HH:MM:SS形式で指定してください(例:2023-05-19 00:00:00)。
未指定の場合、APIリクエストが送信された日時が展開されます。
タイムゾーンにはtime_zoneの値が使用されます。
time_zone-stringリクエストボディ
context_timeで指定する日時のタイムゾーンを指定できます。
未指定の場合、Asia/Tokyoが指定されます。
指定できる値は、後述のタイムゾーンについてを参照ください。
custom_variables[][name]-stringリクエストボディ
カスタム変数の変数名を指定できます。
変数名を$で囲って指定してください。
例:$companyId$

複数のカスタム変数を指定する方法はこちらを参照ください。
custom_variables[][value]-stringリクエストボディ
直前に指定したカスタム変数に展開する値を指定できます。
例:c-12345

複数のカスタム変数を指定する方法はこちらを参照ください。

レスポンス

サンプル

{
  "id":12345,
  "job_definition_id":54321,
  "job_definition_name":"sample-job-definition-name",
  "status":"queued",
  "created_at":"2023-05-19T19:14:00.000+09:00"
}
項目名タイプ説明
idint転送ジョブIDになります。
job_definition_idint転送設定IDになります。
job_definition_namestring転送設定の名称になります。
statusstring転送ジョブのステータスになります。
created_atstring転送ジョブの作成日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。

転送ジョブのステータス確認
GET /jobs/{job_id}

リクエスト

サンプル
{}で囲まれた箇所が設定値となります。コマンド実行時は{}は含めないでください。

curl 'https://trocco.io/api/jobs/{JOB_ID}' \
-X GET \
-H 'Authorization:Token {API KEY}'
項目名必須タイプ説明
job_id-パスパラメータ
転送ジョブIDを指定してください。
転送ジョブIDの確認方法はこちらを参照ください。
Authorizationstringリクエストヘッダー
APIキーを指定してください。

レスポンス

サンプル

{
  "id":12345,
  "job_definition_id":54321,
  "job_definition_name":"sample-job-definition-name",
  "status":"succeeded",
  "started_at":"2023-05-19T19:15:00.000+09:00",
  "finished_at":"2023-05-19T19:20:00.000+09:00",
  "created_at":"2023-05-19T19:14:00.000+09:00"
}
項目名タイプ説明
idint転送ジョブIDになります。
job_definition_idint転送設定IDになります。
job_definition_namestring転送設定の名称になります。
statusstring転送ジョブのステータスになります。
ステータスには以下が存在します。

queued …実行待ち状態
setting_up …実行準備状態
executing …実行中状態
interrupting …実行中断状態
succeeded …実行完了(成功)状態
error …実行完了(エラー)状態
canceled …実行完了(キャンセル)状態
skipped …実行完了(スキップ)状態
started_atstring \| null転送ジョブのステータスが実行中状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
finished_atstring \| null転送ジョブのステータスが実行完了状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
created_atstring転送ジョブの作成日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。

ワークフロージョブの実行
POST /pipeline_jobs

リクエスト

サンプル
{}で囲まれた箇所が設定値となります。コマンド実行時は{}は含めないでください。

curl 'https://trocco.io/api/pipeline_jobs?pipeline_definition_id={PIPELINE_DEFINITION_ID}' \
-X POST \
-H 'Authorization:Token {API_KEY}' \
-d 'context_time={YYYY-MM-DD HH:MM:SS}' \
-d 'time_zone=Asia/Tokyo'
項目名必須タイプ説明
pipeline_definition_id-クエリパラメータ
ワークフロー定義IDを指定してください。
ワークフロー定義IDの確認方法はこちらを参照ください。
Authorizationstringリクエストヘッダー
APIキーを指定してください。
context_time-stringリクエストボディ
転送設定でカスタム変数 時刻・日付(キューイング時) を利用する場合、展開される日時を指定できます。
YYYY-MM-DD HH:MM:SS形式で指定してください(例:2023-05-19 00:00:00)。
未指定の場合、APIリクエストが送信された日時が展開されます。
タイムゾーンにはtime_zoneの値が使用されます。
time_zone-stringリクエストボディ
context_timeで指定する日時のタイムゾーンを指定できます。
未指定の場合、Asia/Tokyoが指定されます。
指定できる値は、後述のタイムゾーンについてを参照ください。

レスポンス

サンプル

{
  "id":12345,
  "pipeline_definition_id":54321,
  "name":"sample-pipeline-definition-name",
  "status":"queued",
  "started_at":null,
  "finished_at":null,
  "context_time":"2023-05-18T17:10:20.000+09:00",
  "created_at":"2023-05-18T17:15:20.000+09:00"
}
項目名タイプ説明
idintワークフロージョブIDになります。
pipeline_definition_idintワークフロー定義IDになります。
namestringワークフロー定義の名称になります。
statusstringワークフロージョブのステータスになります。
started_atstring \| nullワークフロージョブが実行中状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
finished_atstring \| nullワークフロージョブが実行完了状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
context_timestringワークフロー設定でカスタム変数 時刻・日付(キューイング時) をご利用の場合、この日時を元に展開されます。
タイムゾーンはJST 日本時間(GMT+9)です。
created_atstringワークフロージョブの作成日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。

ワークフロージョブのステータス確認
GET /pipeline_jobs/{pipeline_job_id}

リクエスト

サンプル
{}で囲まれた箇所が設定値となります。コマンド実行時は{}は含めないでください。

curl 'https://trocco.io/api/pipeline_jobs/{PIPELINE_JOB_ID}' \
-X GET \
-H 'Authorization:Token {API_KEY}'
項目名必須タイプ説明
pipeline_job_id-パスパラメータ
ワークフロージョブIDを指定してください。
ワークフロージョブIDの確認方法はこちらを参照ください。
Authorizationstringリクエストヘッダー
APIキーを指定してください。

レスポンス

サンプル

{
  "id":12345,
  "pipeline_definition_id":54321,
  "name":"sample-pipeline-definition-name",
  "status":"succeeded",
  "started_at":"2023-05-18T17:16:20.000+09:00",
  "finished_at":"2023-05-18T17:20:20.000+09:00",
  "context_time":"2023-05-18T17:10:20.000+09:00",
  "created_at":"2023-05-18T17:15:20.000+09:00"
}
項目名タイプ説明
idintワークフロージョブIDになります。
pipeline_definition_idintワークフロー定義IDになります。
namestringワークフロー定義の名称になります。
statusstringワークフロージョブのステータスになります。
ステータスには以下が存在します。

queued …実行待ち状態
setting_up …実行準備状態
executing …実行中状態
interrupting …実行中断状態
succeeded …実行完了(成功)状態
error …実行完了(エラー)状態
canceled …実行完了(キャンセル)状態
skipped …実行完了(スキップ)状態
retry_waiting …実行完了(エラー)状態からリトライ開始するまでの待ち状態(リトライ回数が設定されている場合のみ)
started_atstring \| nullワークフロージョブが実行中状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
finished_atstring \| nullワークフロージョブが実行完了状態になった日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。
context_timestringワークフロー設定でカスタム変数 時刻・日付(キューイング時) をご利用の場合、この日時を元に展開されます。
タイムゾーンはJST 日本時間(GMT+9)です。
created_atstringワークフロージョブの作成日時になります。
タイムゾーンはJST 日本時間(GMT+9)です。

ユースケース

複数のカスタム変数を指定する

カスタム変数は、array型のパラメータ(custom_variables)に、変数名(name)と値(value)を指定します。
特定の変数名に対する値は、変数名の直後に指定する必要があります。
したがって、カスタム変数を複数指定する場合は、対となる変数名と値を続けて指定し、それを繰り返します。

下記のサンプルは、カスタム変数名name1の値にvalue1を、カスタム変数名name2の値にvalue2を指定しています。

curl 'https://trocco.io/api/jobs?job_definition_id={JOB_DEFINITION_ID}' \
-X POST \
-H 'Authorization:Token {API KEY}' \
-d 'custom_variables[][name]=$name1$' \ 
-d 'custom_variables[][value]=value1' \
-d 'custom_variables[][name]=$name2$' \
-d 'custom_variables[][value]=value2'

各種IDの確認方法

転送設定IDの確認方法

転送設定詳細画面のURL末尾および画面内で確認いただけます。
image.png

転送ジョブIDの確認方法

転送ジョブ詳細画面のURL末尾および画面内で確認いただけます。
image.png

ワークフロー定義IDの確認方法

ワークフロー定義詳細画面のURL末尾および画面内で確認いただけます。
image.png

ワークフロージョブIDの確認方法

ワークフロージョブ詳細画面のURL末尾および画面内で確認いただけます。
image.png

タイムゾーンについて

time_zoneで指定可能な値は、下記「指定できるタイムゾーン一覧」を参照ください。
たとえば、太平洋標準時で2023年8月1日12時をcontext_timeとして展開したい場合は、time_zoneAmerica/Los_Angelescontext_time2023-08-01 12:00:00を指定ください。

また、サマータイムを採用しているタイムゾーンでは夏季に標準時間とずれが発生する点、ご留意ください。

指定できるタイムゾーン一覧
  • Etc/GMT+12
  • Pacific/Pago_Pago
  • Pacific/Midway
  • Pacific/Honolulu
  • America/Juneau
  • America/Los_Angeles
  • America/Tijuana
  • America/Phoenix
  • America/Mazatlan
  • America/Denver
  • America/Guatemala
  • America/Chicago
  • America/Chihuahua
  • America/Mexico_City
  • America/Monterrey
  • America/Regina
  • America/Bogota
  • America/New_York
  • America/Indiana/Indianapolis
  • America/Lima
  • America/Halifax
  • America/Caracas
  • America/Guyana
  • America/La_Paz
  • America/Puerto_Rico
  • America/Santiago
  • America/St_Johns
  • America/Sao_Paulo
  • America/Argentina/Buenos_Aires
  • America/Godthab
  • America/Montevideo
  • Atlantic/South_Georgia
  • Atlantic/Azores
  • Atlantic/Cape_Verde
  • Europe/London
  • Europe/Lisbon
  • Africa/Monrovia
  • Etc/UTC
  • Europe/Amsterdam
  • Europe/Belgrade
  • Europe/Berlin
  • Europe/Zurich
  • Europe/Bratislava
  • Europe/Brussels
  • Europe/Budapest
  • Africa/Casablanca
  • Europe/Copenhagen
  • Europe/Dublin
  • Europe/Ljubljana
  • Europe/Madrid
  • Europe/Paris
  • Europe/Prague
  • Europe/Rome
  • Europe/Sarajevo
  • Europe/Skopje
  • Europe/Stockholm
  • Europe/Vienna
  • Europe/Warsaw
  • Africa/Algiers
  • Europe/Zagreb
  • Europe/Athens
  • Europe/Bucharest
  • Africa/Cairo
  • Africa/Harare
  • Europe/Helsinki
  • Asia/Jerusalem
  • Europe/Kaliningrad
  • Europe/Kiev
  • Africa/Johannesburg
  • Europe/Riga
  • Europe/Sofia
  • Europe/Tallinn
  • Europe/Vilnius
  • Asia/Baghdad
  • Europe/Istanbul
  • Asia/Kuwait
  • Europe/Minsk
  • Europe/Moscow
  • Africa/Nairobi
  • Asia/Riyadh
  • Europe/Volgograd
  • Asia/Tehran
  • Asia/Muscat
  • Asia/Baku
  • Europe/Samara
  • Asia/Tbilisi
  • Asia/Yerevan
  • Asia/Kabul
  • Asia/Yekaterinburg
  • Asia/Karachi
  • Asia/Tashkent
  • Asia/Kolkata
  • Asia/Colombo
  • Asia/Kathmandu
  • Asia/Almaty
  • Asia/Dhaka
  • Asia/Urumqi
  • Asia/Rangoon
  • Asia/Bangkok
  • Asia/Jakarta
  • Asia/Krasnoyarsk
  • Asia/Novosibirsk
  • Asia/Shanghai
  • Asia/Chongqing
  • Asia/Hong_Kong
  • Asia/Irkutsk
  • Asia/Kuala_Lumpur
  • Australia/Perth
  • Asia/Singapore
  • Asia/Taipei
  • Asia/Ulaanbaatar
  • Asia/Tokyo※デフォルト値
  • Asia/Seoul
  • Asia/Yakutsk
  • Australia/Adelaide
  • Australia/Darwin
  • Australia/Brisbane
  • Australia/Melbourne
  • Pacific/Guam
  • Australia/Hobart
  • Pacific/Port_Moresby
  • Australia/Sydney
  • Asia/Vladivostok
  • Asia/Magadan
  • Pacific/Noumea
  • Pacific/Guadalcanal
  • Asia/Srednekolymsk
  • Pacific/Auckland
  • Pacific/Fiji
  • Asia/Kamchatka
  • Pacific/Majuro
  • Pacific/Chatham
  • Pacific/Tongatapu
  • Pacific/Apia
  • Pacific/Fakaofo

この記事は役に立ちましたか?