--- title: "파이프라인 생성" slug: "devtools-sourcepipeline-projectcreate" tags: ["SourcePipeline"] updated: 2026-09-17T09:16:30Z published: 2026-09-17T09:16:30Z canonical: "api.ncloud-docs.com/devtools-sourcepipeline-projectcreate" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # 파이프라인 생성 Classic/VPC 환경에서 이용 가능합니다. 파이프라인을 생성합니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | POST | /api/v1/project | ### 요청 헤더 SourcePipeline API에서 공통으로 사용하는 헤더에 대한 정보는 [SourcePipeline 요청 헤더](/docs/devtools-sourcepipeline#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `name` | String | Required | 파이프라인 이름 - 영문자, 숫자, 특수 문자 '-', '_'를 조합하여 1~30자 이내로 입력 | | `description` | String | Optional | 파이프라인 설명 | | `tasks` | Array | Required | 작업 목록: [tasks](/docs/devtools-sourcepipeline-projectcreate#tasks) | | `trigger` | Object | Optional | 트리거 설정 | | `trigger.repository` | Array | Optional | Push 트리거 설정: [repository](/docs/devtools-sourcepipeline-projectcreate#repository) | | `trigger.sourcepipeline` | Array | Optional | 파이프라인 트리거 설정: [sourcepipeline](/docs/devtools-sourcepipeline-projectcreate#sourcepipeline) | | `trigger.schedule` | Array | Optional | 예약 트리거 설정: [schedule](/docs/devtools-sourcepipeline-projectcreate#schedule) | #### `tasks` `tasks`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `name` | String | Required | 작업 이름 - 영문자, 숫자, 특수 문자 '-', '_'를 조합하여 1~50자 이내로 입력 | | `type` | String | Required | 작업 타입 - `SourceBuild` \| `SourceDeploy` | | `config` | Object | Required | 작업 설정 | | `config.projectId` | Number | Required | 작업 프로젝트 아이디 - `type`이 `SourceBuild`인 경우, [SourceBuild 프로젝트 목록 조회](/docs/devtools-sourcepipeline-sourcbuildprojectlist) 참조 - `type`이 `SourceDeploy`인 경우, [SourceDeploy 프로젝트 목록 조회](/docs/devtools-sourcepipeline-sourcedeployprojectlist) 참조 | | `config.stageId` | Number | Conditional | 배포 스테이지 아이디 - [SourceDeploy 스테이지 목록 조회](/docs/devtools-sourcepipeline-sourcedeploystagelist) 참조 - `type`이 `SourceDeploy`인 경우, 필수 입력 | | `config.scenarioId` | Number | Conditional | 배포 시나리오 아이디 - [SourceDeploy 시나리오 목록 조회](/docs/devtools-sourcepipeline-sourcedeployscenariolist) 참조 - `type`이 `SourceDeploy`인 경우, 필수 입력 | | `config.target` | Object | Optional | 연결 정보 | | `config.target.info` | Object | Optional | 상세 연결 정보 | | `config.target.info.branch` | String | Optional | 브랜치 이름 - [SourceCommit 브랜치 목록 조회](/docs/devtools-sourcepipeline-sourcecommitbranchlist) 참조 - `type`이 `SourceBuild`인 경우, 입력 가능 | | `linkedTasks` | Array | Required | 선행 작업 이름 - 선행 작업이 없으면 빈 값 `[]` 입력 | #### `repository` `repository`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `type` | String | Conditional | 리포지토리 종류 - `sourcecommit`: SourceCommit (유효 값) - 트리거 설정 시 필수 입력 | | `name` | String | Conditional | 리포지토리 이름 - [SourceCommit 리포지토리 목록 조회](/docs/devtools-sourcepipeline-sourcecommitrepolist) 참조 - 트리거 설정 시 필수 입력 | | `branch` | String | Conditional | 브랜치 이름 - [SourceCommit 브랜치 목록 조회](/docs/devtools-sourcepipeline-sourcecommitbranchlist) 참조 - 트리거 설정 시 필수 입력 | #### `sourcepipeline` `sourcepipeline`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `id` | Number | Conditional | 파이프라인 아이디 - [파이프라인 목록 조회](/docs/devtools-sourcepipeline-projectlist) 참조 - 트리거 설정 시 필수 입력 | #### `schedule` `schedule`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `day` | Array | Conditional | 예약 실행 요일 목록 - `MON` \| `TUE` \| `WED` \| `THU` \| `FRI` \| `SAT` \| `SUN` - 트리거 설정 시 필수 입력 | | `time` | String | Conditional | 예약 실행 시간 - HH:mm 형식(24시간) - 트리거 설정 시 필수 입력 | | `timeZone` | String | Conditional | 예약 트리거 타임존 - [타임존 목록 조회](/docs/devtools-sourcepipeline-timezone) 참조 - 트리거 설정 시 필수 입력 | | `scheduleOnlyWithChange` | Boolean | Conditional | SourceCommit, SourcePipeline 변경 시 실행 여부 - `true` \| `false` - `true`: 실행 - `false`: 실행 안 함 - 트리거 설정 시 필수 입력 | ### 요청 예시 요청 예시는 다음과 같습니다. ``` curl --location --request POST 'https://vpcsourcepipeline.apigw.ntruss.com/api/v1/project' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --header 'Content-Type: application/json' \ --data '{ "name": "testpipeline", "description": "testpipeline", "tasks": [ { "name": "task1", "type": "SourceBuild", "config": { "projectId": 20***, "target": { "info": { "branch": "app" } } }, "linkedTasks": [] }, { "name": "task2", "type": "SourceDeploy", "config": { "projectId": 2***, "stageId": 3***, "scenarioId": 2*** }, "linkedTasks": [ "task1" ] } ], "trigger": { "schedule": [ { "day": [ "MON", "WED", "FRI", "SUN" ], "time": "23:00", "timeZone": "Asia/Seoul (UTC+09:00)", "scheduleOnlyWithChange": true } ] } }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `result` | Object | - | 응답 결과 | | `result.projectId` | Number | - | 파이프라인 아이디 | ### 응답 상태 코드 SourcePipeline API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [SourcePipeline 응답 상태 코드](/docs/devtools-sourcepipeline#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "result": { "projectId": 2*** } } ```