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 | 작업에 대한 네이버 클라우드 플랫폼 리소스 식별 값 |
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 | - | 작업 아이디 |
name |
String | - | 작업 이름 |
type |
String | - | 작업 유형 - VISUAL | SCRIPT |
status |
String | - | 작업 상태
|
nodes |
Array | - | 작업 노드 정보
|
runCondition |
Object | - | 작업 실행 옵션 |
runCondition.numWorker |
Integer | - | 워커 수
|
runCondition.timeout |
Integer | - | 실행 타임아웃(분)
|
runCondition.nrn |
String | - | 작업에 대한 네이버 클라우드 플랫폼 리소스 식별 값 |
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"
}