---
title: "POST /v1/interactions/{interactionsId}:cancel"
method: POST
path: "/v1/interactions/{interactionsId}:cancel"
tags: ["interactions"]
---

# POST /v1/interactions/{interactionsId}:cancel

`POST /v1/interactions/{interactionsId}:cancel`

## Request

- Base URL: `https://aiplatform.googleapis.com`
- URL: `https://aiplatform.googleapis.com/v1/interactions/{interactionsId}:cancel`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/cloud-platform`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/cloud-platform`
- TypeScript: <https://skmtc.dev/google/apis/aiplatform/docs/v1/interactions/:interactionsId:cancel/post.ts> (a function with typed inputs; its response is checked against the schema)

Cancels an interaction.

## Path parameters

- `interactionsId` string, required

## Response `200`

Successful response

- GenaiVertexV1Interaction: Response for InteractionService.CreateInteraction.
  - `agentInteraction` GenaiVertexV1AgentInteraction: Interaction for generating the completion using agents.
    - `agent` string: The name of the `Agent` used for generating the completion.
    - `antigravityConfig` GenaiVertexV1AntigravityAgentConfig: Configuration for the Antigravity agent runtime. Provides server-side control over the agent's execution environment and tool configuration.
      - `maxTotalTokens` string, int64: Max total tokens for the agent run.
      - `model` string: The model to use for agent reasoning.
    - `codeMenderConfig` GenaiVertexV1CodeMenderAgentConfig: Configuration for the CodeMender agent.
      - `findRequest` GenaiVertexV1CodeMenderAgentConfigFindRequest: Request parameters specific to FIND sessions, used for discovering vulnerabilities in a codebase.
        - `description` string: Additional context or custom instructions provided by the user to guide the vulnerability analysis.
        - `findingId` string: The identifier of a specific finding to verify. This is primarily used in VERIFY mode to focus the agent's execution-based validation on a single vulnerability.
        - `mode` 'MODE_UNSPECIFIED' | 'MODE_SCAN' | 'MODE_VERIFY': The mode of the find session.
        - `sourceFiles` GenaiVertexV1CodeMenderAgentConfigFileContent[]: A list of source files to provide as context for the scan.
          - `content` string: The UTF-8 encoded text content of the file.
          - `path` string: The relative path of the file from the project root.
      - `fixRequest` GenaiVertexV1CodeMenderAgentConfigFixRequest: Request parameters specific to FIX sessions, used for generating and validating security patches.
        - `description` string: Additional context or custom instructions provided by the user to guide the patch generation process.
        - `findingId` string: The identifier of the specific security finding to be remediated. This ID maps to a previously discovered vulnerability.
        - `sourceFiles` GenaiVertexV1CodeMenderAgentConfigFileContent[]: A list of source files providing context for the remediation. These files are typically the ones containing the identified vulnerability.
          - `content` string: The UTF-8 encoded text content of the file.
          - `path` string: The relative path of the file from the project root.
      - `model` string: The name of the model to use for the CodeMender agent. One CodeMender session will only use one model.
      - `sessionConfig` GenaiVertexV1CodeMenderAgentConfigSessionConfig: The configuration of CodeMender sessions.
        - `maxRounds` integer: The maximum number of interaction rounds the agent is allowed to perform before reaching a timeout.
      - `sessionId` string: Parameter for grouping multiple interactions that belong to the same CodeMender session.
    - `deepResearchConfig` GenaiVertexV1DeepResearchAgentConfig: Configuration for the Deep Research agent.
      - `collaborativePlanning` boolean: Enables human-in-the-loop planning for the Deep Research agent. If set to true, the Deep Research agent will provide a research plan in its response. The agent will then proceed only if the user confirms the plan in the next turn.
      - `enableBigqueryTool` boolean: Enables bigquery tool for the Deep Research agent.
      - `thinkingSummaries` 'THINKING_SUMMARIES_UNSPECIFIED' | 'THINKING_SUMMARIES_AUTO' | 'THINKING_SUMMARIES_NONE': Whether to include thought summaries in the response.
      - `visualization` 'UNSPECIFIED' | 'OFF' | 'AUTO': Whether to include visualizations in the response.
    - `dynamicConfig` GenaiVertexV1DynamicAgentConfig: Configuration for dynamic agents.
      - `config` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
        - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
          - `name` string
          - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
            - `boolValue` boolean: Represents a boolean value.
            - `contentValue` GenaiVertexV1Content: The content of the response.
              - …
            - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
              - …
            - `nullValue` 'NULL_VALUE': Represents a null value.
            - `numberValue` number, double: Represents a double value.
            - `stringValue` string: Represents a string value.
            - `structValue` GenaiVertexV1Struct (recursive)
  - `content` GenaiVertexV1Content: The content of the response.
    - `audio` GenaiVertexV1AudioContent: An audio content block.
      - `channels` integer: The number of audio channels.
      - `data` string, byte: The audio content.
      - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
      - `sampleRate` integer: The sample rate of the audio.
      - `uri` string: The URI of the audio.
    - `document` GenaiVertexV1DocumentContent: A document content block.
      - `data` string, byte: The document content.
      - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
      - `uri` string: The URI of the document.
    - `image` GenaiVertexV1ImageContent: An image content block.
      - `data` string, byte: The image content.
      - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
      - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
      - `uri` string: The URI of the image.
    - `text` GenaiVertexV1TextContent: A text content block.
      - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
        - `endIndex` integer: End of the attributed segment, exclusive.
        - `fileCitation` GenaiVertexV1FileCitation: A file citation annotation.
          - `customMetadata` object: User provided metadata about the retrieved context.
          - `documentUri` string: The URI of the file.
          - `fileName` string: The name of the file.
          - `mediaId` string: Media ID in-case of image citations, if applicable.
          - `pageNumber` integer: Page number of the cited document, if applicable.
          - `source` string: Source attributed for a portion of the text.
        - `placeCitation` GenaiVertexV1PlaceCitation: A place citation annotation.
          - `name` string: Title of the place.
          - `placeId` string: The ID of the place, in `places/{place_id}` format.
          - `reviewSnippets` GenaiVertexV1ReviewSnippet[]: Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.
            - `reviewId` string: The ID of the review snippet.
            - `title` string: Title of the review.
            - `url` string: A link that corresponds to the user review on Google Maps.
          - `url` string: URI reference of the place.
        - `speechMetadata` GenaiVertexV1SpeechAnnotation: Speech annotation for text content.
          - `speaker` string: The speaker to associate with this turn.
          - `style` string: Style instruction for the speech synthesis.
        - `startIndex` integer: Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.
        - `urlCitation` GenaiVertexV1UrlCitation: A URL citation annotation.
          - `title` string: The title of the URL.
          - `url` string: The URL.
        - `wordInfo` GenaiVertexV1WordInfo: Word-level ASR annotation for transcription output. Carries the word text, optional timing, and optional speaker attribution.
          - `endOffset` string, google-duration: End offset in time of the word relative to the start of the audio. Present when timestamp_granularities contains "word".
          - `speaker` string: Optional. Speaker label for this word (e.g. "spk_1", "spk_2"). Present when diarization_mode is set in TranscriptionConfig.
          - `startOffset` string, google-duration: Start offset in time of the word relative to the start of the audio. Present when timestamp_granularities contains "word".
          - `text` string: The transcribed word.
      - `text` string: Required. The text content.
    - `video` GenaiVertexV1VideoContent: A video content block.
      - `data` string, byte: The video content.
      - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
      - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
      - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
        - `static` GenaiVertexV1VideoContentStaticMediaProcessing
          - `endOffset` string, google-duration: Optional. Segment end time. Specified as a decimal number of seconds followed by an 's' suffix, e.g., "30s". Must be non-negative and greater than `start_offset` if `start_offset` is set.
          - `fps` number, double: Optional. Video frame-rate sampling density.
          - `startOffset` string, google-duration: Optional. Segment start time. Specified as a decimal number of seconds followed by an 's' suffix, e.g., "10.5s". Must be non-negative.
      - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
      - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
      - `uri` string: The URI of the video.
  - `created` string: Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
  - `envId` string: The environment ID for the interaction. Can be 'remote' for default environment.
  - `environmentId` string: Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
  - `errors` GenaiVertexV1Error[]: Output only. Diagnostic faults / platform errors recorded on the interaction.
    - `code` string: A URI that identifies the error type.
    - `message` string: A human-readable error message.
  - `id` string: Required. Output only. A unique identifier for the interaction completion.
  - `labels` object: The labels with user-defined metadata for the request. Label keys and values can be no longer than 63 characters (Unicode codepoints) and can only contain lowercase letters, numeric characters, underscores, and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter.
  - `modelInteraction` GenaiVertexV1ModelInteraction: Interaction for generating the completion using models.
    - `generationConfig` GenaiVertexV1GenerationConfig: Configuration parameters for model interactions.
      - `maxOutputTokens` integer: The maximum number of tokens to include in the response.
      - `seed` integer: Seed used in decoding for reproducibility.
      - `stopSequences` string[]: A list of character sequences that will stop output interaction.
      - `structuredSpeechConfig` GenaiVertexV1SpeakerConfig: Configuration for multi-speaker and speech generation.
        - `speakers` GenaiVertexV1SpeechConfig[]: Individual speaker configurations.
          - `language` string: The language of the speech.
          - `speaker` string: The speaker's name, it should match the speaker name given in the prompt.
          - `voice` string: The voice of the speaker.
      - `temperature` number, float: Controls the randomness of the output.
      - `thinkingLevel` 'THINKING_LEVEL_UNSPECIFIED' | 'THINKING_LEVEL_MINIMAL' | 'THINKING_LEVEL_LOW' | 'THINKING_LEVEL_MEDIUM' | 'THINKING_LEVEL_HIGH': The level of thought tokens that the model should generate.
      - `thinkingSummaries` 'THINKING_SUMMARIES_UNSPECIFIED' | 'THINKING_SUMMARIES_AUTO' | 'THINKING_SUMMARIES_NONE': Whether to include thought summaries in the response.
      - `toolChoiceConfig` GenaiVertexV1ToolChoiceConfig: The tool choice configuration containing allowed tools.
        - `allowedTools` GenaiVertexV1AllowedTools: The configuration for allowed tools.
          - `mode` 'TOOL_CHOICE_TYPE_UNSPECIFIED' | 'AUTO' | 'ANY' | 'NONE' | 'VALIDATED': The mode of the tool choice.
          - `tools` string[]: The names of the allowed tools.
      - `toolChoiceMode` 'TOOL_CHOICE_TYPE_UNSPECIFIED' | 'AUTO' | 'ANY' | 'NONE' | 'VALIDATED': The mode of the tool choice.
      - `topP` number, float: The maximum cumulative probability of tokens to consider when sampling.
      - `transcriptionConfig` GenaiVertexV1TranscriptionConfig: Configuration for speech recognition (transcription).
        - `adaptationPhrases` string[]: Optional. A list of phrases to bias the ASR model towards.
        - `customVocabulary` string[]: Optional. A list of custom vocabulary phrases to bias the speech recognition model toward recognizing specific terms.
        - `diarizationMode` string: Optional. Configures speaker diarization. Supported values: "speaker".
        - `languageCodes` string[]: Optional. BCP-47 language codes providing hints about the languages present in the audio. If omitted or empty, defaults to automatic language detection.
        - `timestampGranularities` string[]: Optional. The granularity of timestamps to include in the transcription output. Supported values: "word". If empty, no timestamps are generated.
      - `videoConfig` GenaiVertexV1VideoConfig: Configuration options for video generation.
        - `task` 'TASK_UNSPECIFIED' | 'TEXT_TO_VIDEO' | 'IMAGE_TO_VIDEO' | 'REFERENCE_TO_VIDEO' | 'EDIT' | 'EXTEND' | 'UPSCALE': Optional task mode for video generation. If not specified, the model automatically determines the appropriate mode based on the provided text prompt and input media.
    - `model` string: The name of the `Model` used for generating the completion.
  - `previousInteractionId` string: The ID of the previous interaction, if any.
  - `responseFormatList` GenaiVertexV1ResponseFormatList
    - `responseFormats` GenaiVertexV1ResponseFormat[]
      - `audio` GenaiVertexV1AudioResponseFormat: Configuration for audio output format.
        - `bitRate` integer: Bit rate in bits per second (bps). Only applicable for compressed formats (MP3, Opus).
        - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the audio output.
        - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_MP3' | 'TYPE_OGG_OPUS' | 'TYPE_L16' | 'TYPE_WAV' | 'TYPE_ALAW' | 'TYPE_MULAW': The MIME type of the audio output.
        - `sampleRate` integer: Sample rate in Hz.
      - `image` GenaiVertexV1ImageResponseFormat: Configuration for image output format.
        - `aspectRatio` 'ASPECT_RATIO_UNSPECIFIED' | 'ASPECT_RATIO_ONE_BY_ONE' | 'ASPECT_RATIO_TWO_BY_THREE' | 'ASPECT_RATIO_THREE_BY_TWO' | 'ASPECT_RATIO_THREE_BY_FOUR' | 'ASPECT_RATIO_FOUR_BY_THREE' | 'ASPECT_RATIO_FOUR_BY_FIVE' | 'ASPECT_RATIO_FIVE_BY_FOUR' | 'ASPECT_RATIO_NINE_BY_SIXTEEN' | 'ASPECT_RATIO_SIXTEEN_BY_NINE' | 'ASPECT_RATIO_TWENTY_ONE_BY_NINE' | 'ASPECT_RATIO_ONE_BY_EIGHT' | 'ASPECT_RATIO_EIGHT_BY_ONE' | 'ASPECT_RATIO_ONE_BY_FOUR' | 'ASPECT_RATIO_FOUR_BY_ONE': The aspect ratio for the image output.
        - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the image output.
        - `imageSize` 'IMAGE_SIZE_UNSPECIFIED' | 'IMAGE_SIZE_FIVE_TWELVE' | 'IMAGE_SIZE_ONE_K' | 'IMAGE_SIZE_TWO_K' | 'IMAGE_SIZE_FOUR_K': The size of the image output.
        - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_JPEG': The MIME type of the image output.
      - `structValue` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
        - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
          - `name` string
          - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
            - `boolValue` boolean: Represents a boolean value.
            - `contentValue` GenaiVertexV1Content: The content of the response.
              - …
            - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
              - …
            - `nullValue` 'NULL_VALUE': Represents a null value.
            - `numberValue` number, double: Represents a double value.
            - `stringValue` string: Represents a string value.
            - `structValue` GenaiVertexV1Struct (recursive)
      - `text` GenaiVertexV1TextResponseFormat: Configuration for text output format.
        - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_APPLICATION_JSON' | 'TYPE_TEXT_PLAIN': The MIME type of the text output.
        - `schema` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
          - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
            - `name` string
            - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
              - …
      - `video` GenaiVertexV1VideoResponseFormat: Configuration for video output format.
        - `aspectRatio` 'ASPECT_RATIO_UNSPECIFIED' | 'ASPECT_RATIO_SIXTEEN_BY_NINE' | 'ASPECT_RATIO_NINE_BY_SIXTEEN': The aspect ratio for the video output.
        - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the video output.
        - `duration` string, google-duration: The duration for the video output.
        - `gcsUri` string: The Cloud Storage URI to store the video output. Required for Vertex if delivery mode is URI.
        - `resolution` 'RESOLUTION_UNSPECIFIED' | 'RESOLUTION_THREE_SIXTY_P' | 'RESOLUTION_SEVEN_TWENTY_P' | 'RESOLUTION_TEN_EIGHTY_P' | 'RESOLUTION_FOUR_K': The video output resolution. Defaults to 720p.
  - `responseFormatSingleton` GenaiVertexV1ResponseFormat
    - `audio` GenaiVertexV1AudioResponseFormat: Configuration for audio output format.
      - `bitRate` integer: Bit rate in bits per second (bps). Only applicable for compressed formats (MP3, Opus).
      - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the audio output.
      - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_MP3' | 'TYPE_OGG_OPUS' | 'TYPE_L16' | 'TYPE_WAV' | 'TYPE_ALAW' | 'TYPE_MULAW': The MIME type of the audio output.
      - `sampleRate` integer: Sample rate in Hz.
    - `image` GenaiVertexV1ImageResponseFormat: Configuration for image output format.
      - `aspectRatio` 'ASPECT_RATIO_UNSPECIFIED' | 'ASPECT_RATIO_ONE_BY_ONE' | 'ASPECT_RATIO_TWO_BY_THREE' | 'ASPECT_RATIO_THREE_BY_TWO' | 'ASPECT_RATIO_THREE_BY_FOUR' | 'ASPECT_RATIO_FOUR_BY_THREE' | 'ASPECT_RATIO_FOUR_BY_FIVE' | 'ASPECT_RATIO_FIVE_BY_FOUR' | 'ASPECT_RATIO_NINE_BY_SIXTEEN' | 'ASPECT_RATIO_SIXTEEN_BY_NINE' | 'ASPECT_RATIO_TWENTY_ONE_BY_NINE' | 'ASPECT_RATIO_ONE_BY_EIGHT' | 'ASPECT_RATIO_EIGHT_BY_ONE' | 'ASPECT_RATIO_ONE_BY_FOUR' | 'ASPECT_RATIO_FOUR_BY_ONE': The aspect ratio for the image output.
      - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the image output.
      - `imageSize` 'IMAGE_SIZE_UNSPECIFIED' | 'IMAGE_SIZE_FIVE_TWELVE' | 'IMAGE_SIZE_ONE_K' | 'IMAGE_SIZE_TWO_K' | 'IMAGE_SIZE_FOUR_K': The size of the image output.
      - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_JPEG': The MIME type of the image output.
    - `structValue` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
      - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
        - `name` string
        - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
          - `boolValue` boolean: Represents a boolean value.
          - `contentValue` GenaiVertexV1Content: The content of the response.
            - `audio` GenaiVertexV1AudioContent: An audio content block.
              - …
            - `document` GenaiVertexV1DocumentContent: A document content block.
              - …
            - `image` GenaiVertexV1ImageContent: An image content block.
              - …
            - `text` GenaiVertexV1TextContent: A text content block.
              - …
            - `video` GenaiVertexV1VideoContent: A video content block.
              - …
          - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
            - `values` GenaiVertexV1Value[]: Repeated field of dynamically typed values.
          - `nullValue` 'NULL_VALUE': Represents a null value.
          - `numberValue` number, double: Represents a double value.
          - `stringValue` string: Represents a string value.
          - `structValue` GenaiVertexV1Struct (recursive)
    - `text` GenaiVertexV1TextResponseFormat: Configuration for text output format.
      - `mimeType` 'TYPE_UNSPECIFIED' | 'TYPE_APPLICATION_JSON' | 'TYPE_TEXT_PLAIN': The MIME type of the text output.
      - `schema` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
        - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
          - `name` string
          - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
            - `boolValue` boolean: Represents a boolean value.
            - `contentValue` GenaiVertexV1Content: The content of the response.
              - …
            - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
              - …
            - `nullValue` 'NULL_VALUE': Represents a null value.
            - `numberValue` number, double: Represents a double value.
            - `stringValue` string: Represents a string value.
            - `structValue` GenaiVertexV1Struct (recursive)
    - `video` GenaiVertexV1VideoResponseFormat: Configuration for video output format.
      - `aspectRatio` 'ASPECT_RATIO_UNSPECIFIED' | 'ASPECT_RATIO_SIXTEEN_BY_NINE' | 'ASPECT_RATIO_NINE_BY_SIXTEEN': The aspect ratio for the video output.
      - `delivery` 'DELIVERY_UNSPECIFIED' | 'INLINE' | 'URI': The delivery mode for the video output.
      - `duration` string, google-duration: The duration for the video output.
      - `gcsUri` string: The Cloud Storage URI to store the video output. Required for Vertex if delivery mode is URI.
      - `resolution` 'RESOLUTION_UNSPECIFIED' | 'RESOLUTION_THREE_SIXTY_P' | 'RESOLUTION_SEVEN_TWENTY_P' | 'RESOLUTION_TEN_EIGHTY_P' | 'RESOLUTION_FOUR_K': The video output resolution. Defaults to 720p.
  - `safetySettings` GenaiVertexV1SafetySetting[]: Safety settings for the interaction.
    - `method` 'HARM_BLOCK_METHOD_UNSPECIFIED' | 'SEVERITY' | 'PROBABILITY': Optional. The method for blocking content. If not specified, the default behavior is to use the probability score.
    - `threshold` 'HARM_BLOCK_THRESHOLD_UNSPECIFIED' | 'BLOCK_LOW_AND_ABOVE' | 'BLOCK_MEDIUM_AND_ABOVE' | 'BLOCK_ONLY_HIGH' | 'BLOCK_NONE' | 'OFF': Required. The threshold for blocking content. If the harm probability exceeds this threshold, the content will be blocked.
    - `type` 'HARM_CATEGORY_UNSPECIFIED' | 'HARM_CATEGORY_HATE_SPEECH' | 'HARM_CATEGORY_DANGEROUS_CONTENT' | 'HARM_CATEGORY_HARASSMENT' | 'HARM_CATEGORY_SEXUALLY_EXPLICIT' | 'HARM_CATEGORY_CIVIC_INTEGRITY' | 'HARM_CATEGORY_IMAGE_HATE' | 'HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT' | 'HARM_CATEGORY_IMAGE_HARASSMENT' | 'HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT' | 'HARM_CATEGORY_JAILBREAK': Required. The type of harm category to be blocked.
  - `serviceTier` 'SERVICE_TIER_UNSPECIFIED' | 'SERVICE_TIER_FLEX' | 'SERVICE_TIER_STANDARD' | 'SERVICE_TIER_PRIORITY' | 'SERVICE_TIER_DEFERRED': The service tier for the interaction.
  - `status` 'UNSPECIFIED' | 'IN_PROGRESS' | 'REQUIRES_ACTION' | 'COMPLETED' | 'FAILED' | 'CANCELLED' | 'INCOMPLETE' | 'QUEUED' | 'REQUIRES_CONTINUATION': Required. Output only. The status of the interaction.
  - `stepList` GenaiVertexV1StepList: A list of Steps.
    - `steps` GenaiVertexV1Step[]: The steps of the list.
      - `modelOutput` GenaiVertexV1ModelOutputStep: Output generated by the model.
        - `content` GenaiVertexV1Content[]
          - `audio` GenaiVertexV1AudioContent: An audio content block.
            - `channels` integer: The number of audio channels.
            - `data` string, byte: The audio content.
            - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `sampleRate` integer: The sample rate of the audio.
            - `uri` string: The URI of the audio.
          - `document` GenaiVertexV1DocumentContent: A document content block.
            - `data` string, byte: The document content.
            - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `uri` string: The URI of the document.
          - `image` GenaiVertexV1ImageContent: An image content block.
            - `data` string, byte: The image content.
            - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the image.
          - `text` GenaiVertexV1TextContent: A text content block.
            - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
              - …
            - `text` string: Required. The text content.
          - `video` GenaiVertexV1VideoContent: A video content block.
            - `data` string, byte: The video content.
            - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
            - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
              - …
            - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the video.
        - `error` GoogleRpcStatus: The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
          - `code` integer: The status code, which should be an enum value of google.rpc.Code.
          - `details` object[]: A list of messages that carry the error details. There is a common set of message types for APIs to use.
          - `message` string: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      - `thought` GenaiVertexV1ThoughtStep: A thought step.
        - `signature` string, byte: A signature hash for backend validation.
        - `summary` GenaiVertexV1Content[]: A summary of the thought.
          - `audio` GenaiVertexV1AudioContent: An audio content block.
            - `channels` integer: The number of audio channels.
            - `data` string, byte: The audio content.
            - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `sampleRate` integer: The sample rate of the audio.
            - `uri` string: The URI of the audio.
          - `document` GenaiVertexV1DocumentContent: A document content block.
            - `data` string, byte: The document content.
            - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `uri` string: The URI of the document.
          - `image` GenaiVertexV1ImageContent: An image content block.
            - `data` string, byte: The image content.
            - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the image.
          - `text` GenaiVertexV1TextContent: A text content block.
            - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
              - …
            - `text` string: Required. The text content.
          - `video` GenaiVertexV1VideoContent: A video content block.
            - `data` string, byte: The video content.
            - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
            - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
              - …
            - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the video.
      - `toolCall` GenaiVertexV1ToolCallStep: Tool call step.
        - `codeExecutionCall` GenaiVertexV1CodeExecutionCallStep: Code execution call step.
          - `arguments` GenaiVertexV1CodeExecutionCallStepCodeExecutionCallStepArguments: The arguments to pass to the code execution.
            - `code` string: The code to be executed.
            - `language` 'LANGUAGE_UNSPECIFIED' | 'PYTHON' | 'BASH': Programming language of the `code`.
        - `fileSearchCall` GenaiVertexV1FileSearchCallStep: File Search call step.
        - `functionCall` GenaiVertexV1FunctionCallStep: A function tool call step.
          - `arguments` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
            - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
              - …
          - `name` string: Required. The name of the tool to call.
        - `googleMapsCall` GenaiVertexV1GoogleMapsCallStep: Google Maps call step.
          - `arguments` GenaiVertexV1GoogleMapsCallStepGoogleMapsCallStepArguments: The arguments to pass to the Google Maps tool.
            - `queries` string[]: The queries to be executed.
        - `googleSearchCall` GenaiVertexV1GoogleSearchCallStep: Google Search call step.
          - `arguments` GenaiVertexV1GoogleSearchCallStepGoogleSearchCallStepArguments: The arguments to pass to Google Search.
            - `queries` string[]: Web search queries for the following-up web search.
          - `searchType` 'SEARCH_TYPE_UNSPECIFIED' | 'SEARCH_TYPE_WEB_SEARCH' | 'SEARCH_TYPE_IMAGE_SEARCH' | 'SEARCH_TYPE_ENTERPRISE_WEB_SEARCH': The type of search grounding enabled.
        - `id` string: Required. A unique ID for this specific tool call.
        - `processingCall` GenaiVertexV1ProcessingCallStep: A server-initiated processing step for media analysis (e.g. video understanding).
        - `retrievalCall` GenaiVertexV1RetrievalCallStep: Retrieval call step. Used by Vertex Retrieval tools such as Parallel AI, Exa AI, Vertex AI Search, etc. RetrievalType decides which tool is used.
          - `arguments` GenaiVertexV1RetrievalCallStepRetrievalStepArguments: The arguments to pass to Retrieval tools.
            - `queries` string[]: Queries for Retrieval information.
          - `retrievalType` 'RETRIEVAL_TYPE_UNSPECIFIED' | 'RETRIEVAL_TYPE_VERTEX_AI_SEARCH' | 'RETRIEVAL_TYPE_RAG_STORE' | 'RETRIEVAL_TYPE_EXA_AI_SEARCH' | 'RETRIEVAL_TYPE_PARALLEL_AI_SEARCH': The type of retrieval tools.
        - `signature` string, byte: A signature hash for backend validation.
        - `urlContextCall` GenaiVertexV1UrlContextCallStep: URL context call step.
          - `arguments` GenaiVertexV1UrlContextCallStepUrlContextCallStepArguments: The arguments to pass to the URL context.
            - `urls` string[]: The URLs to fetch.
      - `toolResult` GenaiVertexV1ToolResultStep: Tool result step.
        - `callId` string: Required. ID to match the ID from the function call block.
        - `codeExecutionResult` GenaiVertexV1CodeExecutionResultStep: Code execution result step.
          - `isError` boolean: Whether the code execution resulted in an error.
          - `result` string: Required. The output of the code execution.
        - `fileSearchResult` GenaiVertexV1FileSearchResultStep: File Search result step.
        - `functionResult` GenaiVertexV1FunctionResultStep: Result of a function tool call.
          - `isError` boolean: Whether the tool call resulted in an error.
          - `name` string: The name of the tool that was called.
          - `result` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
            - `boolValue` boolean: Represents a boolean value.
            - `contentValue` GenaiVertexV1Content: The content of the response.
              - …
            - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
              - …
            - `nullValue` 'NULL_VALUE': Represents a null value.
            - `numberValue` number, double: Represents a double value.
            - `stringValue` string: Represents a string value.
            - `structValue` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
              - …
        - `googleMapsResult` GenaiVertexV1GoogleMapsResultStep: Google Maps result step.
          - `result` GenaiVertexV1GoogleMapsResultStepGoogleMapsResultItem[]
            - `places` GenaiVertexV1GoogleMapsResultStepGoogleMapsResultItemGoogleMapsResultPlaces[]
              - …
            - `widgetContextToken` string
        - `googleSearchResult` GenaiVertexV1GoogleSearchResultStep: Google Search result step.
          - `isError` boolean: Whether the Google Search resulted in an error.
          - `result` GenaiVertexV1GoogleSearchResultStepGoogleSearchResultItem[]: Required. The results of the Google Search.
            - `searchSuggestions` string: Web content snippet that can be embedded in a web page or an app webview.
        - `processingResult` GenaiVertexV1ProcessingResultStep: The result of a server-initiated media processing step.
        - `retrievalResult` GenaiVertexV1RetrievalResultStep: Vertex Retrieval result step. Used by Vertex Retrieval tools such as Parallel AI, Exa AI, Vertex AI Search, etc.
          - `isError` boolean: Whether the retrieval resulted in an error.
        - `signature` string, byte: A signature hash for backend validation.
        - `urlContextResult` GenaiVertexV1UrlContextResultStep: URL context result step.
          - `isError` boolean: Whether the URL context resulted in an error.
          - `result` GenaiVertexV1UrlContextResultStepUrlContextResultItem[]: Required. The results of the URL context.
            - `status` 'STATUS_UNSPECIFIED' | 'SUCCESS' | 'ERROR' | 'PAYWALL' | 'UNSAFE': The status of the URL retrieval.
            - `url` string: The URL that was fetched.
      - `userInput` GenaiVertexV1UserInputStep: Input provided by the user.
        - `contentList` GenaiVertexV1ContentList: A list of Content.
          - `contents` GenaiVertexV1Content[]: The contents of the list.
            - `audio` GenaiVertexV1AudioContent: An audio content block.
              - …
            - `document` GenaiVertexV1DocumentContent: A document content block.
              - …
            - `image` GenaiVertexV1ImageContent: An image content block.
              - …
            - `text` GenaiVertexV1TextContent: A text content block.
              - …
            - `video` GenaiVertexV1VideoContent: A video content block.
              - …
        - `contentString` string: The content of the step. A single string.
  - `steps` GenaiVertexV1Step[]: Required. Output only. The steps that make up the interaction, when included in the response.
    - `modelOutput` GenaiVertexV1ModelOutputStep: Output generated by the model.
      - `content` GenaiVertexV1Content[]
        - `audio` GenaiVertexV1AudioContent: An audio content block.
          - `channels` integer: The number of audio channels.
          - `data` string, byte: The audio content.
          - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `sampleRate` integer: The sample rate of the audio.
          - `uri` string: The URI of the audio.
        - `document` GenaiVertexV1DocumentContent: A document content block.
          - `data` string, byte: The document content.
          - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `uri` string: The URI of the document.
        - `image` GenaiVertexV1ImageContent: An image content block.
          - `data` string, byte: The image content.
          - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
          - `uri` string: The URI of the image.
        - `text` GenaiVertexV1TextContent: A text content block.
          - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
            - `endIndex` integer: End of the attributed segment, exclusive.
            - `fileCitation` GenaiVertexV1FileCitation: A file citation annotation.
              - …
            - `placeCitation` GenaiVertexV1PlaceCitation: A place citation annotation.
              - …
            - `speechMetadata` GenaiVertexV1SpeechAnnotation: Speech annotation for text content.
              - …
            - `startIndex` integer: Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.
            - `urlCitation` GenaiVertexV1UrlCitation: A URL citation annotation.
              - …
            - `wordInfo` GenaiVertexV1WordInfo: Word-level ASR annotation for transcription output. Carries the word text, optional timing, and optional speaker attribution.
              - …
          - `text` string: Required. The text content.
        - `video` GenaiVertexV1VideoContent: A video content block.
          - `data` string, byte: The video content.
          - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
          - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
            - `static` GenaiVertexV1VideoContentStaticMediaProcessing
              - …
          - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
          - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
          - `uri` string: The URI of the video.
      - `error` GoogleRpcStatus: The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
        - `code` integer: The status code, which should be an enum value of google.rpc.Code.
        - `details` object[]: A list of messages that carry the error details. There is a common set of message types for APIs to use.
        - `message` string: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    - `thought` GenaiVertexV1ThoughtStep: A thought step.
      - `signature` string, byte: A signature hash for backend validation.
      - `summary` GenaiVertexV1Content[]: A summary of the thought.
        - `audio` GenaiVertexV1AudioContent: An audio content block.
          - `channels` integer: The number of audio channels.
          - `data` string, byte: The audio content.
          - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `sampleRate` integer: The sample rate of the audio.
          - `uri` string: The URI of the audio.
        - `document` GenaiVertexV1DocumentContent: A document content block.
          - `data` string, byte: The document content.
          - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `uri` string: The URI of the document.
        - `image` GenaiVertexV1ImageContent: An image content block.
          - `data` string, byte: The image content.
          - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
          - `uri` string: The URI of the image.
        - `text` GenaiVertexV1TextContent: A text content block.
          - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
            - `endIndex` integer: End of the attributed segment, exclusive.
            - `fileCitation` GenaiVertexV1FileCitation: A file citation annotation.
              - …
            - `placeCitation` GenaiVertexV1PlaceCitation: A place citation annotation.
              - …
            - `speechMetadata` GenaiVertexV1SpeechAnnotation: Speech annotation for text content.
              - …
            - `startIndex` integer: Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.
            - `urlCitation` GenaiVertexV1UrlCitation: A URL citation annotation.
              - …
            - `wordInfo` GenaiVertexV1WordInfo: Word-level ASR annotation for transcription output. Carries the word text, optional timing, and optional speaker attribution.
              - …
          - `text` string: Required. The text content.
        - `video` GenaiVertexV1VideoContent: A video content block.
          - `data` string, byte: The video content.
          - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
          - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
          - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
            - `static` GenaiVertexV1VideoContentStaticMediaProcessing
              - …
          - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
          - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
          - `uri` string: The URI of the video.
    - `toolCall` GenaiVertexV1ToolCallStep: Tool call step.
      - `codeExecutionCall` GenaiVertexV1CodeExecutionCallStep: Code execution call step.
        - `arguments` GenaiVertexV1CodeExecutionCallStepCodeExecutionCallStepArguments: The arguments to pass to the code execution.
          - `code` string: The code to be executed.
          - `language` 'LANGUAGE_UNSPECIFIED' | 'PYTHON' | 'BASH': Programming language of the `code`.
      - `fileSearchCall` GenaiVertexV1FileSearchCallStep: File Search call step.
      - `functionCall` GenaiVertexV1FunctionCallStep: A function tool call step.
        - `arguments` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
          - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
            - `name` string
            - `value` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
              - …
        - `name` string: Required. The name of the tool to call.
      - `googleMapsCall` GenaiVertexV1GoogleMapsCallStep: Google Maps call step.
        - `arguments` GenaiVertexV1GoogleMapsCallStepGoogleMapsCallStepArguments: The arguments to pass to the Google Maps tool.
          - `queries` string[]: The queries to be executed.
      - `googleSearchCall` GenaiVertexV1GoogleSearchCallStep: Google Search call step.
        - `arguments` GenaiVertexV1GoogleSearchCallStepGoogleSearchCallStepArguments: The arguments to pass to Google Search.
          - `queries` string[]: Web search queries for the following-up web search.
        - `searchType` 'SEARCH_TYPE_UNSPECIFIED' | 'SEARCH_TYPE_WEB_SEARCH' | 'SEARCH_TYPE_IMAGE_SEARCH' | 'SEARCH_TYPE_ENTERPRISE_WEB_SEARCH': The type of search grounding enabled.
      - `id` string: Required. A unique ID for this specific tool call.
      - `processingCall` GenaiVertexV1ProcessingCallStep: A server-initiated processing step for media analysis (e.g. video understanding).
      - `retrievalCall` GenaiVertexV1RetrievalCallStep: Retrieval call step. Used by Vertex Retrieval tools such as Parallel AI, Exa AI, Vertex AI Search, etc. RetrievalType decides which tool is used.
        - `arguments` GenaiVertexV1RetrievalCallStepRetrievalStepArguments: The arguments to pass to Retrieval tools.
          - `queries` string[]: Queries for Retrieval information.
        - `retrievalType` 'RETRIEVAL_TYPE_UNSPECIFIED' | 'RETRIEVAL_TYPE_VERTEX_AI_SEARCH' | 'RETRIEVAL_TYPE_RAG_STORE' | 'RETRIEVAL_TYPE_EXA_AI_SEARCH' | 'RETRIEVAL_TYPE_PARALLEL_AI_SEARCH': The type of retrieval tools.
      - `signature` string, byte: A signature hash for backend validation.
      - `urlContextCall` GenaiVertexV1UrlContextCallStep: URL context call step.
        - `arguments` GenaiVertexV1UrlContextCallStepUrlContextCallStepArguments: The arguments to pass to the URL context.
          - `urls` string[]: The URLs to fetch.
    - `toolResult` GenaiVertexV1ToolResultStep: Tool result step.
      - `callId` string: Required. ID to match the ID from the function call block.
      - `codeExecutionResult` GenaiVertexV1CodeExecutionResultStep: Code execution result step.
        - `isError` boolean: Whether the code execution resulted in an error.
        - `result` string: Required. The output of the code execution.
      - `fileSearchResult` GenaiVertexV1FileSearchResultStep: File Search result step.
      - `functionResult` GenaiVertexV1FunctionResultStep: Result of a function tool call.
        - `isError` boolean: Whether the tool call resulted in an error.
        - `name` string: The name of the tool that was called.
        - `result` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
          - `boolValue` boolean: Represents a boolean value.
          - `contentValue` GenaiVertexV1Content: The content of the response.
            - `audio` GenaiVertexV1AudioContent: An audio content block.
              - …
            - `document` GenaiVertexV1DocumentContent: A document content block.
              - …
            - `image` GenaiVertexV1ImageContent: An image content block.
              - …
            - `text` GenaiVertexV1TextContent: A text content block.
              - …
            - `video` GenaiVertexV1VideoContent: A video content block.
              - …
          - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
            - `values` GenaiVertexV1Value[]: Repeated field of dynamically typed values.
          - `nullValue` 'NULL_VALUE': Represents a null value.
          - `numberValue` number, double: Represents a double value.
          - `stringValue` string: Represents a string value.
          - `structValue` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
            - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
              - …
      - `googleMapsResult` GenaiVertexV1GoogleMapsResultStep: Google Maps result step.
        - `result` GenaiVertexV1GoogleMapsResultStepGoogleMapsResultItem[]
          - `places` GenaiVertexV1GoogleMapsResultStepGoogleMapsResultItemGoogleMapsResultPlaces[]
            - `name` string
            - `placeId` string
            - `reviewSnippets` GenaiVertexV1ReviewSnippet[]
              - …
            - `url` string
          - `widgetContextToken` string
      - `googleSearchResult` GenaiVertexV1GoogleSearchResultStep: Google Search result step.
        - `isError` boolean: Whether the Google Search resulted in an error.
        - `result` GenaiVertexV1GoogleSearchResultStepGoogleSearchResultItem[]: Required. The results of the Google Search.
          - `searchSuggestions` string: Web content snippet that can be embedded in a web page or an app webview.
      - `processingResult` GenaiVertexV1ProcessingResultStep: The result of a server-initiated media processing step.
      - `retrievalResult` GenaiVertexV1RetrievalResultStep: Vertex Retrieval result step. Used by Vertex Retrieval tools such as Parallel AI, Exa AI, Vertex AI Search, etc.
        - `isError` boolean: Whether the retrieval resulted in an error.
      - `signature` string, byte: A signature hash for backend validation.
      - `urlContextResult` GenaiVertexV1UrlContextResultStep: URL context result step.
        - `isError` boolean: Whether the URL context resulted in an error.
        - `result` GenaiVertexV1UrlContextResultStepUrlContextResultItem[]: Required. The results of the URL context.
          - `status` 'STATUS_UNSPECIFIED' | 'SUCCESS' | 'ERROR' | 'PAYWALL' | 'UNSAFE': The status of the URL retrieval.
          - `url` string: The URL that was fetched.
    - `userInput` GenaiVertexV1UserInputStep: Input provided by the user.
      - `contentList` GenaiVertexV1ContentList: A list of Content.
        - `contents` GenaiVertexV1Content[]: The contents of the list.
          - `audio` GenaiVertexV1AudioContent: An audio content block.
            - `channels` integer: The number of audio channels.
            - `data` string, byte: The audio content.
            - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `sampleRate` integer: The sample rate of the audio.
            - `uri` string: The URI of the audio.
          - `document` GenaiVertexV1DocumentContent: A document content block.
            - `data` string, byte: The document content.
            - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `uri` string: The URI of the document.
          - `image` GenaiVertexV1ImageContent: An image content block.
            - `data` string, byte: The image content.
            - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the image.
          - `text` GenaiVertexV1TextContent: A text content block.
            - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
              - …
            - `text` string: Required. The text content.
          - `video` GenaiVertexV1VideoContent: A video content block.
            - `data` string, byte: The video content.
            - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
            - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
              - …
            - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the video.
      - `contentString` string: The content of the step. A single string.
  - `stringContent` string: A string input for the interaction, it will be processed as a single text input.
  - `systemInstruction` string: System instruction for the interaction.
  - `tools` GenaiVertexV1Tool[]: A list of tool declarations the model may call during interaction.
    - `codeExecution` GenaiVertexV1CodeExecution: A tool that can be used by the model to execute code.
    - `computerUse` GenaiVertexV1ComputerUse: A tool that can be used by the model to interact with the computer.
      - `disabledSafetyPolicies` string[]: Optional. Disabled safety policies for computer use.
      - `enablePromptInjectionDetection` boolean: Whether enable the prompt injection detection check on computer-use request.
      - `environment` 'ENVIRONMENT_UNSPECIFIED' | 'BROWSER' | 'MOBILE' | 'DESKTOP': The environment being operated.
      - `excludedPredefinedFunctions` string[]: The list of predefined functions that are excluded from the model call.
    - `fileSearch` GenaiVertexV1FileSearch: A tool that can be used by the model to search files.
      - `fileSearchStoreNames` string[]: The file search store names to search.
      - `metadataFilter` string: Metadata filter to apply to the semantic retrieval documents and chunks.
      - `topK` integer: The number of semantic retrieval chunks to retrieve.
    - `function` GenaiVertexV1Function: A tool that can be used by the model.
      - `description` string: A description of the function.
      - `name` string: The name of the function.
      - `parameters` GenaiVertexV1Value: `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.
        - `boolValue` boolean: Represents a boolean value.
        - `contentValue` GenaiVertexV1Content: The content of the response.
          - `audio` GenaiVertexV1AudioContent: An audio content block.
            - `channels` integer: The number of audio channels.
            - `data` string, byte: The audio content.
            - `mimeTypeString` string: Flexible MIME type string of the audio, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `sampleRate` integer: The sample rate of the audio.
            - `uri` string: The URI of the audio.
          - `document` GenaiVertexV1DocumentContent: A document content block.
            - `data` string, byte: The document content.
            - `mimeTypeString` string: Flexible MIME type string of the document, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `uri` string: The URI of the document.
          - `image` GenaiVertexV1ImageContent: An image content block.
            - `data` string, byte: The image content.
            - `mimeTypeString` string: Flexible MIME type string of the image, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the image.
          - `text` GenaiVertexV1TextContent: A text content block.
            - `annotations` GenaiVertexV1TextContentAnnotation[]: Citation information for model-generated content.
              - …
            - `text` string: Required. The text content.
          - `video` GenaiVertexV1VideoContent: A video content block.
            - `data` string, byte: The video content.
            - `mimeTypeString` string: Flexible MIME type string of the video, superseding mime_type = 1. Note: Bespoke logic in the GAOS parser/serializer maps this to the "mime_type" JSON key.
            - `name` string: A user-defined name for this content block. Can be referenced by the model in the final response.
            - `processingConfig` GenaiVertexV1VideoContentMediaProcessing
              - …
            - `processingType` 'PROCESSING_UNSPECIFIED' | 'STATIC' | 'AGENTIC'
            - `resolution` 'MEDIA_RESOLUTION_UNSPECIFIED' | 'LOW' | 'MEDIUM' | 'HIGH' | 'ULTRA_HIGH': The resolution of the media.
            - `uri` string: The URI of the video.
        - `listValue` GenaiVertexV1ListValue: `ListValue` is a wrapper around a repeated field of values.
          - `values` GenaiVertexV1Value[]: Repeated field of dynamically typed values.
        - `nullValue` 'NULL_VALUE': Represents a null value.
        - `numberValue` number, double: Represents a double value.
        - `stringValue` string: Represents a string value.
        - `structValue` GenaiVertexV1Struct: `Struct` represents a structured data value, consisting of fields which map to dynamically typed values.
          - `fields` GenaiVertexV1Field[]: Dynamically typed fields. List instead of map because LLMs are sensitive to ordering, and we want to give users full control.
            - `name` string
            - `value` GenaiVertexV1Value (recursive)
    - `googleMaps` GenaiVertexV1GoogleMaps: A tool that can be used by the model to call Google Maps.
      - `enableWidget` boolean: Whether to return a widget context token in the tool call result of the response.
      - `latitude` number, double: The latitude of the user's location.
      - `longitude` number, double: The longitude of the user's location.
    - `googleSearch` GenaiVertexV1GoogleSearch: A tool that can be used by the model to search Google.
      - `searchTypes` string[]: The types of search grounding to enable.
    - `mcpServer` GenaiVertexV1McpServer: A MCPServer is a server that can be called by the model to perform actions.
      - `allowedTools` GenaiVertexV1AllowedTools[]: The allowed tools.
        - `mode` 'TOOL_CHOICE_TYPE_UNSPECIFIED' | 'AUTO' | 'ANY' | 'NONE' | 'VALIDATED': The mode of the tool choice.
        - `tools` string[]: The names of the allowed tools.
      - `headers` object: Optional: Fields for authentication headers, timeouts, etc., if needed.
      - `name` string: The name of the MCPServer.
      - `url` string: The full URL for the MCPServer endpoint. Example: "https://api.example.com/mcp"
    - `retrieval` GenaiVertexV1Retrieval: A tool that can be used by the model to retrieve files.
      - `exaAiSearchConfig` GenaiVertexV1ExaAISearchConfig: Used to specify configuration for ExaAISearch.
        - `apiKey` string: Required. The API key for ExaAiSearch.
        - `customConfig` object: Optional. This field can be used to pass any parameter from the Exa.ai Search API.
      - `parallelAiSearchConfig` GenaiVertexV1ParallelAISearchConfig: Used to specify configuration for ParallelAISearch.
        - `apiKey` string: Optional. The API key for ParallelAiSearch.
        - `customConfig` object: Optional. Custom configs for ParallelAiSearch.
      - `ragStoreConfig` GenaiVertexV1RagStoreConfig: Use to specify configuration for RAG Store.
        - `ragResources` GenaiVertexV1RagStoreConfigRagResource[]: Optional. The representation of the rag source.
          - `ragCorpus` string: Optional. RagCorpora resource name.
          - `ragFileIds` string[]: Optional. rag_file_id. The files should be in the same rag_corpus set in rag_corpus field.
        - `ragRetrievalConfig` GenaiVertexV1RagStoreConfigRagRetrievalConfig: Specifies the context retrieval config.
          - `filter` GenaiVertexV1RagStoreConfigRagRetrievalConfigFilter: Config for filters.
            - `metadataFilter` string: Optional. String for metadata filtering.
            - `vectorDistanceThreshold` number, double: Optional. Only returns contexts with vector distance smaller than the threshold.
            - `vectorSimilarityThreshold` number, double: Optional. Only returns contexts with vector similarity larger than the threshold.
          - `hybridSearch` GenaiVertexV1RagStoreConfigRagRetrievalConfigHybridSearch: Config for Hybrid Search.
            - `alpha` number, float: Optional. Alpha value controls the weight between dense and sparse vector search results.
          - `ranking` GenaiVertexV1RagStoreConfigRagRetrievalConfigRanking: Config for ranking and reranking.
            - `rankService` GenaiVertexV1RagStoreConfigRagRetrievalConfigRankingRankService: Config for Rank Service.
              - …
          - `topK` integer: Optional. The number of contexts to retrieve.
      - `retrievalTypes` string[]: The types of file retrieval to enable.
      - `vertexAiSearchConfig` GenaiVertexV1VertexAISearchConfig: Used to specify configuration for VertexAISearch.
        - `datastores` string[]: Optional. Used to specify Vertex AI Search datastores.
        - `engine` string: Optional. Used to specify Vertex AI Search engine.
    - `urlContext` GenaiVertexV1UrlContext: A tool that can be used by the model to fetch URL context.
  - `updated` string: Required. Output only. The time at which the response was last updated in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
  - `usage` GenaiVertexV1InteractionUsage: Statistics on the interaction request's token usage.
    - `cachedTokensByModality` GenaiVertexV1InteractionUsageModalityTokens[]: A breakdown of cached token usage by modality.
      - `modality` 'RESPONSE_MODALITY_UNSPECIFIED' | 'TEXT' | 'IMAGE' | 'AUDIO' | 'VIDEO' | 'DOCUMENT': The modality associated with the token count.
      - `tokens` integer: Number of tokens for the modality.
    - `groundingToolCount` GenaiVertexV1InteractionUsageGroundingToolCount[]: Grounding tool count.
      - `count` integer: The number of grounding tool counts.
      - `type` 'TYPE_UNSPECIFIED' | 'GOOGLE_SEARCH' | 'GOOGLE_MAPS' | 'RETRIEVAL': The grounding tool type associated with the count.
    - `initialInputTokens` integer: Number of input tokens used in the first turn of this interaction.
    - `inputTokensByModality` GenaiVertexV1InteractionUsageModalityTokens[]: A breakdown of input token usage by modality.
      - `modality` 'RESPONSE_MODALITY_UNSPECIFIED' | 'TEXT' | 'IMAGE' | 'AUDIO' | 'VIDEO' | 'DOCUMENT': The modality associated with the token count.
      - `tokens` integer: Number of tokens for the modality.
    - `outputTokensByModality` GenaiVertexV1InteractionUsageModalityTokens[]: A breakdown of output token usage by modality.
      - `modality` 'RESPONSE_MODALITY_UNSPECIFIED' | 'TEXT' | 'IMAGE' | 'AUDIO' | 'VIDEO' | 'DOCUMENT': The modality associated with the token count.
      - `tokens` integer: Number of tokens for the modality.
    - `toolUseTokensByModality` GenaiVertexV1InteractionUsageModalityTokens[]: A breakdown of tool-use token usage by modality.
      - `modality` 'RESPONSE_MODALITY_UNSPECIFIED' | 'TEXT' | 'IMAGE' | 'AUDIO' | 'VIDEO' | 'DOCUMENT': The modality associated with the token count.
      - `tokens` integer: Number of tokens for the modality.
    - `totalCachedTokens` integer: Number of tokens in the cached part of the prompt (the cached content).
    - `totalInputTokens` integer: Number of tokens in the prompt (context).
    - `totalOutputTokens` integer: Total number of tokens across all the generated responses.
    - `totalThoughtTokens` integer: Number of tokens of thoughts for thinking models.
    - `totalTokens` integer: Total token count for the interaction request (prompt + responses + other internal tokens).
    - `totalToolUseTokens` integer: Number of tokens present in tool-use prompt(s).

---

[API](https://skmtc.dev/google/apis/aiplatform.md) - [All operations](https://skmtc.dev/google/apis/aiplatform/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/aiplatform/revisions/3aca3b348f0c?raw)
