本文へ移動
技術を、自社の仕事に。
判断と実行を助けるメディア

記事を検索

Admin SDKでゲストユーザーを作成 外部の協力者の管理

目次 · 7項目

協力会社の担当者やフリーランスに、共有ドライブやChatのスペースへ参加してもらう。このとき、社員と同じ有料のアカウントを発行するか、ファイルごとの共有で済ませるかを決める必要があります。前者は費用と管理の手間が増え、後者は「誰に何を共有したか」が散らばりやすくなります。

Google WorkspaceのAdmin SDK(Directory API)には、この中間にあたる「ゲストユーザー」を作るメソッド users.createGuest があり、リファレンスにも載っています。Googleが公開しているAPIの定義(Discovery文書)では、2026年11月4日付の版で、このメソッドの説明から「Open Beta」の記載がなくなりました。本記事では、リファレンスと定義に書かれている内容、管理者向けヘルプと告知に書かれているゲストの扱い、外部の協力者を管理する仕組みに組み込む前に確かめる点を整理します。

定義の説明はこう変わってきた

Discovery文書は、APIのメソッドや項目を機械が読める形で示したGoogleの公式の定義です。GoogleのGoリポジトリ(googleapis/google-api-go-client)には、この定義が自動で取り込まれており、変更の履歴を追えます。users.createGuest の説明は、次のように変わってきました。

定義の版(revision)取り込まれた日メソッドの説明の末尾
202511242025年11月27日This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature.
202605222026年5月27日This feature is currently in Open Beta.
202611042026年11月7日(提供段階の記載なし)

どの版でも、説明の前半は「Create a guest user with access to a subset of Workspace capabilities(Workspaceの機能の一部を使えるゲストユーザーを作る)」です。「一部の機能」の中身は、管理者向けヘルプの記事(support.google.com/a/answer/16558545、現在は「Manage Workspace guests」のページに転送される)へのリンクで示されています。

2026年11月11日に取得した最新の定義(revision 20261109)でも、説明に提供段階の記載はありません。developers.google.comのリファレンス(Method: users.createGuest、最終更新 2026年10月30日)も、説明はこの1文だけで、Alpha・Beta・プレビューの表示はありません。

ゲストアカウントの機能そのものは、2026年3月30日のGoogle Workspace Updatesで一般提供(general availability)が告知されています。この告知には「API capability to create guests will be available in open beta by May 2026.(ゲストを作るAPIは2026年5月までにオープンベータで提供する)」とあり、定義の説明が5月の版で「Open Beta」に変わったことと合います。

一方、APIでの作成が正式提供になったという告知は見つかりませんでした(2026年11月11日に、Workspace Updatesの検索、Admin consoleのリリースノート、Google Workspaceの開発者向けリリースノートを確認)。説明から「Open Beta」が消えたことを、正式提供の告知と同じには扱えません。本番の運用に組み込む前に、管理コンソールやサポートで提供段階を確かめてください。

送る項目と、返ってくる項目

定義によると、リクエストは次の形です。必要なOAuthのスコープは https://www.googleapis.com/auth/admin.directory.user です。

POST https://admin.googleapis.com/admin/directory/v1/users:createGuest
Content-Type: application/json

{
  "primaryGuestEmail": "partner@example.com"
}

本文の項目は2つだけです。

  • primaryGuestEmail:必須。作成するゲストの、社外のメールアドレス
  • customer:任意。Workspaceのアカウントの変更できないID。サービスアカウントから呼ぶときだけ必要で、それ以外は認証したユーザーの顧客IDが使われる

customer と、primaryGuestEmail を必須とする記述は、2026年5月の版で加わりました。Alphaの版の primaryGuestEmail は「Immutable」とだけ書かれていました。

レスポンスは通常のユーザーと同じ User リソースです。ゲストに関係する項目は2つあります。

  • isGuestUser:ゲストかどうかを示す真偽値(Immutable)
  • guestAccountInfo.primaryGuestEmail:ゲストの社外のメールアドレス(Immutable)

どちらも「Immutable」とされているため、定義を見る限り、作ったあとで通常のユーザーとゲストを切り替える項目としては用意されていません。リファレンスの User リソースにも、同じ説明で2つの項目が載っています。実際のアカウントで users.createGuest を呼び、返ってくる値を確かめたわけではない点に注意してください。

ヘルプと告知に書かれているゲストの扱い

ゲストアカウントで何ができるかは、APIの定義ではなく管理者向けヘルプ(Manage Workspace guests、最終更新 2026年11月5日)と、3月の告知に書かれています。主な点は次のとおりです。

  • 対象のエディション:Chatのゲストは、すべてのBusinessとEnterpriseのSKUで使える
  • 作られ方:社内のユーザーがChatで社外の人を招待する(またはクライアントサイド暗号化のメールを送る)と、ゲストアカウントが作られ、相手に招待が届く
  • 置き場所:管理コンソールの「Workspace Guests」という組織部門に自動で入り、ほかの組織部門には移せない
  • 無料の枠:有料のBusiness・Enterpriseのライセンス1件につき、ゲストアカウント5件まで無料
  • 使えないもの:Gmail、Googleカレンダー、Gemini in Workspaceは使えず、動的グループにも入れられない
  • 対象の相手:告知によると、ゲストアカウントはWorkspaceを使っていない社外の人のためのもので、Workspaceの利用者や個人のGoogleアカウントとの共同作業は、これまでどおりゲストを作らずに行う

ヘルプには、Chatやドライブでゲストができることとできないことの一覧も載っています。招待の操作や、ビジター共有との使い分けはGoogle Workspace ゲストアカウントの記事で扱いました。ヘルプの説明はChatからの招待を前提にしています。APIで作ったゲストに招待がどう届くか、相手がすでに個人のGoogleアカウントを持つ場合にAPIがどう応えるかは、ヘルプにも告知にも書かれていません。

Admin SDKのゲストユーザー作成の流れ。社外のメールアドレスをprimaryGuestEmailに入れてusers:createGuestに送ると、isGuestUserがtrueのUserが返る。定義の説明は2025年11月の版でAlpha、2026年5月の版でOpen Beta、11月4日の版で記載なしと変わった。ヘルプでは、ゲストはWorkspace Guestsの組織部門に入り、有料ライセンス1件につき5件まで無料で、Gmail・カレンダー・Geminiは使えない。APIの正式提供の告知と、APIで作ったときの招待の動きはまだ分からない

ゲストを一覧で把握するには

外部の協力者のアカウントは、契約が終わったときに片づける必要があります。そのためには、いまいるゲストを一覧で把握できるようにしておきます。

3月の告知には「user.list will now include guests by default(users.listは既定でゲストも返す)」とあります。既存の棚卸しやライセンスの集計のスクリプトが users.list の結果をそのまま社員の一覧として扱っている場合は、ゲストが混ざらないかを確かめてください。

ゲストだけを取り出す方法は2つあります。一つは、ユーザーの検索の案内ページ(Search for users)に載っている検索条件 isGuest を使う方法です。案内には「Whether the user is a guest user. If not specified, the response will contain both guest and non-guest users.」とあります。もう一つは、取得したユーザーの isGuestUser で絞り込む方法です。次の例では両方を使い、1回に最大500件(定義上の上限)ずつ取得しています。Apps Scriptの「Admin SDK API」の拡張サービスを有効にした場合の例です。

// ゲストユーザーの一覧をスプレッドシートに書き出す(編集部の例。実際の組織では未実行)
function listGuestUsers() {
  const rows = [['主メール', 'ゲストの社外メール', '作成日時', '最終ログイン', '停止']];
  let pageToken;
  do {
    const page = AdminDirectory.Users.list({
      customer: 'my_customer',
      query: 'isGuest=true',
      maxResults: 500,
      pageToken: pageToken,
    });
    (page.users || [])
      .filter((u) => u.isGuestUser === true)
      .forEach((u) => rows.push([
        u.primaryEmail,
        u.guestAccountInfo ? u.guestAccountInfo.primaryGuestEmail : '',
        u.creationTime,
        u.lastLoginTime,
        u.suspended,
      ]));
    pageToken = page.nextPageToken;
  } while (pageToken);
  SpreadsheetApp.getActiveSheet().getRange(1, 1, rows.length, rows[0].length).setValues(rows);
}

検索条件の書き方(isGuest=true)は案内ページの演算子の表から組み立てたもので、実際の組織では試していません。一覧で isGuestUser が実際に返るか、ゲストの primaryEmail がどのような形になるかも、資料からは分かりません。検証用の組織で1件作って確かめてから、定期の棚卸しに使ってください。

社外のメンバーを入れられるグループの設定をAPIで確かめる方法はGoogleグループの外部メンバーの記事で、退職者のアカウントの停止日を取る方法はAdmin SDKの停止日の記事で扱いました。ゲストの棚卸しも、同じ考え方で組み立てられます。

仕組みに組み込む前に決めること(編集部の提案)

ここからは、上の資料をもとにした編集部の提案です。

作成の窓口を一つにする。 ヘルプによると、既定では社内のユーザーがChatから社外の人をゲストとして招待できます。Chatからの招待とAPIの両方で作れる状態だと、誰がなぜ招いたのかが記録に残りにくくなります。申請フォームやワークフローを入口にして、承認されたものだけをAPIで作る形にすると、依頼者・案件・終了予定日を作成の記録と結び付けられます。その場合は、ヘルプにある「Allow users to send guest invitations to people outside your organization」の設定でChatからの招待を止めるかどうかも、あわせて決めます(この設定を止めたときにAPIでの作成に影響があるかは確認していません)。

終了予定日を必ず持たせる。 協力会社との契約には終わりがあります。申請の時点で終了予定日を入れてもらい、上の一覧と突き合わせて、期限を過ぎたゲストを担当者に知らせます。

ゲストに許す範囲を先に確かめる。 ゲストは「Workspace Guests」の組織部門に入り、ほかの組織部門には移せないとヘルプにあります。3月の告知は、2段階認証やコンテキストアウェアアクセスなどのポリシーをこの組織部門に設定するよう案内しています。無料の枠(有料ライセンス1件につき5件)を超えたときの扱い、APIで作ったゲストの停止・削除の扱いは、本記事では確認できていません。ヘルプと、検証用の組織での実際の動きで確かめてから、運用の規則を決めてください。

確認した範囲

2026年11月10日に、Admin SDK(Directory API)のDiscovery文書(revision 20261104)と、googleapis/google-api-go-client の admin/directory/v1/admin-api.json の履歴(f3dc8f4:2025年11月27日、3c139a0:2026年5月27日、06ea9e1:2026年11月7日)を確認しました。2026年11月11日に、Discovery文書(revision 20261109)、developers.google.comのリファレンス(users.createGuest・Usersリソース)とユーザーの検索の案内、管理者向けヘルプ「Manage Workspace guests」、2026年3月30日のGoogle Workspace Updatesの告知、Admin consoleと開発者向けのリリースノートを確認しました(資料調査)。users.createGuest と users.list の呼び出し、Apps Scriptの例の実行、管理コンソールでのゲストの確認は行っていません。

外部の協力者のアカウントの扱いや、申請から作成・棚卸しまでの仕組みづくりは、グリームハブのIT・Google Workspace 無料相談で承っています。組織の規模や契約の形によって決めることが変わるため、お問い合わせからご相談ください。

参考資料

この記事を共有XFacebook
鈴木 翔

技術の可能性に魅了され、学生時代からプログラミングとデジタルアートの分野に深い関心を持つ

この記事のテーマを、自社の次の一歩へ

自社に合う、Workspaceの進め方を。

移行するデータ、共有ルール、管理体制を整理し、導入から日々の運用までの進め方を考えます。

  • 移行と初期設定
  • 共有・権限の整理
  • 管理体制
Workspaceの導入・運用を相談する

構想段階からご相談いただけます。この記事の情報を相談フォームに引き継ぎます。

最新記事をメールで受け取る