---
title: "서비스 생성"
slug: "ai-application-service-aitems-service-create"
tags: ["Service", "AiTEMS"]
updated: 2026-04-23T08:55:41Z
published: 2026-04-23T09:02:17Z
canonical: "api.ncloud-docs.com/ai-application-service-aitems-service-create"
---

> ## 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.

# 서비스 생성

<p class="platform-info type-classic-vpc">Classic/VPC 환경에서 이용 가능합니다.</p>

AiTEMS 서비스를 이용하기 위해 새로운 서비스를 생성합니다.

## 요청<a name="요청"></a>
요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

| 메서드 | URI |
| :--- | :--- |
| POST | /services |

### 요청 헤더<a name="요청헤더"></a>
AiTEMS API에서 공통으로 사용하는 헤더에 대한 정보는 [AiTEMS 요청 헤더](/docs/aitems-overview#요청헤더)를 참조해 주십시오.

### 요청 바디<a name="요청바디"></a>
요청 바디에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부| 설명 |
| :---- | :---- | :---- | :---- |
| `name` | String | Required | 서비스 이름<ul><li>영문자, 숫자, 특수 문자 '\_', '-'를 조합하여 3~20자 이내로 입력</li><li>문자열의 시작은 영문자 또는 '_'로 구성</li></ul> |
| `description` | String | Optional | 서비스에 대한 설명<ul><li>0~100자</li></ul>|
| `type` | String | Optional | 서비스 구분<ul><li>`batch` (기본값) \| `interval`<ul><li>`batch`: 학습 진행 시 1회 학습</li><li>`interval`: 학습 진행 후 일정 주기로 재학습</li></ul></li></ul> |

### 요청 예시<a name="요청예시"></a>
요청 예시는 다음과 같습니다. 
 
```shell
curl --location --request POST 'https://aitems.apigw.ntruss.com/api/v1/services' \
--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": "service",
    "description": "test",
    "type": "batch"
}'
```

## 응답<a name="응답"></a>
응답 형식을 설명합니다.

### 응답 바디<a name="응답바디"></a>
응답 바디에 대한 설명은 다음과 같습니다. 

| 필드 | 타입 | 필수 여부 | 설명 |
| :---- | :---- | :---- | :---- |
| `serviceId` | String | - | 서비스 ID |
| `name` | String | - | 서비스 이름 |
| `description` | String  | - | 서비스에 대한 설명 |
| `status` | String | - | 서비스 상태<ul><li>`scheduled` \| `scheduledLearning` \| `learnable` \| `learning` \| `deleting` \| `deleted` \| `disable` \| `drafted` \| `requestLearning` \| `datasetRequired`<ul><li>`scheduled`: 예약됨</li><li>`scheduledLearning`: 예약된 학습 중</li><li>`learnable`: 학습 가능</li><li>`learning`: 학습 진행 중</li><li>`deleting`: 삭제 중</li><li>`deleted`: 삭제됨</li><li>`disable`: 학습 불가</li><li>`drafted`: 임시 저장 상태</li><li>`requestLearning`: 학습 요청 상태</li><li>`datasetRequired`: 서비스 생성 후 데이터셋을 지정하지 않은 상태</li></ul></li></ul> |
| `datasets` | Array | - | 서비스에 설정된 데이터셋 정보: [datasets](#datasets) |
| `hpConfig` | Object | - | HPO (Hyperparameter Optimization) 설정 정보 |
| `hpConfig.is_enabled` | Boolean | - | HPO 설정 여부<ul><li>`true` \| `false`<ul><li>`true`: HPO 설정. 최적의 훈련 모델 구현 가능</li><li>`false`: HPO 설정 안 함. AiTEMS 내부의 자체 알고리즘으로 학습</li></ul></li></ul> |
| `hpConfig.{option}` | String, Long, Boolean | - | 설정된 HPO 값<ul><li>값에 대한 세부 정보는 [HPO](/docs/ai-application-service-aitems-service-learning#HPO) 참조</li></ul> |
| `infers` | Array | - | 학습 결과 정보: [infers](#infers)<ul><li>`type`이 `interval`인 경우에만 표시</li></ul> |
| `createdDate` | String | - | 서비스 생성 일시 |
| `updatedDate` | String | - | 서비스 최종 업데이트 일시 |
| `type` | String | - | 서비스 타입<ul><li>`batch` \| `interval`<ul><li>`batch`: 학습 진행 시 1회 학습</li><li>`interval`: 학습 진행 후 일정 주기로 재학습</li></ul></li></ul> |

#### `datasets` <a name="datasets"></a>
`datasets`에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| :---- | :---- | :---- | :---- |
| `datasetId` | String | - | 서비스에 설정된 데이터셋 ID |
| `type` | String | - | 서비스에 설정된 데이터셋 타입<ul><li>`user` \| `item` \| `interaction`<ul><li>`user`: 사용자 정보(연령, 성별 등)를 담은 데이터</li><li>`item`: 상품 관련 정보(가격, 출시일, 카테고리 등)를 담은 데이터</li><li>`interaction`: 사용자와 상품 간 상호작용으로 얻은 기록을 담은 데이터</li></ul></li></ul> |
| `name` | String | - | 서비스에 설정된 데이터셋 이름 |
| `schemaName` | String | - | 서비스에 설정된 데이터셋 스키마 이름 |
| `status` | String | - | 서비스에 설정된 데이터셋 상태<ul><li>`learnable` \| `disable` \| `uploading` \| `updateRequired`<ul><li>`learnable`: 학습 가능</li><li>`disable`: 학습 불가</li><li>`uploading`: 업로드 중</li><li>`updatedRequired`: 업데이트된 데이터셋 등록 필요(학습 시 자동으로 등록됨)</li></ul></li></ul> |
| `createdDate` | String | - | 서비스에 설정된 데이터셋 생성 일시 |
| `updatedDate` | String | - | 서비스에 설정된 데이터셋 최종 업데이트 일시 |

#### `infers` <a name="infers"></a>
`infers`에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| :---- | :---- | :---- | :---- |
| `dataType` | String | - | 학습 결과의 데이터셋 타입<ul><li>`user` \| `item` \| `interaction`<ul><li>`user`: 사용자 정보(연령, 성별 등)를 담은 데이터</li><li>`item`: 상품 관련 정보(가격, 출시일, 카테고리 등)를 담은 데이터</li><li>`interaction`: 사용자와 상품 간 상호작용으로 얻은 기록을 담은 데이터</li></ul></li></ul> |
| `trainVersion` | String | - | 학습 결과 버전 |
| `status` | String | - | 학습 결과 상태<ul><li>`enable` \| `waiting` \| `pending` \| `processing` \| `updateFailed` \| `disable`<ul><li>`enable`: 업데이트 가능</li><li>`waiting`: 업데이트 대기 중</li><li>`pending`: 업데이트 대기 중</li><li>`processing`: 업데이트 중</li><li>`updateFailed`: 업데이트 실패</li><li>`disable`: 업데이트 불가</li></ul></li></ul> |
| `rowCount` | String | - | 결과 데이터 개수 |

### 응답 상태 코드<a name="응답상태코드"></a>
AiTEMS API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [AiTEMS 응답 상태 코드](/docs/aitems-overview#응답상태코드)를 참조해 주십시오.

### 응답 예시<a name="응답예시"></a>
응답 예시는 다음과 같습니다.

```json
{
    "serviceId": "fboyb******",
    "name": "service",
    "description": "test",
    "status": "datasetRequired",
    "datasets": [],
    "hpConfig": {
        "is_enabled": false
    },
    "infers": [],
    "createdDate": "2024-07-29T16:17:37.235",
    "updatedDate": "2024-07-29T16:17:37.235",
    "type": "batch"
}
```
