--- title: "createScanner" slug: "analytics-datacatalog-scanner-createscanner" updated: 2026-09-17T09:16:09Z published: 2026-09-17T09:16:09Z canonical: "api.ncloud-docs.com/analytics-datacatalog-scanner-createscanner" --- > ## 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. # createScanner VPC 환경에서 이용 가능합니다. 스캐너를 생성합니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | POST | /api/v1/catalogs/{catalogId}/scanners | ### 요청 헤더 Data Catalog API에서 공통으로 사용하는 헤더에 대한 정보는 [Data Catalog 요청 헤더](/docs/analytics-datacatalog#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 경로 파라미터 요청 경로 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `catalogId` | Integer | Required | 카탈로그 ID - [getCatalogs](/docs/analytics-datacatalog-catalog-getcatalogs) 참조 | ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `name` | String | Required | 스캐너 이름 | | `type` | String | Required | 데이터 유형 - `OBJECT_STORAGE` \| `ICEBERG` \| `CLOUD_DB_FOR_MYSQL` \| `CLOUD_DB_FOR_MSSQL` \| `CLOUD_DB_FOR_MONGODB` \| `CLOUD_DB_FOR_POSTGRESQL` \| `JDBC` - `OBJECT_STORAGE`: 오브젝트 스토리지 - `ICEBERG`: Apache Iceberg - `CLOUD_DB_FOR_MYSQL`: Cloud DB for MySQL - `CLOUD_DB_FOR_MSSQL`: Cloud DB for MSSQL - `CLOUD_DB_FOR_MONGODB`: Cloud DB for MongoDB - `CLOUD_DB_FOR_POSTGRESQL`: Cloud DB for PostgreSQL - `JDBC`: JDBC | | `location` | String | Optional | 스캔 경로 - `type`이 `OBJECT_STORAGE` 또는`ICEBERG` 인 경우, 필수 입력 | | `connectionId` | Integer | Optional | 커넥션 ID - `type`이 `CLOUD_DB_FOR_MYSQL`, `CLOUD_DB_FOR_MSSQL`, `CLOUD_DB_FOR_MONGODB`, `CLOUD_DB_FOR_POSTGRESQL` 또는 `JDBC`인 경우, 필수 입력 - [getConnection API](/docs/analytics-datacatalog-connection-getconnection) 참조 | | `scanFileLimitCnt` | Integer | Optional | 스캔 범위 - `1`~`100`: 일부 파일만 스캔 - 미입력 시 전체 스캔 - `type`이 `OBJECT_STORAGE`인 경우에만 입력 | | `scheduleType` | String | Required | 실행 주기 - `ON_DEMAND` \| `CRON` - `ON_DEMAND`: 온디맨드(사용자 요청 시) - `CRON`: 크론 | | `schedule` | String | Optional | 실행 주기 값 - `CRON`: 크론식으로 입력 {0 10 * * *} - `scheduleType=ON_DEMAND`가 아닌 경우, 필수 입력 | | `excludePattern` | String | Optional | 적용 패턴 | | `includePattern` | String | Optional | 포함 패턴 | | `isUseHivePartitionOnly` | Boolean | Optional | hive 파티션만 인식 여부 | | `databaseName` | String | Required | 출력 데이터베이스 이름 | | `tablePrefixName` | String | Optional | 생성 테이블 Prefix명 | | `description` | String | Optional | 스캐너 설명 | | `opAddType` | String | Required | 스키마 추가 시 업데이트 방법 - `ADD_NEW_COLUMNS_ONLY` \| `UPDATE_TABLE` \| `IGNORE_UPDATE` - `ADD_NEW_COLUMNS_ONLY`: 새 열만 추가 - `UPDATE_TABLE`: 테이블 정의 업데이트 - `IGNORE_UPDATE`: 무시 | | `opDelType` | String | Optional | 스키마 삭제 시 업데이트 방법 - `DEL_NO`: 무시 | | `maxTableThreshold` | Integer | Optional | 생성 테이블 제한 개수 | | `isMergeForce` | Boolean | Optional | 강제 테이블 병합 여부 | ### 요청 예시 요청 예시는 다음과 같습니다. ``` curl --location --request POST 'https://datacatalog.apigw.ntruss.com/api/v1/catalogs/4**/scanners' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' -data '{ "databaseName": "mydatabase", "description": "description", "excludePattern": "*.csv", "includePattern": "*.xml", "isMergeForce": false, "isUseHivePartitionOnly": false, "location": "s3a://mybucket/test/", "name": "my-scanner", "opAddType": "UPDATE_TABLE", "opDelType": "DEL_NO", "schedule": "1 0 * * *", "scheduleType": "CRON", "tablePrefixName": "test-", "type": "OBJECT_STORAGE" }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `scannerId` | Integer | - | 스캐너 ID | | `name` | String | - | 스캐너 이름 | | `status` | String | - | 스캐너 상태 - `SCANNER_IDLE` \| `SCANNER_STARTING` \| `SCANNER_RUNNING` \| `SCANNER_STOPPING` \| `SCANNER_DONE` - `SCANNER_IDLE`: 실행 대기 - `SCANNER_STARTING`: 실행 시작 - `SCANNER_RUNNING`: 실행 중 - `SCANNER_STOPPING`: 실행 중지 - `SCANNER_DONE`: 실행 종료 | | `description` | String | - | 스캐너 설명 - 값이 존재하는 경우, 표시 | | `type` | String | - | 소스 데이터 유형 | | `location` | String | - | 소스 데이터 경로 | | `schedule` | String | - | 스캐너 실행 주기의 크론 표현식 - 주기적 실행이 설정된 경우, 표시 | | `scheduleType` | String | - | 스캐너 실행 주기 - `ON_DEMAND` \| `CRON` - `ON_DEMAND`: 온디맨드 (사용자 요청 시) - `CRON`: 크론 | | `opAddType` | String | - | 스키마 추가 시 수집 옵션 - `UPDATE_TABLE` \| `ADD_NEW_COLUMNS_ONLY` \| `IGNORE_UPDATE` - `UPDATE_TABLE`: 테이블 정의 업데이트 - `ADD_NEW_COLUMNS_ONLY`: 새 열만 추가 - `IGNORE_UPDATE`: 무시 | | `opDelType` | String | - | 스키마 삭제 시 옵션 - `DEL_NO`: 무시 (유효 값) | | `includePattern` | String | - | 스캔 대상 포함 패턴 | | `excludePattern` | String | - | 스캔 대상 제외 패턴 - 제외 패턴이 포함 패턴보다 우선 적용 | | `tablePrefixName` | String | - | 출력 데이터 접두어 - 값이 존재하는 경우, 표시 | | `lastExecStartTime` | String | - | 스캐너 최근 실행 일시 - ISO 8601 형식 | | `lastExecElapsedTime` | Integer | - | 스캐너 최근 실행 시간(초) | | `lastResult` | String | - | 스캐너 최근 실행 결과 | | `isSchedulePaused` | Integer | - | 실행 주기 일시 중지 여부 - `1` \| `0` - `1`: 일시 중지 - `0`: 일시 중지 안 됨 | | `catalogId` | Integer | - | 카탈로그 아이디 | | `connectionId` | Integer | - | 커넥션 아이디 | | `connectionName` | String | - | 커넥션 이름 | | `classifierResponseList` | Array | - | 분류자 목록: [classifierResponseList](/docs/analytics-datacatalog-scanner-createscanner#classifierResponseList) - 스캐너 실행 옵션으로 설정된 경우, 표시 | | `databaseName` | String | - | 출력 데이터의 데이터베이스 이름 | | `createTime` | String | - | 스캐너 생성 일시 - ISO 8601 형식 | | `updateTime` | String | - | 업데이트 일시 - ISO 8601 형식 | | `lastHistoryUuid` | String | - | 최근 실행 내역 UUID | #### `classifierResponseList` `classifierResponseList`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `disabled` | Boolean | - | 사용 불가능 여부 - `true` \| `false` - `true`: 불가능 - `false`: 가능 | | `classifierId` | Integer | - | 분류자 아이디 | | `catalogId` | Integer | - | 카탈로그 아이디 | | `name` | String | - | 분류자 이름 | | `type` | String | - | 분류자 유형 - `CSV` \| `JSON` \| `XML` - `CSV`: CSV 파일 - `JSON`: JSON 파일 - `XML`: XML 파일 | | `value` | String | - | 분류자 유형에 따른 상세 정보 - CSV: 열 구분 기호 - JSON: 메타데이터 생성 대상 경로 - XML: 행 구분 태그 이름 | | `createTime` | String | - | 분류자 생성 일시 - ISO 8601 형식 | ### 응답 상태 코드 Data Catalog API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Data Catalog 응답 상태 코드](/docs/analytics-datacatalog#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "scannerId": 9**, "name": "my-scanner", "status": "SCANNER_IDLE", "description": "description", "type": "OBJECT_STORAGE", "location": "s3a://mybucket/test/", "schedule": "1 0 * * *", "scheduleType": "CRON", "opAddType": "UPDATE_TABLE", "opDelType": "DEL_NO", "tablePrefixName": "test-", "lastExecStartTime": "2026-03-19T14:44:55+0900", "lastExecElapsedTime": 6, "lastResult": "SUCCESS", "isSchedulePaused": 0, "catalogId": 4**, "databaseName": "mydatabase", "createTime": "2026-03-18T09:34:42+0900", "updateTime": "2026-03-19T14:45:15+0900", "lastHistoryUuid": "********" } ```