Updates the specified flow. Note: You should always train a flow prior to sending it queries. See the training documentation.

Scopes

You will need authorization for at least one of the following scopes to make a valid call:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

If unset, the scope for this method defaults to https://www.googleapis.com/auth/cloud-platform. You can set the scope for this method like this: dialogflow3 --scope <scope> projects locations-agents-flows-patch ...

Required Scalar Argument

  • <name> (string)
    • The unique identifier of the flow. Format: projects//locations//agents//flows/.

Required Request Value

The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.

For example, a structure like this:

GoogleCloudDialogflowCxV3Flow:
  advanced-settings:
    audio-export-gcs-destination:
      uri: string
    dtmf-settings:
      enabled: boolean
      finish-digit: string
      max-digits: integer
    logging-settings:
      enable-interaction-logging: boolean
      enable-stackdriver-logging: boolean
  description: string
  display-name: string
  knowledge-connector-settings:
    enabled: boolean
    target-flow: string
    target-page: string
    trigger-fulfillment:
      advanced-settings:
        audio-export-gcs-destination:
          uri: string
        dtmf-settings:
          enabled: boolean
          finish-digit: string
          max-digits: integer
        logging-settings:
          enable-interaction-logging: boolean
          enable-stackdriver-logging: boolean
      enable-generative-fallback: boolean
      return-partial-responses: boolean
      tag: string
      webhook: string
  name: string
  nlu-settings:
    classification-threshold: number
    model-training-mode: string
    model-type: string
  transition-route-groups: [string]

can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.

  • -r .advanced-settings.audio-export-gcs-destination uri=takimata

    • Required. The Google Cloud Storage URI for the exported objects. A URI is of the form: gs://bucket/object-name-or-prefix Whether a full object name, or just a prefix, its usage depends on the Dialogflow operation.
  • ..dtmf-settings enabled=false

    • If true, incoming audio is processed for DTMF (dual tone multi frequency) events. For example, if the caller presses a button on their telephone keypad and DTMF processing is enabled, Dialogflow will detect the event (e.g. a "3" was pressed) in the incoming audio and pass the event to the bot to drive business logic (e.g. when 3 is pressed, return the account balance).
  • finish-digit=invidunt
    • The digit that terminates a DTMF digit sequence.
  • max-digits=68

    • Max length of DTMF digits.
  • ..logging-settings enable-interaction-logging=false

    • If true, DF Interaction logging is currently enabled.
  • enable-stackdriver-logging=false

    • If true, StackDriver logging is currently enabled.
  • ... description=ipsum

    • The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.
  • display-name=kasd
    • Required. The human-readable name of the flow.
  • knowledge-connector-settings enabled=true
    • Whether Knowledge Connector is enabled or not.
  • target-flow=amet
    • The target flow to transition to. Format: projects//locations//agents//flows/.
  • target-page=ipsum
    • The target page to transition to. Format: projects//locations//agents//flows//pages/.
  • trigger-fulfillment.advanced-settings.audio-export-gcs-destination uri=lorem

    • Required. The Google Cloud Storage URI for the exported objects. A URI is of the form: gs://bucket/object-name-or-prefix Whether a full object name, or just a prefix, its usage depends on the Dialogflow operation.
  • ..dtmf-settings enabled=false

    • If true, incoming audio is processed for DTMF (dual tone multi frequency) events. For example, if the caller presses a button on their telephone keypad and DTMF processing is enabled, Dialogflow will detect the event (e.g. a "3" was pressed) in the incoming audio and pass the event to the bot to drive business logic (e.g. when 3 is pressed, return the account balance).
  • finish-digit=stet
    • The digit that terminates a DTMF digit sequence.
  • max-digits=78

    • Max length of DTMF digits.
  • ..logging-settings enable-interaction-logging=true

    • If true, DF Interaction logging is currently enabled.
  • enable-stackdriver-logging=true

    • If true, StackDriver logging is currently enabled.
  • ... enable-generative-fallback=false

    • If the flag is true, the agent will utilize LLM to generate a text response. If LLM generation fails, the defined responses in the fulfillment will be respected. This flag is only useful for fulfillments associated with no-match event handlers.
  • return-partial-responses=true
    • Whether Dialogflow should return currently queued fulfillment response messages in streaming APIs. If a webhook is specified, it happens before Dialogflow invokes webhook. Warning: 1) This flag only affects streaming API. Responses are still queued and returned once in non-streaming API. 2) The flag can be enabled in any fulfillment but only the first 3 partial responses will be returned. You may only want to apply it to fulfillments that have slow webhooks.
  • tag=eos
    • The value of this field will be populated in the WebhookRequest fulfillmentInfo.tag field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes. This field is required if webhook is specified.
  • webhook=dolore

    • The webhook to call. Format: projects//locations//agents//webhooks/.
  • ... name=accusam

    • The unique identifier of the flow. Format: projects//locations//agents//flows/.
  • nlu-settings classification-threshold=0.4480846044533596
    • To filter out false positive results and still get variety in matched natural language inputs for your agent, you can tune the machine learning classification threshold. If the returned score value is less than the threshold value, then a no-match event will be triggered. The score values range from 0.0 (completely uncertain) to 1.0 (completely certain). If set to 0.0, the default of 0.3 is used.
  • model-training-mode=labore
    • Indicates NLU model training mode.
  • model-type=et

    • Indicates the type of NLU model.
  • .. transition-route-groups=eirmod

    • A flow's transition route group serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition route groups. Transition route groups defined in the page have higher priority than those defined in the flow. Format:projects//locations//agents//flows//transitionRouteGroups/ or projects//locations//agents//transitionRouteGroups/ for agent-level groups.
    • Each invocation of this argument appends the given value to the array.

About Cursors

The cursor position is key to comfortably set complex nested structures. The following rules apply:

  • The cursor position is always set relative to the current one, unless the field name starts with the . character. Fields can be nested such as in -r f.s.o .
  • The cursor position is set relative to the top-level structure if it starts with ., e.g. -r .s.s
  • You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify -r struct.sub_struct=bar.
  • You can move the cursor one level up by using ... Each additional . moves it up one additional level. E.g. ... would go three levels up.

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p language-code=string

    • The language of the following fields in flow: * Flow.event_handlers.trigger_fulfillment.messages * Flow.event_handlers.trigger_fulfillment.conditional_cases * Flow.transition_routes.trigger_fulfillment.messages * Flow.transition_routes.trigger_fulfillment.conditional_cases If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.
  • -p update-mask=string

    • The mask to control which fields get updated. If the mask is not present, all fields will be updated.

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").