n8n-nodes-notebooklm-sdk
v0.2.1
Published
n8n community node for NotebookLM — manage notebooks, sources, artifacts, chat, and notes.
Readme
n8n-nodes-notebooklm-sdk
An n8n community node for Google NotebookLM. Manage notebooks, sources, artifacts, chat, and notes from your n8n workflows.
Built on top of notebooklm-sdk.
Installation
In your n8n instance, go to Settings → Community Nodes → Install and enter:
n8n-nodes-notebooklm-sdkOr install manually:
npm install n8n-nodes-notebooklm-sdkAuthentication
NotebookLM uses Google session cookies — there is no public API key. You need to provide your browser session cookies as a credential.
Getting your session
- Run the login helper:
npx notebooklm-sdk login - A browser window will open. Sign in to your Google account.
- The session is saved to
~/.notebooklm/session.json. - Copy the entire file contents:
cat ~/.notebooklm/session.json
Adding the credential in n8n
- Go to Credentials → New Credential → NotebookLM API
- Paste the full
session.jsoncontents into the Session JSON field - Save
Cookies expire periodically. Re-run
npx notebooklm-sdk loginand update the credential when you get authentication errors.
Resources & Operations
Notebook
| Operation | Description | | --------- | ---------------------------------- | | List | List all notebooks in your account | | Get | Get a notebook by ID | | Create | Create a new notebook | | Delete | Delete a notebook |
Source
| Operation | Description | Parameters | | ---------------- | --------------------------------------- | ------------------------------------ | | List | List all sources in a notebook | Notebook ID | | Add URL | Add a web URL as a source | Notebook ID, URL | | Add Text | Add plain text as a source | Notebook ID, Title, Content | | Get Fulltext | Get the full extracted text of a source | Notebook ID, Source ID | | Wait Until Ready | Poll until a source finishes processing | Notebook ID, Source ID, Timeout | | Delete | Delete a source | Notebook ID, Source ID |
Artifact
| Operation | Description | Parameters | | --------------------- | -------------------------------------------------- | ------------------------------------------- | | List | List all artifacts | Notebook ID | | List Audio Overviews | List audio overview artifacts | Notebook ID | | List Reports | List report artifacts | Notebook ID | | Create Audio Overview | Generate an audio overview podcast | Notebook ID | | Create Report | Generate a briefing doc, study guide, or blog post | Notebook ID, Format | | Create Mind Map | Generate a mind map note | Notebook ID | | Wait Until Ready | Poll until an artifact finishes generating | Notebook ID, Artifact ID, Timeout, Interval | | Download Audio | Download an audio overview as MP3 | Notebook ID, Artifact ID | | Download Video | Download a video artifact as MP4 | Notebook ID, Artifact ID | | Download Slide Deck | Download a slide deck as PDF or PPTX | Notebook ID, Artifact ID, Format | | Download Infographic | Download an infographic as PNG | Notebook ID, Artifact ID | | Export Report | Export a report artifact to Google Docs | Notebook ID, Artifact ID, Title |
Report formats: Briefing Doc, Study Guide, Blog Post
Download operations output a binary item (field name:
data). Connect them to nodes like Write Binary File, Send Email, or HTTP Request to use the file.
Chat
| Operation | Description | Parameters | | --------- | ----------------------------------------------- | -------------------- | | Ask | Send a question and receive a grounded response | Notebook ID, Message |
Note
| Operation | Description | Parameters | | --------- | --------------------------------- | -------------------- | | List | List all text notes in a notebook | Notebook ID | | Create | Create a new note | Notebook ID, Content |
Example workflows
Summarize a webpage into a NotebookLM notebook:
- HTTP Request — fetch a webpage URL
- NotebookLM: Source → Add URL — add the URL to a notebook
- NotebookLM: Artifact → Create Report — generate a briefing doc
- NotebookLM: Chat → Ask — ask a follow-up question grounded in the source
Generate and download an audio overview:
- NotebookLM: Artifact → Create Audio Overview — kick off generation (returns
artifactId) - NotebookLM: Artifact → Wait Until Ready — poll until status is
completed - NotebookLM: Artifact → Download Audio — download the MP3 as binary data
- Write Binary File — save to disk, or pipe to any other binary-capable node
Create and download an infographic from your latest notebook (example JSON):
- NotebookLM: Notebook → List — list all notebooks (returned in most-recently-accessed order)
- Code —
return [$input.first()]to pick the latest one - NotebookLM: Artifact → Create Infographic — kick off generation
- NotebookLM: Artifact → Wait Until Ready — poll every 5 s, up to 300 s
- NotebookLM: Artifact → Download Infographic — download the PNG as binary data
Finding your Notebook ID
The notebook ID is the long alphanumeric string in the NotebookLM URL:
https://notebooklm.google.com/notebook/abc123def456...
^^^^^^^^^^^^^^^^You can also use Notebook → List as the first step in a workflow to retrieve notebook IDs dynamically.
Local development
git clone https://github.com/agmmnn/n8n-nodes-notebooklm
cd n8n-nodes-notebooklm
npm install
npm run buildTo test in a local n8n instance:
# In this repo
npm link
# In your n8n directory
npm link n8n-nodes-notebooklmThen restart n8n — the node will appear in the node palette under NotebookLM.
License
MIT
