문서 메뉴

REST API

멤버

워크스페이스 멤버의 기본 정보, 역할과 소속 팀을 조회합니다.

GET/v2/workspaces/{slug}/members

워크스페이스 멤버 목록 조회

워크스페이스 멤버를 상태·팀·검색어로 필터링해 페이지 단위로 조회합니다.

파라미터

  • slug필수stringpath
    워크스페이스 슬러그입니다.
  • offsetintegerquery기본값 0
    첫 번째 반환 항목의 0부터 시작하는 오프셋입니다.
  • limitintegerquery기본값 20
    반환할 최대 항목 수입니다.
  • querystring | nullquery
    멤버 이름 또는 이메일에 적용할 검색어입니다.
  • statusMemberStatus | nullquery
    조회할 멤버 상태입니다.
  • team_idinteger | nullquery
    지정한 팀에 소속된 멤버만 조회합니다.

요청 예시

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/members" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

성공 응답

응답 본문

  • items필수V2Member[]
    워크스페이스 멤버 목록입니다.
  • id필수integer
    멤버 식별자입니다.
  • user_id필수integer
    멤버와 연결된 사용자 식별자입니다.
  • workspace_id필수integer
    멤버가 소속된 워크스페이스 식별자입니다.
  • email필수string
    멤버 이메일입니다.
  • name필수string
    멤버 이름입니다.
  • locale필수UserLocale
    멤버가 사용하는 언어입니다.
  • status필수"active" | "deactivated"
    워크스페이스 멤버 상태입니다.
  • base_role필수BaseWorkspaceRole
    멤버의 워크스페이스 기본 역할입니다.
  • workspace_roles필수V2WorkspaceRole[]
    멤버에게 부여된 워크스페이스 커스텀 역할 목록입니다.
  • workspace_permissions필수object
    워크스페이스 역할 조합으로 계산된 권한입니다.
  • teams필수V2MemberTeamSummary[]
    멤버가 소속된 팀과 팀별 역할 목록입니다.
  • page필수V2Pagination
    워크스페이스 멤버 목록 페이지 정보입니다.
  • offset필수integer
    첫 번째 반환 항목의 0부터 시작하는 오프셋입니다.
  • limit필수integer
    요청한 최대 항목 수입니다.
  • total필수integer
    조건에 맞는 전체 항목 수입니다.

응답 예시

{
  "items": [
    {
      "id": 1,
      "user_id": 1,
      "workspace_id": 1,
      "email": "developer@example.com",
      "name": "Example",
      "locale": "ko",
      "status": "active",
      "base_role": "workspace_manager",
      "workspace_roles": [
        {
          "id": 1,
          "name": "Example",
          "is_system_role": true,
          "member_count": 1,
          "created_at": "2026-08-27T03:00:00Z",
          "updated_at": "2026-08-27T03:00:00Z",
          "permissions": [
            {
              "resource": "member_management",
              "effect": "allow"
            }
          ]
        }
      ],
      "workspace_permissions": {},
      "teams": [
        {
          "id": 1,
          "name": "Example",
          "base_role": "manager",
          "team_roles": [
            {
              "id": 1,
              "name": "Example",
              "is_system_role": true,
              "permissions": [
                null
              ]
            }
          ],
          "team_permissions": {}
        }
      ]
    }
  ],
  "page": {
    "offset": 1,
    "limit": 1,
    "total": 1
  }
}

오류

상태오류 코드설명
401UNAUTHORIZED인증되지 않은 요청
403FORBIDDEN요청자 권한 부족
404WORKSPACE_NOT_FOUND존재하지 않음
422VALIDATION_ERROR처리할 수 없는 콘텐츠
429RATE_LIMIT_EXCEEDED요청 한도 초과자세히
GET/v2/workspaces/{slug}/members/me

현재 워크스페이스 멤버 조회

현재 인증된 요청자의 워크스페이스 멤버 정보와 역할 정보를 조회합니다.

파라미터

  • slug필수stringpath
    워크스페이스 슬러그입니다.

요청 예시

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/members/me" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

성공 응답

응답 본문

  • id필수integer
    멤버 식별자입니다.
  • user_id필수integer
    멤버와 연결된 사용자 식별자입니다.
  • workspace_id필수integer
    멤버가 소속된 워크스페이스 식별자입니다.
  • email필수string
    멤버 이메일입니다.
  • name필수string
    멤버 이름입니다.
  • locale필수UserLocale
    멤버가 사용하는 언어입니다.
  • status필수"active" | "deactivated"
    워크스페이스 멤버 상태입니다.
  • base_role필수BaseWorkspaceRole
    멤버의 워크스페이스 기본 역할입니다.
  • workspace_roles필수V2WorkspaceRole[]
    멤버에게 부여된 워크스페이스 커스텀 역할 목록입니다.
  • id필수integer
    워크스페이스 커스텀 역할 식별자입니다.
  • name필수string
    워크스페이스 커스텀 역할 이름입니다.
  • descriptionstring | null
    워크스페이스 커스텀 역할 설명입니다.
  • is_system_role필수boolean
    시스템이 관리하는 역할인지 여부입니다.
  • member_count필수integer
    역할이 부여된 멤버 수입니다.
  • created_at필수string (date-time)
    역할 생성 시각입니다.
  • updated_at필수string (date-time)
    역할 마지막 수정 시각입니다.
  • permissions필수V2Permission[]
    워크스페이스 커스텀 역할 권한 목록입니다.
  • workspace_permissions필수object
    워크스페이스 역할 조합으로 계산된 권한입니다.
  • teams필수V2MemberTeamSummary[]
    멤버가 소속된 팀과 팀별 역할 목록입니다.
  • id필수integer
    팀 식별자입니다.
  • name필수string
    팀 이름입니다.
  • base_role필수BaseTeamRole
    멤버의 팀 기본 역할입니다.
  • team_roles필수V2TeamRole[]
    멤버에게 부여된 팀 커스텀 역할 목록입니다.
  • team_permissions필수object
    팀 역할 조합으로 계산된 권한입니다.

응답 예시

{
  "id": 1,
  "user_id": 1,
  "workspace_id": 1,
  "email": "developer@example.com",
  "name": "Example",
  "locale": "ko",
  "status": "active",
  "base_role": "workspace_manager",
  "workspace_roles": [
    {
      "id": 1,
      "name": "Example",
      "is_system_role": true,
      "member_count": 1,
      "created_at": "2026-08-27T03:00:00Z",
      "updated_at": "2026-08-27T03:00:00Z",
      "permissions": [
        {
          "resource": "member_management",
          "effect": "allow"
        }
      ]
    }
  ],
  "workspace_permissions": {},
  "teams": [
    {
      "id": 1,
      "name": "Example",
      "base_role": "manager",
      "team_roles": [
        {
          "id": 1,
          "name": "Example",
          "is_system_role": true,
          "permissions": [
            {
              "resource": "member_management",
              "effect": "allow"
            }
          ]
        }
      ],
      "team_permissions": {}
    }
  ]
}

오류

상태오류 코드설명
401UNAUTHORIZED인증되지 않은 요청
403FORBIDDEN요청자 권한 부족
404MEMBER_NOT_FOUND, WORKSPACE_NOT_FOUND, WORKSPACE_ROLE_NOT_FOUND존재하지 않음
422처리할 수 없는 콘텐츠
429RATE_LIMIT_EXCEEDED요청 한도 초과자세히
GET/v2/workspaces/{slug}/members/{member_id}

워크스페이스 멤버 상세 조회

워크스페이스 멤버의 상세 정보와 역할 정보를 조회합니다.

파라미터

  • member_id필수integerpath
    멤버 식별자입니다.
  • slug필수stringpath
    워크스페이스 슬러그입니다.

요청 예시

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/members/1" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

성공 응답

응답 본문

  • id필수integer
    멤버 식별자입니다.
  • user_id필수integer
    멤버와 연결된 사용자 식별자입니다.
  • workspace_id필수integer
    멤버가 소속된 워크스페이스 식별자입니다.
  • email필수string
    멤버 이메일입니다.
  • name필수string
    멤버 이름입니다.
  • locale필수UserLocale
    멤버가 사용하는 언어입니다.
  • status필수"active" | "deactivated"
    워크스페이스 멤버 상태입니다.
  • base_role필수BaseWorkspaceRole
    멤버의 워크스페이스 기본 역할입니다.
  • workspace_roles필수V2WorkspaceRole[]
    멤버에게 부여된 워크스페이스 커스텀 역할 목록입니다.
  • id필수integer
    워크스페이스 커스텀 역할 식별자입니다.
  • name필수string
    워크스페이스 커스텀 역할 이름입니다.
  • descriptionstring | null
    워크스페이스 커스텀 역할 설명입니다.
  • is_system_role필수boolean
    시스템이 관리하는 역할인지 여부입니다.
  • member_count필수integer
    역할이 부여된 멤버 수입니다.
  • created_at필수string (date-time)
    역할 생성 시각입니다.
  • updated_at필수string (date-time)
    역할 마지막 수정 시각입니다.
  • permissions필수V2Permission[]
    워크스페이스 커스텀 역할 권한 목록입니다.
  • workspace_permissions필수object
    워크스페이스 역할 조합으로 계산된 권한입니다.
  • teams필수V2MemberTeamSummary[]
    멤버가 소속된 팀과 팀별 역할 목록입니다.
  • id필수integer
    팀 식별자입니다.
  • name필수string
    팀 이름입니다.
  • base_role필수BaseTeamRole
    멤버의 팀 기본 역할입니다.
  • team_roles필수V2TeamRole[]
    멤버에게 부여된 팀 커스텀 역할 목록입니다.
  • team_permissions필수object
    팀 역할 조합으로 계산된 권한입니다.

응답 예시

{
  "id": 1,
  "user_id": 1,
  "workspace_id": 1,
  "email": "developer@example.com",
  "name": "Example",
  "locale": "ko",
  "status": "active",
  "base_role": "workspace_manager",
  "workspace_roles": [
    {
      "id": 1,
      "name": "Example",
      "is_system_role": true,
      "member_count": 1,
      "created_at": "2026-08-27T03:00:00Z",
      "updated_at": "2026-08-27T03:00:00Z",
      "permissions": [
        {
          "resource": "member_management",
          "effect": "allow"
        }
      ]
    }
  ],
  "workspace_permissions": {},
  "teams": [
    {
      "id": 1,
      "name": "Example",
      "base_role": "manager",
      "team_roles": [
        {
          "id": 1,
          "name": "Example",
          "is_system_role": true,
          "permissions": [
            {
              "resource": "member_management",
              "effect": "allow"
            }
          ]
        }
      ],
      "team_permissions": {}
    }
  ]
}

오류

상태오류 코드설명
401UNAUTHORIZED인증되지 않은 요청
403FORBIDDEN요청자 권한 부족
404MEMBER_NOT_FOUND, WORKSPACE_NOT_FOUND, WORKSPACE_ROLE_NOT_FOUND존재하지 않음
422VALIDATION_ERROR처리할 수 없는 콘텐츠
429RATE_LIMIT_EXCEEDED요청 한도 초과자세히
GET/v2/workspaces/{slug}/invitations

워크스페이스 초대 목록 조회

워크스페이스 초대 목록을 상태로 필터링해 페이지 단위로 조회합니다.

파라미터

  • slug필수stringpath
    워크스페이스 슬러그입니다.
  • offsetintegerquery기본값 0
    첫 번째 반환 항목의 0부터 시작하는 오프셋입니다.
  • limitintegerquery기본값 20
    반환할 최대 항목 수입니다.
  • statusWorkspaceInviteStatus | nullquery
    조회할 워크스페이스 초대 상태입니다.

요청 예시

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/invitations" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

성공 응답

응답 본문

  • items필수V2Invitation[]
    워크스페이스 초대 목록입니다.
  • id필수integer
    워크스페이스 초대 식별자입니다.
  • email필수string
    초대받은 이메일입니다.
  • status필수WorkspaceInviteStatus
    워크스페이스 초대 상태입니다.
  • invited_by_member_id필수integer
    초대를 보낸 멤버 식별자입니다.
  • base_role필수BaseWorkspaceRole
    초대 수락 시 부여할 워크스페이스 기본 역할입니다.
  • workspace_roles필수V2WorkspaceRole[]
    초대 수락 시 부여할 워크스페이스 커스텀 역할 목록입니다.
  • invited_at필수string (date-time)
    워크스페이스 초대 발송 시각입니다.
  • accepted_atstring (date-time) | null
    워크스페이스 초대 수락 시각입니다.
  • cancelled_atstring (date-time) | null
    워크스페이스 초대 취소 시각입니다.
  • created_at필수string (date-time)
    워크스페이스 초대 생성 시각입니다.
  • updated_at필수string (date-time)
    워크스페이스 초대 마지막 수정 시각입니다.
  • page필수V2Pagination
    워크스페이스 초대 목록 페이지 정보입니다.
  • offset필수integer
    첫 번째 반환 항목의 0부터 시작하는 오프셋입니다.
  • limit필수integer
    요청한 최대 항목 수입니다.
  • total필수integer
    조건에 맞는 전체 항목 수입니다.

응답 예시

{
  "items": [
    {
      "id": 1,
      "email": "developer@example.com",
      "status": "pending",
      "invited_by_member_id": 1,
      "base_role": "workspace_manager",
      "workspace_roles": [
        {
          "id": 1,
          "name": "Example",
          "is_system_role": true,
          "member_count": 1,
          "created_at": "2026-08-27T03:00:00Z",
          "updated_at": "2026-08-27T03:00:00Z",
          "permissions": [
            {
              "resource": "member_management",
              "effect": "allow"
            }
          ]
        }
      ],
      "invited_at": "2026-08-27T03:00:00Z",
      "created_at": "2026-08-27T03:00:00Z",
      "updated_at": "2026-08-27T03:00:00Z"
    }
  ],
  "page": {
    "offset": 1,
    "limit": 1,
    "total": 1
  }
}

오류

상태오류 코드설명
401UNAUTHORIZED인증되지 않은 요청
403FORBIDDEN요청자 권한 부족
404WORKSPACE_NOT_FOUND존재하지 않음
422VALIDATION_ERROR처리할 수 없는 콘텐츠
429RATE_LIMIT_EXCEEDED요청 한도 초과자세히
GET/v2/workspaces/{slug}/invitations/{invitation_id}

워크스페이스 초대 상세 조회

워크스페이스 초대의 상세 정보와 현재 상태를 조회합니다.

파라미터

  • invitation_id필수integerpath
    워크스페이스 초대 식별자입니다.
  • slug필수stringpath
    워크스페이스 슬러그입니다.

요청 예시

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/invitations/1" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

성공 응답

응답 본문

  • id필수integer
    워크스페이스 초대 식별자입니다.
  • email필수string
    초대받은 이메일입니다.
  • status필수WorkspaceInviteStatus
    워크스페이스 초대 상태입니다.
  • invited_by_member_id필수integer
    초대를 보낸 멤버 식별자입니다.
  • base_role필수BaseWorkspaceRole
    초대 수락 시 부여할 워크스페이스 기본 역할입니다.
  • workspace_roles필수V2WorkspaceRole[]
    초대 수락 시 부여할 워크스페이스 커스텀 역할 목록입니다.
  • id필수integer
    워크스페이스 커스텀 역할 식별자입니다.
  • name필수string
    워크스페이스 커스텀 역할 이름입니다.
  • descriptionstring | null
    워크스페이스 커스텀 역할 설명입니다.
  • is_system_role필수boolean
    시스템이 관리하는 역할인지 여부입니다.
  • member_count필수integer
    역할이 부여된 멤버 수입니다.
  • created_at필수string (date-time)
    역할 생성 시각입니다.
  • updated_at필수string (date-time)
    역할 마지막 수정 시각입니다.
  • permissions필수V2Permission[]
    워크스페이스 커스텀 역할 권한 목록입니다.
  • invited_at필수string (date-time)
    워크스페이스 초대 발송 시각입니다.
  • accepted_atstring (date-time) | null
    워크스페이스 초대 수락 시각입니다.
  • cancelled_atstring (date-time) | null
    워크스페이스 초대 취소 시각입니다.
  • created_at필수string (date-time)
    워크스페이스 초대 생성 시각입니다.
  • updated_at필수string (date-time)
    워크스페이스 초대 마지막 수정 시각입니다.

응답 예시

{
  "id": 1,
  "email": "developer@example.com",
  "status": "pending",
  "invited_by_member_id": 1,
  "base_role": "workspace_manager",
  "workspace_roles": [
    {
      "id": 1,
      "name": "Example",
      "is_system_role": true,
      "member_count": 1,
      "created_at": "2026-08-27T03:00:00Z",
      "updated_at": "2026-08-27T03:00:00Z",
      "permissions": [
        {
          "resource": "member_management",
          "effect": "allow"
        }
      ]
    }
  ],
  "invited_at": "2026-08-27T03:00:00Z",
  "created_at": "2026-08-27T03:00:00Z",
  "updated_at": "2026-08-27T03:00:00Z"
}

오류

상태오류 코드설명
401UNAUTHORIZED인증되지 않은 요청
403FORBIDDEN요청자 권한 부족
404INVITATION_NOT_FOUND존재하지 않음
422VALIDATION_ERROR처리할 수 없는 콘텐츠
429RATE_LIMIT_EXCEEDED요청 한도 초과자세히
© 2026 Return Zero, Inc.