---
title: "파라메트릭 컴포넌트 수정"
method: PUT
path: "/api/v1/parametric/components/{id}"
tags: ["파라메트릭"]
---

# 파라메트릭 컴포넌트 수정

`PUT /api/v1/parametric/components/{id}`

파라메트릭 컴포넌트를 수정한다.

## Path parameters

- `id` string, required

## Request body

- ParametricComponentModifyRequest
  - `name` string, required — 이름
  - `parametricType` string, required — 파라메트릭 유형 (assembly | modeling)
  - `code` string — 코드
  - `brandCode` string — 브랜드 코드
  - `namespace` string — 네임스페이스
  - `color` ParametricColorRequest
    - `code` string, required — 색상 코드
    - `name` string, required — 색상 이름
  - `translatedNames` ParametricTranslatedNameRequest[], required — 다국어 이름
    - `code` string, required — 언어 코드
    - `value` string, required — 번역된 이름
  - `type` string — 타입
  - `status` string — 상태
  - `sku` string — SKU
  - `dimension` ParametricDimensionRequest, required
    - `mm` ParametricDimensionValue
      - `width` number, required — 너비
      - `depth` number, required — 깊이
      - `height` number, required — 높이
    - `inch` ParametricDimensionValue
      - `width` number, required — 너비
      - `depth` number, required — 깊이
      - `height` number, required — 높이
  - `retailPrice` ParametricPriceRequest
    - `value` number, required — 가격
    - `unit` 'KRW' | 'USD' | 'EUR' | 'JPY' | 'GBP' | 'CNY' | 'VND' | 'TWD', required — 통화 단위
  - `factoryPrice` ParametricPriceRequest
    - `value` number, required — 가격
    - `unit` 'KRW' | 'USD' | 'EUR' | 'JPY' | 'GBP' | 'CNY' | 'VND' | 'TWD', required — 통화 단위
  - `mainMaterial` string — 주재료
  - `subMaterial` string — 부재료
  - `rawMaterial` string — 원재료
  - `unit` string — 단위
  - `version` string — 버전
  - `extra` object — 추가 정보 (snapPoints, snapLines, componentCategory, componentType 등)
  - `modelingId` string — 모델링 ID
  - `category` ParametricCategoryRequest
    - `categoryIds` string[], required — 카테고리 ID 목록
  - `parameters` ParametricParameterRequest[], required — 파라미터 목록
    - `displayName` string, required — 표시 이름
    - `referenceName` string, required — 참조 이름
    - `type` string, required — 파라미터 타입
    - `valueInfo` ParametricParameterValueInfoRequest, required
      - `usage` string, required — 사용 방식
      - `value` string, required — 기본값
      - `optionType` string — 옵션 타입
      - `options` object — 옵션 값 — RANGE: {min,max,stepSize} / CANDIDATE: {values:[...]} / FORMULA: {formulaExpression:"..."}
    - `priority` integer, required — 우선순위
    - `description` string — 설명
    - `hideCondition` string — 숨김 조건 표현식
    - `enterpriseParameterId` string — 기업 파라미터 ID
  - `compositions` ParametricCompositionRequest[], required — 컴포지션 목록
    - `componentId` string, required — 자식 컴포넌트 ID
    - `recipeJson` string, required — 레시피 JSON (stringify)
    - `animation` ParametricCompositionAnimationRequest
      - `type` string, required — 애니메이션 타입
      - `animationName` string, required — 애니메이션 이름
      - `animationDuration` number, double, required — 애니메이션 지속 시간(초)
      - `animationDelay` number, double, required — 애니메이션 딜레이(초)
      - `animationDirection` string, required — 애니메이션 방향
      - `animationIterationCount` integer, required — 애니메이션 반복 횟수
      - `pivot` object — [AXIS_ROTATION] pivot point
      - `axis` object — [AXIS_ROTATION] 회전 축
      - `angle` number, double — [AXIS_ROTATION] 회전 각도
      - `direction` object — [TRANSLATION] 이동 방향
      - `distance` unknown
  - `parametricModeling` ParametricModelingRequest
    - `name` string, required — 파라메트릭 모델링 이름
    - `json` string, required — shape 정의 JSON
  - `glbUrl` string — GLB URL
  - `previewImage` string — 미리보기 이미지 URL
  - `images` string[], required — 이미지 URL 목록
  - `editorSetting` ParametricEditorSettingRequest
    - `editorType` 'FLOOR_ITEM' | 'STANDING_ITEM' | 'WALL_ITEM' | 'CEILING_ITEM' | 'SWING_DOOR' | 'SLIDING_DOOR' | 'FOLDING_DOOR' | 'GARAGE_DOOR' | 'SWING_WINDOW' | 'SLIDING_WINDOW' | 'FOLDING_WINDOW' | 'STANDARD_WINDOW' | 'SPACE', required — 에디터 타입
    - `dimensionLock` ParametricDimensionLockRequest, required
      - `width` boolean — 너비 잠금
      - `depth` boolean — 깊이 잠금
      - `height` boolean — 높이 잠금
    - `door` ParametricEditorDoorRequest
      - `isOpen` boolean, required — 도어 열림 여부
      - `openDirection` string, required — 열림 방향 (LEFT | RIGHT)
      - `handlePosition` string, required — 손잡이 위치 (LEFT | RIGHT | TOP | BOTTOM)

## Response `200`

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

- ApiResponseParametricComponentIdResponse
  - `result` 'SUCCESS' | 'FAIL', required — 응답 결과 타입
  - `data` ParametricComponentIdResponse
    - `componentId` string, required — 생성된 컴포넌트 ID
  - `error` ErrorMessage
    - `errorCode` 'INTERNAL_ERROR' | 'BAD_REQUEST' | 'NOT_FOUND' | 'CONFLICT' | 'FORBIDDEN' — 에러 코드
    - `message` string — 에러 메시지

---

[API](https://skmtc.dev/archisketch/apis/open-api.md) · [All operations](https://skmtc.dev/archisketch/apis/open-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/archisketch/open-api/revisions/f6b0eda1a99d/schema)
