ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
Google Workspace 管理者権限なしで Google Groups のメンバーを API で一括管理する

Google Workspace 管理者権限なしで Google Groups のメンバーを API で一括管理する

Google Groups のメンバーを定期的に入れ替える運用をしている組織は多いと思います。手作業での登録・削除は手間がかかるため、API で自動化したいところです。 Google Groups のメンバーを API で管理する方法としては、Admin SDK (Directory API) がよく紹介されています。一方で、Admin SDK は Google Workspace の管理者権限が必要であり、利用できる場面が限られます。 本記事では、管理者権限がない環境でも利用できる Cloud Identity Groups API を使って、Google Groups のメンバーを一括管理する方法を紹介します。 API の選択肢 Google Groups のメンバーを API で管理するには、主に以下の 2 つの方法があります。 Admin SDK (Directory API) もっとも広く紹介されている方法です。 service = build('admin', 'directory_v1', credentials=creds) service.members().list(groupKey='group@example.com').execute() 利用するには、以下のいずれかが必要です: Google Workspace の管理者アカウント サービスアカウント + ドメイン全体の委任(Domain-Wide Delegation) (管理コンソールでの設定が必要) 管理者権限がない場合は 403 Forbidden が返されます。 Cloud Identity Groups API Cloud Identity Groups API は、グループのオーナーやマネージャーであれば、管理者権限なしでメンバーの操作が可能です。本記事ではこちらの方法を使います。 両者の違いを以下にまとめます。 ...

Mirador3のFirebase連携annotationsプラグインにおいて、メールアドレスによる登録を可能にしました。

Mirador3のFirebase連携annotationsプラグインにおいて、メールアドレスによる登録を可能にしました。

概要 Mirador3のFirebase連携annotationsプラグインを開発しています。 こちらについて、これまではGoogleアカウントによるログイン機能のみを提供していましたが、メールアドレスによるログイン機能を追加しました。 機能紹介 以下、ログインボタンを押した場合です。 メールアドレスによるログインの場合、アカウントの新規作成が可能です。 ログイン後、ユーザに関する情報を表示するようにしました。 アイコンをクリックすると、ログアウトボタンが表示されます。 まとめ IIIFを用いたアノテーションの作成と共有において、参考になりましたら幸いです。

Google ColabからGoogle Spreadsheetのデータを取得するサンプルノートブック

Google ColabからGoogle Spreadsheetのデータを取得するサンプルノートブック

Google ColabからGoogle Spreadsheetのデータを取得するサンプルノートブックを作成しました。 以下からお試しいただけます。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/Google_ColabからGoogle_Spreadsheetのデータを取得するサンプル.ipynb 以下のように、Google Spreadsheetの内容を取得できます。 以下、ソースコードです。 from google.colab import auth auth.authenticate_user() import gspread from google.auth import default creds, _ = default() gc = gspread.authorize(creds) import pandas as pd from pandas import json_normalize # シートの指定 ss_id = "<Google SpreadsheetのID>" workbook = gc.open_by_key(ss_id) worksheet = workbook.get_worksheet(0) # 全データを取得 data = worksheet.get_all_records() df = json_normalize(data) df 参考になりましたら幸いです。