List artifacts

September 29, 2026 (October 15, 2026)

Table of contents

  1. Request Headers
  2. Query Parameters
  3. Responses
  4. Model
  5. Examples
  6. Try It

List the Studio artifacts of one notebook: everything created with POST /artifacts, plus anything made in the Gemini Notebook web app on the same notebook. Each row carries the artifact id, which you pass to GET /artifacts/artifact for the full result (files, slides, text, table or quiz / flashcards / mind map JSON).

The list is read live from Google on every call. Artifacts that are still generating appear with status pending or processing.

The items an interactive report suggests are not listed while their status is suggested. Find them in the report’s embedded list on GET /artifacts/artifact.

https://api.useapi.net/v1/gemini-notebook/artifacts?notebook=notebook

Request Headers
Authorization: Bearer {API token}
Query Parameters
  • notebook is required, the notebook id returned by POST /notebooks or GET /notebooks, for example user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55.
    The id names the account the notebook lives on, so no email parameter is needed. URL-encode it (it contains : and @).
Responses
  • 200 OK

    An array, one row per artifact. An empty notebook returns [].

    [
      {
        "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:0449d123-6d1e-4864-ab28-ecac88a74c53",
        "title": "Apollo 11: Ticking Clock",
        "type": "video",
        "status": "completed",
        "created": "2026-09-27T23:38:23.000Z"
      },
      {
        "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:0c2ba8dc-47dd-474f-a19c-c06896e269fd",
        "title": "¿Fue suerte el descenso del Eagle?",
        "type": "audio",
        "status": "completed",
        "created": "2026-09-27T23:38:10.000Z"
      },
      {
        "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:ae28f2a1-678b-4304-9806-09648fcb77a0",
        "title": "Apollo 11 Flight Plan",
        "type": "slides",
        "status": "completed",
        "created": "2026-09-27T23:31:15.000Z"
      },
      {
        "artifact": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55:07b94418-6c28-437c-98de-06bbeabb4e0c",
        "title": "Apollo Quiz",
        "type": "quiz",
        "status": "completed",
        "created": "2026-09-27T23:26:36.000Z"
      }
    ]
    
  • 400 Bad Request

    notebook is missing or is not a notebook id.

    {
      "error": "Parameter notebook is not a valid notebook id",
      "code": 400
    }
    
  • 401 Unauthorized

    Invalid API token.

    {
      "error": "useapi.net ⁝ Unauthorized",
      "code": 401
    }
    
  • 403 Forbidden

    The notebook id was issued to a different API token.

    {
      "error": "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55 does not belong to this API token",
      "code": 403
    }
    
  • 404 Not Found

    The account the notebook lives on is no longer configured, or Google no longer has the notebook.

    {
      "error": "Account [email protected] of user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55 is not configured",
      "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
Array<{
  artifact: string        // user:<id>-<email>-artifact:<notebook uuid>:<artifact uuid>
  title: string
  type: 'audio' | 'video' | 'report' | 'interactive_report' | 'table' | 'quiz' | 'flashcards' | 'infographic' | 'slides' | 'mindmap'
  status: 'pending' | 'processing' | 'completed' | 'failed' | 'pending_review'
  created: string | null  // ISO 8601
}>

A type or status Google adds later that this API does not know yet is returned as type<N> / status<N> (Google’s raw code).

Examples
  • curl -G "https://api.useapi.net/v1/gemini-notebook/artifacts" \
       -H "Authorization: Bearer …" \
       --data-urlencode "notebook=user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55"
    
  • const token = "API token";
    const notebook = "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55";
    const apiUrl = `https://api.useapi.net/v1/gemini-notebook/artifacts?notebook=${encodeURIComponent(notebook)}`;
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", {response, result});
    
  • import requests
    token = "API token"
    notebook = "user:[email protected]:d02c903b-17f8-4241-a263-2be9e7359d55"
    apiUrl = "https://api.useapi.net/v1/gemini-notebook/artifacts"
    headers = {
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers, params={"notebook": notebook})
    print(response, response.json())
    
Try It