- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- Controlador
- Intención
- IntentParameterValue
- Escena
- SlotFillingStatus
- Ranura
- SlotMode
- SlotStatus
- Instrucción
- Sencillo
- Contenido
- De cartas
- Imagen
- ImageFill
- Vínculo
- OpenUrl
- UrlHint
- Tabla
- TableColumn
- HorizontalAlignment
- TableRow
- TableCell
- Contenido multimedia
- MediaType
- OptionalMediaControls
- MediaObject
- MediaImage
- RepeatMode
- Recopilación
- CollectionItem
- Lista
- ListItem
- CollectionBrowse
- Elemento
- Sugerencia
- Lienzo
- ContinuousMatchConfig
- ExpectedPhrase
- OrderUpdate
- Tipo
- Pedido
- Información de usuario
- PhoneNumber
- Imagen
- Comercio
- Ubicación
- LatLng
- PostalAddress
- Contenido
- elemento de una sola línea
- Representación JSON
RPC que representa la API de entrega
Solicitud HTTP
POST https://webhook_handler_service.googleapis.com/fulfill
La URL usa la sintaxis de la transcodificación gRPC.
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON | |
---|---|
{ "handler": { object ( |
Campos | |
---|---|
handler |
Obligatorio. Información para la entrega sobre cómo manejar la solicitud. Por ejemplo, una solicitud con la intención de obtener un hecho podría tener un controlador con el nombre "getFact". |
intent |
Obligatorio. Representa el último intent coincidente. Consulta https://developers.google.com/assistant/conversational/intents. |
scene |
Opcional. Información sobre la escena actual y la siguiente cuando se llamó a la función. Se completará cuando se realice la llamada de entrega dentro del alcance de una escena. Consulta https://developers.google.com/assistant/conversational/scenes. |
session |
Obligatorio. Contiene los datos de la sesión, como el ID y los parámetros de la sesión. |
user |
Obligatorio. El usuario que inició la conversación. |
home |
Opcional. Información relacionada con la estructura de HomeGraph a la que pertenece el dispositivo de destino. Consulta https://developers.google.com/actions/smarthome/concepts/homegraph. |
device |
Obligatorio. Es la información del dispositivo que el usuario usa para interactuar con la acción. |
context |
Opcional. Información del contexto actual de la solicitud. Incluye, sin limitaciones, la información del lienzo o la sesión multimedia activa. |
Cuerpo de la respuesta
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representa una respuesta enviada desde la entrega de un desarrollador a Actions on Google.
Representación JSON | |
---|---|
{ "prompt": { object ( |
Campos | |
---|---|
prompt |
Opcional. Representa los mensajes que se enviarán al usuario. Estos mensajes se agregarán a los mensajes agregados anteriormente, a menos que se reemplacen explícitamente. |
scene |
Opcional. Representa la escena actual y la siguiente. Si se configura |
session |
Opcional. Describe los datos de la sesión actual. La entrega puede crear, actualizar o quitar los parámetros de sesión. |
user |
Opcional. Se usa para especificar los parámetros del usuario que se devolverán. |
home |
Opcional. Se usa para especificar parámetros relacionados con la estructura de HomeGraph a la que pertenece el dispositivo de destino. Consulta https://developers.google.com/actions/smarthome/concepts/homegraph. |
device |
Opcional. Se usa para moverse entre dispositivos con el Asistente integrado a los que tiene acceso el usuario. |
expected |
Opcional. Describe las expectativas para el próximo turno del diálogo. |
Handler
Representa un controlador de entregas que asigna información de eventos de Actions on Google a la entrega. Usa el nombre del controlador para determinar qué código debes ejecutar en la entrega. Por ejemplo, se podría usar un controlador para obtener información sobre la información de pedido de un usuario con un nombre de controlador como "OrderLookup". mientras que otro podría obtener información del producto de una base de datos, con un nombre de controlador como "GetProductInfo".
Representación JSON | |
---|---|
{ "name": string } |
Campos | |
---|---|
name |
Opcional. Es el nombre del controlador. |
Intent
Representa un intent. Consulta https://developers.google.com/assistant/conversational/intents.
Representación JSON | |
---|---|
{
"name": string,
"params": {
string: {
object ( |
Campos | |
---|---|
name |
Obligatorio. El nombre del último intent coincidente. |
params |
Obligatorio. Representa los parámetros identificados como parte de la coincidencia de intents. Es una asignación del nombre del parámetro identificado al valor del parámetro identificado a partir de la entrada del usuario. Todos los parámetros definidos en el intent coincidente que se identifican aparecerán aquí. Es un objeto que contiene una lista de pares |
query |
Opcional. Entrada escrita o de voz del usuario final que coincidió con este intent. Se propagará cuando se detecte una coincidencia con un intent, según la entrada del usuario. |
IntentParameterValue
Representa un valor para el parámetro de intent. Consulta https://developers.google.com/assistant/conversational/types.
Representación JSON | |
---|---|
{ "original": string, "resolved": value } |
Campos | |
---|---|
original |
Obligatorio. Valor del texto original extraído del enunciado del usuario. |
resolved |
Obligatorio. Valor estructurado para el parámetro extraído de la entrada del usuario. Esto solo se propagará si el parámetro se define en el intent coincidente y el valor del parámetro se puede identificar durante la coincidencia del intent. |
Scene
Representa una escena. Las escenas pueden llamar a la entrega, agregar mensajes y recopilar valores de ranuras del usuario. Las escenas se activan mediante eventos o intents, y pueden activar eventos y buscar coincidencias con intents para hacer la transición a otras escenas.
Representación JSON | |
---|---|
{ "name": string, "slotFillingStatus": enum ( |
Campos | |
---|---|
name |
Obligatorio. Nombre de la escena actual. |
slotFillingStatus |
Obligatorio. El estado actual del llenado de ranuras. Este campo es de solo lectura. |
slots |
Son las ranuras asociadas con la escena actual. Las respuestas del controlador no pueden mostrar ranuras que no se enviaron en la solicitud. Es un objeto que contiene una lista de pares |
next |
Opcional. Información sobre la escena que se ejecutará a continuación. |
SlotFillingStatus
Representa el estado actual del relleno de espacios.
Enumeraciones | |
---|---|
UNSPECIFIED |
Valor de resguardo cuando no se propaga el campo de uso. |
INITIALIZED |
Se inicializaron las ranuras, pero no comenzó el llenado. |
COLLECTING |
Se están recopilando los valores de ranuras. |
FINAL |
Todos los valores de ranuras son definitivos y no se pueden cambiar. |
Ranura
Representa una ranura.
Representación JSON | |
---|---|
{ "mode": enum ( |
Campos | |
---|---|
mode |
El modo de la ranura (opcional u obligatorio). El desarrollador puede configurarla. |
status |
Es el estado del espacio. |
value |
Es el valor de la ranura. Si cambias este valor en la respuesta, se modificará el valor en el relleno de espacios. |
updated |
Indica si el valor de la ranura se recopiló en el último giro. Este campo es de solo lectura. |
prompt |
Opcional. Este mensaje se envía al usuario cuando es necesario para completar un espacio requerido. Esta instrucción anula la existente definida en la consola. Este campo no está incluido en la solicitud de webhook. |
SlotMode
Representa el modo de una ranura, es decir, si es necesario o no.
Enumeraciones | |
---|---|
MODE_UNSPECIFIED |
Valor de resguardo cuando no se propaga el campo de uso. |
OPTIONAL |
Indica que no se requiere la ranura para completar el llenado de ranuras. |
REQUIRED |
Indica que se requiere la ranura para completar el llenado de ranuras. |
SlotStatus
Representa el estado de una ranura.
Enumeraciones | |
---|---|
SLOT_UNSPECIFIED |
Valor de resguardo cuando no se propaga el campo de uso. |
EMPTY |
Indica que la ranura no tiene ningún valor. No se puede modificar este estado a través de la respuesta. |
INVALID |
Indica que el valor del espacio no es válido. Este estado se puede establecer a través de la respuesta. |
FILLED |
Indica que el espacio tiene un valor. No se puede modificar este estado a través de la respuesta. |
Instrucción
Representa una respuesta a un usuario. Consulta https://developers.google.com/assistant/conversational/prompts.
Representación JSON | |
---|---|
{ "override": boolean, "firstSimple": { object ( |
Campos | |
---|---|
override |
Opcional. Modo de cómo se deben combinar estos mensajes con los mensajes definidos con anterioridad. “verdadero” borra todos los mensajes definidos previamente (primer y último simple, contenido, vínculo de sugerencias y lienzo) y agrega los mensajes definidos en esta instrucción. "falso" agrega los mensajes definidos en esta instrucción a los mensajes definidos en respuestas anteriores. Dejar este campo en “false” también permite agregar campos a algunos campos dentro de los mensajes simples, las sugerencias y el mensaje de Canvas (parte de la solicitud de contenido). Los mensajes de contenido y vínculo siempre se sobrescriben si se definen en la instrucción. El valor predeterminado es "false". |
firstSimple |
Opcional. La primera respuesta de solo texto y voz. |
content |
Opcional. Es un contenido como una tarjeta, una lista o contenido multimedia que se le mostrará al usuario. |
lastSimple |
Opcional. La última respuesta de solo texto y voz. |
suggestions[] |
Opcional. Sugerencias para mostrarle al usuario que siempre aparecerán al final de la respuesta. Si el botón de "anular" en la instrucción que lo contiene es "false", los títulos definidos en este campo se agregarán a los títulos definidos en cualquier instrucción de sugerencia definida anteriormente y se quitarán los valores duplicados. |
link |
Opcional. Es un chip de sugerencias adicional que puede vincularse a la app o el sitio asociados. El chip se renderizará con el título “Open (name)”. Máx. 20 caracteres |
canvas |
Opcional. Representa una respuesta de Interactive Canvas que se enviará al usuario. |
orderUpdate |
La acción opcional responde con una OrderUpdate después de recibir el pedido durante el flujo de transacciones. Al recibir esto, Google registra esta actualización del pedido y, si se realiza correctamente, muestra una tarjeta de recibo junto con el TTS que se envía en los dispositivos de visualización. |
Simple
Representa una instrucción simple que se enviará a un usuario. Consulta https://developers.google.com/assistant/conversational/prompts-simple.
Representación JSON | |
---|---|
{ "speech": string, "text": string } |
Campos | |
---|---|
speech |
Opcional. Representa la voz que se hablará al usuario. Puede ser SSML o texto a voz. Si el botón de "anular" en la instrucción que lo contiene es “verdadero”, la voz definida en este campo reemplaza la voz de la instrucción simple anterior. Consulta https://developers.google.com/assistant/conversational/ssml. |
text |
Es el texto opcional que se mostrará en el cuadro de chat. Si no se proporciona, se usará una renderización de pantalla del campo de voz anterior. Tiene un límite de 640 caracteres. Si el botón de "anular" en la instrucción que la contiene es "true", el texto definido en este campo reemplaza al texto de la instrucción simple anterior. |
Contenido
Objeto de contenedor para instrucciones enriquecidas o de selección.
Representación JSON | |
---|---|
{ // Union field |
Campos | ||
---|---|---|
Campo de unión
|
||
card |
Una tarjeta básica. |
|
image |
Una imagen. |
|
table |
Tarjeta de tabla. |
|
media |
Respuesta que indica un conjunto de contenido multimedia para reproducir. |
|
collection |
Una tarjeta en la que se presenta un conjunto de opciones para seleccionar. |
|
list |
Una tarjeta en la que se presenta una lista de opciones para seleccionar. |
|
collectionBrowse |
Una tarjeta que presenta una colección de páginas web para abrir. |
Tarjeta
Una tarjeta básica para mostrar cierta información, p.ej., una imagen o texto. Consulta https://developers.google.com/assistant/conversational/prompts-rich#basic_card.
Representación JSON | |
---|---|
{ "title": string, "subtitle": string, "text": string, "image": { object ( |
Campos | |
---|---|
title |
Título general de la tarjeta. Opcional. |
subtitle |
Opcional. |
text |
Texto del cuerpo de la tarjeta Admite un conjunto limitado de sintaxis de Markdown para el formato. Obligatorio, salvo que haya una imagen. |
image |
Una imagen principal de la tarjeta. La altura se fija en 192 dp. Opcional. |
imageFill |
Cómo se rellenará el fondo de la imagen. Opcional. |
button |
Botón con un vínculo de salida. Opcional. |
Imagen
Se muestra una imagen en la tarjeta. Consulta https://developers.google.com/assistant/conversational/prompts-rich#image-cards.
Representación JSON | |
---|---|
{ "url": string, "alt": string, "height": integer, "width": integer } |
Campos | |
---|---|
url |
Es la URL de origen de la imagen. Las imágenes pueden ser JPG, PNG y GIF (animadas y no animadas). Por ejemplo, |
alt |
Una descripción de texto de la imagen que se usará con fines de accesibilidad, p.ej., lectores de pantalla. Obligatorio. |
height |
La altura de la imagen en píxeles. Opcional. |
width |
El ancho de la imagen en píxeles. Opcional. |
ImageFill
Es posible que las opciones de visualización de imágenes afecten su presentación. Se debe usar cuando la relación de aspecto de la imagen no coincide con la del contenedor de la imagen.
Enumeraciones | |
---|---|
UNSPECIFIED |
|
GRAY |
Rellena los espacios entre la imagen y el contenedor de imágenes con barras grises. |
WHITE |
Llena los espacios entre la imagen y el contenedor de imágenes con barras blancas. |
CROPPED |
La imagen se ajusta de modo que su ancho y alto coincidan o superen las dimensiones del contenedor. Esto puede recortar la parte inferior y superior de la imagen si la altura de la imagen ajustada es mayor que la altura del contenedor, o bien recortar los extremos izquierdo y derecho de la imagen si el ancho es mayor que el del contenedor. Esto es similar al "modo de zoom" en una TV de pantalla panorámica cuando se reproduce un video 4:3. |
Vínculo
Es un chip de sugerencias adicional que puede vincularse a la app o el sitio asociados. El chip se renderizará con el título “Open (name)”.
Representación JSON | |
---|---|
{
"name": string,
"open": {
object ( |
Campos | |
---|---|
name |
Es el nombre del vínculo. Máx. de 20 caracteres |
open |
Qué sucede cuando un usuario abre el vínculo |
OpenUrl
Representación JSON | |
---|---|
{
"url": string,
"hint": enum ( |
Campos | |
---|---|
url |
El campo de URL puede ser cualquiera de los siguientes: - URLs HTTP/HTTPS para abrir una aplicación vinculada a la aplicación o una página web |
hint |
Indica una sugerencia para el tipo de URL. |
UrlHint
Diferentes tipos de sugerencias de URL.
Enumeraciones | |
---|---|
LINK_UNSPECIFIED |
Sin especificar |
AMP |
URL que dirige directamente al contenido de AMP o a una URL canónica que hace referencia al contenido de AMP mediante . Consulta https://amp.dev/. |
Tabla
Una tarjeta para mostrar una tabla de texto. Consulta https://developers.google.com/assistant/conversational/prompts-rich#table_cards.
Representación JSON | |
---|---|
{ "title": string, "subtitle": string, "image": { object ( |
Campos | |
---|---|
title |
Título general de la tabla. Opcional, pero se debe establecer si se configuran los subtítulos. |
subtitle |
Subtítulo de la tabla. Opcional. |
image |
Imagen asociada con la tabla. Opcional. |
columns[] |
Encabezados y alineación de columnas. |
rows[] |
Datos de las filas de la tabla. Se garantiza que se mostrarán las primeras 3 filas, pero es posible que otras se corten en ciertas superficies. Realiza una prueba con el simulador para ver qué filas se mostrarán en una superficie determinada. En las plataformas compatibles con la función WEB_BROWSER, puedes dirigir al usuario a una página web con más datos. |
button |
Botón. |
TableColumn
Representación JSON | |
---|---|
{
"header": string,
"align": enum ( |
Campos | |
---|---|
header |
Texto del encabezado de la columna. |
align |
Alineación horizontal de la columna de contenido w.r.t. Si no se especifica, el contenido se alineará con el borde inicial. |
HorizontalAlignment
Es la alineación del contenido dentro de la celda.
Enumeraciones | |
---|---|
UNSPECIFIED |
|
LEADING |
Borde inicial de la celda. Esta es la opción predeterminada. |
CENTER |
El contenido se alinea con el centro de la columna. |
TRAILING |
El contenido se alinea con el borde final de la columna. |
Fila de la tabla
Describe una fila en la tabla.
Representación JSON | |
---|---|
{
"cells": [
{
object ( |
Campos | |
---|---|
cells[] |
Celdas de esta fila. Se garantiza que se mostrarán las primeras 3 celdas, pero es posible que otras estén cortadas en ciertas superficies. Prueba con el simulador para ver qué celdas se mostrarán en una superficie determinada. |
divider |
Indica si debe haber un divisor después de cada fila. |
TableCell
Describe una celda en una fila.
Representación JSON | |
---|---|
{ "text": string } |
Campos | |
---|---|
text |
Contenido de texto de la celda. |
Medios
Representa un objeto multimedia. Contiene información sobre el contenido multimedia, como el nombre, la descripción, la URL, etc. Consulta https://developers.google.com/assistant/conversational/prompts-media.
Representación JSON | |
---|---|
{ "mediaType": enum ( |
Campos | |
---|---|
mediaType |
|
startOffset |
Desplazamiento inicial del primer objeto multimedia. Es una duración en segundos con hasta nueve dígitos decimales que termina en " |
optionalMediaControls[] |
Tipos opcionales de control multimedia que admite esta sesión de respuesta multimedia. Si la estableces, se realizará la solicitud a 3p cuando ocurra un evento multimedia determinado. Si no la estableces, 3p debe seguir controlando dos tipos de control predeterminados, FINISHED y FAILED. |
mediaObjects[] |
Lista de objetos multimedia |
repeatMode |
Es el modo de repetición para la lista de objetos multimedia. |
firstMediaObjectIndex |
Es el índice basado en 0 del primer objeto multimedia en mediaObjects que se reproducirá. Si no se especifica, es cero o está fuera de los límites, la reproducción comienza en el primer objeto multimedia de mediaObjects. |
MediaType
Tipo de medio de esta respuesta.
Enumeraciones | |
---|---|
MEDIA_TYPE_UNSPECIFIED |
|
AUDIO |
Archivo de audio. |
MEDIA_STATUS_ACK |
Respuesta para confirmar un informe de estado de contenido multimedia. |
OptionalMediaControls
Tipos opcionales de control multimedia que puede admitir la respuesta multimedia
Enumeraciones | |
---|---|
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED |
Valor sin especificar |
PAUSED |
Evento pausado. Se activa cuando el usuario pausa el contenido multimedia. |
STOPPED |
Se detuvo el evento. Se activa cuando el usuario sale de una sesión de terceros durante la reproducción de contenido multimedia. |
MediaObject
Representa un objeto multimedia único
Representación JSON | |
---|---|
{
"name": string,
"description": string,
"url": string,
"image": {
object ( |
Campos | |
---|---|
name |
Es el nombre de este objeto multimedia. |
description |
Descripción de este objeto multimedia. |
url |
Es la URL que dirige al contenido multimedia. Los archivos MP3 deben estar alojados en un servidor web y estar disponibles públicamente a través de una URL HTTPS. La transmisión en vivo solo es compatible con el formato MP3. |
image |
Imagen para mostrar con la tarjeta multimedia. |
MediaImage
Representación JSON | |
---|---|
{ // Union field |
Campos | ||
---|---|---|
Campo de unión
|
||
large |
Una imagen grande, como la portada del álbum, etcétera |
|
icon |
Un ícono de imagen pequeño que aparece a la derecha del título Se cambió a 36 x 36 dp. |
RepeatMode
Son los tipos de modo de repetición para una lista de objetos multimedia.
Enumeraciones | |
---|---|
REPEAT_MODE_UNSPECIFIED |
Equivale a DESACTIVADA. |
OFF |
Finaliza la sesión multimedia al final del último objeto multimedia. |
ALL |
Establece un bucle al principio del primer objeto multimedia cuando se alcance el final del último. |
Colección
Una tarjeta para presentar un conjunto de opciones para seleccionar. Consulta https://developers.google.com/assistant/conversational/prompts-selection#collection
Representación JSON | |
---|---|
{ "title": string, "subtitle": string, "items": [ { object ( |
Campos | |
---|---|
title |
Es el título de la colección. Opcional. |
subtitle |
Subtítulo de la colección. Opcional. |
items[] |
Una lista de elementos. Puede tener un mínimo de 2 y un máximo de 10. |
imageFill |
Cómo se rellenarán los fondos de imagen de los elementos de la colección Opcional. |
CollectionItem
Un elemento de la colección
Representación JSON | |
---|---|
{ "key": string } |
Campos | |
---|---|
key |
Obligatorio. La clave CLN que coincide con el nombre de la clave de entrada en el tipo asociado |
Lista
Una tarjeta para presentar una lista de opciones que se pueden seleccionar. Consulta https://developers.google.com/assistant/conversational/prompts-selection#list
Representación JSON | |
---|---|
{
"title": string,
"subtitle": string,
"items": [
{
object ( |
Campos | |
---|---|
title |
Es el título de la lista. Opcional. |
subtitle |
Subtítulo de la lista. Opcional. |
items[] |
Una lista de elementos. Puede tener un mínimo de 2 y un máximo de 30. |
ListItem
Un elemento de la lista
Representación JSON | |
---|---|
{ "key": string } |
Campos | |
---|---|
key |
Obligatorio. La clave CLN que coincide con el nombre de la clave de entrada en el tipo asociado |
CollectionBrowse
Presenta un conjunto de documentos web como una colección de elementos de mosaicos grandes. Se pueden seleccionar elementos para iniciar su documento web asociado en un visor web. Consulta https://developers.google.com/assistant/conversational/prompts-selection#collectionBrowse.
Representación JSON | |
---|---|
{ "items": [ { object ( |
Campos | |
---|---|
items[] |
Una lista de elementos. Puede tener un mínimo de 2 y un máximo de 10. |
imageFill |
Tipo de opción de visualización de la imagen. |
Elemento
Elemento de la colección.
Representación JSON | |
---|---|
{ "title": string, "description": string, "footer": string, "image": { object ( |
Campos | |
---|---|
title |
Obligatorio. Es el título del elemento de la colección. |
description |
Descripción del elemento de la colección. |
footer |
Texto del pie de página del elemento de la colección, que se muestra debajo de la descripción. Una sola línea de texto, truncada con puntos suspensivos |
image |
Imagen del elemento de la colección. |
openUriAction |
Obligatorio. Es el URI que se abrirá si se seleccionó el elemento. |
Sugerencia
Las sugerencias proporcionan chips de sugerencias a los usuarios de dispositivos compatibles con la visualización cuando Asistente muestra el mensaje. Usa los chips de sugerencias para sugerir las respuestas de los usuarios y, así, continuar o reorientar la conversación. Cuando se presiona, un chip de sugerencias devuelve el texto que se muestra a la conversación, como si el usuario lo hubiera escrito. Consulta https://developers.google.com/assistant/conversational/prompts#suggestions,
Representación JSON | |
---|---|
{ "title": string } |
Campos | |
---|---|
title |
Obligatorio. Es el texto que se muestra en el chip de sugerencias. Cuando se presiona, este texto se vuelve a publicar en la conversación tal como si el usuario lo hubiera escrito. Cada título debe ser único en el conjunto de chips de sugerencias. Máx. 25 caracteres |
Lienzo
Representa una respuesta de Interactive Canvas que se enviará al usuario. Esto se puede usar junto con el conjunto de registros “firstSimple” en la instrucción que lo contiene para hablarle al usuario, además de mostrar una respuesta de lienzo interactiva. El tamaño máximo de la respuesta es de 50,000 bytes. Consulta https://developers.google.com/assistant/interactivecanvas.
Representación JSON | |
---|---|
{
"url": string,
"data": [
value
],
"suppressMic": boolean,
"continuousMatchConfig": {
object ( |
Campos | |
---|---|
url |
URL de la app web de lienzo interactivo que se cargará. Si no la estableces, se volverá a utilizar la URL del lienzo activo actual. |
data[] |
Opcional. Los datos JSON que se pasarán a la página web de experiencia envolvente como un evento. Si el botón de "anular" en la instrucción que lo contiene es "falso" Los valores de datos definidos en este mensaje de Canvas se agregarán después de los valores de datos definidos en los mensajes de Canvas anteriores. |
suppressMic |
Opcional. Valor predeterminado: falso. |
continuousMatchConfig |
Configuración que se usa para iniciar el modo de concordancia continua. |
ContinuousMatchConfig
Configuración que se usa para iniciar el modo de concordancia continua.
Representación JSON | |
---|---|
{
"expectedPhrases": [
{
object ( |
Campos | |
---|---|
expectedPhrases[] |
Todas las frases esperadas posibles durante esta sesión del modo de concordancia continua. |
durationSeconds |
Es la duración para mantener activado el modo de concordancia continua. Si se especifica, el micrófono se cerrará cuando se acabe el tiempo. El valor máximo permitido es 180. |
ExpectedPhrase
Representación JSON | |
---|---|
{ "phrase": string, "alternativePhrases": [ string ] } |
Campos | |
---|---|
phrase |
La frase que debe coincidir durante la sesión del modo de concordancia continua. |
alternativePhrases[] |
El modelo de voz puede reconocer incorrectamente algunas frases, incluso con la personalización de discurso. Esto permite a los desarrolladores especificar activadores alternativos para homófonos. |
OrderUpdate
Actualización de un pedido.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | |
---|---|
type |
Obsoleto: Usa OrderUpdate.update_mask en su lugar. Si el tipo es SNAPSHOT, OrderUpdate.order debería ser el pedido completo. Si el tipo es ORDER_STATUS, este es el cambio de estado a nivel del pedido. Solo se recogen order.last_update_time y este estado vertical. Nota: type.ORDER_STATUS solo admite actualizaciones de estado de PurcahaseOrderExtension y no hay un plan para extender esta compatibilidad. En su lugar, recomendamos usar updateMask, ya que es más genérico, extensible y se puede usar en todas las verticales. |
order |
|
updateMask |
Nota: Existen consideraciones o recomendaciones para los siguientes campos especiales: 1. order.last_update_time siempre se actualizará como parte de la solicitud de actualización. 2. Se ignorará order.create_time, order.google_order_id y order.merchant_order_id si se proporcionan como parte de updateMask. Esta es una lista separada por comas de los nombres de campos totalmente calificados. Ejemplo: |
userNotification |
Si se especifica, muestra una notificación al usuario con el título y el texto especificados. Especificar una notificación es una sugerencia para notificar y no se garantiza que genere una notificación. |
reason |
Motivo del cambio o la actualización. |
Tipo
Obsoleto: Usa OrderUpdate.update_mask en su lugar. Permitir las actualizaciones de un pedido
Enumeraciones | |
---|---|
TYPE_UNSPECIFIED |
Tipo sin especificar; no se debe configurar de forma explícita. |
ORDER_STATUS |
Solo actualiza el estado del pedido. |
SNAPSHOT |
Instantánea del pedido de actualización. |
Pedido
Entidad de pedido. Nota: 1. Todas las cadenas de todos los niveles deben tener menos de 1,000 caracteres, a menos que se especifique lo contrario. 2. Todos los campos repetidos en todos los niveles deben tener un tamaño inferior a 50, a menos que se especifique lo contrario. 3. Si se especifican, todas las marcas de tiempo de todos los niveles deben ser marcas de tiempo válidas.
Representación JSON | |
---|---|
{ "googleOrderId": string, "merchantOrderId": string, "userVisibleOrderId": string, "userVisibleStateLabel": string, "buyerInfo": { object ( |
Campos | ||
---|---|---|
googleOrderId |
Es el ID de pedido asignado por Google. |
|
merchantOrderId |
Obligatorio: ID de pedido interno asignado por el comercio. Este ID debe ser único y se requiere para las operaciones posteriores de actualización de pedidos. Este ID se puede establecer en el googleOrderId proporcionado o cualquier otro valor único. Ten en cuenta que el ID que se muestra a los usuarios es userVisibleOrderId, que puede ser un valor diferente y más fácil de usar. La longitud máxima permitida es de 128 caracteres. |
|
userVisibleOrderId |
El ID visible para el usuario que hace referencia al pedido actual. Este ID debe ser coherente con el que se muestra para este pedido en otros contextos, como sitios web, aplicaciones y correo electrónico. |
|
userVisibleStateLabel |
Obsoleto: usa el estado OrderExtensions en su lugar. Etiqueta visible para el usuario para el estado de este pedido. |
|
buyerInfo |
Información sobre el comprador. |
|
image |
Imagen asociada con el pedido. |
|
createTime |
Obligatorio: Fecha y hora en que se creó el pedido. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
|
lastUpdateTime |
Fecha y hora en que se actualizó el pedido por última vez. Obligatorio para OrderUpdate. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
|
transactionMerchant |
Comercio que facilitó la confirmación de la compra. Puede ser diferente de la de un proveedor a nivel de la línea de pedido. Ejemplo: Pedido de Expedia con un elemento de una sola línea de ANA. |
|
contents |
Obligatorio: El contenido del pedido es un grupo de líneas de pedido. |
|
priceAttributes[] |
Precio, descuentos, impuestos, etc. |
|
followUpActions[] |
Haz un seguimiento de las acciones a nivel del pedido. |
|
paymentData |
Datos relacionados con el pago del pedido. |
|
termsOfServiceUrl |
Un vínculo a las condiciones del servicio que se aplican al pedido/pedido propuesto. |
|
note |
Notas adjuntas a un pedido |
|
promotions[] |
Son todas las promociones asociadas a este pedido. |
|
disclosures[] |
Divulgaciones asociadas con este pedido. |
|
vertical |
Obsoleto: Usa verticales en su lugar. Estas propiedades se aplicarán a todas las líneas de pedido, a menos que se anulen en alguna. Esta vertical debe coincidir con el tipo de vertical a nivel de la línea de pedido. Valores posibles: Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
|
Campo de unión verticals . Estas propiedades se aplicarán a todas las líneas de pedido, a menos que se anulen en alguna. Esta vertical debe coincidir con el tipo de vertical a nivel de la línea de pedido. Las direcciones (verticals ) solo pueden ser una de las siguientes opciones: |
||
purchase |
Orden de compra |
|
ticket |
Pedido de entrada |
UserInfo
Información sobre el usuario. Se usa para representar la información del usuario asociada con un pedido.
Representación JSON | |
---|---|
{
"email": string,
"firstName": string,
"lastName": string,
"displayName": string,
"phoneNumbers": [
{
object ( |
Campos | |
---|---|
email |
Correo electrónico del usuario, p. ej.: janedoe@gmail.com. |
firstName |
Es el nombre del usuario. |
lastName |
Apellido del usuario. |
displayName |
El nombre visible del usuario puede ser diferente del nombre o del apellido. |
phoneNumbers[] |
Números de teléfono del usuario. |
Númerotelefónico
Representación estándar de números de teléfono.
Representación JSON | |
---|---|
{ "e164PhoneNumber": string, "extension": string, "preferredDomesticCarrierCode": string } |
Campos | |
---|---|
e164PhoneNumber |
Número de teléfono en formato E.164, como se define en la Recomendación E.164 de la Unión Internacional de Telecomunicaciones (UIT) Vínculo de Wikipedia: https://en.wikipedia.org/wiki/E.164 |
extension |
La extensión no está estandarizada en las recomendaciones de ITU, excepto que se define como una serie de números con una longitud máxima de 40 dígitos. Aquí, se define como una cadena para adaptarse al posible uso de un cero inicial en la extensión (las organizaciones tienen total libertad para hacerlo, ya que no hay un estándar definido). Además de los dígitos, otros caracteres de marcación, como "," (que indica un tiempo de espera) podrían almacenarse aquí. Por ejemplo, en los siguientes casos: xxx-xxx-xxxx ext. 123, “123” es la extensión. |
preferredDomesticCarrierCode |
Es el código de selección del operador que se prefiere cuando se llama a este número de teléfono nacional. Esto también incluye los códigos que se deben marcar en algunos países para llamar de un teléfono fijo a un celular o viceversa. Por ejemplo, en Colombia, el número "3" debe marcarse antes que el número de teléfono cuando se llama desde un celular a un teléfono fijo doméstico y viceversa. https://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia https://en.wikipedia.org/wiki/Brazilian_Carrier_Selection_Code Ten en cuenta que esta es la opción “preferida”. código, lo que significa que otros códigos también pueden funcionar. |
Imagen
Se muestra una imagen en la tarjeta.
Representación JSON | |
---|---|
{ "url": string, "accessibilityText": string, "height": integer, "width": integer } |
Campos | |
---|---|
url |
Es la URL de origen de la imagen. Las imágenes pueden ser JPG, PNG y GIF (animadas y no animadas). Por ejemplo, |
accessibilityText |
Una descripción de texto de la imagen que se usará con fines de accesibilidad, p.ej., lectores de pantalla. Obligatorio. |
height |
La altura de la imagen en píxeles. Opcional. |
width |
El ancho de la imagen en píxeles. Opcional. |
Merchant
Comercio del carrito, pedido o línea de pedido.
Representación JSON | |
---|---|
{ "id": string, "name": string, "image": { object ( |
Campos | |
---|---|
id |
Es el ID opcional asignado al comercio, si corresponde. |
name |
Es el nombre del comercio, como "Panera Bread". |
image |
Es la imagen asociada con el comercio. |
phoneNumbers[] |
Números de teléfono del comercio. |
address |
Dirección del comercio. |
Ubicación
Contenedor que representa una ubicación.
Representación JSON | |
---|---|
{ "coordinates": { object ( |
Campos | |
---|---|
coordinates |
Coordenadas geográficas Requiere el dispositivo [DEVICE_PRECISE_LOCATION] el permiso [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION]. |
formattedAddress |
Dirección visible, p.ej., “1600 Amphitheatre Pkwy, Mountain View, CA 94043”. Requiere el dispositivo [DEVICE_PRECISE_LOCATION] el permiso [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION]. |
zipCode |
Código postal Requiere el dispositivo [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] o [DEVICE_COARSE_LOCATION] el permiso [google.actions.v2.Permission.DEVICE_COARSE_LOCATION]. |
city |
Ciudad. Requiere el dispositivo [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] o [DEVICE_COARSE_LOCATION] el permiso [google.actions.v2.Permission.DEVICE_COARSE_LOCATION]. |
postalAddress |
Dirección postal. Requiere el dispositivo [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] o [DEVICE_COARSE_LOCATION] el permiso [google.actions.v2.Permission.DEVICE_COARSE_LOCATION]. |
name |
Es el nombre del lugar. |
phoneNumber |
Número de teléfono de la ubicación, p.ej., número de contacto de la ubicación de la empresa o el número de teléfono de la ubicación de entrega. |
notes |
Notas sobre la ubicación |
placeId |
placeId se usa con la API de Places para recuperar detalles de un lugar. Consulta https://developers.google.com/places/web-service/place-id. |
LatLng
Es un objeto que representa un par de valores de latitud y longitud. Esto se expresa como un par de dobles para representar la latitud en grados y la longitud en grados. A menos que se especifique lo contrario, este objeto debe cumplir con el estándar WGS84. Los valores deben pertenecer a rangos normalizados.
Representación JSON | |
---|---|
{ "latitude": number, "longitude": number } |
Campos | |
---|---|
latitude |
La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0]. |
longitude |
La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0]. |
PostalAddress
Representa una dirección postal, p. ej., para envíos postales o direcciones de pago. Si se proporciona una dirección postal, un servicio postal puede enviar artículos a las instalaciones, a la casilla postal o a otras ubicaciones similares. No está diseñado para modelar ubicaciones geográficas (caminos, pueblos, montañas).
En el uso común, una dirección se crearía a través de una entrada del usuario o a partir de la importación de datos existentes, según el tipo de proceso.
Consejos sobre el ingreso o la edición de direcciones: - Usa un widget de dirección compatible con i18n, como https://github.com/google/libaddressinput). - Los usuarios no deben ver elementos de la IU para ingresar o editar campos fuera de países en los que se usa ese campo.
Para obtener orientación sobre cómo usar este esquema, consulta https://support.google.com/business/answer/6397478
Representación JSON | |
---|---|
{ "revision": integer, "regionCode": string, "languageCode": string, "postalCode": string, "sortingCode": string, "administrativeArea": string, "locality": string, "sublocality": string, "addressLines": [ string ], "recipients": [ string ], "organization": string } |
Campos | |
---|---|
revision |
La revisión del esquema de Todas las revisiones nuevas deben ser compatibles con las revisiones anteriores. |
regionCode |
Obligatorio Código de región de CLDR para el país o la región de la dirección. Nunca se infiere y depende del usuario garantizar que el valor sea correcto. Consulta http://cldr.unicode.org/ y http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html para obtener detalles. Ejemplo: "CH" para Suiza. |
languageCode |
Opcional: Código de idioma BCP-47 de los contenidos de esta dirección (si se conoce). Suele ser el idioma de la IU del formulario de entrada o se espera que coincida con uno de los idiomas usados en la región o el país de la dirección, o sus transliteraciones equivalentes. Esto puede afectar el formato en ciertos países, pero no es fundamental para la precisión de los datos y nunca afectará una validación o alguna otra operación no relacionada con el formato. Si este valor es desconocido, se debe omitir (en lugar de especificar una configuración predeterminada posiblemente incorrecta). Ejemplos: "zh-Hant", "ja", "ja-Latn", "en". |
postalCode |
Opcional: Código postal de la dirección. No todos los países usan o exigen la presencia de códigos postales, pero en los lugares donde se usan, es posible que activen una validación adicional con otras partes de la dirección (p. ej., validación del código postal o el estado en EE.UU.). |
sortingCode |
Opcional: Código de ordenamiento adicional específico para cada país. No se usa en la mayoría de las regiones. Cuando se utiliza, el valor es una cadena como "CEDEX", opcionalmente seguida de un número (p.ej., "CEDEX 7"), o solo un número, que representa el "código de sector" (Jamaica), "indicador del área de entrega" (Malaui) o "indicador de oficina de correos" (p.ej., Costa de Marfil). |
administrativeArea |
Opcional. División administrativa más alta que se usa para las direcciones postales de un país o una región. Por ejemplo, puede ser un estado, una provincia, una óblast o una prefectura. Específicamente, en el caso de España, corresponde a la provincia y no a la comunidad autónoma (p.ej., "Barcelona" y no "Cataluña"). Muchos países no usan un área administrativa en las direcciones postales. P. ej., en Suiza se dejaría vacío. |
locality |
Opcional: Por lo general, se refiere a la parte de la dirección que indica la ciudad o el pueblo. Ejemplos: ciudad de EE.UU., comuna de Italia o ciudad postal en el Reino Unido. En regiones del mundo donde las localidades no están bien definidas o no coinciden bien con esta estructura, deja la localidad vacía y usa addressLines. |
sublocality |
Opcional: Sublocalidad de la dirección. Por ejemplo, pueden ser barrios, vecindarios o distritos. |
addressLines[] |
Líneas de dirección no estructuradas que describen los niveles más bajos de una dirección. Debido a que los valores de addressLines no tienen información de tipo y, en ocasiones, pueden contener varios valores en un solo campo (p.ej., "Austin, TX"), es importante que el orden de las líneas sea claro. El orden de las líneas de dirección debe ser el "orden de sobre" que se usa en el país o la región de la dirección. En lugares donde esto puede variar, (p. ej., Japón), address_language se usa para hacerlo explícito (p. ej., "ja" para ordenar de mayor a menor en "ja-Latn" o "en" para indicar de menor a mayor). De esta manera, se puede seleccionar la línea más específica de una dirección a partir del idioma. La representación estructural mínima que se permite para una dirección consiste en un regionCode con toda la información restante incluida en addressLines. Sería posible dar un formato a una dirección así de manera muy aproximada sin codificación geográfica, pero no podría realizarse un análisis semántico de ningún componente de la dirección hasta que se resuelva, al menos, de manera parcial. Crear una dirección que solo contiene regionCode y addressLines, y luego realizar la codificación geográfica es la manera recomendada de controlar direcciones sin estructura alguna (en lugar de inferir qué partes de la dirección deben ser localidades o áreas administrativas). |
recipients[] |
Opcional: El destinatario en la dirección. Es posible que este campo contenga varias líneas de información en ciertas circunstancias. Por ejemplo, puede contener información sobre la entrega "por medio de". |
organization |
Opcional: El nombre de la organización de la dirección. |
Contenido
Envoltorio para líneas de pedido.
Representación JSON | |
---|---|
{
"lineItems": [
{
object ( |
Campos | |
---|---|
lineItems[] |
Lista de líneas de pedido. Se requiere al menos 1 elemento de una sola línea y se permite un máximo de 50. Todas las líneas de pedido deben pertenecer a la misma vertical. |
LineItem
Una línea de pedido contiene una vertical. Un pedido o carrito puede tener varias líneas de pedido de la misma vertical. Las sublíneas de pedido, los complementos, etc., deben definirse en prototipos verticales según sus casos de uso. Nota: 1. Todas las cadenas de todos los niveles deben tener menos de 1,000 caracteres, a menos que se especifique lo contrario. 2. Todos los campos repetidos en todos los niveles deben tener un tamaño inferior a 50, a menos que se especifique lo contrario. 3. Si se especifican, todas las marcas de tiempo de todos los niveles deben ser marcas de tiempo válidas.
Representación JSON | |
---|---|
{ "id": string, "name": string, "userVisibleStateLabel": string, "provider": { object ( |
Campos | ||
---|---|---|
id |
Obligatorio: Identificador asignado por el comercio para la línea de pedido. Se usa para identificar líneas de pedido existentes en la aplicación de actualizaciones parciales. La longitud máxima permitida es de 64 caracteres. |
|
name |
Es el nombre de la línea de pedido como aparece en el recibo. La longitud máxima permitida es de 100 caracteres. |
|
userVisibleStateLabel |
Obsoleta. En su lugar, usa el estado de nivel vertical. Por ejemplo, para compras, usa PurchaseOrderExtension.status. Es la etiqueta visible del usuario para el estado de esta línea de pedido. |
|
provider |
El proveedor de la línea de pedido en particular, si es diferente del pedido general. Ejemplo: Pedido de Expedia con el proveedor de líneas de pedido ANA. |
|
priceAttributes[] |
Precio y ajustes a nivel de la línea de pedido. |
|
followUpActions[] |
Hace un seguimiento de las acciones en la línea de pedido. |
|
recipients[] |
los clientes a nivel de la línea de pedido, puede ser diferente del comprador a nivel del pedido. Ejemplo: El usuario X realizó una reserva en un restaurante con el nombre del usuario Y. |
|
image |
Imagen pequeña asociada a este elemento, si corresponde. |
|
description |
Descripción de la línea de pedido. |
|
notes[] |
Notas adicionales aplicables a esta línea de pedido en particular, como la política de cancelación. |
|
disclosures[] |
Son divulgaciones asociadas a esta línea de pedido. |
|
vertical |
Obsoleto: Utiliza verticales en su lugar. Obligatorio: Contenido semántico de la línea de pedido en función de su tipo o vertical. Cada vertical debe incluir sus propios detalles de entrega. Debe ser uno de los siguientes valores: Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
|
Campo de unión verticals . Obligatorio: Contenido semántico de la línea de pedido en función de su tipo o vertical. Cada vertical debe incluir sus propios detalles de entrega. Las direcciones (verticals ) solo pueden ser una de las siguientes opciones: |
||
purchase |
Órdenes de compra como productos, comida, etcétera |
|
reservation |
Pedidos de reservación como restaurante, corte de pelo, etc. |
PriceAttribute
Precio de un pedido o una línea de pedido.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | ||
---|---|---|
type |
Obligatorio: Tipo de atributo de dinero. |
|
name |
Obligatorio: El usuario muestra la cadena del atributo precio. El comercio envía y localiza esta información. |
|
id |
Opcional: Es el ID de la línea de pedido a la que corresponde este precio. |
|
state |
Obligatorio: Estado del precio: Estimación vs. real. |
|
taxIncluded |
Si el precio está incluido en los impuestos |
|
Campo de unión spec . Representa el importe monetario o el porcentaje en milésimas de segundo. Las direcciones (spec ) solo pueden ser una de las siguientes opciones: |
||
amount |
Importe monetario |
|
amountMillipercentage |
La especificación de porcentaje, hasta 1/1,000 de un porcentaje. P. ej., 8.750% se representa como 8,750 y los porcentajes negativos representan descuentos porcentuales. Este campo dejará de estar disponible. Puedes considerar volver a agregarlo cuando se requiera un caso de uso sólido. |
Tipo
Representa el tipo de dinero.
Enumeraciones | |
---|---|
TYPE_UNSPECIFIED |
No se especifica el tipo. Los clientes no deberían tener que configurarlo de forma explícita. |
REGULAR |
Es el precio visible normal, antes de que se apliquen los descuentos, etcétera. |
DISCOUNT |
Se restará del subtotal. |
TAX |
Se agregará al subtotal. |
DELIVERY |
Se agregará al subtotal. |
SUBTOTAL |
Subtotal antes de que se agreguen algunas tarifas. |
FEE |
Cualquier Tarifa adicional. |
GRATUITY |
Se agregará al subtotal. |
TOTAL |
Es el precio del pedido o la línea de pedido que se muestra. |
Estado
Representa el estado del precio.
Enumeraciones | |
---|---|
STATE_UNSPECIFIED |
No se especifica. |
ESTIMATE |
El precio es solo una estimación, pero el importe final se acercaría a este importe. Ejemplo: En los casos en que no se conozca el impuesto con exactitud al momento de la transacción, el total sería un importe ESTIMADO. |
ACTUAL |
El precio real que se cobrará por el usuario. |
Dinero
Representa un importe de dinero con su tipo de moneda.
Representación JSON | |
---|---|
{ "currencyCode": string, "amountInMicros": string } |
Campos | |
---|---|
currencyCode |
El código de moneda de 3 letras definido en el estándar ISO 4217. |
amountInMicros |
Importe en micros Por ejemplo, este campo se debe configurar como 1990000 para $1.99. |
Acción
Una acción de seguimiento asociada con el pedido o la línea de pedido.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | |
---|---|
type |
Obligatorio: Tipo de acción. |
title |
Título o etiqueta de la acción que se muestra al usuario. La longitud máxima permitida es de 100 caracteres. |
openUrlAction |
Acción que se debe realizar. |
actionMetadata |
Metadatos asociados con una acción |
Tipo
Posibles acciones de seguimiento.
Enumeraciones | |
---|---|
TYPE_UNSPECIFIED |
Acción no especificada. |
VIEW_DETAILS |
Ver la acción de detalles del pedido. |
MODIFY |
Acción Modify order. |
CANCEL |
Acción para cancelar pedido. |
RETURN |
Acción de devolución del pedido. |
EXCHANGE |
Acción de pedido de intercambio. |
EMAIL |
Acción de correo electrónico. Los tipos EMAIL y CALL dejaron de estar disponibles. openUrlAction.url se puede utilizar como un número de teléfono o un correo electrónico. |
CALL |
Acción de llamada. |
REORDER |
Reordenar la acción. |
REVIEW |
Revisar acción del pedido. |
CUSTOMER_SERVICE |
Comunícate con atención al cliente. |
FIX_ISSUE |
Dirígete al sitio o la app del comercio para solucionar el problema. |
DIRECTION |
Vínculo de instrucciones sobre cómo llegar. |
OpenUrlAction
Abre la URL proporcionada.
Representación JSON | |
---|---|
{ "url": string, "androidApp": { object ( |
Campos | |
---|---|
url |
El campo de URL puede ser cualquiera de los siguientes: - URLs HTTP/HTTPS para abrir una aplicación vinculada a la aplicación o una página web |
androidApp |
Información sobre la app para Android si se prevé que una app para Android complete la URL. |
urlTypeHint |
Indica una sugerencia para el tipo de URL. |
AndroidApp
Especificación de la app para Android para restricciones de entrega
Representación JSON | |
---|---|
{
"packageName": string,
"versions": [
{
object ( |
Campos | |
---|---|
packageName |
Nombre del paquete Se debe indicar el nombre del paquete cuando se especifique la entrega de Android. |
versions[] |
Cuando se especifican varios filtros, cualquier coincidencia de filtro activará la app. |
VersionFilter
Se debe incluir VersionFilter si se requieren versiones específicas de la app.
Representación JSON | |
---|---|
{ "minVersion": integer, "maxVersion": integer } |
Campos | |
---|---|
minVersion |
Código de versión mínimo o 0 inclusive. |
maxVersion |
Código de versión máximo, inclusive. El rango considerado es [minVersion:maxVersion]. Un rango nulo implica cualquier versión. Ejemplos: Para especificar una sola versión, usa [target_version:target_version]. Para especificar cualquier versión, deja minVersion y maxVersion sin especificar. Para especificar todas las versiones hasta maxVersion, deja minVersion sin especificar. Para especificar todas las versiones de minVersion, deja maxVersion sin especificar. |
UrlTypeHint
Diferentes tipos de sugerencias de URL.
Enumeraciones | |
---|---|
URL_TYPE_HINT_UNSPECIFIED |
Sin especificar |
AMP_CONTENT |
URL que dirige directamente al contenido de AMP o a una URL canónica que hace referencia al contenido de AMP mediante <link rel="amphtml">. |
ActionMetadata
Metadatos relacionados por acción.
Representación JSON | |
---|---|
{ "expireTime": string } |
Campos | |
---|---|
expireTime |
Hora en la que vencerá esta acción. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
Divulgación
Es una divulgación sobre un producto, un servicio o una política que se puede presentar al usuario.
Representación JSON | |
---|---|
{ "title": string, "disclosureText": { object ( |
Campos | |
---|---|
title |
Título de la divulgación. Ejemplo: "Información de seguridad". |
disclosureText |
Contenido de la divulgación. Se permiten los vínculos web. |
presentationOptions |
Opciones de presentación para la divulgación. |
DisclosureText
Representa un texto sin formato con vínculos web.
Representación JSON | |
---|---|
{
"template": string,
"textLinks": [
{
object ( |
Campos | |
---|---|
template |
Texto para mostrar que contiene marcadores de posición como "{0}" y "{1}" para cada vínculo de texto que debe insertarse. Ejemplo: "ADVERTENCIA: Este producto puede exponerte a productos químicos que, según el estado de California, causan cáncer. Para obtener más información, visita {0}." Este texto de divulgación no debe incluir ningún contenido promocional ni similar a un anuncio. |
textLinks[] |
Vínculos de texto que se deben reemplazar en la plantilla. El primero reemplazará por "{0}". en la cadena de plantilla, la segunda para "{1}", etc. |
TextLink
Un vínculo de texto que se debe sustituir en la plantilla.
Representación JSON | |
---|---|
{ "displayText": string, "url": string } |
Campos | |
---|---|
displayText |
Es el texto que se debe mostrar a los usuarios. |
url |
URL a la que se debe dirigir a los usuarios cuando se activa el vínculo. |
DisclosurePresentationOptions
Opciones para la presentación de una divulgación.
Representación JSON | |
---|---|
{
"presentationRequirement": enum ( |
Campos | |
---|---|
presentationRequirement |
Requisito de presentación de la divulgación |
initiallyExpanded |
Si el contenido de la divulgación debe expandirse inicialmente De forma predeterminada, está contraído inicialmente. |
PresentationRequirement
Requisito para presentar la divulgación.
Enumeraciones | |
---|---|
REQUIREMENT_UNSPECIFIED |
Requisito no especificado. No se debería establecer esto de forma explícita. |
REQUIREMENT_OPTIONAL |
La divulgación es opcional. Se puede omitir si el dispositivo no permite mostrar divulgaciones. |
REQUIREMENT_REQUIRED |
La divulgación es obligatoria. Si el dispositivo no permite mostrar divulgaciones, se enviará una conversación por teléfono. |
PurchaseItemExtension
Contenido de la línea de pedido de la vertical de compras.
Representación JSON | |
---|---|
{ "status": enum ( |
Campos | |
---|---|
status |
Obligatorio: Estado a nivel de la línea de pedido. |
userVisibleStatusLabel |
Obligatorio: Etiqueta o cadena visible para el usuario para el estado. La longitud máxima permitida es de 50 caracteres. |
type |
Obligatorio: Tipo de compra. |
productId |
Es el ID de oferta o producto asociado con esta línea de pedido. |
quantity |
Es la cantidad del artículo. |
unitMeasure |
Unidad de medida. Especifica el tamaño del elemento en las unidades elegidas. El tamaño, junto con el precio activo, se usan para determinar el precio unitario. |
returnsInfo |
Muestra información de esta línea de pedido. Si no la estableces, esta línea de pedido hereda la información de devoluciones a nivel del pedido. |
fulfillmentInfo |
Información de entrega para esta línea de pedido. Si no la estableces, esta línea de pedido hereda la información de entrega a nivel del pedido. |
itemOptions[] |
Complementos o subelementos adicionales. |
productDetails |
Son los detalles sobre el producto. |
extension |
Cualquier campo adicional que se intercambie entre el comercio y Google Nota: No se recomienda usar esta extensión. Según el caso de uso o las circunstancias, considera una de las siguientes opciones: 1. Define los campos en PurchaseItemExtension si se podría usar para otros casos de uso (es decir, capacidad o funcionalidad genéricas). 2. Usa la extensión_vertical si es específica para una función o un caso de uso personalizado y no genérico. Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
PurchaseStatus
Es el estado de compra asociado con una orden de compra o una línea de pedido en particular.
Enumeraciones | |
---|---|
PURCHASE_STATUS_UNSPECIFIED |
Estado sin especificar. |
READY_FOR_PICKUP |
Listo para retirar. |
SHIPPED |
Enviado. |
DELIVERED |
Entregado. |
OUT_OF_STOCK |
Agotado. |
IN_PREPARATION |
“IN_PREPARATION” podrían tener un significado diferente en un contexto diferente. Para pedidos de COMIDA, podría ser la comida que se está preparando. En el caso de la venta minorista, puede ser que un artículo esté empaquetado. |
CREATED |
Se crea el pedido. |
CONFIRMED |
El comercio confirmó el pedido. |
REJECTED |
El comercio rechazó el pedido o la línea de pedido. |
RETURNED |
El usuario devolvió el elemento. |
CANCELLED |
El usuario canceló el pedido o la línea de pedido. |
CHANGE_REQUESTED |
El usuario solicitó un cambio en el pedido, y el integrador está procesando el cambio. El pedido debe moverse a otro estado después de que se procesa la solicitud. |
PurchaseType
Indica la categoría de compra.
Enumeraciones | |
---|---|
PURCHASE_TYPE_UNSPECIFIED |
Valor desconocido. |
RETAIL |
Incluye compras como bienes físicos. |
FOOD |
Incluye la compra de pedidos de comida. |
GROCERY |
Compra de alimentos. |
MOBILE_RECHARGE |
Compra de recarga móvil prepagada. |
MerchantUnitMeasure
Medida de precio por unidad del comercio.
Representación JSON | |
---|---|
{
"measure": number,
"unit": enum ( |
Campos | |
---|---|
measure |
Valor (Value): ejemplo 1.2 |
unit |
Unidad: Ejemplo POUND, GRAM. |
Unidad
Enumeraciones | |
---|---|
UNIT_UNSPECIFIED |
Unidad sin especificar. |
MILLIGRAM |
Miligramo. |
GRAM |
Gramo. |
KILOGRAM |
Kilogramo. |
OUNCE |
Onza. |
POUND |
Libra. |
PurchaseReturnsInfo
Muestra información asociada con un pedido o una línea de pedido en particular.
Representación JSON | |
---|---|
{ "isReturnable": boolean, "daysToReturn": integer, "policyUrl": string } |
Campos | |
---|---|
isReturnable |
Si es verdadero, se permite mostrar un resultado. |
daysToReturn |
Se permite la devolución en ese plazo. |
policyUrl |
Vínculo a la política de devoluciones. |
PurchaseFulfillmentInfo
Es la información de entrega asociada con una orden de compra o una línea de pedido en particular.
Representación JSON | |
---|---|
{ "id": string, "fulfillmentType": enum ( |
Campos | |
---|---|
id |
Es el identificador único de esta opción de servicio. |
fulfillmentType |
Obligatorio: El tipo de entrega. |
expectedFulfillmentTime |
Una ventana si se especifica un intervalo de tiempo o ETA si se especifica una sola hora. Hora de retiro o entrega estimada |
expectedPreparationTime |
Una ventana si se especifica un intervalo de tiempo o ETA si se especifica una sola hora. Tiempo previsto para preparar la comida. Se prefiere una sola vez. |
location |
Ubicación de retiro o entrega |
expireTime |
Hora en la que vence esta opción de entrega. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
price |
El costo de esta opción. |
fulfillmentContact |
Es el contacto del usuario para esta entrega. |
shippingMethodName |
Es el nombre del método de envío que seleccionó el usuario. |
storeCode |
StoreCode de la ubicación. Ejemplo: Walmart es el comercio, y storeCode es la tienda Walmart en la que se realizó la entrega. https://support.google.com/business/answer/3370250?ref_topic=4596653. |
pickupInfo |
Información adicional sobre cómo se elegiría el pedido. Este campo solo sería aplicable cuando el tipo de entrega es PICKUP. |
Tipo
Tipo de entrega.
Enumeraciones | |
---|---|
TYPE_UNSPECIFIED |
Indica un tipo no especificado. |
DELIVERY |
Este pedido se entregará. |
PICKUP |
Debes retirar este pedido. |
Hora
Construcción de tiempo para representar el tiempo de un evento que se usará al mostrar un pedido al usuario.
Representación JSON | |
---|---|
{ "timeIso8601": string } |
Campos | |
---|---|
timeIso8601 |
Representa la hora del evento del pedido, como la hora de la reserva, la hora de entrega, etcétera. Puede ser una duración (hora de inicio y finalización), solo la fecha, la fecha y la hora, etc. Consulta https://en.wikipedia.org/wiki/ISO_8601 para conocer todos los formatos compatibles. |
PickupInfo
Son los detalles sobre el retiro de un pedido. Incluye detalles como el tipo de retiro y metadatos adicionales adjuntos a cada tipo, si corresponde.
Representación JSON | |
---|---|
{ "pickupType": enum ( |
Campos | |
---|---|
pickupType |
Método de retiro, como INSTORE, CURBSIDE, etcétera |
curbsideInfo |
Detalles específicos de la información de retiro en la puerta. Si retiroType no es "CURBSIDE", se ignorará este campo. |
checkInInfo[] |
Lista de diversos métodos que admite el socio para el registro. |
PickupType
Lista de tipos de retiro admitidos.
Enumeraciones | |
---|---|
UNSPECIFIED |
Tipo de retiro sin especificar. |
INSTORE |
Retira la comida dentro del restaurante. |
CURBSIDE |
Estaciona el vehículo en un lugar designado fuera del restaurante y alguien entregaría la comida allí. |
CurbsideInfo
Detalles sobre cómo se facilitarían los pedidos en la puerta.
Representación JSON | |
---|---|
{ "curbsideFulfillmentType": enum ( |
Campos | |
---|---|
curbsideFulfillmentType |
Los socios necesitan información adicional para facilitar los pedidos de retiro en la puerta. Según el tipo de entrega que se elija, se recopilarán los detalles correspondientes del usuario. |
userVehicle |
Son los detalles del vehículo del usuario que realiza el pedido. |
CurbsideFulfillmentType
Valores posibles de los tipos de entrega en la puerta.
Enumeraciones | |
---|---|
UNSPECIFIED |
Tipo de entrega en la puerta sin especificar. |
VEHICLE_DETAIL |
Se requieren los detalles del vehículo para facilitar los retiros en la puerta. |
Vehículo
Detalles sobre un vehículo
Representación JSON | |
---|---|
{
"make": string,
"model": string,
"licensePlate": string,
"colorName": string,
"image": {
object ( |
Campos | |
---|---|
make |
Marca del vehículo (p.ej., "Honda"). Se muestra al usuario y debe localizarse. Obligatorio. |
model |
Modelo del vehículo (p.ej., "Grom"). Se muestra al usuario y debe localizarse. Obligatorio. |
licensePlate |
Número de matrícula del vehículo (p. ej., "1ABC234") Obligatorio. |
colorName |
Nombre del color del vehículo, p. ej., negro (opcional). |
image |
URL de una foto del vehículo. La foto se mostrará en aproximadamente 256x256 px. Debe ser un archivo .jpg o png. Opcional. |
CheckInInfo
Son los metadatos que requiere el socio para admitir un método de registro.
Representación JSON | |
---|---|
{
"checkInType": enum ( |
Campos | |
---|---|
checkInType |
Método utilizado para enviar instrucciones de registro de entrada. |
CheckInType
Se usan varios métodos para enviar instrucciones de registro.
Enumeraciones | |
---|---|
CHECK_IN_TYPE_UNSPECIFIED |
Valor desconocido. |
EMAIL |
La información de registro se enviará por correo electrónico. |
SMS |
La información de registro se enviará por SMS. |
ItemOption
Representa complementos o subelementos.
Representación JSON | |
---|---|
{ "id": string, "name": string, "prices": [ { object ( |
Campos | |
---|---|
id |
En el caso de las opciones que son artículos, usa el ID de artículo único. |
name |
Nombre de la opción. |
prices[] |
Es el precio total de la opción. |
note |
Nota relacionada con la opción. |
quantity |
Para las opciones que son artículos, la cantidad. |
productId |
Es el ID de oferta o producto asociado con esta opción. |
subOptions[] |
Para definir otras subopciones anidadas. |
ProductDetails
Son los detalles sobre el producto.
Representación JSON | |
---|---|
{ "productId": string, "gtin": string, "plu": string, "productType": string, "productAttributes": { string: string, ... } } |
Campos | |
---|---|
productId |
Es el ID de oferta o producto asociado con esta línea de pedido. |
gtin |
Es el código comercial global de artículo del producto. Es útil si offerId no está presente en Merchant Center. Opcional. |
plu |
Los códigos de búsqueda de precios, comúnmente llamados códigos PLU, números de PLU, PLU, códigos de productos o etiquetas de productos, son un sistema de números que identifican de manera única los productos a granel que se venden en supermercados y supermercados. |
productType |
Es la categoría de producto definida por el comercio. P.ej., "Página principal > Tienda de comestibles > Productos lácteos y Huevos > Leche > Leche entera" |
productAttributes |
Detalles sobre el producto proporcionados por el comercio, p.ej., { "allergen": "peanut" }. Es útil si offerId no está presente en Merchant Center. Opcional. Es un objeto que contiene una lista de pares |
ReservationItemExtension
Contenidos de líneas de pedido para pedidos de reserva, como restaurantes, cortes de pelo, etcétera
Representación JSON | |
---|---|
{ "status": enum ( |
Campos | |
---|---|
status |
Obligatorio: Estado de la reserva. |
userVisibleStatusLabel |
Obligatorio: Etiqueta o cadena visible para el usuario para el estado. La longitud máxima permitida es de 50 caracteres. |
type |
Tipo de reserva. Se puede desactivar si ninguna de las opciones de tipo es aplicable. |
reservationTime |
Es la hora a la que está programado el servicio o evento. Puede ser un intervalo de tiempo, una fecha o una fecha y hora exacta. |
userAcceptableTimeRange |
Es el intervalo de tiempo aceptable para el usuario. |
confirmationCode |
Código de confirmación para esta reserva. |
partySize |
Es la cantidad de personas. |
staffFacilitators[] |
Facilitadores del personal que se encargarán de la reserva. P. ej., El peluquero. |
location |
Ubicación del servicio o evento. |
ReservationStatus
Estado de la reserva.
Enumeraciones | |
---|---|
RESERVATION_STATUS_UNSPECIFIED |
Estado sin especificar. |
PENDING |
La reserva está pendiente. |
CONFIRMED |
Se confirmó la reserva. |
CANCELLED |
El usuario cancela la reserva. |
FULFILLED |
Se completó la reserva. |
CHANGE_REQUESTED |
Se solicitó el cambio de la reserva |
REJECTED |
El integrador venció o rechazó la reserva. |
ReservationType
Tipo de reserva.
Enumeraciones | |
---|---|
RESERVATION_TYPE_UNSPECIFIED |
Tipo no especificado |
RESTAURANT |
Reserva para restaurante. |
HAIRDRESSER |
Reserva para peluquero. |
StaffFacilitator
Información sobre la persona de servicio.
Representación JSON | |
---|---|
{
"name": string,
"image": {
object ( |
Campos | |
---|---|
name |
El nombre del facilitador del personal. P. ej., "Juan Pérez" |
image |
Imágenes del artista. |
PaymentData
Son los datos de pago relacionados con un pedido.
Representación JSON | |
---|---|
{ "paymentResult": { object ( |
Campos | |
---|---|
paymentResult |
Es el resultado del pago que usa el integrador para completar una transacción. Actions on Google propagará este campo si Actions-on-Google administra la experiencia de confirmación de la compra. |
paymentInfo |
Información de pago relacionada con el pedido que es útil para la interacción del usuario. |
PaymentResult
El integrador usa el resultado del pago para completar una transacción.
Representación JSON | |
---|---|
{ // Union field |
Campos | ||
---|---|---|
Campo de unión result . Se proporcionan los datos de Google Payments o una forma de pago de comerciante. Las direcciones (result ) solo pueden ser una de las siguientes opciones: |
||
googlePaymentData |
Google proporcionó los datos de la forma de pago. Si tu procesador de pagos aparece como compatible con Google aquí: https://developers.google.com/pay/api/, navega a tu procesador de pagos a través del vínculo para obtener más información. De lo contrario, consulta la siguiente documentación para conocer los detalles de la carga útil. https://developers.google.com/pay/api/payment-data-cryptography |
|
merchantPaymentMethodId |
Forma de pago proporcionada por el comercio o por la acción elegida por el usuario. |
PaymentInfo
Información de pago relacionada con el pedido realizado. Este proto captura información útil para la interacción del usuario.
Representación JSON | |
---|---|
{ "paymentMethodDisplayInfo": { object ( |
Campos | |
---|---|
paymentMethodDisplayInfo |
Es la información visible de la forma de pago que se usó para realizar la transacción. |
paymentMethodProvenance |
Procedencia de la forma de pago utilizada para la transacción. Es posible que el usuario haya registrado la misma forma de pago en Google y en el comercio. |
PaymentMethodDisplayInfo
El integrador usa el resultado del pago para completar una transacción.
Representación JSON | |
---|---|
{
"paymentType": enum ( |
Campos | |
---|---|
paymentType |
El tipo de pago. |
paymentMethodDisplayName |
Es el nombre visible del usuario de la forma de pago. Por ejemplo, cuenta corriente VISA **** 1234 **** 5678 |
paymentMethodVoiceName |
El nombre de la forma de pago que se le informará al usuario en el caso de los dispositivos con el Asistente de voz integrado. Por ejemplo, “visa que termina en uno, dos, tres, cuatro” o “cuenta corriente que termina en cinco seis siete ocho”. Nota: Esta es la cadena optimizada para voz que se usará en lugar de paymentMethodDisplayName en dispositivos con el Asistente de voz integrado. Si no se establece esta cadena, se leerá el nombre de paymentMethodDisplayName al usuario. |
PaymentType
PaymentType indica la forma de pago que se usó para la forma de pago proporcionada por el comercio. La acción también debe proporcionar un nombre visible para la forma de pago.
Enumeraciones | |
---|---|
PAYMENT_TYPE_UNSPECIFIED |
No se especificó el tipo de pago. |
PAYMENT_CARD |
Una tarjeta prepagada o de crédito o débito |
BANK |
La forma de pago es una cuenta bancaria. |
LOYALTY_PROGRAM |
La forma de pago es un programa de lealtad. |
CASH |
La forma de pago es en efectivo. |
GIFT_CARD |
La forma de pago es una tarjeta de regalo. |
WALLET |
Billetera de terceros, p.ej., PayPal |
PaymentMethodProvenance
Representa la procedencia de la forma de pago utilizada para la transacción.
Enumeraciones | |
---|---|
PAYMENT_METHOD_PROVENANCE_UNSPECIFIED |
No se especifica la procedencia. |
PAYMENT_METHOD_PROVENANCE_GOOGLE |
La procedencia es Google. |
PAYMENT_METHOD_PROVENANCE_MERCHANT |
La procedencia es Comerciante. |
Promoción
Promociones/ofertas que se agregaron al carrito.
Representación JSON | |
---|---|
{ "coupon": string } |
Campos | |
---|---|
coupon |
Obligatorio: Se aplicó el código de cupón a esta oferta. |
PurchaseOrderExtension
Extensión de pedido para la vertical de compras. Estas propiedades se aplican a todas las líneas de pedido dentro del pedido, a menos que se anulen en una línea de pedido.
Representación JSON | |
---|---|
{ "status": enum ( |
Campos | |
---|---|
status |
Obligatorio: Estado general del pedido. |
userVisibleStatusLabel |
Etiqueta o cadena visible para el usuario para el estado. La longitud máxima permitida es de 50 caracteres. |
type |
Obligatorio: Tipo de compra. |
returnsInfo |
Devolución de la información del pedido |
fulfillmentInfo |
Es la información de entrega del pedido. |
purchaseLocationType |
Ubicación de la compra (en la tienda o en línea) |
errors[] |
Opcional: Errores por los que se rechazó este pedido |
extension |
Cualquier campo adicional que se intercambie entre el comercio y Google Nota: No se recomienda usar esta extensión. Según el caso de uso o las circunstancias, considera una de las siguientes opciones: 1. Define campos en PurchaseOrderExtension si se podría usar para otros casos de uso (es decir, capacidades o funcionalidades genéricas). 2. Usa la extensión_vertical si es específica para una función o un caso de uso personalizado y no genérico. Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
PurchaseLocationType
Es el tipo de ubicación de la compra.
Enumeraciones | |
---|---|
UNSPECIFIED_LOCATION |
Valor desconocido. |
ONLINE_PURCHASE |
Todas las compras realizadas en línea. |
INSTORE_PURCHASE |
Todas las compras en la tienda. |
PurchaseError
Errores por los que se puede rechazar una orden de compra.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | |
---|---|
type |
Obligatorio: Representa el motivo detallado por el que el comercio rechaza un pedido. |
description |
Descripción adicional del error. |
entityId |
El ID de entidad que corresponde al error. Ejemplo que puede corresponder a LineItemId o ItemOptionId. |
updatedPrice |
Es relevante en caso de un tipo de error de PRICE_CHANGED o INCORRECT_PRICE. |
availableQuantity |
La cantidad está disponible ahora. Se aplica en el caso de AVAILABILITY_CHANGED. |
ErrorType
Tipos de errores posibles.
Enumeraciones | |
---|---|
ERROR_TYPE_UNSPECIFIED |
Error desconocido |
NOT_FOUND |
No se encontró la entidad. Puede ser Item, FulfillmentOption o Promoción. El ID de entidad es obligatorio. |
INVALID |
Los datos de la entidad no son válidos. puede ser Item, FulfillmentOption o Promoción. El ID de entidad es obligatorio. |
AVAILABILITY_CHANGED |
Artículo no disponible o insuficiente para cumplir con la solicitud. El ID de entidad es obligatorio. |
PRICE_CHANGED |
El precio del artículo es diferente del precio en la entidad Item. Se requieren el ID de entidad y el precio actualizado. |
INCORRECT_PRICE |
Errores de precio en Tarifas y Total Se requieren el ID de entidad y el precio actualizado. |
REQUIREMENTS_NOT_MET |
Restricciones para aceptar un pedido que no se cumple: tamaño mínimo del carrito, etcétera. |
TOO_LATE |
Venció la opción FulfillmentOption. |
NO_CAPACITY |
No hay capacidad de servicio disponible. Usa este código de error si ninguno de los tipos de errores más detallados es aplicable. |
NO_COURIER_AVAILABLE |
No se encontró ningún servicio de mensajería. Un tipo de error detallado que puede clasificarse como NO_CAPACITY. |
INELIGIBLE |
El usuario no es apto para realizar pedidos (se encuentra en la lista negra). |
OUT_OF_SERVICE_AREA |
No se puede realizar la entrega a la dirección solicitada debido a las normas fronterizas, etc. |
CLOSED |
El restaurante está cerrado a la hora de hacer pedidos. |
PROMO_NOT_APPLICABLE |
Es un código de error genérico que permite detectar todos los casos en los que no se puede aplicar el código promocional, si ninguno de los que se incluyen a continuación es adecuado. Agrega el código promocional como ID de la entidad. |
PROMO_NOT_RECOGNIZED |
El socio no reconoció el código del cupón. Agrega el código promocional como ID de la entidad. |
PROMO_EXPIRED |
No se pudo aplicar porque la promoción venció. Agrega el código promocional como ID de la entidad. |
PROMO_USER_INELIGIBLE |
El usuario actual no cumple con los requisitos para obtener este cupón. Agrega el código promocional como ID de la entidad. |
PROMO_ORDER_INELIGIBLE |
El pedido actual no es apto para este cupón. Agrega el código promocional como ID de la entidad. |
UNAVAILABLE_SLOT |
El horario disponible para pedido por adelantado no está disponible. |
FAILED_PRECONDITION |
No se cumplen las restricciones para aceptar un pedido: tamaño mínimo del carrito, etcétera. |
PAYMENT_DECLINED |
El pago no es válido. |
MERCHANT_UNREACHABLE |
No se puede acceder al comercio. Esto es útil cuando un socio es un agregador y no puede comunicarse con el comercio. |
ACCOUNT_LINKING_FAILED |
El comercio intentó vincular la Cuenta de Google del usuario con una cuenta en su sistema, pero se produjo un error. |
TicketOrderExtension
Pedir contenido para pedidos de entradas como películas, deportes, etc.
Representación JSON | |
---|---|
{
"ticketEvent": {
object ( |
Campos | |
---|---|
ticketEvent |
El evento se aplica a todas las entradas de líneas de pedido. |
TicketEvent
Representa un evento único.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | |
---|---|
type |
Obligatorio: Tipo del evento de entrada (p.ej., película, concierto. |
name |
Obligatorio: Nombre del evento. Por ejemplo, si el evento es una película, este debe ser el nombre de la película. |
description |
Descripción del evento. |
url |
Es la URL de la información del evento. |
location |
Es la ubicación donde se lleva a cabo el evento o se encuentra una organización. |
eventCharacters[] |
Son los personajes relacionados con este evento. Pueden ser directores o actores de un evento cinematográfico, o bien actores de un concierto, etcétera. |
startDate |
Hora de inicio |
endDate |
Hora de finalización |
doorTime |
Hora de entrada, que puede ser diferente de la hora de inicio del evento. p.ej., el evento comienza a las 9 a.m., pero el horario de entrada es a las 8:30 a.m. |
Tipo
El tipo de evento.
Enumeraciones | |
---|---|
EVENT_TYPE_UNKNOWN |
Tipo de evento desconocido. |
MOVIE |
Película. |
CONCERT |
Concierto |
SPORTS |
Deportes. |
EventCharacter
Un carácter de evento, p.ej., organizador, artista, etc.
Representación JSON | |
---|---|
{ "type": enum ( |
Campos | |
---|---|
type |
Tipo del carácter del evento, p.ej., es el actor o el director. |
name |
Es el nombre del personaje. |
image |
Imágenes del personaje. |
Tipo
Tipo de carácter.
Enumeraciones | |
---|---|
TYPE_UNKNOWN |
Tipo desconocido. |
ACTOR |
Perpetrador. |
PERFORMER |
Artistas |
DIRECTOR |
Director |
ORGANIZER |
Organizador. |
UserNotification
Notificación opcional al usuario que se mostrará como parte de la actualización del pedido.
Representación JSON | |
---|---|
{ "title": string, "text": string } |
Campos | |
---|---|
title |
Es el título de la notificación al usuario. La longitud máxima permitida es de 30 caracteres. |
text |
El contenido de la notificación. La longitud máxima permitida es de 100 caracteres. |
NextScene
Representa la escena que se ejecutará a continuación.
Representación JSON | |
---|---|
{ "name": string } |
Campos | |
---|---|
name |
Nombre de la escena que se ejecutará a continuación. |
Sesión
Contiene información sobre la sesión de conversación actual
Representación JSON | |
---|---|
{
"id": string,
"params": {
string: value,
...
},
"typeOverrides": [
{
object ( |
Campos | |
---|---|
id |
Obligatorio. Es el ID único global de la sesión de conversación actual. Este campo es de solo lectura. |
params |
Obligatorio. Lista de todos los parámetros recopilados de los formularios y los intents durante la sesión. Key es el nombre del parámetro. Los parámetros definidos aquí se combinarán con los parámetros ya definidos en la sesión. Se quitarán de la sesión los parámetros con valor nulo. Consulta la documentación sobre el almacenamiento de la sesión: https://developers.google.com/assistant/conversational/storage-session. Es un objeto que contiene una lista de pares |
typeOverrides[] |
Opcional. Tipos específicos de la sesión. La definición de tipo de sesión puede complementar o reemplazar los tipos existentes. Los nombres de tipos deben ser únicos. |
languageCode |
Idioma de la sesión de conversación actual. Sigue el código de idioma IETF BCP-47 http://www.rfc-editor.org/rfc/bcp/bcp47.txt. Puede ser diferente de la configuración regional del usuario si la acción usa funciones en varios idiomas. Por ejemplo, cuando se configura controlador_response.expected.language_code, se cambiará el idioma de la conversación en todos los turnos siguientes, lo que se reflejará en este campo. |
TypeOverride
Representa una anulación para un tipo.
Representación JSON | |
---|---|
{ "name": string, "mode": enum ( |
Campos | |
---|---|
name |
Obligatorio. Es el nombre del tipo que se complementará o anulará. |
mode |
Obligatorio. Cómo se debe combinar este tipo con otros valores de tipo. |
synonym |
|
TypeOverrideMode
Los tipos de modificaciones para un tipo de entidad de sesión.
Enumeraciones | |
---|---|
TYPE_UNSPECIFIED |
No especificado. Este valor nunca debe usarse. |
TYPE_REPLACE |
Las definiciones de tipo en esta respuesta reemplazarán las definiciones de tipo que se definieron anteriormente. |
TYPE_MERGE |
Las definiciones de tipo en esta respuesta se combinarán con las definiciones de tipo que se definieron anteriormente. Las definiciones de tipo nuevas reemplazarán las definiciones de tipo existentes. |
SynonymType
Representa un tipo con sinónimos.
Representación JSON | |
---|---|
{
"entries": [
{
object ( |
Campos | |
---|---|
entries[] |
Obligatorio. Lista de entradas para el tipo de sinónimo. |
Entrada
Representa una entrada para un tipo de sinónimo.
Representación JSON | |
---|---|
{
"name": string,
"synonyms": [
string
],
"display": {
object ( |
Campos | |
---|---|
name |
Obligatorio. Nombre de la entrada (p.ej., “bicicleta”). La entrada de este campo debe incluirse en el campo de sinónimos repetidos para que se reconozca como un valor de tipo válido. |
synonyms[] |
Obligatorio. Lista de sinónimos para la entrada (p.ej., "bike", "cycle"). |
display |
Opcional. Es la información que se muestra en el artículo. |
EntryDisplay
Representación JSON | |
---|---|
{ "title": string, "description": string, "image": { object ( |
Campos | |
---|---|
title |
Obligatorio. Es el título del artículo. Cuando se presiona, este texto se vuelve a publicar en la conversación tal como si el usuario lo hubiera escrito. Cada título debe ser único entre el conjunto de elementos de la colección. |
description |
Opcional. Texto del cuerpo de la tarjeta |
image |
Opcional. La imagen que se mostrará. |
footer |
Opcional. Texto del pie de página del elemento de la colección de navegación, que se muestra debajo de la descripción. Una sola línea de texto, truncada con puntos suspensivos |
openUrl |
URL del documento asociado con la navegación del elemento del carrusel. Obligatorio para navegar por el carrusel. |
Usuario
Representa al usuario que realiza una solicitud a la acción.
Representación JSON | |
---|---|
{ "locale": string, "params": { string: value, ... }, "accountLinkingStatus": enum ( |
Campos | |
---|---|
locale |
Es la configuración regional principal del usuario que realiza la solicitud. Sigue el código de idioma IETF BCP-47 http://www.rfc-editor.org/rfc/bcp/bcp47.txt. Sin embargo, no se incluye la subetiqueta de secuencia de comandos. |
params |
Opcional. Es la lista de todos los parámetros asociados con el usuario actual. Consulta la documentación sobre el almacenamiento del usuario: https://developers.google.com/assistant/conversational/storage-user. Es un objeto que contiene una lista de pares |
accountLinkingStatus |
Si la cuenta de usuario está vinculada a la app |
verificationStatus |
Indica el estado de verificación del usuario. |
lastSeenTime |
La marca de tiempo de la última interacción con este usuario. Este campo se omitirá si el usuario no interactuó antes con el agente. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
engagement |
La participación del usuario actual, incluidas las suscripciones a intents. |
packageEntitlements[] |
Derechos del usuario relacionados con el paquete de Android asociado con la acción actual. |
permissions[] |
Contiene los permisos otorgados por el usuario para esta acción. |
AccountLinkingStatus
Indica si el usuario final vinculó su cuenta a esta app. Consulta la documentación sobre la vinculación de cuentas: https://developers.google.com/assistant/identity.
Enumeraciones | |
---|---|
ACCOUNT_LINKING_STATUS_UNSPECIFIED |
Desconocido. |
NOT_LINKED |
El usuario no vinculó su cuenta a esta app. |
LINKED |
El usuario vinculó su cuenta a esta app. |
UserVerificationStatus
Indica si Google verificó al usuario. El estado VERIFIED indica que puedes guardar datos entre conversaciones con el campo de parámetros o con la vinculación de cuentas.
Enumeraciones | |
---|---|
USER_VERIFICATION_STATUS_UNSPECIFIED |
Desconocido. |
GUEST |
Usuario invitado. |
VERIFIED |
Usuario verificado. |
Participación
Proporciona información adicional de solo lectura sobre los mecanismos de participación para los que se registró el usuario actual. Por ejemplo, puede ser útil saber a qué intents ya se suscribió el usuario para evitar pedirle que vuelva a suscribirse al mismo intent. Es decir, esta información se puede usar para enrutar de forma condicional a una escena para configurar DailyUpdates o PushNotifications solo si el usuario aún no se suscribió. Consulta la documentación sobre la participación de los usuarios: https://developers.google.com/assistant/engagement.
Representación JSON | |
---|---|
{ "pushNotificationIntents": [ { object ( |
Campos | |
---|---|
pushNotificationIntents[] |
Contiene una lista de intents para los que el usuario habilitó las notificaciones push. |
dailyUpdateIntents[] |
Contiene una lista de intents para los que el usuario habilitó la actualización diaria. |
IntentSubscription
Describe una IntentSubscription existente.
Representación JSON | |
---|---|
{ "intent": string, "contentTitle": string } |
Campos | |
---|---|
intent |
Nombre del intent al que se suscribió. |
contentTitle |
Una descripción breve de la suscripción. Se usa como etiqueta de la notificación y cuando Asistente le solicita permiso al usuario. |
PackageEntitlements
Es una lista de derechos del usuario relacionados con un nombre de paquete. Consulta la documentación sobre transacciones de artículos digitales: https://developers.google.com/assistant/transactions/digital/dev-guide-digital-non-consumables
Representación JSON | |
---|---|
{
"packageName": string,
"entitlements": [
{
object ( |
Campos | |
---|---|
packageName |
Es el nombre del paquete de Android especificado en el paquete de acciones. |
entitlements[] |
Son los derechos del usuario para el paquete determinado. |
Derecho
Define los derechos digitales de un usuario.
Representación JSON | |
---|---|
{ "sku": string, "skuType": enum ( |
Campos | |
---|---|
sku |
SKU del producto Nombre del paquete de la aplicación pagada, sufijo del dócid Finsky para las compras directas desde la aplicación y la suscripción integrada en la aplicación. Haz coincidir getSku() en la API de Facturación integrada de Play. Consulta la documentación de la Facturación integrada en Play: https://developer.android.com/google/play/billing. |
skuType |
Es el tipo de SKU. |
inAppDetails |
Solo está presente para compras directas desde la aplicación y suscripciones integradas en la aplicación. |
SkuType
Enumeraciones | |
---|---|
SKU_TYPE_UNSPECIFIED |
|
IN_APP |
Compra directa desde la aplicación |
SUBSCRIPTION |
Suscripciones |
APP |
Apps pagadas |
SignedData
Representación JSON | |
---|---|
{ "inAppPurchaseData": { object }, "inAppDataSignature": string } |
Campos | |
---|---|
inAppPurchaseData |
Contiene todos los datos de compras directas desde la aplicación en formato JSON. Consulta los detalles en la tabla 6 de https://developer.android.com/google/play/billing/billing_reference.html. |
inAppDataSignature |
Coincide con IN_APP_DATA_SIGNATURE con el método getPurchases() en la API de Facturación integrada en Play. |
Permiso
Valores posibles para el permiso.
Enumeraciones | |
---|---|
PERMISSION_UNSPECIFIED |
Permiso no especificado. |
DEVICE_PRECISE_LOCATION |
Solicita al usuario la ubicación precisa, la latitud y longitud, y la dirección con formato. |
DEVICE_COARSE_LOCATION |
Solicita la ubicación aproximada, el código postal, la ciudad y el código de país del usuario. |
UPDATE |
Solicita permisos para enviar actualizaciones. Consulta https://developers.google.com/assistant/engagement/daily. |
Página principal
Representa la estructura de HomeGraph a la que pertenece el dispositivo de destino del usuario.
Representación JSON | |
---|---|
{ "params": { string: value, ... } } |
Campos | |
---|---|
params |
Opcional. Lista de parámetros asociados con la estructura de HomeGraph a la que pertenece el dispositivo de destino. Consulta la documentación sobre el almacenamiento en la casa: https://developers.google.com/assistant/conversational/storage-home. Es un objeto que contiene una lista de pares |
Dispositivo
Representa el dispositivo que usa el usuario para realizar una solicitud a la acción.
Representación JSON | |
---|---|
{ "capabilities": [ enum ( |
Campos | |
---|---|
capabilities[] |
Obligatorio. las capacidades del dispositivo que realiza una solicitud a la acción. |
currentLocation |
Opcional. Es la ubicación del dispositivo del usuario. Ten en cuenta que esto solo se completa después de que el usuario final otorga los permisos de ubicación. Consulta el mensaje de ubicación para obtener más detalles sobre qué campos se configuran según el permiso general o detallado. Consulta la documentación sobre permisos: https://developers.google.com/assistant/conversational/permissions. |
timeZone |
Opcional. Zona horaria asociada con el dispositivo del cliente. Podría usarse para resolver valores de fecha y hora. |
Función
Funciones que admite la plataforma del dispositivo al momento de la solicitud.
Enumeraciones | |
---|---|
UNSPECIFIED |
Capacidad del dispositivo no especificada. |
SPEECH |
El dispositivo puede hablarle al usuario a través de la función de texto a voz o SSML. |
RICH_RESPONSE |
El dispositivo puede mostrar respuestas enriquecidas, como tarjetas, listas y tablas. |
LONG_FORM_AUDIO |
El dispositivo puede reproducir contenido multimedia de audio de formato largo, como música y podcasts. |
INTERACTIVE_CANVAS |
El dispositivo puede mostrar una respuesta de lienzo interactiva. |
WEB_LINK |
El dispositivo puede usar vínculos web en respuestas enriquecidas para abrir un navegador web. |
HOME_STORAGE |
El dispositivo puede permitir guardar y recuperar almacenamiento de la casa. |
Ubicación
Contenedor que representa una ubicación.
Representación JSON | |
---|---|
{ "coordinates": { object ( |
Campos | |
---|---|
coordinates |
Coordenadas geográficas Requiere el permiso [DEVICE_PRECISE_LOCATION]. |
postalAddress |
Dirección postal. Requiere el permiso [DEVICE_PRECISE_LOCATION] o [DEVICE_COARSE_LOCATION]. Cuando se otorga el permiso de ubicación aproximada, solo se otorga el campo "postalCode" y 'localidad' se espera que se propaguen los campos. El permiso de ubicación precisa completará campos adicionales, como "administrativeArea" y 'addressLines'. |
TimeZone
Representa una zona horaria de la base de datos de zonas horarias de IANA.
Representación JSON | |
---|---|
{ "id": string, "version": string } |
Campos | |
---|---|
id |
Zona horaria de la base de datos de zonas horarias de IANA, p. ej., “America/New_York”. |
version |
Opcional. Número de versión de la base de datos de zonas horarias de IANA, p. ej., “2019a”. |
Contexto
Contiene información de contexto cuando el usuario realiza una consulta. Dicho contexto incluye, sin limitaciones, la información sobre la sesión multimedia activa, el estado de la aplicación web de lienzo, etcétera.
Representación JSON | |
---|---|
{ "media": { object ( |
Campos | |
---|---|
media |
Contiene información contextual sobre la sesión multimedia activa actual. |
canvas |
Contiene información contextual sobre el lienzo actual. |
MediaContext
Contiene información contextual sobre la sesión multimedia activa actual.
Representación JSON | |
---|---|
{ "progress": string, "index": integer } |
Campos | |
---|---|
progress |
Progreso del contenido multimedia del archivo multimedia activo actual. Es una duración en segundos con hasta nueve dígitos decimales que termina en " |
index |
Es el índice basado en 0 del archivo multimedia activo actual en la lista de archivos multimedia de la respuesta multimedia. |
CanvasContext
Contiene información contextual sobre el lienzo actual.
Representación JSON | |
---|---|
{ "state": value } |
Campos | |
---|---|
state |
Opcional. Estado establecido por la app de Interactive Canvas de terceros. Esto solo se establece para la solicitud, no para la respuesta. Por ejemplo, si se trata de una app de recetas, el estado puede ser un valor de struct : { "current_page" : 5, "last_page" : 3, } El límite de tamaño es 50 KB. |
Momento previsto
Describe las expectativas para el próximo turno del diálogo.
Representación JSON | |
---|---|
{ "speech": [ string ] } |
Campos | |
---|---|
speech[] |
Es la lista de frases que la acción espera del enunciado del usuario para la personalización de discurso. Se permiten hasta 1,000 frases. Nota: Este campo tiene el mismo significado que ExpectedInput.speech_biasing_hints en la API v2. |