AppRequest

AppRequest es una solicitud que envía el Asistente de Google a una entrega para interactuar con una Acción. La versión de la API se especifica en el encabezado HTTP. En el caso de la versión 1 de la API, el encabezado contiene lo siguiente: Google-Assistant-API-Version: v1. En el caso de la versión 2 de la API, el encabezado contiene lo siguiente: Google-actions-API-Version: 2. Para ver ejemplos de cómo se usa esto en Actions on Google, consulta https://developers.google.com/assistant/df-asdk/reference/conversation-webhook-json .

Representación JSON
{
  "user": {
    object (User)
  },
  "device": {
    object (Device)
  },
  "surface": {
    object (Surface)
  },
  "conversation": {
    object (Conversation)
  },
  "inputs": [
    {
      object (Input)
    }
  ],
  "isInSandbox": boolean,
  "availableSurfaces": [
    {
      object (Surface)
    }
  ]
}
Campos
user

object (User)

Usuario que inició la conversación

device

object (Device)

Información sobre el dispositivo que el usuario usa para interactuar con la Acción.

surface

object (Surface)

Es la información sobre la plataforma con la que interactúa el usuario, p.ej., si puede reproducir audio o si tiene una pantalla.

conversation

object (Conversation)

Contiene datos de la sesión, como el ID y el token de la conversación.

inputs[]

object (Input)

Lista de entradas que corresponden a las entradas esperadas especificadas por la acción. Para el activador de la conversación inicial, la entrada contiene información sobre cómo el usuario activó la conversación.

isInSandbox

boolean

Indica si la solicitud debe manejarse en modo de zona de pruebas.

availableSurfaces[]

object (Surface)

Las superficies están disponibles para el traspaso de superficies cruzadas.

Usuario

Representación JSON
{
  "idToken": string,
  "profile": {
    object (UserProfile)
  },
  "accessToken": string,
  "permissions": [
    enum (Permission)
  ],
  "locale": string,
  "lastSeen": string,
  "userStorage": string,
  "packageEntitlements": [
    {
      object (PackageEntitlement)
    }
  ],
  "userVerificationStatus": enum (UserVerificationStatus)
}
Campos
idToken

string

token que representa la identidad del usuario. Este es un token web de JSON que incluye un perfil codificado. La definición se encuentra en https://developers.google.com/identity/protocols/OpenIDConnect#obtainuserinfo.

profile

object (UserProfile)

Información sobre el usuario final. Algunos campos solo están disponibles si el usuario otorgó permiso para proporcionar esta información a la Acción.

accessToken

string

Un token de OAuth2 que identifica al usuario en el sistema. Solo está disponible si el usuario vincula su cuenta.

permissions[]

enum (Permission)

Contiene los permisos que el usuario otorgó a esta acción.

locale

string

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 la secuencia de comandos.

lastSeen

string (Timestamp format)

La marca de tiempo de la última interacción con este usuario. Este campo se omitirá si el usuario no interactuó con el agente anteriormente.

Es una marca de tiempo en el formato RFC3339 UTC "Zulu", con precisión de nanosegundos. Ejemplo: "2014-10-02T15:01:23.045123456Z".

userStorage

string

Un token opaco proporcionado por la aplicación que se conserva en las conversaciones de un usuario específico. El tamaño máximo de la string es de 10,000 caracteres.

packageEntitlements[]

object (PackageEntitlement)

Lista de derechos del usuario para cada nombre de paquete que aparece en el paquete de acción (si corresponde).

userVerificationStatus

enum (UserVerificationStatus)

Indica el estado de verificación del usuario.

UserProfile

Contiene la información personal del usuario. Los campos solo se completan si el usuario otorga permiso a la acción para un campo en particular.

Representación JSON
{
  "displayName": string,
  "givenName": string,
  "familyName": string
}
Campos
displayName

string

El nombre completo del usuario según se especifica en su Cuenta de Google. Requiere el permiso NAME.

givenName

string

Es el nombre del usuario, como se especifica en su Cuenta de Google. Requiere el permiso NAME.

familyName

string

El apellido del usuario, según se especifica en su Cuenta de Google. Ten en cuenta que este campo puede estar vacío. Requiere el permiso NAME.

PackageEntitlement

Lista de derechos relacionados con un nombre de paquete

Representación JSON
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
Campos
packageName

string

Debe coincidir con el nombre del paquete en el paquete de acción.

entitlements[]

object (Entitlement)

Lista de derechos de una app determinada

Derecho

Define los derechos digitales del usuario. Tipos de derechos posibles: aplicaciones pagadas, compras directas desde la aplicación y suscripciones integradas en la aplicación.

Representación JSON
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
Campos
sku

string

SKU del producto Nombre del paquete de la aplicación pagada, sufijo del documento Finsky para compras directas desde la aplicación y suscripción directa desde la aplicación. Haz coincidir getSku() en la API de Facturación integrada en Play.

skuType

enum (SkuType)

inAppDetails

object (SignedData)

Presente únicamente para compras directas desde la aplicación y suscripciones integradas en la aplicación.

SignedData

Representación JSON
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
Campos
inAppPurchaseData

object (Struct format)

Hacer coincidir INAPP_PURCHASE_DATA del método getPurchases(). 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

string

Coincide con IN_APP_DATA_SIGNATURE con el método getPurchases() en la API de Facturación InApp de Play.

Dispositivo

Información sobre el dispositivo que el usuario usa para interactuar con la Acción.

Representación JSON
{
  "location": {
    object (Location)
  }
}
Campos
location

object (Location)

Representa la ubicación real del dispositivo, como la latitud, la longitud y la dirección con formato. Requiere el permiso DEVICE_COARSE_LOCATION o DEVICE_PRECISE_LOCATION.

Superficie

Información específica de la plataforma del cliente de Asistente de Google con la que el usuario está interactuando La superficie se distingue de los dispositivos por el hecho de que varias plataformas del Asistente pueden alojarse en el mismo dispositivo.

Representación JSON
{
  "capabilities": [
    {
      object (Capability)
    }
  ]
}
Campos
capabilities[]

object (Capability)

Una lista de las funciones que admite la plataforma en el momento de la solicitud, p.ej., actions.capability.AUDIO_OUTPUT

Capacidades

Representa una unidad de funcionalidad que la superficie puede admitir.

Representación JSON
{
  "name": string
}
Campos
name

string

El nombre de la función, p.ej., actions.capability.AUDIO_OUTPUT

Conversación

Representación JSON
{
  "conversationId": string,
  "type": enum (ConversationType),
  "conversationToken": string
}
Campos
conversationId

string

ID único para la conversación de varios turnos. Está asignado para el primer giro. Después de eso, permanecerá igual para los siguientes turnos hasta que la conversación finalice.

type

enum (ConversationType)

indica el estado de la conversación en su ciclo de vida.

conversationToken

string

Token opaco especificado por la acción en el último turno de la conversación. Una Acción lo puede usar para hacer un seguimiento de la conversación o para almacenar datos relacionados.

Entrada

Representación JSON
{
  "rawInputs": [
    {
      object (RawInput)
    }
  ],
  "intent": string,
  "arguments": [
    {
      object (Argument)
    }
  ]
}
Campos
rawInputs[]

object (RawInput)

Transcripción de entrada sin procesar de cada turno de la conversación. Es posible que se requieran varios turnos de conversación para que Actions on Google proporcione algunos tipos de entrada a la Acción.

intent

string

Indica la intención del usuario. Para el primer turno de la conversación, el intent se referirá al intent que activa la Acción. Para los turnos de conversación posteriores, el intent será una acción común en el intent de Google (comienza con "acciones"). Por ejemplo, si la entrada esperada es actions.intent.OPTION, el intent especificado aquí será actions.intent.OPTION si el Asistente de Google pudo satisfacer ese intent, o bien actions.intent.TEXT si el usuario proporcionó otra información. Consulta https://developers.google.com/assistant/df-asdk/reference/intents.

arguments[]

object (Argument)

Una lista de valores de argumento proporcionados para la entrada solicitada por la acción.

RawInput

Representación JSON
{
  "inputType": enum (InputType),

  // Union field input can be only one of the following:
  "query": string,
  "url": string
  // End of list of possible types for union field input.
}
Campos
inputType

enum (InputType)

Indica cómo el usuario proporcionó esta entrada: una respuesta escrita, una respuesta de voz, sin especificar, etc.

Campo de unión input. El valor de entrada real input solo puede ser una de las siguientes opciones:
query

string

Entrada escrita o hablada del usuario final

url

string

La URL de activación.