> ## AI Agent Context
> Get the complete documentation index at: https://aistudio.google.com/llms.txt
> Use this file to discover all available pages.
> For the full documentation in a single file, fetch: https://aistudio.google.com/llms-full.txt

# All methods

Every REST method in the Gemini API, grouped by reference page.
All paths below are relative to `https://generativelanguage.googleapis.com`.

## Gemini Interactions API  {% id="interactions-api" %}

See the [Gemini Interactions API reference](/api-reference/interactions-api) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateInteraction`](/api-reference/interactions-api/create-interaction)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/interactions`

    Creates a new interaction.


  ---

  * [`cancelInteractionById`](/api-reference/interactions-api/cancel-interaction-by-id)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/interactions/{id}/cancel`

    Cancels an interaction by id.


  ---

  * [`getInteractionById`](/api-reference/interactions-api/get-interaction-by-id)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/interactions/{id}`

    Retrieves the full details of a single interaction based on its `Interaction.id`.


  ---

  * [`deleteInteraction`](/api-reference/interactions-api/delete-interaction)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/interactions/{id}`

    Deletes the interaction by id.

{% /table %}

## Gemini Agents API  {% id="agents" %}

See the [Gemini Agents API reference](/api-reference/agents) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateAgent`](/api-reference/agents/create-agent)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/agents`

    Creates a new Agent (Typed version for SDK).


  ---

  * [`ListAgents`](/api-reference/agents/list-agents)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/agents`

    Lists all Agents.


  ---

  * [`GetAgent`](/api-reference/agents/get-agent)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/agents/{agentsId}`

    Gets a specific Agent.


  ---

  * [`DeleteAgent`](/api-reference/agents/delete-agent)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/agents/{agentsId}`

    Deletes an Agent.

{% /table %}

## Gemini Webhooks API  {% id="webhooks" %}

See the [Gemini Webhooks API reference](/api-reference/webhooks) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateWebhook`](/api-reference/webhooks/create-webhook)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/webhooks`

    Creates a new Webhook.


  ---

  * [`PingWebhook`](/api-reference/webhooks/ping-webhook)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/webhooks/{id}:ping`

    Sends a ping event to a Webhook.


  ---

  * [`RotateSigningSecret`](/api-reference/webhooks/rotate-signing-secret)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/webhooks/{id}:rotateSigningSecret`

    Generates a new signing secret for a Webhook.


  ---

  * [`ListWebhooks`](/api-reference/webhooks/list-webhooks)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/webhooks`

    Lists all Webhooks.


  ---

  * [`GetWebhook`](/api-reference/webhooks/get-webhook)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/webhooks/{id}`

    Gets a specific Webhook.


  ---

  * [`UpdateWebhook`](/api-reference/webhooks/update-webhook)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/webhooks/{id}`

    Updates an existing Webhook.


  ---

  * [`DeleteWebhook`](/api-reference/webhooks/delete-webhook)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/webhooks/{id}`

    Deletes a Webhook.

{% /table %}

## Gemini Triggers API  {% id="triggers" %}

See the [Gemini Triggers API reference](/api-reference/triggers) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateTrigger`](/api-reference/triggers/create-trigger)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/triggers`

    Creates a new trigger that will invoke the specified agent on the given cron schedule.


  ---

  * [`RunTrigger`](/api-reference/triggers/run-trigger)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/triggers/{triggerId}/executions`

    Runs a trigger immediately.


  ---

  * [`ListTriggers`](/api-reference/triggers/list-triggers)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/triggers`

    Lists triggers for a project.


  ---

  * [`GetTrigger`](/api-reference/triggers/get-trigger)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/triggers/{id}`

    Gets details of a single trigger.


  ---

  * [`ListTriggerExecutions`](/api-reference/triggers/list-trigger-executions)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/triggers/{triggerId}/executions`

    Lists executions for a trigger.


  ---

  * [`UpdateTrigger`](/api-reference/triggers/update-trigger)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/triggers/{id}`

    Updates a trigger.


  ---

  * [`DeleteTrigger`](/api-reference/triggers/delete-trigger)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/triggers/{id}`

    Deletes a trigger.

{% /table %}

## Gemini Environments API  {% id="environments" %}

See the [Gemini Environments API reference](/api-reference/environments) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateEnvironment`](/api-reference/environments/create-environment)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/environments`

    Creates an environment.


  ---

  * [`ListEnvironments`](/api-reference/environments/list-environments)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/environments`

    Lists environments.


  ---

  * [`GetEnvironmentFiles`](/api-reference/environments/get-environment-files)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/environments/{environment}/files/{path}`

    Retrieves file metadata or directory contents from an environment's snapshot.


  ---

  * [`GetEnvironment`](/api-reference/environments/get-environment)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/environments/{id}`

    Gets an environment.


  ---

  * [`StartEnvironmentFileUpload`](/api-reference/environments/start-environment-file-upload)
  *     {% mark class="http-put" %}{% icon name="north_east" /%}`PUT`{% /mark %} `/upload/v1beta/environments/{environment}/files/{path}`

    Starts a resumable upload session for a file in an environment workspace.


  ---

  * [`DeleteEnvironment`](/api-reference/environments/delete-environment)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/environments/{id}`

    Deletes an environment.

{% /table %}

## Gemini Voices API  {% id="voices" %}

See the [Gemini Voices API reference](/api-reference/voices) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateVoice`](/api-reference/voices/create-voice)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/voices`

    Creates a custom voice from a natural-language prompt (`VOICE_TYPE_PROMPTED`) or from reference and consent audio recordings (`VOICE_TYPE_REPLICATED`).


  ---

  * [`ListVoices`](/api-reference/voices/list-voices)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/voices`

    Lists custom stored voices owned by the caller (ordered newest first) followed by prebuilt system voices from Google's voice catalog.


  ---

  * [`GetVoice`](/api-reference/voices/get-voice)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/voices/{voicesId}`

    Gets a custom stored voice (`store = true`) by resource name.


  ---

  * [`DeleteVoice`](/api-reference/voices/delete-voice)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/voices/{voicesId}`

    Deletes a custom stored voice (`store = true`) by resource name.

{% /table %}

## Gemini Credentials API  {% id="credentials" %}

See the [Gemini Credentials API reference](/api-reference/credentials) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateCredential`](/api-reference/credentials/create-credential)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/credentials`

    Creates a new credential.


  ---

  * [`ListCredentials`](/api-reference/credentials/list-credentials)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/credentials`

    Lists credentials.


  ---

  * [`GetCredential`](/api-reference/credentials/get-credential)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/credentials/{id}`

    Gets a credential by ID.


  ---

  * [`UpdateCredential`](/api-reference/credentials/update-credential)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/credentials/{id}`

    Updates a credential.


  ---

  * [`DeleteCredential`](/api-reference/credentials/delete-credential)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/credentials/{id}`

    Deletes a credential.

{% /table %}

## Generating content  {% id="generate-content" %}

See the [Generating content reference](/api-reference/generate-content) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`GenerateContent`](/api-reference/generate-content/generate-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:generateContent`

    Generates a model response given an input `GenerateContentRequest`.


  ---

  * [`StreamGenerateContent`](/api-reference/generate-content/stream-generate-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:streamGenerateContent`

    Generates a [streamed response](/docs/text-generation#streaming-responses) from the model given an input `GenerateContentRequest`.


  ---

  * [`CreateToken`](/api-reference/generate-content/create-token)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/auth_tokens`

    Creates a token that can be used to constrain the behavior of a BidiGenerateContent session.

{% /table %}

## Models  {% id="models" %}

See the [Models reference](/api-reference/models) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`GetModel`](/api-reference/models/get-model)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/models/{model}`

    Gets information about a specific `Model` such as its version number, token limits, [parameters](/docs/prompting-strategies#model-parameters) and other metadata.


  ---

  * [`ListModels`](/api-reference/models/list-models)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/models`

    Lists the [`Model`s](/docs/models) available through the Gemini API.

{% /table %}

## Batch API  {% id="batch-api" %}

See the [Batch API reference](/api-reference/batch-api) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`BatchGenerateContent`](/api-reference/batch-api/batch-generate-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:batchGenerateContent`

    Enqueues a batch of `GenerateContent` requests for batch processing.


  ---

  * [`AsyncBatchEmbedContent`](/api-reference/batch-api/async-batch-embed-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:asyncBatchEmbedContent`

    Enqueues a batch of `EmbedContent` requests for batch processing.


  ---

  * [`GetBatch`](/api-reference/batch-api/get-batch)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/batches/{generateContentBatch}`

    Gets the latest state of a long-running operation.


  ---

  * [`ListBatches`](/api-reference/batch-api/list-batches)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/batches`

    Lists operations that match the specified filter in the request.


  ---

  * [`CancelBatch`](/api-reference/batch-api/cancel-batch)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/batches/{generateContentBatch}:cancel`

    Starts asynchronous cancellation on a long-running operation.


  ---

  * [`DeleteBatch`](/api-reference/batch-api/delete-batch)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/batches/{generateContentBatch}`

    Deletes a long-running operation.


  ---

  * [`UpdateGenerateContentBatch`](/api-reference/batch-api/update-generate-content-batch)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/batches/{generateContentBatch}:updateGenerateContentBatch`

    Updates a batch of GenerateContent requests for batch processing.


  ---

  * [`UpdateEmbedContentBatch`](/api-reference/batch-api/update-embed-content-batch)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/batches/{generateContentBatch}:updateEmbedContentBatch`

    Updates a batch of EmbedContent requests for batch processing.

{% /table %}

## Using files  {% id="files" %}

See the [Using files reference](/api-reference/files) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`GetFile`](/api-reference/files/get-file)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/files/{file}`

    Gets the metadata for the given `File`.


  ---

  * [`ListFiles`](/api-reference/files/list-files)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/files`

    Lists the metadata for `File`s owned by the requesting project.


  ---

  * [`DeleteFile`](/api-reference/files/delete-file)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/files/{file}`

    Deletes the `File`.


  ---

  * [`RegisterFiles`](/api-reference/files/register-files)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/files:register`

    Registers a Google Cloud Storage files with FileService.


  ---

  * [`CreateFile`](/api-reference/files/create-file)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/files`

    Creates a `File`.

{% /table %}

## Counting tokens  {% id="tokens" %}

See the [Counting tokens reference](/api-reference/tokens) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CountTokens`](/api-reference/tokens/count-tokens)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:countTokens`

    Runs a model's tokenizer on input `Content` and returns the token count.

{% /table %}

## Caching  {% id="caching" %}

See the [Caching reference](/api-reference/caching) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateCachedContent`](/api-reference/caching/create-cached-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/cachedContents`

    Creates CachedContent resource.


  ---

  * [`ListCachedContents`](/api-reference/caching/list-cached-contents)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/cachedContents`

    Lists CachedContents.


  ---

  * [`GetCachedContent`](/api-reference/caching/get-cached-content)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/cachedContents/{id}`

    Reads CachedContent resource.


  ---

  * [`UpdateCachedContent`](/api-reference/caching/update-cached-content)
  *     {% mark class="http-patch" %}{% icon name="north_east" /%}`PATCH`{% /mark %} `/v1beta/cachedContents/{id}`

    Updates CachedContent resource (only expiration is updatable).


  ---

  * [`DeleteCachedContent`](/api-reference/caching/delete-cached-content)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/cachedContents/{id}`

    Deletes CachedContent resource.

{% /table %}

## Embeddings  {% id="embeddings" %}

See the [Embeddings reference](/api-reference/embeddings) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`EmbedContent`](/api-reference/embeddings/embed-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:embedContent`

    Generates a text embedding vector from the input `Content` using the specified [Gemini Embedding model](/docs/models#specialized-task-models).


  ---

  * [`BatchEmbedContents`](/api-reference/embeddings/batch-embed-contents)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:batchEmbedContents`

    Generates multiple embedding vectors from the input `Content` which consists of a batch of strings represented as `EmbedContentRequest` objects.


  ---

  * [`AsyncBatchEmbedContent`](/api-reference/embeddings/async-batch-embed-content)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/models/{model}:asyncBatchEmbedContent`

    Enqueues a batch of `EmbedContent` requests for batch processing.

{% /table %}

## File Search Stores  {% id="file-search-file-search-stores" %}

See the [File Search Stores reference](/api-reference/file-search/file-search-stores) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`CreateFileSearchStore`](/api-reference/file-search/file-search-stores/create-file-search-store)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/fileSearchStores`

    Creates an empty `FileSearchStore`.


  ---

  * [`DeleteFileSearchStore`](/api-reference/file-search/file-search-stores/delete-file-search-store)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}`

    Deletes a `FileSearchStore`.


  ---

  * [`GetFileSearchStore`](/api-reference/file-search/file-search-stores/get-file-search-store)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}`

    Gets information about a specific `FileSearchStore`.


  ---

  * [`ListFileSearchStores`](/api-reference/file-search/file-search-stores/list-file-search-stores)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores`

    Lists all `FileSearchStores` owned by the user.


  ---

  * [`ImportFile`](/api-reference/file-search/file-search-stores/import-file)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}:importFile`

    Imports a `File` from File Service to a `FileSearchStore`.


  ---

  * [`GetFileSearchStoreOperation`](/api-reference/file-search/file-search-stores/get-file-search-store-operation)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}/operations/{operation}`

    Gets the latest state of a long-running operation.


  ---

  * [`GetFileSearchStoreUploadOperation`](/api-reference/file-search/file-search-stores/get-file-search-store-upload-operation)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStoresId}/upload/operations/{operationsId}`

    Gets the latest state of a long-running operation.


  ---

  * [`UploadToFileSearchStore`](/api-reference/file-search/file-search-stores/upload-to-file-search-store)
  *     {% mark class="http-post" %}{% icon name="north_east" /%}`POST`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}:uploadToFileSearchStore`

    Uploads data to a FileSearchStore, preprocesses and chunks before storing it in a FileSearchStore Document.

{% /table %}

## Documents  {% id="file-search-documents" %}

See the [Documents reference](/api-reference/file-search/documents) for request and response details.

{% table %}
  * Method
  * HTTP request

  ---

  * [`DeleteDocument`](/api-reference/file-search/documents/delete-document)
  *     {% mark class="http-delete" %}{% icon name="close" /%}`DELETE`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}/documents/{document}`

    Deletes a `Document`.


  ---

  * [`GetDocument`](/api-reference/file-search/documents/get-document)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}/documents/{document}`

    Gets information about a specific `Document`.


  ---

  * [`ListDocuments`](/api-reference/file-search/documents/list-documents)
  *     {% mark class="http-get" %}{% icon name="south_west" /%}`GET`{% /mark %} `/v1beta/fileSearchStores/{fileSearchStore}/documents`

    Lists all `Document`s in a `Corpus`.

{% /table %}

