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 객체에 담습니다. organization은 Refer<Organization>, plan은 Refer<Plan>, createdBy·updatedBy는 Refer 모양({ "sys": { "id", "type": "Refer", "targetType" } })으로 들어갑니다.
| 속성 | 타입 | 설명 |
|---|---|---|
id | string | 리소스 고유 식별자. |
type | string | 리소스 종류. Space는 항상 "Space". |
organization | Refer<Organization> | 이 Space가 속한 상위 Organization. |
plan | Refer<Plan> | 구독 플랜. 예: free. |
createdBy | Refer<User> | 생성한 사용자. |
createdAt | string (date-time) | 생성 시각. |
updatedBy | Refer<User> | 마지막으로 수정한 사용자. |
updatedAt | string (date-time) | 마지막 수정 시각. |
version | integer (≥1) | 리소스 버전. 수정할 때마다 1씩 올라갑니다. |
본문 속성:
| 속성 | 타입 | 설명 |
|---|---|---|
name | string (1~64) | Space 이름. 생성·수정 시 지정합니다. |
description | string (1~128) | Space 설명. 선택 항목입니다. |
icon | string (읽기) / object (쓰기) | Space 아이콘. 응답에서는 이미지 URL 문자열입니다. 수정 요청에서는 업로드한 파일을 가리키는 객체 { "upload": { "sys": { ..., "targetType": "Upload" } } }로 보냅니다(Upload API로 받은 Upload 참조). |
Space는 발행 개념이 없는 설정 리소스입니다. 그래서 Content·Media와 달리 sys에 publish·archive·status가 없고, version만 가집니다. version은 Space를 수정할 때마다 오릅니다.
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}에도 단일 조회가 있습니다).
관련 문서
- Organization: 이 Space가 속한 상위 Organization.
- Space Membership: Space 구성원과 내 소속 Space 조회.
- Locale: Space의 언어 설정.
