ジョブ管理API
Version 24.2.9064
Version 24.2.9064
ジョブ管理API
REST API は、次のジョブ管理アクションをサポートしています。
- すべてのジョブをリスト
- ジョブを作成
- ジョブを編集
- ジョブを削除
- すべての変換をリスト
- 変換を作成
- 変換を編集
- 変換を削除
- ジョブまたは変換を実行
- ジョブでクエリを実行
- 実行中のジョブをキャンセル
- ジョブのステータスを取得
- ジョブの履歴を取得
- ジョブのログをダウンロード
- ジョブのすべてのタスクをリスト
- ジョブまたは変換にタスクを追加
- タスクを更新
- タスクを削除
以下のセクションでは、各アクションについて説明します。
すべてのジョブをリスト
次のコマンドは、CData Sync アプリケーションのすべてのジョブのリストを返します。
GET http://MyDomain.com:8019/api.rsc/jobs(jobname)
クエリパラメータ
名前 | 説明 |
---|---|
JobName | 取得するジョブの名前。 |
ジョブを作成
次のコマンドは、Sync アプリケーションで実行する新しいジョブを作成します。
POST http://MyDomain.com:8019/api.rsc/jobs
ボディパラメータ
名前 | 説明 | |
---|---|---|
JobName | ジョブ名を指定します。 | |
Source | データソースの接続名を指定します。 | |
Destination | 同期先の接続名を指定します。 | |
Scheduled | 特定のスケジューラーに従ってジョブを実行するかどうかを指定します。 | 特定のスケジューラーごとにジョブを実行するには、パラメータをTrue に設定します。 |
ScheduledCron | スケジューラーのcron 文字列。 | |
NotifyWindowsEvent | エラーメッセージをMicrosoft Windows アプリケーション イベントログに書き込むかどうかを指定します。エラーメッセージをイベントログに書き込むには、このパラメータをTrue に設定します。 | |
SendEmailNotification | ジョブの完了後にE メール通知を送信するかどうかを指定します。E メール通知を送信するには、このパラメータをTrue に設定します。 | |
NotifyEmailTo | 通知を送信する宛先のE メールアドレスを指定します。 | |
NotifyEmailSubject | 通知E メールの件名を指定します。 | |
EmailErrorOnly | エラーが発生した場合にのみE メールを送信するように指定します. | |
Verbosity | ジョブのログのverbosity レベルを指定します。 | |
TableNamePrefix | レプリケートされたすべてのテーブルのプレフィックスを指定します。 | |
UseGmtDateTime | ローカル時刻ではなく、グリニッジ標準時で同期するかどうかを指定します。GMT タイムゾーンで時刻を同期するには、このパラメータをTrue に設定します。 | |
TruncateTableData | 各更新の前にすべての行を削除するかどうかを指定します。更新前にすべての行を削除するには、このパラメータをTrue に設定します。 | |
DropTable | 各更新の前にテーブルを削除するかどうかを指定します。更新前にテーブルを削除するには、このパラメータをTrue に設定します。 | |
AutoTruncateStrings | カラムサイズに対して大きすぎる文字列を自動的に切り捨てるかどうかを指定します。カラムに対して大きすぎる文字列を自動的に切り捨てるには、このパラメータをTrue に設定します。 | |
ContinueOnError | エラーが発生した場合に、ジョブを次のクエリに進めるかどうかを指定します。前のテーブルでエラーが発生したときにジョブを次のテーブルに続行するには、このパラメータをTrue に設定します。 | |
AlterSchema | データソーステーブルと同期先テーブルのメタデータが一致しない場合に、カラムを追加してデータ型を変更するかどうかを指定します。不一致が発生した場合にカラムを追加してデータ型を変更するには、このパラメータをTrue に設定します。 | |
ReplicateInterval | ReplicateIntervalUnit とペアで設定すると、このパラメータはレプリケート時にデータを分割するタイムフレームを制御します。 | |
ReplicateIntervalUnit | ReplicateInterval とペアで設定すると、このパラメータはレプリケート時にデータを分割するタイムフレームを制御します。値はminutes、hours、days、weeks、months、years です。 | |
ReplicateStartDate | データレプリケーションを開始する最小の日付(yyyy-MM-dd の形式)を設定します。 | |
BatchSize | バッチのサイズを設定します。 | |
CommandTimeout | 同期先の接続のタイムアウトを制御します。 | |
SkipDeleted | データソースから削除されたレコードの取得をスキップするかどうかを指定します。 | |
OtherCacheOptions | 含める追加オプションのカンマ区切りのリストを指定します。 | |
CacheSchema | 同期先データベースの特定のスキーマを割り当てます。 | |
PreJob | pre-job イベントのコード。 | |
PostJob | post-job イベントのコード。 | |
Query# | ジョブに含めるSQL ステートメントの配列を指定します。Query#1、Query#2 などの構文で複数のクエリを指定します。 | |
Type | ジョブの種類を指定します(1:標準(個別設定)、2:すべて同期、3:フォルダをロード、7:変更データキャプチャ、10:リバースETL)。 |
例
{
"JobName": "MyNewJob",
"Source": "SourceConnection",
"Destination": "DestinationConnection",
"Query#1":"REPLICATE [Accounts]",
"Query#2": "REPLICATE [Invoices]"
}
ジョブを編集
次のコマンドは、既存のジョブを編集します。
PUT http://mydomain.com:8019/api.rsc/jobs(jobname)
Note:実行中のジョブを編集することはできません。
クエリパラメータ
名前 | 説明 |
---|---|
JobName(必須) | 編集するジョブの名前を指定します。 |
ボディパラメータ
名前 | 説明 | |
---|---|---|
Scheduled | 特定のスケジューラーに従ってジョブを実行するかどうかを指定します。 | 特定のスケジューラーごとにジョブを実行するには、パラメータをTrue に設定します。 |
ScheduledCron | スケジューラーのcron 文字列。 | |
NotifyWindowsEvent | エラーメッセージをMicrosoft Windows アプリケーション イベントログに書き込むかどうかを指定します。エラーメッセージをイベントログに書き込むには、このパラメータをTrue に設定します。 | |
SendEmailNotification | ジョブの完了後にE メール通知を送信するかどうかを指定します。E メール通知を送信するには、このパラメータをTrue に設定します。 | |
NotifyEmailTo | 通知を送信する宛先のE メールアドレスを指定します。 | |
NotifyEmailSubject | 通知E メールの件名を指定します。 | |
EmailErrorOnly | エラーが発生した場合にのみE メールを送信するように指定します. | |
Verbosity | ジョブのログのverbosity レベルを指定します。値は1、2、3、および5 です。 | |
TableNamePrefix | レプリケートされたすべてのテーブルのプレフィックスを指定します。 | |
UseGmtDateTime | ローカル時刻ではなく、グリニッジ標準時で同期するかどうかを指定します。GMT タイムゾーンで時刻を同期するには、このパラメータをTrue に設定します。 | |
TruncateTableData | 各更新の前にすべての行を削除するかどうかを指定します。更新前にすべての行を削除するには、このパラメータをTrue に設定します。 | |
DropTable | 各更新の前にテーブルを削除するかどうかを指定します。更新前にテーブルを削除するには、このパラメータをTrue に設定します。 | |
AutoTruncateStrings | カラムサイズに対して大きすぎる文字列を自動的に切り捨てるかどうかを指定します。カラムに対して大きすぎる文字列を自動的に切り捨てるには、このパラメータをTrue に設定します。 | |
ContinueOnError | エラーが発生した場合に、ジョブを次のクエリに進めるかどうかを指定します。前のテーブルでエラーが発生したときにジョブを次のテーブルに続行するには、このパラメータをTrue に設定します。 | |
AlterSchema | データソーステーブルと同期先テーブルのメタデータが一致しない場合に、カラムを追加してデータ型を変更するかどうかを指定します。不一致が発生した場合にカラムを追加してデータ型を変更するには、このパラメータをTrue に設定します。 | |
ReplicateInterval | ReplicateIntervalUnit とペアで設定すると、このパラメータはレプリケート時にデータを分割するタイムフレームを制御します。 | |
ReplicateIntervalUnit | ReplicateInterval とペアで設定すると、このパラメータはレプリケート時にデータを分割するタイムフレームを制御します。値はminutes、hours、days、weeks、months、years です。 | |
ReplicateStartDate | データレプリケーションを開始する最小の日付(yyyy-MM-dd の形式)を設定します。 | |
BatchSize | バッチのサイズを設定します。 | |
CommandTimeout | 同期先の接続のタイムアウトを制御します。 | |
SkipDeleted | データソースから削除されたレコードの取得をスキップするかどうかを指定します。 | |
OtherCacheOptions | 含める追加オプションのカンマ区切りのリストを指定します。 | |
CacheSchema | 同期先データベースの特定のスキーマを割り当てます。 | |
PreJob | pre-job イベントのコード。 | |
PostJob | post-job イベントのコード。 |
例
{
"Scheduled": "true",
"ScheduledCron": "0-30/5 * * * *"
}
ジョブを削除
次のコマンドは、Sync アプリケーションからジョブを削除します。
DELETE http://MyDomain.com:8019/api.rsc/jobs(jobname)
Note:実行中のジョブを削除することはできません。
クエリパラメータ
名前 | 説明 |
---|---|
JobName | 削除するジョブの名前。 |
すべての変換をリスト
次のコマンドは、Sync アプリケーション内のすべての変換のリストを返します。
GET http://MyDomain.com:8019/api.rsc/transformations(transformationname)
クエリパラメータ
名前 | 説明 |
---|---|
TransformationName | 取得する変換の名前。 |
変換を作成
次のコマンドは、Sync アプリケーションで実行する新しいジョブを作成します。
POST http://MyDomain.com:8019/api.rsc/transformations
ボディパラメータ
名前 | 説明 |
---|---|
TransformationName | 変換の名前を指定します。 |
Connection | 同期先の接続名を指定します。 |
TransformationTriggerMode | スケジュールに従って変換を実行するか、ジョブ後に変換を実行するかを指定します。このパラメータの値はNone(デフォルト値)、Scheduled、およびAfter Job です。 |
TriggerAfterJob | 変換がその後で実行されるジョブを指定します。 |
TriggerTasks | タスクID のカンマ区切りのリストを指定します。 |
ScheduledCron | スケジューラーのcron 文字列を指定します。 |
SendEmailNotification | 変換の完了後にE メール通知を送信します。E メール通知を送信するには、これをTrue に設定します。 |
NotifyEmailTo | 通知を送信する宛先のE メールアドレスを指定します。 |
NotifyEmailSubject | 通知E メールの件名を指定します。 |
EmailErrorOnly | エラーが発生した場合にのみE メールを送信するように指定します. |
Verbosity | 変換のログのverbosity レベルを指定します。 |
Query# | 変換に含めるSQL ステートメントの配列を指定します。Query#1、Query#2 などの構文で複数のクエリを指定します。 |
例
{
"TransformationName": "MyNewTransformation",
"Connection": "DestinationConnection",
"Query#1":"CREATE OR REPLACE TABLE dbo.Accounts_Deduplicated as (SELECT *, row_number() over (partition by id order by modified desc) as duplicate_rank FROM dbo.Accounts);",
"Query#2": "DELETE FROM dbo.Accounts_Deduplicated WHERE duplicate_rank > 1;"
}
変換を編集
次のコマンドは、既存の変換を編集します。
PUT http://MyDomain.com:8019/api.rsc/transformations(transformationname)
Note:実行中の変換を編集することはできません。
クエリパラメータ
名前 | 説明 |
---|---|
TransformationName(必須) | 編集する変換の名前を指定します。 |
ボディパラメータ
名前 | 説明 |
---|---|
TransformationTriggerMode | スケジュールに従って変換を実行するか、ジョブ後に変換を実行するかを指定します。このパラメータの値はNone(デフォルト値)、Scheduled、およびAfterJob です。 |
TriggerAfterJob | 変換がその後で実行されるジョブを指定します。 |
TriggerTasks | タスクID のカンマ区切りのリストを指定します。 |
ScheduledCron | スケジューラーのcron 文字列を指定します。 |
SendEmailNotification | 変換の完了後にE メール通知を送信します。E メール通知を送信するには、これをTrue に設定します。 |
NotifyEmailTo | 通知を送信する宛先のE メールアドレスを指定します。 |
NotifyEmailSubject | 通知E メールの件名を指定します。 |
EmailErrorOnly | エラーが発生した場合にのみE メールを送信するように指定します. |
Verbosity | 変換のログのverbosity レベルを指定します。 |
例
{
"TransformationTriggerMode": "Scheduled",
"ScheduledCron": "0-30/5 * * * *"
}
変換を削除
次のコマンドは、Sync アプリケーションから変換を削除します。実行中の変換を削除することはできません。
DELETE http://MyDomain.com:8019/api.rsc/transformations(transformationname)
Note:実行中の変換を削除することはできません。
クエリパラメータ
名前 | 説明 |
---|---|
TransformationName(必須) | 削除する変換の名前を指定します。 |
ジョブまたは変換を実行
このコマンドは、指定されたジョブまたは変換を実行します。
POST http://MyDomain.com:8019/api.rsc/executeJob
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | 実行するジョブの名前を指定します。 |
WaitForResults | ジョブが終了するまで結果を返すことを待つかどうかを指定します。デフォルト値はTrue です。 |
Timeout | 前のジョブ実行が完了するまでの待ち時間(秒単位)を指定します。 |
例
{
"JobName": "MyJob",
"WaitForResults" : true,
"Timeout": 30
}
ジョブでクエリを実行
次のコマンドは、ジョブ内で特定のクエリを実行します。
POST http://MyDomain.com:8019/api.rsc/executeQuery
Note:実行するクエリは、すでにジョブの一部である必要があります。
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | 実行するジョブの名前を指定します。 |
Query#(必須) | 実行するQuery ステートメントの配列を指定します。Query#1、Query#2 などの構文で複数のクエリを指定します。 |
WaitForResults | ジョブが終了するまで結果を返すことを待つかどうかを指定します。デフォルト値はTrue です。 |
例
{
"JobName": "MyJob",
"Query#1": "REPLICATE [Accounts]",
"Query#2": "REPLICATE [Contacts]"
}
実行中のジョブをキャンセル
次のコマンドは、実行中のジョブをキャンセルします。
POST http://MyDomain.com:8019/api.rsc/cancelJob
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | キャンセルするジョブの名前を指定します。 |
例
{
"JobName": "MyJob"
}
ジョブのステータスを取得
次のコマンドは、ジョブのステータスを取得します。
POST http://MyDomain.com:8019/api.rsc/getJobStatus
ボディパラメータ
名前 | 説明 |
---|---|
JobName | ステータスを取得するジョブの名前を指定します。ジョブ名が指定された場合、応答には、ジョブ内の各クエリの詳細が含まれます。 |
例
{
"JobName":"MyJob"
}
ジョブの履歴を取得
次のコマンドは、ジョブの以前の実行の履歴を取得します。
GET http://MyDomain.com:8019/api.rsc/history
クエリパラメータ
名前 | 説明 |
---|---|
JobName | 履歴を取得するジョブの名前を指定します。 |
ジョブのログをダウンロード
次のコマンドは、ジョブのログファイル、またはログファイルのBase64 エンコードされたコンテンツをダウンロードします。
POST http://mydomain.com:8019/api.rsc/getLogs
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | ログを取得するジョブの名前を指定します。 |
Days(必須) | 何日分のログファイルを含めるかを指定します。 |
ジョブのすべてのタスクをリスト
次のコマンドは、ジョブや変換に関連するタスクのリストを取得します。
GET http://MyDomain.com:8019/api.rsc/tasks(jobname)
クエリパラメータ
名前 | 説明 |
---|---|
JobName(必須) | ジョブ名を指定します。 |
ジョブまたは変換にタスクを追加
次のコマンドは、既存のジョブまたは変換にタスクを追加します。
POST http://MyDomain.com:8019/api.rsc/tasks
Note:Query パラメータかTable パラメータのいずれかを含める必要があります。
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | ジョブ名を指定します。 |
Query | タスクとして設定するクエリを指定します。 |
Table | レプリケートするデータソーステーブルを指定します。Sync はこのインプットからREPLICATE クエリを作成します。 |
タスクを更新
次のコマンドは、既存のジョブまたは変換のタスクを更新します。
PUT http://MyDomain.com:8019/api.rsc/tasks
ボディパラメータ
名前 | 説明 |
---|---|
JobName(必須) | ジョブ名を指定します。 |
TaskId(必須) | 更新するタスクを指定します。 |
Query | タスクとして設定するクエリを指定します。 |
Table | レプリケートするデータソーステーブルを指定します。Sync はこのインプットからREPLICATE クエリを作成します。 |
タスクを削除
次のコマンドは、既存のジョブまたは変換からタスクを削除します。
DELETE http://MyDomain.com:8019/api.rsc/tasks
クエリパラメータ
名前 | 説明 |
---|---|
JobName(必須) | ジョブ名を指定します。 |
TaskId(必須) | 削除するタスクを指定します。 |