Method: projects.locations.collections.dataConnector.buildActionInvocation

Crée une invocation d'action à l'aide de DataConnector.

Requête HTTP

POST https://discoveryengine.googleapis.com/v1alpha/{name=projects/*/locations/*/collections/*/dataConnector}:buildActionInvocation

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
name

string

Obligatoire. Ressource DataConnector.

Connecteur de données utilisé pour créer l'appel d'action.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "actionName": string,
  "languageCode": string
}
Champs
actionName

string

Obligatoire. Nom de l'action.

Par exemple : "send_email"

languageCode

string

Facultatif. Langue à utiliser pour les messages d'état et d'erreur.

Corps de la réponse

Réponse pour la méthode DataConnectorService.BuildActionInvocation.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "actionInvocation": {
    object (ActionInvocation)
  }
}
Champs
actionInvocation

object (ActionInvocation)

L'appel d'action.

Niveaux d'accès des autorisations

Nécessite l'un des champs d'application OAuth suivants :

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/discoveryengine.readwrite
  • https://www.googleapis.com/auth/discoveryengine.assist.readwrite

Pour plus d'informations, consultez la Authentication Overview.

Autorisations IAM

Nécessite l'autorisation IAM suivante sur la ressource name :

  • discoveryengine.dataConnectors.buildActionInvocation

Pour en savoir plus, consultez la documentation IAM.

ActionInvocation

Représente une invocation d'action.

Représentation JSON
{
  "agentName": string,
  "actionName": string,
  "args": {
    object
  },
  "dataConnector": string,
  "dataSource": string,
  "invocationId": string,
  "actionDisplayName": string,
  "userConfirmationMessage": string,
  "authorizationUrl": string,
  "resendQueryOnUserAuthorization": boolean,
  "parameterDeclaration": {
    object
  },
  "argSetCandidates": [
    {
      object
    }
  ]
}
Champs
agentName

string

Facultatif. Nom de l'agent qui effectue l'action.

actionName

string

Nom de l'action.

Par exemple : "send_email"

args

object (Struct format)

Arguments nommés de l'action.

Par exemple : {"recipient": "tom@...", "subject": ... }

Lorsqu'elle est proposée à un utilisateur, cette partie peut être modifiable.

Si plusieurs options sont disponibles pour les arguments d'action (par exemple, plusieurs créneaux horaires possibles pour un événement d'agenda), ce champ décrit la première option.

dataConnector

string

Ressource DataConnector.

Connecteur de données utilisé pour effectuer l'action.

dataSource

string

Uniquement en sortie. Nom de la source de données.

invocationId

string

Uniquement en sortie. ID d'invocation de l'action.

actionDisplayName

string

Uniquement en sortie. Nom de l'action lisible par l'utilisateur.

userConfirmationMessage

string

Uniquement en sortie. Message lisible par l'utilisateur qui s'affiche avec la boîte de dialogue de confirmation.

authorizationUrl

string

Uniquement en sortie. URL d'autorisation.

resendQueryOnUserAuthorization

boolean

Uniquement en sortie. Si la valeur est "true", l'appelant doit renvoyer la requête après l'autorisation de l'utilisateur.

parameterDeclaration

object (Struct format)

Sortie uniquement. Description des paramètres de l'action, y compris les informations de rendu/validation. Son format est basé sur la spécification des paramètres d'OpenAPI. Basé sur : https://swagger.io/docs/specification/describing-parameters/

Exemple :

{
    "type": "object",
    "properties": {
        "title": {
            "type": "string",
            "description": "title of the event",
        },
        "startTime": {
            "type": "string",
            "format": "date-time",
            "description": (
                "Start time of the meeting, e.g. 2024-07-12T23:30"
            ),
        },
        "attendees": {
            "type": "array",
            "items": {"type": "string", "format": "email"},
            "description": "List of email addresses of attendees",
        },
        "duration": {
            "type": "integer",
            "format": "int32",
            "minimum": 5,
            "maximum": 240,
            "default": { "numberValue": 30 },
            "description": (
                "Duration of the meeting in minutes. Defaults to 30"
                " minutes."
            ),
        },
        "timezone": {
            "type": "string",
            "description": (
                'IANA time Zone Database name, e.g. "Europe/Zurich". If'
                " omitted, timezone of the user will be used"
            ),
        },
        "eventType": {
            "type": "string",
            "enum": ["meeting", "focus_time", "out_of_office", "task"],
            "description": "type of the event",
        },
    },
    "required": ["startTime", "title", "attendees"]
}
argSetCandidates[]

object (Struct format)

Uniquement en sortie. Si plusieurs options sont disponibles pour les arguments d'action (par exemple, plusieurs créneaux horaires possibles pour un événement d'agenda), ces candidats d'arguments supplémentaires sont listés dans ce champ.

Contient une liste d'ensembles d'arguments, chacun étant mis en forme de la même manière que le champ "args". Les ensembles d'arguments ne contiennent que les arguments qui diffèrent du champ "args". Lorsqu'elles sont proposées à un utilisateur, ces valeurs peuvent être modifiables.

Exemple :

args contient la première option avec tous les arguments :

{"title": "Meeting with John", "startTime": "2024-08-01T13:30", ... }

argSetCandidates contient le reste des options, mais seuls les arguments différents sont renseignés :

[{ "startTime": "2024-08-01T14:00" }, { "startTime": "2024-08-01T14:30" }, { "startTime": "2024-08-01T15:30" }]