<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=445779107733115&amp;ev=PageView&amp;noscript=1">

NotebookLMはAPI経由で操作できる?
利用条件や料金、具体的な操作方法を解説

 2026.04.07  株式会社電算システム


さまざまな生成AIサービスが台頭する昨今、Google社が提供するNotebookLMに興味を示している方も多いのではないでしょうか。NotebookLMでは、ユーザー自身でデータソースを指定してAIに指示を与えられるため、出力される情報の信頼性や信憑性をコントロールしやすいメリットがあります。

そして最近では、このように便利なNotebookLMを、「社内の業務システムやクラウドサービスと組み合わせて活用したい」というニーズも存在します。このニーズを満たすのが、今回紹介するAPI連携機能です。API連携機能を利用すれば、NotebookLMと外部システムの間でデータをやり取りしたり、特定のアクションを自動実行したりと、より便利に活用できます。本記事では、NotebookLMをAPI経由で操作する方法を詳しく解説します。利用するための条件や具体的な操作方法、利用料金などを紹介しているので、ぜひ参考にしてください。

そもそもNotebookLMとは

NotebookLMとは、Google社が提供する、生成AI技術が組み込まれたアシスタントツールです。一般的な生成AIサービスと同様、チャット形式で質問や指示(プロンプト)を提示することで、その内容に沿った回答を返してくれます。一方、従来の生成AIサービスと異なるのは、情報源をユーザー側で指定できる点です。

GeminiやChatGPTといった従来の生成AIサービスの場合、すでに学習済みのAIモデルを使用したり、Web上からリアルタイムに情報を収集したりして目的のアクションを実行します。一方のNotebookLMは、テキストファイルやGoogleドキュメント、PDF、WebページURLなどの情報源をユーザーが指定し、そのソースをもとにAIにアクションを指示できるのが特徴です。

このような点から、NotebookLMを活用すれば、出力される情報の信頼性や信憑性をコントロールしやすくなります。従来の生成AIサービスにおける課題であった、参照データのブラックボックス化やハルシネーション(事実と異なる内容を出力してしまう現象)を回避しやすくなるのが大きなメリットです。

NotebookLMはAPI経由で操作できる?利用条件を解説

そもそもAPI(Application Programing Interface)とは、異なるシステムやソフトウェアの間で情報をやり取りしたり、機能を併用したりするための接点を構築するための仕組みです。つまり、API連携を利用すれば、NotebookLMの機能を別のシステムやソフトウェアで利用できるようになるほか、特定のアクションを自動的に実行できます。

これまでNotebookLMにAPI連携の機能は実装されていませんでしたが、2025年10月13日時点では、NotebookLMのEnterprise版でのみAPI連携機能が利用可能です。

エディション API連携の利用可否 利用条件
無料版 × 誰でも利用可能
Pro × Google OneかGoogle Workspaceへの契約が必要
Enterprise Google Cloudへの契約が必要

Enterprise版にアップグレードすると、追加できるデータソースの上限数が5倍になり、ノートブックを柔軟にカスタマイズできるなど、さまざまな機能が拡張されます。

Enterprise版を利用するためには、有料サービスであるGoogle Cloudへの登録が必須です。そのため、現状では、Google OneやGoogle Workspaceの有料プランに加入しても、API連携の機能が利用できない点には注意する必要があります。

NotebookLMのAPI連携でできること

NotebookLMのAPI連携機能を利用すれば、次のようなアクションをプログラムを使って実行できるようになります。

  • ノートブックの作成
  • ノートブックの情報を取得
  • ノートブックのリストを取得
  • ノートブックの削除
  • ノートブックの共有
  • データソースの追加
  • データソースの削除

また、対象となるデータソースも、テキストファイルやPDF、Googleドキュメント・Googleスライド、WebページURL、YouTubeの動画、Agentspace内のコンテンツと非常に豊富です。

API経由でNotebookLMを操作できるようになれば、外部システムからNotebookLM内へのデータ転送や、定期実行しているツールと連動した特定のアクションの自動実行など、さまざまな活用が可能になるでしょう。複雑なプログラミングコードを覚える必要もなく、初めてAPI連携機能を利用する場合でも扱いやすいのも利点です。

NotebookLMをAPI経由で操作する方法

NotebookLMのAPI連携機能を利用すると、ノートブックの作成や削除といったアクションをプログラミングコードで実行できます。その操作方法やプログラミングコードの記述方法などを詳しく解説します。

Google Cloudへの登録

NotebookLMのAPI連携機能を利用するには、Google Cloudへの登録が必要です。そのため、まずはGoogle Cloudの管理コンソールにアクセスし、請求先アカウントを作成しましょう。手順は次の通りです。

1, Google Cloudの管理コンソールのメニューバーから[課金]をクリック

can-notebooklm-be-controlled-via-api-1

2, [請求先アカウントを管理]をクリック

can-notebooklm-be-controlled-via-api-2

3, [アカウントを作成]をクリック

can-notebooklm-be-controlled-via-api-3

4, アカウント名や支払方法を設定

これで請求先アカウントの作成手続きは完了です。続いて、画面上部の検索欄に「NotebookLM」と入力し、NotebookLM for Enterpriseのページにアクセスします。そして、画面上の[NotebookLM for Enterpriseを有効にする]のボタンをクリックしましょう。

can-notebooklm-be-controlled-via-api-4

リージョンやIDなど、初期設定を行います。また、ライセンスを登録していない場合は、[ライセンスを管理]をクリックし、Gemini Enterprise licensesの登録や割り当て方法、料金プランなどの設定を行う必要があります。

can-notebooklm-be-controlled-via-api-5

その後、[Save]をクリックして設定内容を保存し、[リンク]の項目にある[Open]をクリックしましょう。すると、以下のようなNotebookLM for Enterpriseの専用ページが開きます。

can-notebooklm-be-controlled-via-api-6

次の章からは、API経由でノートブックの作成や削除などのアクションを実行してみます。

ノートブックの作成

新規のノートブックを作成する際は、次のプログラミングコードを使用します。

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \

"https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks" \
  -d '{
  "title": "ノートブックのタイトル",
  }'

※赤文字の箇所は適切な文字列を記述

「エンドポイントのロケーション」は、APIリクエストのマルチリージョンによって記述方法が異なります。例えば、米国のマルチリージョンの場合は「us」、EUのマルチリージョンであれば「eu」といった形で値を割り当てます。グローバルロケーションの場合は、「global」と入力するか、「エンドポイントロケーション-」の表記そのものを省略することも可能です。

リクエストが成功した場合、次のような結果が返ってきます。

{
"title": "ノートブックのタイトル",
"notebookId": "ノートブックID",
"emoji": "",
"metadata": {
  "userRole": "PROJECT_ROLE_OWNER",
  "isShared": false,
  "isShareable": true
},
"name": "ノートブックの名称"
}

そして、NotebookLMの画面上に作成したノートブックが表示されます。

can-notebooklm-be-controlled-via-api-7

ノートブックの情報を取得

ノートブックの詳細な情報を取得する際は、次のプログラミングコードを使用します。

curl -X GET \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \

"https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks/ノートブックID"

※赤文字の箇所は適切な文字列を記述

リクエストが成功した場合、次のような結果が返ってきます。

{
"title": "ノートブックのタイトル",
"notebookId": "ノートブックID",
"emoji": "",
"metadata": {
  "userRole": "PROJECT_ROLE_OWNER",
  "isShared": false,
  "isShareable": true,
  "lastViewed": "最終閲覧日",
  "createTime": "作成日"
},
"name": "ノートブックの名称"
}

上記のように、ノートブックのIDや名称だけでなく、権限(userRole)や作成日(createTime)、最終閲覧日(lastViewed)、ノートブックに使用しているアイコン(emoji)など、詳細な情報を取得できることがわかります。

ノートブックのリストを取得

ノートブックのリストを取得する際は、次のプログラミングコードを使用します。

curl -X GET \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks:listRecentlyViewed"

※赤文字の箇所は適切な文字列を記述

リクエストが成功した場合、次のような結果が返ってきます。

{
  "notebooks": [
    {
      "title": "ノートブック(1つ目)のタイトル",
      "notebookId": "ノートブックID",
      "emoji": "",
      "metadata": {
        "userRole": "PROJECT_ROLE_OWNER",
        "isShared": false,
        "isShareable": true,
        "lastViewed": "最終閲覧日",
        "createTime": "作成日"
      },
      "name": "ノートブックの名称"
    },
    {
      "title": "ノートブック(2つ目)のタイトル",
      "notebookId": "ノートブックID",
      "emoji": "",
      "metadata": {
        "userRole": "PROJECT_ROLE_OWNER",
        "isShared": false,
        "isShareable": true,
        "lastViewed": "最終閲覧日",
        "createTime": "作成日"
      },
      "name": "ノートブックの名称"
    }
  ]
}

※赤文字の箇所は適切な文字列を記述

複数のノートブックを管理している場合でも、リストを取得することで複数のノートブックの情報をまとめて確認できます。リストに表示できるノートブックの数は最大500件です。

ノートブックの削除

ノートブックを削除する際は、次のプログラミングコードを使用します。

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks:batchDelete"
  -d '{
    "names": [
      "ノートブックの名称"
    ]
  }'

※赤文字の箇所は適切な文字列を記述

なお、[ノートブックの名称]の箇所には、複数のノートブックを指定できます。これにより、単体だけでなく複数のノートブックを一括削除することも可能です。

ノートブックの共有

ほかのユーザーとノートブックを共有する際は、次のプログラミングコードを使用します。

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks/ノートブックID:share" \
  -d '{
    "accountAndRoles": [
     {
        "email":"共有先のメールアドレス1",
        "role":"共有する相手に付与する権限",
     },
     {
        "email":"共有先のメールアドレス2",
        "role":"共有する相手に付与する権限",
     },
    ]
  }'

※赤文字の箇所は適切な文字列を記述

[共有する相手に付与する権限(role)]には、次のような権限を設定できます。

  • PROJECT_ROLE_OWNER:書き込み・読み取りの両方が可能なオーナー権限
  • PROJECT_ROLE_WRITER:プロジェクトの書き込みのみ可能
  • PROJECT_ROLE_READER:プロジェクトの読み込みのみ可能
  • PROJECT_ROLE_NOT_SHARED:プロジェクトへのアクセス不可

リクエストが成功した場合は、コードが空の状態で結果が返ってきます。

データソースの追加

NotebookLMのAPI連携では、個別または複数のデータソースを追加できます。例えば、テキスト・WebページURL・YouTubeの動画をまとめてデータソースに追加する際は、次のプログラミングコードを記述します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks/ノートブックID/sources:batchCreate" \
-d '{
  "userContents": [
    {
      "textContent": {
        "sourceName": "データソースの名称",
        "content": "任意のテキスト"
      }
    },
    {
      "webContent": {
        "url": "WebページのURL",
        "sourceName": "Webページの名称"
      }
    },
    {
      "videoContent": {
        "youtubeUrl": "YouTubeの動画ページURL"
      }
    }
  ]
}'

※赤文字の箇所は適切な文字列を記述

すると、指定したIDのノートブック内にデータソースが追加されます。

データソースの削除

登録したデータソースを削除する際は、次のプログラミングコードを使用します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://エンドポイントのロケーション-discoveryengine.googleapis.com/v1alpha/projects/プロジェクトナンバー/locations/ロケーション/notebooks/ノートブックID/sources:batchDelete" \
-d '{
  "names": [
"projects/プロジェクトナンバー/locations/global/notebooks/ノートブックID/sources/データソースID"
  ]
}'

※赤文字の箇所は適切な文字列を記述

ただし、複数のデータソースを一括削除する場合はエラーになる可能性があるため、なるべく単体で削除することをおすすめします。

NotebookLM for Enterpriseの利用料金

NotebookLM for Enterpriseを利用するには、一つのライセンスにつき月額$9の料金が発生します。なお、年間契約時の場合は15%の割り引きが適用されます。

ライセンスを購入するには、Google Cloudの管理コンソールで「Gemini Enterprise」と検索し、左側のメニューバーから[ユーザーの管理]をクリックします。

can-notebooklm-be-controlled-via-api-8

リージョンを選択し、その下にある[Add subscription]をクリックします。

can-notebooklm-be-controlled-via-api-9

ライセンス数や契約期間などの設定画面が現れます。

can-notebooklm-be-controlled-via-api-10

契約するライセンス数を入力後、契約期間を選択します。ライセンス数に関しては最低でも15ライセンスの契約が必要です。

なお、NotebookLM for Enterpriseは、14日間のみ無料で利用可能です。期間中は計5,000のライセンスを無償で利用できるため、API連携機能の使い勝手や操作性を検証する際に役立ちます。

NotebookLMのAPI連携を駆使して活用の幅を広げよう

NotebookLMにAPI連携機能が追加されたことで、外部システム連携やデータ統合など、さまざまな形で機能を利用できるようになります。簡易的なプログラミングコードを使用するだけで、ノートブックの作成や削除、データソースの追加といった基本的なアクションを実行できます。

ただし、API連携機能を利用するにはGoogle Cloudに登録しなければならず、費用がかかる点には注意が必要です。そのため、APIが必要な理由や目的などを明確にしたうえで、その要否を冷静に検証することが重要です。14日間の無料トライアルにも対応しているため、機能や操作性を検証する際に活用すると良いでしょう。

電算システムでは、環境構築やコンサルティングなど、Googleサービスの導入支援サービスを提供しています。今回紹介したGoogle Cloudはもちろん、Google WorkspaceやGemini、あるいはGmail・Googleドライブといった個別サービスのサポートにも対応しています。専門領域に精通した数多くのエンジニアが在籍しているので、スピーディかつ質の高いサポートを行えるのが強みです。「Googleサービスを活用したいが具体的なイメージが湧かない」といったお悩みを抱える方は、ぜひ電算システムへと気軽にお問い合わせください。