> ## 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 %}