Space Membership
최종 수정: 2026년 6월 29일
Space Membership은 한 사용자가 어떤 Space에 어떤 SpaceRole들로 속해 있는지를 나타내는 기록입니다. 한 사용자가 여러 Space에 속할 수 있고, Space마다 권한이 다를 수 있으므로, 사용자와 Space와 권한의 조합 하나가 Space Membership 하나에 대응합니다. Organization Membership이 이메일로 초대해 새 사람을 들이는 것과 달리, Space Membership은 이미 있는 사용자를 user 참조로 추가하고 roles(SpaceRole 참조 배열)로 권한을 줍니다. 이메일 초대가 아닙니다.
내가 속한 Space 목록은 GET /me/space-memberships로 조회합니다. include=1을 함께 보내면 가리키는 Space의 상세도 응답에 포함됩니다.
리소스 구조
다음은 Space Membership 하나의 단일 조회 응답입니다. sys(시스템 속성)에 이 멤버십이 가리키는 사용자(user)와 Space(space)가 들어가고, 본문 속성으로 권한 묶음(roles)을 가집니다.
{
"sys": {
"id": "3trmXRLdJF4GBlAjtcuoWfVunfJ8uV",
"type": "SpaceMembership",
"space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
"user": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
"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:04.737Z",
"version": 1
},
"roles": [
{ "sys": { "id": "3trmXRLdJF4GBlAjtcuoWfVubsasp4", "type": "Refer", "targetType": "SpaceRole" } }
]
}주요 키:
space: 이 멤버십이 속한 Space를 가리키는Refer<Space>입니다.user: 이 멤버십의 사용자를 가리키는Refer<User>입니다. 구성원으로 추가한 사용자가 여기에 매입니다.roles: 이 사용자가 Space에서 가지는 권한 묶음입니다. SpaceRole을 가리키는Refer<SpaceRole>배열로, 한 구성원이 여러 SpaceRole을 동시에 가질 수 있습니다.
시스템 속성 (sys)와 본문
모든 Space Membership은 공통 시스템 속성을 sys 객체에 담습니다. space·user·createdBy·updatedBy는 Refer 모양({ "sys": { "id", "type": "Refer", "targetType" } })으로 들어갑니다.
| 속성 | 타입 | 설명 |
|---|---|---|
id | string | 리소스 고유 식별자. |
type | string | 리소스 종류. Space Membership은 항상 "SpaceMembership". |
space | Refer<Space> | 이 멤버십이 속한 Space. |
user | Refer<User> | 이 멤버십의 사용자. |
createdBy | Refer<User> | 생성한 사용자. |
createdAt | string (date-time) | 생성 시각. |
updatedBy | Refer<User> | 마지막으로 수정한 사용자. |
updatedAt | string (date-time) | 마지막 수정 시각. |
version | integer (≥1) | 리소스 버전. 수정할 때마다 1씩 올라갑니다. |
본문 속성:
| 속성 | 타입 | 설명 |
|---|---|---|
roles | Refer<SpaceRole>[] | 구성원의 권한 묶음. SpaceRole을 가리키는 Refer 배열로 1~3개를 담습니다. 한 구성원이 여러 SpaceRole을 가질 수 있습니다. |
Space Membership은 발행 개념이 없는 설정 리소스입니다. 그래서 Content·Media와 달리 sys에 publish·archive·status가 없고, version만 가집니다. version은 멤버십을 수정할 때마다 오릅니다.
API
아래 모든 엔드포인트의 기준 URL은 https://cma.weegloo.com/v1이며, Authorization 헤더에 CMA를 인증하는 Bearer 토큰이 필요합니다. 역할 수정(PUT·PATCH)에는 낙관적 동시성 제어를 위해 X-Weegloo-Version 헤더(현재 리소스의 sys.version)를 함께 보내야 합니다. 구성원 추가(생성)와 삭제에는 이 헤더가 없습니다.
관련 문서
- SpaceRole:
roles에 넣는 SpaceRole(권한 묶음) 정의. - Space: 이 멤버십이 속한 Space.
- Organization Membership: Organization 단위 구성원과 역할.
