Method: projects.locations.collections.dataConnector.buildActionInvocation

Compila una invocación de acción con DataConnector.

Solicitud HTTP

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

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta de acceso

Parámetros
name

string

Obligatorio. Recurso DataConnector.

Es el conector de datos que se usa para compilar la invocación de la acción.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "actionName": string,
  "languageCode": string
}
Campos
actionName

string

Obligatorio. Es el nombre de la acción.

Por ejemplo, "send_email"

languageCode

string

Opcional. Idioma que se usará para los mensajes de estado y de error.

Cuerpo de la respuesta

Respuesta del método DataConnectorService.BuildActionInvocation.

Si se ejecuta correctamente, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON
{
  "actionInvocation": {
    object (ActionInvocation)
  }
}
Campos
actionInvocation

object (ActionInvocation)

Es la invocación de la acción.

Permisos de autorización

Se necesita uno de los siguientes permisos de OAuth:

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

Para obtener más información, consulta Authentication Overview.

Permisos de IAM

Se requiere el siguiente permiso de IAM en el recurso name:

  • discoveryengine.dataConnectors.buildActionInvocation

Para obtener más información, consulta la documentación de IAM.

ActionInvocation

Representa una invocación de acción.

Representación 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
    }
  ]
}
Campos
agentName

string

Opcional. Es el nombre del agente que realiza la acción.

actionName

string

Nombre de la acción.

Por ejemplo, "send_email"

args

object (Struct format)

Son los argumentos con nombre de la acción.

Por ejemplo: {"recipient": "tom@...", "subject": ... }

Cuando se le ofrece a un usuario, es posible que esta parte se pueda editar.

Si hay varias opciones para los argumentos de la acción (p.ej., varios horarios posibles para un evento de calendario), este campo describe la primera opción.

dataConnector

string

Recurso DataConnector.

Es el conector de datos que se usa para realizar la acción.

dataSource

string

Solo salida. Es el nombre de la fuente de datos.

invocationId

string

Solo salida. Es el ID de invocación de la acción.

actionDisplayName

string

Solo salida. Nombre legible por humanos de la acción que se muestra al usuario.

userConfirmationMessage

string

Solo salida. Es el mensaje legible para el usuario que se muestra junto con el diálogo de confirmación.

authorizationUrl

string

Solo salida. Es la URL de autorización.

resendQueryOnUserAuthorization

boolean

Solo salida. Si es verdadero, el llamador debe volver a enviar la búsqueda tras la autorización del usuario.

parameterDeclaration

object (Struct format)

Solo salida. Es la descripción de los parámetros de la acción, incluida la información de procesamiento o validación. Su formato se basa en la especificación de parámetros de OpenAPI. Fuente: https://swagger.io/docs/specification/describing-parameters/

Ejemplo:

{
    "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)

Solo salida. Si hay varias opciones para los argumentos de la acción (p.ej., varios horarios posibles para un evento de calendario), estos candidatos a argumentos adicionales se enumeran en este campo.

Contiene una lista de conjuntos de argumentos, cada uno de los cuales tiene un formato similar al del campo args. Los conjuntos de argumentos solo contienen los argumentos que difieren del campo args. Cuando se ofrecen a un usuario, estos valores pueden ser editables.

Por ejemplo:

args contiene la primera opción con todos los argumentos:

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

argSetCandidates contiene el resto de las opciones, pero solo se completan los argumentos diferentes:

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