Créer et gérer des notebooks (API)

NotebookLM Enterprise est un outil puissant qui vous permet de générer des insights et des résumés à partir de vos documents. Cette page décrit les API qui vous permettent d'effectuer les tâches de gestion de notebooks suivantes de manière programmatique :

Créer un notebook

Pour créer un notebook, utilisez la méthode notebooks.create.

REST

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks" \
  -d '{
  "title": "NOTEBOOK_TITLE",
  }'

Remplacez les éléments suivants :

  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Attribuez l'une des valeurs suivantes :
    • us- pour la multirégion des États-Unis
    • eu- pour la multirégion de l'UE
    • global- pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
  • PROJECT_NUMBER : numéro de votre projet Google Cloud .
  • LOCATION : emplacement géographique de votre data store, par exemple global. Pour en savoir plus, consultez Emplacements.
  • NOTEBOOK_TITLE : chaîne encodée en UTF-8 utilisée comme titre du notebook que vous souhaitez créer.

Si la requête aboutit, vous devriez recevoir un JSON semblable à celui-ci.

{
"title": "NOTEBOOK_TITLE",
"notebookId": "NOTEBOOK_ID",
"emoji": "",
"metadata": {
  "userRole": "PROJECT_ROLE_OWNER",
  "isShared": false,
  "isShareable": true
},
"name": "NOTEBOOK_NAME"
}

Veuillez noter les points suivants :

  • NOTEBOOK_ID : ID unique permettant d'identifier le notebook créé. Vous avez besoin de l'ID du notebook pour d'autres tâches de gestion, comme le partage ou la récupération.
  • NOTEBOOK_NAME : nom complet de la ressource du notebook. Ce champ suit le modèle suivant : projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID

Accéder au notebook créé et obtenir son ID dans un navigateur

Pour accéder au notebook créé et obtenir son ID à l'aide d'un navigateur, procédez comme suit.

  1. Accédez à la page d'accueil de NotebookLM Enterprise, disponible à l'une des URL suivantes :

    1. Si vous utilisez une identité Google, accédez à :

      https://notebooklm.cloud.google.com/LOCATION/?project=PROJECT_NUMBER
      
    2. Si vous utilisez une identité tierce, accédez à :

      https://notebooklm.cloud.google/LOCATION/?project=PROJECT_NUMBER
      
  2. Sélectionnez le notebook créé. L'URL du notebook sélectionné se présente comme suit :

    1. Si vous utilisez une identité Google :

      https://notebooklm.cloud.google.com/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
    2. Si vous utilisez une identité tierce :

      https://notebooklm.cloud.google/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
  3. Notez l'URL et l'ID du notebook, qui sont utiles pour d'autres tâches de gestion des notebooks, comme le partage.

Récupérer un notebook

Pour récupérer un notebook spécifique à l'aide de son ID, utilisez la méthode notebooks.get.

REST

curl -X GET \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID"

Remplacez les éléments suivants :

  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Attribuez l'une des valeurs suivantes :
    • us- pour la multirégion des États-Unis
    • eu- pour la multirégion de l'UE
    • global- pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
  • PROJECT_NUMBER : numéro de votre projet Google Cloud .
  • LOCATION : emplacement géographique de votre data store, par exemple global. Pour en savoir plus, consultez Emplacements.
  • NOTEBOOK_ID : identifiant unique du notebook que vous avez reçu lors de sa création.

Si la requête aboutit, vous devriez obtenir une réponse JSON semblable à la suivante pour un notebook vide. Si vous appelez cette méthode après avoir ajouté des sources à votre notebook, vous recevez des informations sur toutes les sources ajoutées au notebook récupéré. Si vous avez configuré les détails CMEK, vous recevrez également des informations sur les CMEK pour le notebook.

{
"title": "NOTEBOOK_TITLE",
"notebookId": "NOTEBOOK_ID",
"emoji": "",
"metadata": {
  "userRole": "PROJECT_ROLE_OWNER",
  "isShared": false,
  "isShareable": true,
  "lastViewed": "LAST_VIEWED_TIME",
  "createTime": "LAST_CREATED_TIME"
},
"name": "NOTEBOOK_NAME"
}

Lister les notebooks consultés récemment

Pour obtenir la liste de tous les notebooks d'un projet qui ont été consultés récemment, utilisez la méthode notebooks.listRecentlyViewed. Par défaut, la réponse liste les 500 derniers notebooks. Vous pouvez choisir de paginer les réponses avec le paramètre de requête pageSize.

REST

curl -X GET \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks:listRecentlyViewed"

Remplacez les éléments suivants :

  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Attribuez l'une des valeurs suivantes :
    • us- pour la multirégion des États-Unis
    • eu- pour la multirégion de l'UE
    • global- pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
  • PROJECT_NUMBER : numéro de votre projet Google Cloud .
  • LOCATION : emplacement géographique de votre data store, par exemple global. Pour en savoir plus, consultez Emplacements.

Si la requête aboutit, vous devriez obtenir une réponse JSON semblable à la suivante. La réponse contient les 500 derniers notebooks auxquels un utilisateur a accédé récemment.

{
  "notebooks": [
    {
      "title": "NOTEBOOK_TITLE_1",
      "notebookId": "NOTEBOOK_ID_1",
      "emoji": "",
      "metadata": {
        "userRole": "PROJECT_ROLE_OWNER",
        "isShared": false,
        "isShareable": true,
        "lastViewed": "LAST_VIEWED_TIME",
        "createTime": "LAST_CREATED_TIME"
      },
      "name": "NOTEBOOK_NAME_1"
    },
    {
      "title": "NOTEBOOK_TITLE_2",
      "notebookId": "NOTEBOOK_ID_2",
      "emoji": "",
      "metadata": {
        "userRole": "PROJECT_ROLE_OWNER",
        "isShared": false,
        "isShareable": true,
        "lastViewed": "LAST_VIEWED_TIME",
        "createTime": "LAST_CREATED_TIME"
      },
      "name": "NOTEBOOK_NAME_2"
    }
  ]
}

Supprimer des notebooks par lot

Pour supprimer des notebooks par lot, utilisez la méthode notebooks.batchDelete.

REST

curl -X POST \
  -H "Authorization:Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks:batchDelete"
  -d '{
    "names": [
      "NOTEBOOK_NAME_1",
      "NOTEBOOK_NAME_2"
    ]
  }'

Remplacez les éléments suivants :

  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Attribuez l'une des valeurs suivantes :
    • us- pour la multirégion des États-Unis
    • eu- pour la multirégion de l'UE
    • global- pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
  • PROJECT_NUMBER : numéro de votre projet Google Cloud .
  • LOCATION : emplacement géographique de votre data store, par exemple global. Pour en savoir plus, consultez Emplacements.
  • NOTEBOOK_NAME : nom complet de la ressource du notebook à supprimer. Ce champ a le format suivant : projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID.

    Si la requête aboutit, vous devriez recevoir un objet JSON vide.

Partager un notebook

Pour partager un notebook, utilisez la méthode notebooks.share.

L'utilisateur avec lequel vous souhaitez partager le notebook doit disposer du rôle Utilisateur de notebooks cloud.

REST

  1. Dans votre projet Google Cloud , attribuez le rôle IAM (Identity and Access Management)Cloud NotebookLM User aux utilisateurs avec lesquels vous souhaitez partager le notebook.

  2. Appelez la méthode suivante.

    curl -X POST \
      -H "Authorization:Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://ENDPOINT_LOCATION--discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID:share" \
      -d '{
        "accountAndRoles": [
         {
            "email":"USER_EMAIL_1",
            "role":"USER_ROLE_1",
         },
         {
            "email":"USER_EMAIL_2",
            "role":"USER_ROLE_2",
         },
        ]
      }'
    

    Remplacez les éléments suivants :

    • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Attribuez l'une des valeurs suivantes :
      • us- pour la multirégion des États-Unis
      • eu- pour la multirégion de l'UE
      • global- pour l'emplacement "Global"
      Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
    • PROJECT_NUMBER : numéro de votre projet Google Cloud .
    • LOCATION : emplacement géographique de votre data store, par exemple global. Pour en savoir plus, consultez Emplacements.
    • NOTEBOOK_ID : ID unique permettant d'identifier le notebook que vous souhaitez partager. Vous avez besoin de l'ID du notebook pour d'autres tâches de gestion, comme le partage ou la récupération.
    • USER_EMAIL : adresse e-mail de l'utilisateur avec lequel vous souhaitez partager le notebook.
    • USER_ROLE : rôle que vous souhaitez attribuer à l'utilisateur. Il peut s'agir de l'un des suivants :

      • PROJECT_ROLE_OWNER : l'utilisateur est propriétaire du projet.
      • PROJECT_ROLE_WRITER : l'utilisateur dispose d'autorisations d'écriture sur le projet.
      • PROJECT_ROLE_READER : l'utilisateur dispose d'autorisations de lecture sur le projet.
      • PROJECT_ROLE_NOT_SHARED : l'utilisateur n'a pas accès au projet.

    Si la requête aboutit, vous recevez un objet JSON vide.

Valider les utilisateurs à l'aide d'un navigateur

Pour vérifier que vous avez partagé le notebook avec les bons utilisateurs et que vous leur avez attribué les bons rôles, procédez comme suit :

  1. Ouvrez le notebook dans votre navigateur. Un notebook présente le format d'URL suivant :

    1. Si vous utilisez une identité Google :

      https://notebooklm.cloud.google.com/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
    2. Si vous utilisez une identité tierce :

      https://notebooklm.cloud.google/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
  2. Cliquez sur Partager.

  3. Vérifiez les utilisateurs listés sous Personnes ayant accès et les rôles qui leur sont attribués.

Étapes suivantes