Retrieve an artifact
September 29, 2026 (October 15, 2026)
Table of contents
Fetch one Studio artifact by its id, read live from Google. A completed artifact carries its full result in the same shape as the result of a finished job: download links for audio, video, slide decks and infographics, the text of reports, the rows of a data table, and the JSON of quizzes, flashcards and mind maps.
Use it to read an artifact again after its job record has expired, to pick up an artifact created in the Gemini Notebook web app, or to check on an artifact whose job was cancelled or timed out (Google may still finish it). The artifact ids come from GET /artifacts and from the artifact field of a job.
A completed interactive report also lists its embedded items, see Interactive report items. Each item can be read here by its own id, including a suggested one, which GET /artifacts does not list.
https://api.useapi.net/v1/gemini-notebook/artifacts/
artifact
artifactis URL-encoded in the path (it contains:and@), for exampleuser%3A12345-user%40example.com-artifact%3Ad02c903b-17f8-4241-a263-2be9e7359d55%3A07b94418-6c28-437c-98de-06bbeabb4e0c. The id names the account and the notebook, so noemailparameter is needed.
Request Headers
Authorization: Bearer {API token}
API tokenis required, see Setup useapi.net for details.
Result by type
A completed artifact adds title plus the fields below. Any other status returns only artifact, notebook, type, status, created and title, plus description for a suggested item.
type | Fields | Files (GET /artifacts/download format) |
|---|---|---|
audio | duration (seconds), files | m4a |
video | duration (seconds), files | mp4 |
report | text (Markdown) | — |
interactive_report | text (the report’s paragraphs as plain text), embedded (the items the report suggests) | — |
table | table (rows of cells, the first row is the header) | — |
quiz | content (JSON: quiz[] with question, answerOptions[], hint) | — |
flashcards | content (JSON: flashcards[]) | — |
infographic | files (with width / height), text | png |
slides | files, slides[] (image, caption, text) | pdf, pptx, and slide with index for each slide image (PNG) |
mindmap | content (JSON tree of name / children) | — |
Every file link points at GET /artifacts/download, which streams the file from Google and needs your API token in the Authorization header. Google’s own media URLs need the account’s cookies, so they are never returned.
Interactive report items
A completed interactive_report lists embedded items in the order they appear in the report. Each item is an infographic, a slide deck, a mind map, a quiz or flashcards that Google wrote for this report, with its own artifact id, type, title, description and status.
- A new item has
status: "suggested". Nothing is generated yet, and itsdescriptionis what Google proposes to make. - POST /artifacts/generate generates it. The item keeps its id and turns
completed, and reading it here then returns its full result. - DELETE /artifacts/
artifactdismisses it, and it leaves theembeddedlist.
Responses
-
A completed quiz (long arrays shortened with
...):{ "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:07b94418-6c28-437c-98de-06bbeabb4e0c", "notebook": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55", "type": "quiz", "status": "completed", "created": "2026-09-27T23:26:36.000Z", "title": "Apollo Quiz", "content": { "quiz": [ { "question": "During Apollo 11's lunar landing phase, which Flight Director was at the helm in Mission Control leading Shift 2 (White Team)?", "answerOptions": [ { "text": "Gene Kranz", "rationale": "Gene Kranz served as the Flight Director for Shift 2 (White Team), which actively managed the critical lunar landing descent phase.", "isCorrect": true }, { "text": "Glynn Lunney", "rationale": "Glynn Lunney managed Shift 3 (Black Team), which oversaw lunar ascent rather than the landing phase.", "isCorrect": false }, "..." ], "hint": "..." }, "..." ], "topics": { "covered": ["Apollo 11 Mission Overview", "Spacecraft Engineering and Call Signs", "..."], "followUp": ["Project Gemini Precursor Missions", "..."] } } }A completed slide deck:
{ "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:ae28f2a1-678b-4304-9806-09648fcb77a0", "notebook": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55", "type": "slides", "status": "completed", "created": "2026-09-27T23:31:15.000Z", "title": "Apollo 11 Flight Plan", "files": [ { "format": "pdf", "mimeType": "application/pdf", "url": "https://api.useapi.net/v1/gemini-notebook/artifacts/download?artifact=user%3A12345-user%40example.com-artifact%3Ad02c903b-17f8-4241-a263-2be9e7359d55%3Aae28f2a1-678b-4304-9806-09648fcb77a0&format=pdf" }, { "format": "pptx", "mimeType": "application/vnd.openxmlformats-officedocument.presentationml.presentation", "url": "https://api.useapi.net/v1/gemini-notebook/artifacts/download?artifact=user%3A12345-user%40example.com-artifact%3Ad02c903b-17f8-4241-a263-2be9e7359d55%3Aae28f2a1-678b-4304-9806-09648fcb77a0&format=pptx" } ], "slides": [ { "image": "https://api.useapi.net/v1/gemini-notebook/artifacts/download?artifact=user%3A12345-user%40example.com-artifact%3Ad02c903b-17f8-4241-a263-2be9e7359d55%3Aae28f2a1-678b-4304-9806-09648fcb77a0&format=slide&index=1", "caption": "Title slide for Apollo 11: Anatomy of a Miracle, featuring an astronaut on the lunar surface.", "text": "APOLLO_11: ANATOMY OF A MIRACLE\n\nJULY 16-24, 1969 | CREWED LUNAR LANDING\n\n..." }, "..." ] }A completed interactive report, with one item generated and the others still suggested (text shortened with
...):{ "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:8b9af76a-ef24-4e2f-a6ff-3d69cbf44650", "notebook": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55", "type": "interactive_report", "status": "completed", "created": "2026-10-15T05:06:28.000Z", "title": "To the Moon and Back: The Epic Stories of Apollo 11 and Apollo 13", "text": "Imagine blasting off atop a 36-story rocket, traveling 240,000 miles through the pitch-black void of space...", "embedded": [ { "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:5ac11006-86b7-43a8-91c9-72bc5ba1164f", "type": "infographic", "title": "Apollo 11 Moon Landing Anatomy", "description": "A visual breakdown showing the three modules of the Apollo 11 spacecraft, the three crew members, and the key steps of the moon landing sequence.", "status": "completed" }, { "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:a21107d4-54ab-46bd-8207-3a29974e4f8a", "type": "flashcards", "title": "Apollo 13 Rescue Concepts", "description": "Flashcards designed for middle school students to reinforce key terms from Apollo 13, including Aquarius, Odyssey, free-return trajectory, and the 'mailbox' CO2 filter solution.", "status": "suggested" }, { "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:7b48b9a9-ceae-4290-a647-9f2fc4a7ce3a", "type": "mindmap", "title": "The Apollo Mission Ecosystem", "description": "A branching concept map connecting Mission Control teams, spacecraft software systems, ground training, and astronaut tasks.", "status": "suggested" }, { "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:e4ec67bd-4f7e-4e09-8f6d-e88e6fa53cf6", "type": "quiz", "title": "Apollo Missions Knowledge Check", "description": "A multiple-choice review quiz designed for middle-school students to test understanding of Apollo 11 and 13 crew members, spacecraft parts, and key events.", "status": "suggested" } ] }A suggested item, read by its own id:
{ "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:a21107d4-54ab-46bd-8207-3a29974e4f8a", "notebook": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55", "type": "flashcards", "status": "suggested", "created": "2026-10-15T05:06:54.000Z", "title": "Apollo 13 Rescue Concepts", "description": "Flashcards designed for middle school students to reinforce key terms from Apollo 13, including Aquarius, Odyssey, free-return trajectory, and the 'mailbox' CO2 filter solution." }An artifact that is not
completedyet (orfailed) returns onlyartifact,notebook,type,status,createdandtitle. -
The path value is not an artifact id (a notebook or source id is refused too).
{ "error": "Path parameter artifact (…) is not a valid artifact id", "code": 400 } -
Invalid API token.
{ "error": "useapi.net ⁝ Unauthorized", "code": 401 } -
The artifact id was issued to a different API token.
{ "error": "user:[email protected]:d02c903b-…:07b94418-… does not belong to this API token", "code": 403 } -
The artifact is no longer in the notebook (deleted here or in the web app), the notebook is gone, or its account is no longer configured.
{ "error": "Artifact user:[email protected]:d02c903b-…:07b94418-… not found", "code": 404 } -
596 Account Error
Google reported the account as signed out. While we re-check it, the answer is the first message below. Retry in about a minute. If it stays signed out, the account is paused, you receive an email, and the answer becomes the second message until you re-add it via Setup Gemini Notebook.
{ "error": "Google reported this account as signed out. We are re-checking it — please retry in about a minute. If it stays signed out, you will receive a re-add email.", "code": 596 }{ "error": "Account [email protected]: Google signed this account out. Re-add it at https://useapi.net/docs/start-here/setup-gemini-notebook", "code": 596 }
Model
{ // TypeScript, all fields are optional
artifact: string // user:<id>-<email>-artifact:<notebook uuid>:<artifact uuid>
notebook: string // user:<id>-<email>-notebook:<notebook uuid>
type: 'audio' | 'video' | 'report' | 'interactive_report' | 'table' | 'quiz' | 'flashcards' | 'infographic' | 'slides' | 'mindmap'
status: 'pending' | 'processing' | 'completed' | 'failed' | 'pending_review' | 'suggested'
created: string | null // ISO 8601
title: string
description: string // an interactive report's item: what Google proposes to make
// The fields below are present only when status is 'completed', and only for the types listed above
duration: number // seconds, audio and video
files: Array<{
format: 'm4a' | 'mp4' | 'pdf' | 'pptx' | 'png'
mimeType: string
url: string // GET /artifacts/download link, needs your API token
width: number // infographic png only
height: number // infographic png only
}>
slides: Array<{ // slide decks, in order
image: string // GET /artifacts/download?…&format=slide&index=N (PNG)
caption: string | null // Google's one-line description of the slide
text: string | null // the slide's text as Google extracted it
}>
text: string // report (Markdown), interactive_report, infographic
table: string[][] // data table, first row = column headers
content: QuizContent | FlashcardsContent | MindmapNode // quiz, flashcards, mindmap
embedded: Array<{ // interactive_report: its items, in reading order
artifact: string // the item's own id
type: string // 'infographic', 'slides', 'mindmap', 'quiz' or 'flashcards'
title: string
description?: string
status: 'suggested' | 'pending' | 'processing' | 'completed' | 'failed'
}>
}
type QuizContent = {
quiz: Array<{
question: string
answerOptions: Array<{
text: string
rationale: string // why this option is right or wrong
isCorrect: boolean
}>
hint: string
}>
topics: {
covered: string[]
followUp: string[]
}
}
type FlashcardsContent = {
flashcards: Array<{
f: string // front of the card
b: string // back of the card
c: number // present on some cards (Google's own marker)
}>
topics: {
covered: string[]
followUp: string[]
}
}
type MindmapNode = {
name: string
children: MindmapNode[] // absent on leaf nodes
}
content is the JSON Google’s own interactive quiz, flashcard and mind-map views render, passed through unchanged. If Google does not return it on a read, content is left out, so read the artifact again.
Examples
-
ARTIFACT="user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:07b94418-6c28-437c-98de-06bbeabb4e0c" curl -H "Authorization: Bearer …" \ "https://api.useapi.net/v1/gemini-notebook/artifacts/$(python3 -c "import urllib.parse,sys;print(urllib.parse.quote(sys.argv[1],safe=''))" "$ARTIFACT")" -
const token = "API token"; const artifact = "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:07b94418-6c28-437c-98de-06bbeabb4e0c"; const apiUrl = `https://api.useapi.net/v1/gemini-notebook/artifacts/${encodeURIComponent(artifact)}`; const response = await fetch(apiUrl, { headers: { "Authorization": `Bearer ${token}`, }, }); const result = await response.json(); console.log("response", {response, result}); -
import requests, urllib.parse token = "API token" artifact = "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:07b94418-6c28-437c-98de-06bbeabb4e0c" apiUrl = "https://api.useapi.net/v1/gemini-notebook/artifacts/" + urllib.parse.quote(artifact, safe="") headers = { "Authorization" : f"Bearer {token}" } response = requests.get(apiUrl, headers=headers) print(response, response.json())