스코프 및 권한
스코프란 어시스턴트를 연결할 때 OAuth 동의 화면에서 부여하는 동의의 단위입니다. 연결된 어시스턴트가 호출하는 모든 도구 호출은 액세스 토큰에 담긴 스코프를 기준으로 검사됩니다 — 사용자 계정 역할을 그때그때 새로 읽는 것이 아닙니다. 즉 연결 시점에 승인한 내용이, 취소하거나 다른 선택으로 다시 연결하기 전까지는 그대로 승인된 상태로 유지됩니다.
전체 목록
| 스코프 | 허용 범위 | 기본으로 부여됨? |
| --- | --- | --- |
| projects:read | 이메일 프로젝트와 그 디자인을 확인 | 예 |
| projects:write | 이메일 프로젝트를 생성하고 편집 | 예 |
| contacts:read | 연락처 리스트 확인 — 요약 정보는 항상, 개별 연락처 행은 도구가 명시적으로 요청할 때만 | 예 |
| contacts:write | 연락처 추가·수정, 수신 거부 관리 | 예 |
| analytics:read | 캠페인 결과, 폼 응답, 주문 확인 | 예 |
| campaigns:read | 발송 이력과 반복 발송 일정 확인 | 예 |
| campaigns:send | 연락처에 캠페인 발송, 반복 발송 일정 생성·활성화 | 아니요 — 선택 시에만 활성화 |
| templates:read | 저장된 템플릿과 커뮤니티 템플릿 사용 | 예 |
| templates:write | 프로젝트를 템플릿으로 저장 | 예 |
| mailbox:read | 인증된 도메인으로 수신된 메일 및 지원 티켓 확인 | 예 |
| mailbox:write | 메일함 스레드와 지원 티켓에 답장 | 예 |
| commerce:write | 실물 상품 주문을 발송 완료로 표시 | 예 |
| openid | 사용자 신원 확인 | 예 |
| email | 계정 이메일 주소 공유(이를 지원하는 플랫폼의 워크스페이스 도메인 제한에 사용) | 예 |
| offline_access | 매시간 재인증하지 않고 연결 유지 | 예 |
campaigns:send가 다른 이유
여기 있는 다른 모든 스코프는 읽기 전용이거나, 되돌릴 수 있는 편집(블록 삭제, 연락처 제거, 템플릿 복원)입니다. 실제 사람들에게 메일을 발송하는 것은 커넥터가 취할 수 있는 행동 중 되돌릴 수 없는 유일한 행동입니다. 그래서 동의 화면에서는 이 스코프가 기본적으로 체크 해제되어 있고, 별도의 경고 색상으로 표시되며, 부여된 이후에도 실제로 무언가가 나가기 전에 보안에 설명된 prepare_send/confirm_send 2단계 절차가 여전히 필요합니다.
계정 역할이 스코프를 제한하는 방식
연결 대상 계정에서 사용자가 뷰어라면, 동의 화면에는 *:read 스코프와 openid/email/offline_access만 제공됩니다 — MailInApp의 다른 모든 곳에서 뷰어가 이미 가지고 있는 것과 동일한 읽기 전용 상한선입니다. 편집자와 오너는 전체 목록을 부여할 수 있습니다. 둘 다 부여할 수 없는 유일한 것은 커넥터가 아예 노출하지 않는 기능들입니다 — 자격 증명 재발급, SMTP/결제/도메인 설정, 팀 관리는 스코프와 무관하게 어떤 커넥터 도구로도 접근할 수 없으며, 이는 제품의 다른 곳에 있는 기존 편집자 예외 조항을 그대로 반영합니다.
연결이 어느 계정으로 동작하는지
하나의 연결은 그 수명 동안 하나의 계정으로만 범위가 지정됩니다. 둘 이상의 회사 — 자신의 개인 계정과, 활성 멤버로 속한 모든 팀 — 에 속해 있다면, 동의 화면은 스코프를 보여주기 전에 먼저 하나를 선택하도록 요청합니다. 같은 어시스턴트로 두 회사를 넘나들며 작업하려면 두 번 연결해야 하며, 이는 Connections 페이지에 독립적으로 취소 가능한 두 개의 항목을 만든다는 뜻이기도 합니다.
그 계정 바인딩은 연결 시점뿐 아니라 도구를 호출할 때마다 매번 재검사됩니다. 팀 오너가 사용자를 팀원에서 제거하거나 역할이 바뀌면, 그 연결의 다음 호출은 스코프를 부여받았을 당시의 상태가 아니라 사용자의 현재 상태를 반영합니다.