updateWorkflow

Prev Next

VPC 환경에서 이용 가능합니다.

워크플로를 수정합니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
PUT /api/v1/workflows/{workflowId}

요청 헤더

Data Flow API에서 공통으로 사용하는 헤더에 대한 정보는 Data Flow 요청 헤더를 참조해 주십시오.

요청 경로 파라미터

요청 경로 파라미터에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
workflowId String Required 워크플로 아이디

요청 바디

요청 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
name String Required 워크플로 이름
  • 영문자, 숫자, 특수 문자 '_', '-'를 조합하여 3~100자로 입력
  • 문자열의 시작은 영문자 또는 '_'로 구성
nodes Array Required 노드 정보

nodes

nodes에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
id String Required 노드 아이디
  • triggerId | jobId
    • jobId: getJobs 참조 (typeTRIGGER인 경우)
    • jobId: getTriggers 참조 (typeJOB인 경우)
name String Required 노드 이름
  • 트리거 이름 | 작업 이름
    • 트리거 이름: getTriggers 참조 (typeTRIGGER인 경우)
    • 작업 이름: getJobs 참조 (typeJOB인 경우)
type String Required 노드 유형
  • TRIGGER | JOB
parentNodeIds Array Required 상위 노드 아이디 목록
  • 작업 노드 오브젝트는 트리거 노드의 아이디 입력
  • 트리거 노드 오브젝트는 빈 값 유지
triggerRule String Optional 트리거 노드 실행 옵션 정보
  • RECURRING | ONE_TIME | NONE
    • RECURRING: 주기 실행
    • ONE_TIME: 특정일 실행
    • NONE: 실행 옵션 없음
jobCondition Object Required 작업 실행 옵션 정보
jobCondition.workerType String Optional 워커 유형
  • DATAFLOW (기본값)
jobCondition.numWorker Integer Optional 워커 수
  • 2 (기본값)
jobCondition.timeout Integer Optional 실행 타임아웃(분)
  • 작업을 한 번 실행할 때 작업 결과를 기다리는 시간
  • 0~1440 (기본값: 360)
jobCondition.nrn String Required 작업에 대한 네이버 클라우드 플랫폼 리소스 식별 값
jobCondition.scriptPath String Required 작업 실행 스크립트 저장 경로
jobCondition.logPath String Required 작업 실행 이력 저장 경로

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request PUT 'https://dataflow.apigw.ntruss.com/api/v1/workflows/3tfNLP******' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--data '{
    "isTemp": false,
    "name": "workflow001",
    "nodes": [
        {
            "id": "gqigvH******",
            "name": "job001",
            "type": "JOB",
            "parentNodeIds": [
                "8bjF7E******"
            ],
            "isValid": true,
            "jobCondition": {
                "workerType": "DEFAULT",
                "numWorker": 3,
                "timeout": 300,
                "nrn": "nrn:PUB:IAM::*******:Role/********-0496-11f0-baf6-246e96591a38",
                "scriptPath": "dataflow-2706412-****/scripts/",
                "logPath": "dataflow-2706412-****/sparkHistoryLogs/"
            }
        },
        {
            "id": "8bjF7E******",
            "name": "trigger001",
            "type": "TRIGGER",
            "parentNodeIds": [],
            "triggerRule": "RECURRING",
            "isValid": true
        }
    ]
}

응답

응답 형식을 설명합니다.

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
workflowId String - 워크플로 아이디
name String - 워크플로 이름
nodes Array - 노드 정보
createdDate String - 워크플로 생성 일시
  • ISO 8601 형식(UTC+9 포함)
updatedDate String - 워크플로 수정 일시
  • ISO 8601 형식(UTC+9 포함)
isTemp Boolean - 임시 저장 여부
  • true | false
    • true: 임시 저장
    • false: 즉시 완료(임시 저장 안 함)

nodes

nodes에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
id String - 노드 아이디
  • type에 따라 triggerId 또는 jobId 값 표시
name String - 노드 이름
  • type에 따라 트리거 이름 또는 작업 이름 표시
type String - 노드 유형
  • TRIGGER | JOB
parentNodeIds Array - 상위 노드 아이디 목록
  • 작업 노드 오브젝트는 트리거 노드의 아이디 표시
  • 트리거 노드 오브젝트는 빈 값 표시
triggerRule String - 트리거 노드 실행 옵션 정보
  • RECURRING | ONE_TIME | NONE
    • RECURRING: 주기 실행
    • ONE_TIME: 특정일 실행
    • NONE: 실행 옵션 없음
jobCondition Object - 작업 실행 옵션 정보
jobCondition.workerType String - 워커 유형
  • DATAFLOW (기본값)
jobCondition.numWorker Integer - 워커 수
  • 2 (기본값)
jobCondition.retry Integer - 작업 재시도 횟수
  • 0~5 (기본값: 0)
jobCondition.timeout Integer - 실행 타임아웃(분)
  • 작업을 한 번 실행할 때 작업 결과를 기다리는 시간
  • 0~1440 (기본값: 360)
jobCondition.nrn String - 작업에 대한 네이버 클라우드 플랫폼 리소스 식별 값
jobCondition.scriptPath String - 작업 실행 스크립트 저장 경로
jobCondition.logPath String - 작업 실행 이력 저장 경로
isValid Boolean - 노드 삭제 여부(노드 사용 가능 여부)
  • true | false
    • true: 미삭제(사용 가능)
    • false: 삭제(사용 불가)

응답 상태 코드

Data Flow API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Data Flow API 응답 상태 코드를 참조해 주십시오.

응답 예시

응답 예시는 다음과 같습니다.

{
    "isTemp": false,
    "name": "workflow001",
    "nodes": [
        {
            "id": "gqigvH******",
            "name": "job001",
            "type": "JOB",
            "parentNodeIds": [
                "8bjF7E******"
            ],
            "isValid": true,
            "jobCondition": {
                "workerType": "DEFAULT",
                "numWorker": 3,
                "timeout": 300,
                "nrn": "nrn:PUB:IAM::*******:Role/********-0496-11f0-baf6-246e96591a38",
                "scriptPath": "dataflow-2706412-****/scripts/",
                "logPath": "dataflow-2706412-****/sparkHistoryLogs/"
            }
        },
        {
            "id": "8bjF7E******",
            "name": "trigger001",
            "type": "TRIGGER",
            "parentNodeIds": [],
            "triggerRule": "RECURRING",
            "isValid": true
        }
    ]
}