Class Fulfillment (0.3.0)

Fulfillment(mapping=None, *, ignore_unknown_fields=False, **kwargs)

A fulfillment can do one or more of the following actions at the same time:

  • Generate rich message responses.
  • Set parameter values.
  • Call the webhook.

Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page's entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both.


messages Sequence[.response_message.ResponseMessage]
The list of rich message responses to present to the user.
webhook str
The webhook to call. Format: projects/.
tag str
The tag used by the webhook to identify which fulfillment is being called. This field is required if webhook is specified.
set_parameter_actions Sequence[.fulfillment.Fulfillment.SetParameterAction]
Set parameter values before executing the webhook.
conditional_cases Sequence[.fulfillment.Fulfillment.ConditionalCases]
Conditional cases for this fulfillment.



ConditionalCases(mapping=None, *, ignore_unknown_fields=False, **kwargs)

A list of cascading if-else conditions. Cases are mutually exclusive. The first one with a matching condition is selected, all the rest ignored.


SetParameterAction(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Setting a parameter value.