Space

최종 수정: 2026년 6월 22일

Space는 한 프로젝트의 콘텐츠가 모두 담기는 작업 공간입니다. 콘텐츠 구조를 정의하는 Content Type, 실제 데이터인 Content, 이미지·파일 같은 Media, 언어 설정인 Locale이 모두 하나의 Space 안에 삽니다. 하나의 Space는 상위 그릇인 Organization 아래에 속하며, 보통 서비스 하나당 Space 하나를 둡니다.

내가 속한 Space 목록은 GET /me/space-memberships로 조회합니다.

리소스 구조

다음은 Space "데일리웨어 쇼핑몰"의 단일 조회 응답입니다. sys(시스템 속성)와 본문 속성 name을 가집니다.

{
  "sys": {
    "id": "HnQ32YiH",
    "type": "Space",
    "organization": { "sys": { "id": "ilLRJxDp", "type": "Refer", "targetType": "Organization" } },
    "plan": { "sys": { "id": "free", "type": "Refer", "targetType": "Plan" } },
    "createdBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "createdAt": "2026-06-14T14:56:04.737Z",
    "updatedBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "updatedAt": "2026-06-14T14:56:58.670Z",
    "version": 2
  },
  "name": "데일리웨어 쇼핑몰"
}

주요 키:

  • name: Space의 이름입니다(1~64자). 프로젝트나 서비스의 표시 이름입니다.
  • organization: 이 Space가 속한 상위 Organization을 가리키는 Refer<Organization>입니다.
  • plan: 이 Space의 구독 플랜을 가리키는 Refer<Plan>입니다(예: free).

시스템 속성 (sys)와 본문

모든 Space는 공통 시스템 속성을 sys 객체에 담습니다. organizationRefer<Organization>, planRefer<Plan>, createdBy·updatedByRefer 모양({ "sys": { "id", "type": "Refer", "targetType" } })으로 들어갑니다.

속성타입설명
idstring리소스 고유 식별자.
typestring리소스 종류. Space는 항상 "Space".
organizationRefer<Organization>Space가 속한 상위 Organization.
planRefer<Plan>구독 플랜. 예: free.
createdByRefer<User>생성한 사용자.
createdAtstring (date-time)생성 시각.
updatedByRefer<User>마지막으로 수정한 사용자.
updatedAtstring (date-time)마지막 수정 시각.
versioninteger (≥1)리소스 버전. 수정할 때마다 1씩 올라갑니다.

본문 속성:

속성타입설명
namestring (1~64)Space 이름. 생성·수정 시 지정합니다.
descriptionstring (1~128)Space 설명. 선택 항목입니다.
iconstring (읽기) / object (쓰기)Space 아이콘. 응답에서는 이미지 URL 문자열입니다. 수정 요청에서는 업로드한 파일을 가리키는 객체 { "upload": { "sys": { ..., "targetType": "Upload" } } }로 보냅니다(Upload API로 받은 Upload 참조).

Space는 발행 개념이 없는 설정 리소스입니다. 그래서 Content·Media와 달리 syspublish·archive·status가 없고, version만 가집니다. versionSpace를 수정할 때마다 오릅니다.

API

아래 모든 엔드포인트의 기준 URL은 https://cma.weegloo.com/v1이며, Authorization 헤더에 CMA를 인증하는 Bearer 토큰이 필요합니다. 수정·부분 수정에는 낙관적 동시성 제어를 위해 X-Weegloo-Version 헤더(현재 리소스의 sys.version)를 함께 보내야 합니다. 생성과 삭제에는 이 헤더가 없습니다. 목록·생성·수정·부분 수정·삭제는 상위 Organization 경로(/organizations/{organizationId}/spaces) 아래에 있습니다. 단일 조회는 아래처럼 /spaces/{spaceId} 직접 경로로 할 수 있습니다(상위 Organization 경로 /organizations/{organizationId}/spaces/{spaceId}에도 단일 조회가 있습니다).