본문으로 건너뛰기
Structly 문서
English

Organization

Organization

이 페이지의 내용

Organization 만들기#

Web UI의 Organization 선택 또는 Organization 관리 화면에서 새 Organization 이름과 Organization handle을 입력하고 Organization 만들기를 누릅니다.

stly org create --input org.json

org.json은 {"name": "Acme", "handle": "acme"} 형식입니다. 새 Organization은 Structly 관리자 인증 전까지 사용할 수 없습니다. 인증 대기는 계정과 Organization 준비를 참고합니다.

Organization을 만들어도 현재 선택한 Organization은 바뀌지 않습니다.

현재 Organization 선택#

Catalog는 현재 Organization의 기록만 다룹니다. 인증된 Organization만 선택할 수 있습니다.

Web UI#

  • 사이드바의 ORGANIZATION 선택 목록에서 바꿉니다. 화면의 Catalog를 새로 조회합니다.
  • Organization 관리를 누르면 소속 Organization과 인증 상태를 확인하고 선택할 수 있습니다.
  • 저장하지 않은 입력이 있으면 전환하기 전에 확인 창이 열립니다.

stly#

stly org list
stly org select 7f9X9MPpr5H

org list는 소속 Organization과 verification_status를 반환합니다. org select에는 목록의 id를 넣습니다. Web UI와 stly는 각자 현재 Organization을 기억하므로, 한쪽에서 바꿔도 다른 쪽에는 영향을 주지 않습니다.

소속 확인#

Web UI의 Organization 관리 화면이나 stly org list에서 내가 속한 Organization을 확인합니다.

stly user get --fields user,current_organization_id

Organization 이름은 겹칠 수 있으므로 ID로 구분합니다. 관리자는 아래 초대·소속 관리 기능을 사용합니다.

User 초대·소속 관리#

인증 완료 Organization의 관리자는 Organization 관리 → 해당 Organization의 User·초대 관리에서 이메일과 관리자로 초대 여부를 지정해 초대 메일 발송을 누릅니다. 생성자는 최초 관리자입니다. 기존 Organization에 관리자가 없으면 Structly 관리자에게 Back Office의 관리자 지정을 요청합니다.

수신자는 메일 링크에서 같은 이메일로 가입·로그인한 뒤 내용을 확인하고 초대 수락을 누릅니다. 초대는 7일 동안 한 번 사용할 수 있습니다. 링크를 새로고침해 토큰을 잃으면 메일 링크를 다시 엽니다.

  • active 소속 User는 다시 초대하지 않고 관리자 권한 변경 기능을 사용합니다.
  • 유효 초대가 있으면 목록에서 재발송·취소합니다. 재발송은 이전 링크를 무효화합니다.
  • 메일 전달이 결과 불명이면 초대 목록을 확인한 뒤 명시적으로 재발송합니다.
  • 종료한 소속을 재개하거나 초대로 복구하면 일반 권한으로 돌아옵니다. 관리자 권한은 별도로 부여합니다.
  • 마지막 active 관리자의 소속 종료·관리자 권한 회수는 허용하지 않습니다.
  • 인증 대기 Organization에서는 초대·User 관리를 사용할 수 없습니다.

stly에서는 User 인증으로 같은 기능을 사용합니다.

stly members list --organization <Organization ID> --auth-mode user
stly invitations create --organization <Organization ID> --input invitation.json --auth-mode user

invitation.json은 {"email":"member@example.com","role":"member"} 형식이며 role은 member·admin입니다. 소속·초대 단건을 조회한 ETag로 변경합니다. stly schema members update와 stly schema invitations resend에서 요청 형식·옵션을 확인합니다. SMTP가 미설정이면 Structly 관리자에게 발송 설정을 요청합니다.

Agent 토큰#

Agent 토큰은 Organization 하나에 속한 stly용 인증 토큰입니다. 토큰을 받은 경우 환경변수 STRUCTLY_AGENT_TOKEN에 두면 stly가 User 로그인보다 토큰을 먼저 사용합니다. 토큰은 커밋하지 않는 위치에 보관합니다. 자세한 인증 순서는 stly 로그인과 인증을 참고합니다.

Organization 주소 변경#

handle은 3~39자의 영문 소문자·숫자·하이픈으로 구성하며 영문자로 시작합니다. 연속·끝 하이픈과 예약어는 사용할 수 없습니다. 표시 이름과 별도로 전체 Organization에서 고유합니다. Web 주소는 /o/acme/apis처럼 handle 아래에서 화면을 구분합니다. 인증 완료 Organization의 관리자는 Organization 관리에서 handle을 변경할 수 있습니다. 변경하면 이전 handle은 즉시 다른 Organization이 사용할 수 있고 이전 주소에서 자동 이동하지 않습니다.

stly에서는 org check-handle acme로 사용 가능 여부를 조회하고 org handle <id>로 현재 handle·ETag를 확인합니다. org update-handle <id> --input handle.json --if-match '<etag>'로 변경하며 입력은 {"handle":"acme-team"}입니다.