Documentation Index
Fetch the complete documentation index at: https://mintlify.com/teng-lin/notebooklm-py/llms.txt
Use this file to discover all available pages before exploring further.
client.notebooks gives you complete CRUD control over your NotebookLM notebooks. Every method is a coroutine — you must await it inside an async function. Notebooks are identified by a string notebook_id that you receive when you create or list them. The API also exposes AI-generated descriptions and flexible sharing helpers to build publishing workflows.
Methods
list()
Returns all notebooks accessible to the authenticated account.
List of
Notebook objects, each containing id, title, created_at, sources_count, and is_owner.create(title)
Creates a new notebook with the given title.
Display title for the new notebook.
The newly created
Notebook object.NotebookLimitError when you have reached the account’s maximum notebook count.
get(notebook_id)
Fetches details for a single notebook.
The ID of the notebook to retrieve.
Notebook object with current metadata.delete(notebook_id)
Permanently deletes a notebook and all its sources, notes, and artifacts.
The ID of the notebook to delete.
True when deletion succeeds. Raises RPCError on failure.rename(notebook_id, new_title)
Renames a notebook. Fetches and returns the updated notebook after the rename.
The ID of the notebook to rename.
The replacement title.
The updated
Notebook object with the new title.get_description(notebook_id)
Returns an AI-generated summary and list of suggested questions for the notebook. This is the parsed form of the summary shown in the Chat panel when you open a notebook.
The notebook ID to summarize.
Object with
summary (str) and suggested_topics (list of SuggestedTopic). Each SuggestedTopic has question and prompt string fields.get_summary(notebook_id)
Returns the raw summary text without parsing it into topics. Use get_description() when you need the structured form with suggested questions.
The notebook ID.
Raw summary text string. Empty string if no summary is available yet.
get_summary vs get_description: get_summary() returns a plain string; get_description() returns a NotebookDescription with the same text plus a list of SuggestedTopic objects for suggested follow-up questions.get_metadata(notebook_id)
Fetches notebook details and its source list concurrently, returning a combined object useful for exports and audits.
The notebook ID.
Object with a
notebook field (Notebook) and a sources field (list[SourceSummary]). SourceSummary has kind, title, and url.share(notebook_id, public, artifact_id)
Enables or disables public link sharing for a notebook. When artifact_id is provided, the returned URL deep-links to that artifact.
The notebook ID.
True to enable sharing; False to disable.Optional artifact ID to embed in the share URL as
?artifactId=....Dict with keys
public (bool), url (str or None), and artifact_id (str or None).get_share_url(notebook_id, artifact_id)
Returns the share URL format without toggling sharing state. Call share() first to enable sharing.
The notebook ID.
Optional artifact ID for a deep-link URL.
URL string of the form
https://notebooklm.google.com/notebook/<id> (or with ?artifactId=... appended).remove_from_recent(notebook_id)
Removes the notebook from the account’s recently viewed list without deleting it.
The notebook ID to remove from recents.
get_raw(notebook_id)
Returns the raw API response for a notebook. Use this to access data that is not yet surfaced by the typed Notebook dataclass.
The notebook ID.
Unprocessed list structure from the NotebookLM RPC response.
Complete example
Notebook dataclass
Unique notebook identifier.
Display title of the notebook.
Creation timestamp, or
None if unavailable.Number of sources currently in the notebook.
True when the authenticated user owns this notebook.