Criar e gerenciar notebooks (API)

O Gemini Notebook Enterprise é uma ferramenta poderosa para gerar insights e resumos dos seus documentos. Nesta página, descrevemos as APIs que permitem realizar as seguintes tarefas de gerenciamento de notebooks de maneira programática:

Antes de começar

Antes de começar a trabalhar com os notebooks, faça o seguinte:

Criar um notebook

Para criar um notebook, use o método 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",
  }'

Substitua:

  • ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:
    • us para a multirregião dos EUA
    • eu para a multirregião da UE
    • global para o local global
    Para mais informações, consulte Especificar uma multirregião para seu repositório de dados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud .
  • LOCATION: a localização geográfica do repositório de dados, como global. Saiba mais em Locais.
  • NOTEBOOK_TITLE: uma string codificada em UTF-8 usada como título do notebook que você quer criar.

Se a solicitação for bem-sucedida, você vai receber um JSON semelhante ao seguinte.

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

Observe o seguinte:

  • NOTEBOOK_ID: um ID exclusivo para identificar o notebook criado. Você precisa do ID do notebook para outras tarefas de gerenciamento, como compartilhamento ou recuperação.
  • NOTEBOOK_NAME: o nome completo do recurso do notebook. Esse campo tem o seguinte padrão: projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID

Acessar o notebook criado e conferir o ID dele em um navegador

Para acessar o notebook criado e receber o ID dele usando um navegador, faça o seguinte.

  1. Acesse a página inicial do Gemini Notebook Enterprise, disponível em um dos seguintes URLs:

    1. Se você usa uma identidade do Google, acesse:

      https://notebook.cloud.google.com/LOCATION/?project=PROJECT_NUMBER
      
    2. Se você estiver usando uma identidade de terceiros, acesse:

      https://notebook.cloud.google/LOCATION/?project=PROJECT_NUMBER
      
  2. Selecione o notebook criado. O URL do notebook selecionado tem o seguinte padrão:

    1. Se você usa uma Google Identity:

      https://notebook.cloud.google.com/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
    2. Se você estiver usando uma identidade de terceiros:

      https://notebook.cloud.google/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
  3. Anote o URL e o ID do notebook, que são úteis para outras tarefas de gerenciamento de notebooks, como compartilhamento.

Recuperar um notebook

Para recuperar um notebook específico usando o ID dele, use o método 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"

Substitua:

  • ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:
    • us para a multirregião dos EUA
    • eu para a multirregião da UE
    • global para o local global
    Para mais informações, consulte Especificar uma multirregião para seu repositório de dados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud .
  • LOCATION: a localização geográfica do repositório de dados, como global. Saiba mais em Locais.
  • NOTEBOOK_ID: o identificador exclusivo do notebook que você recebeu ao criá-lo.

Se a solicitação for bem-sucedida, você receberá uma resposta JSON semelhante à seguinte para um notebook vazio. Se você chamar esse método depois de adicionar fontes ao notebook, vai receber detalhes sobre todas as fontes adicionadas ao notebook recuperado. Se você configurou os detalhes da CMEK, também vai receber informações relacionadas à CMEK para o 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"
}

Listar notebooks visualizados recentemente

Para ver uma lista de todos os notebooks em um projeto que foram visualizados recentemente, use o método notebooks.listRecentlyViewed. Por padrão, a resposta lista os últimos 500 notebooks. É possível paginar as respostas com o parâmetro de consulta 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"

Substitua:

  • ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:
    • us para a multirregião dos EUA
    • eu para a multirregião da UE
    • global para o local global
    Para mais informações, consulte Especificar uma multirregião para seu repositório de dados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud .
  • LOCATION: a localização geográfica do repositório de dados, como global. Saiba mais em Locais.

Se a solicitação for bem-sucedida, você vai receber uma resposta JSON semelhante a esta: A resposta contém até os últimos 500 notebooks que um usuário acessou recentemente.

{
  "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"
    }
  ]
}

Excluir um notebook

Para excluir um notebook, use o método 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"
    ]
  }'

Substitua:

  • ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:
    • us para a multirregião dos EUA
    • eu para a multirregião da UE
    • global para o local global
    Para mais informações, consulte Especificar uma multirregião para seu repositório de dados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud .
  • LOCATION: a localização geográfica do repositório de dados, como global. Saiba mais em Locais.
  • NOTEBOOK_NAME: o nome completo do recurso do notebook a ser excluído. Esse campo tem o padrão: projects/PROJECT_NUMBER/locations/LOCATION/notebooks/NOTEBOOK_ID.

    Se a solicitação for bem-sucedida, você vai receber um objeto JSON vazio. Se o notebook não existir, você também vai receber um objeto JSON vazio. Portanto, especifique o nome do notebook corretamente.

Compartilhar um notebook

Para compartilhar um novo notebook, use o método notebooks.share.

O usuário com quem você quer compartilhar o notebook precisa receber o papel de Usuário do Cloud NotebookLM.

REST

  1. No projeto do Google Cloud , atribua o papel do Identity and Access Management (IAM) Cloud NotebookLM User aos usuários com quem você quer compartilhar o notebook.

  2. Chame o método a seguir.

    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",
         },
        ]
      }'
    

    Substitua:

    • ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:
      • us para a multirregião dos EUA
      • eu para a multirregião da UE
      • global para o local global
      Para mais informações, consulte Especificar uma multirregião para seu repositório de dados.
    • PROJECT_NUMBER: o número do projeto do Google Cloud .
    • LOCATION: a localização geográfica do repositório de dados, como global. Saiba mais em Locais.
    • NOTEBOOK_ID: um ID exclusivo para identificar o notebook que você quer compartilhar. Você precisa do ID do notebook para outras tarefas de gerenciamento, como compartilhamento ou recuperação.
    • USER_EMAIL: o endereço de e-mail do usuário com quem você quer compartilhar o notebook.
    • USER_ROLE: um papel que você quer atribuir ao usuário. Pode ser um destes:

      • PROJECT_ROLE_OWNER: o usuário é proprietário do projeto.
      • PROJECT_ROLE_WRITER: o usuário tem permissões de gravação no projeto.
      • PROJECT_ROLE_READER: o usuário tem permissões de leitura no projeto.
      • PROJECT_ROLE_NOT_SHARED:o usuário não tem acesso ao projeto.

    Se a solicitação for bem-sucedida, você vai receber um objeto JSON vazio.

Verificar usuários usando um navegador

Para verificar se você compartilhou o notebook com os usuários corretos e atribuiu os papéis corretos a eles, faça o seguinte:

  1. Abra o notebook no navegador. Um notebook tem o seguinte padrão do URL:

    1. Se você usa uma Google Identity:

      https://notebook.cloud.google.com/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
    2. Se você estiver usando uma identidade de terceiros:

      https://notebook.cloud.google/LOCATION/notebook/NOTEBOOK_ID?project=PROJECT_NUMBER
      
  2. Clique em Compartilhar.

  3. Verifique os usuários listados como Pessoas com acesso e as funções atribuídas a eles.

A seguir