VPC環境で利用できます。
ジョブを作成します。リクエスト
リクエスト形式を説明します。リクエスト形式は次の通りです。
| メソッド | URI |
|---|---|
| POST | /api/v1/jobs |
リクエストヘッダ
Data Flow APIで共通して使用されるヘッダの詳細は、Data Flowのリクエストヘッダをご参照ください。
リクエストボディ
リクエストボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
name |
String | Required | ジョブ名
|
type |
String | Required | ジョブタイプ
|
maxConcurrentRuns |
Integer | Optional | 最大同時実行回数 |
jobCondition |
Object | Optional | ジョブの実行を設定 |
jobCondition.numWorker |
Integer | Optional | ワーカー数
|
jobCondition.timeout |
Integer | Optional | 実行のタイムアウト(分)
|
jobCondition.nrn |
String | Optional | ジョブに対する NAVERクラウドプラットフォームリソースの識別値 |
jobCondition.scriptPath |
String | Optional | ジョブ実行スクリプトの保存先パス |
jobCondition.logPath |
String | Optional | ジョブの実行履歴の保存先パス |
jobCondition.parameters |
Object | Optional | ジョブパラメータ(SCRIPTジョブ専用)
|
nodes |
Array | Optional | ジョブのノード情報
|
code |
String | Optional | SCRIPTジョブの実行コード |
リクエスト例
リクエストのサンプルコードは次の通りです。
curl --location --request POST 'https://dataflow.apigw.ntruss.com/api/v1/jobs' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--data '{
"name": "daily_sales_job",
"type": "SCRIPT",
"maxConcurrentRuns": 3,
"jobCondition": {
"numWorker": 2,
"timeout": 360,
"nrn": "nrn:PUB:IAM::*******:Role/********",
"scriptPath": "dataflow-2706412-****/scripts/",
"logPath": "dataflow-2706412-****/sparkHistoryLogs/",
"parameters": {
"target_date": "2025-03-21",
"input_path": "dataflow/sales/",
"output_format": "parquet"
}
},
"code": "import argparse\nfrom pyspark.sql import SparkSession\n\nparser = argparse.ArgumentParser()\nparser.add_argument(\"--target_date\")\nparser.add_argument(\"--input_path\")\nparser.add_argument(\"--output_format\")\nparser.add_argument(\"--JOB_ID\")\nparser.add_argument(\"--JOB_EXECUTION_ID\")\nparser.add_argument(\"--JOB_NAME\")\nargs, _ = parser.parse_known_args()\n\nspark = SparkSession.builder.getOrCreate()\nprint(args.target_date, args.input_path, args.output_format)\n"
}'
レスポンス
レスポンス形式を説明します。
レスポンスボディ
レスポンスボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
jobId |
String | - | ジョブ ID |
name |
String | - | ジョブ名 |
type |
String | - | ジョブタイプ - VISUAL | SCRIPT |
status |
String | - | ジョブの状態
|
nodes |
Array | - | ジョブのノード情報
|
runCondition |
Object | - | ジョブ実行オプション |
runCondition.numWorker |
Integer | - | ワーカー数
|
runCondition.timeout |
Integer | - | 実行タイムアウト(分)
|
runCondition.nrn |
String | - | ジョブに対する NAVERクラウドプラットフォームリソースの識別値 |
runCondition.scriptPath |
String | - | ジョブ実行スクリプトの保存先パス |
runCondition.logPath |
String | - | ジョブの実行履歴の保存先パス |
runCondition.parameters |
Object | - | ジョブに保存されているデフォルトのパラメータ
|
createdDate |
String | - | ジョブの作成日時
|
updatedDate |
String | - | ジョブの更新日時
|
レスポンスステータスコード
Data Flow APIで共通して使用されるレスポンスステータスコードの詳細は、Data Flowのレスポンスステータスコードをご参照ください。
レスポンス例
レスポンスのサンプルコードは次の通りです。
{
"jobId": "5Yns7J******",
"name": "daily_sales_job",
"type": "SCRIPT",
"status": "READY",
"maxConcurrentRuns": 3,
"nodes": [],
"runCondition": {
"numWorker": 2,
"timeout": 360,
"nrn": "nrn:PUB:IAM::*******:Role/********",
"scriptPath": "dataflow-2706412-****/scripts/",
"logPath": "dataflow-2706412-****/sparkHistoryLogs/",
"parameters": {
"target_date": "2025-03-21",
"input_path": "aitems/sales/",
"output_format": "parquet"
}
},
"createdDate": "2025-03-21T10:02:02+09:00",
"updatedDate": "2025-03-21T10:02:02+09:00"
}