AppRequest

AppRequest é uma solicitação enviada pelo Google Assistente a um fulfillment para interagir com uma ação. A versão da API é especificada no cabeçalho HTTP. Para a versão 1 da API, o cabeçalho contém: Google-Assistant-API-Version: v1. Para a versão 2 da API, o cabeçalho contém: Google-actions-API-Version: 2. Para conferir exemplos de como isso é usado nas ações no Google, consulte https://developers.google.com/assistant/df-asdk/reference/conversation-webhook-json .

Representação 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)

Usuário que iniciou a conversa.

device

object (Device)

Informações sobre o dispositivo que o usuário está usando para interagir com a ação.

surface

object (Surface)

Informações sobre a superfície com que o usuário está interagindo, por exemplo, se ele pode emitir áudio ou tem uma tela.

conversation

object (Conversation)

Mantém os dados da sessão, como o ID e o token da conversa.

inputs[]

object (Input)

Lista de entradas correspondentes às entradas esperadas especificadas pela ação. Para o acionador de conversa inicial, a entrada contém informações sobre como o usuário acionou a conversa.

isInSandbox

boolean

Indica se a solicitação deve ser tratada no modo sandbox.

availableSurfaces[]

object (Surface)

Plataformas disponíveis para transferência entre superfícies.

Usuário

Representação 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 a identidade do usuário. Este é um token da Web JSON que inclui um perfil codificado. A definição está disponível em https://developers.google.com/identity/protocols/OpenIDConnect#obtainuserinfo.

profile

object (UserProfile)

São informações sobre o usuário final. Alguns campos só estarão disponíveis se o usuário conceder permissão para fornecer essas informações à ação.

accessToken

string

Um token OAuth2 que identifica o usuário no seu sistema. Disponível apenas se o usuário vincular a conta.

permissions[]

enum (Permission)

Contém permissões concedidas pelo usuário para esta ação.

locale

string

Configuração de localidade principal do usuário que fez a solicitação. Segue o código de idioma IETF BCP-47 http://www.rfc-editor.org/rfc/bcp/bcp47.txt. No entanto, a subtag do script não está incluída.

lastSeen

string (Timestamp format)

O carimbo de data/hora da última interação com esse usuário. Este campo será omitido se o usuário nunca interagiu com o agente.

É um carimbo de data/hora no formato UTC "Zulu" RFC3339, medido com precisão de nanossegundos. Exemplo: "2014-10-02T15:01:23.045123456Z".

userStorage

string

Um token opaco fornecido pelo aplicativo que é mantido nas conversas de um determinado usuário. O tamanho máximo da string é de 10 mil caracteres.

packageEntitlements[]

object (PackageEntitlement)

Lista de direitos do usuário para cada nome de pacote listado no pacote de ação, se houver.

userVerificationStatus

enum (UserVerificationStatus)

Indica o status de verificação do usuário.

UserProfile

Contém as informações pessoais do usuário. Os campos só serão preenchidos se o usuário conceder permissão à ação em um campo específico.

Representação JSON
{
  "displayName": string,
  "givenName": string,
  "familyName": string
}
Campos
displayName

string

O nome completo do usuário conforme especificado na Conta do Google. Requer a permissão NAME.

givenName

string

O nome do usuário conforme especificado na Conta do Google. Requer a permissão NAME.

familyName

string

O sobrenome do usuário conforme especificado na Conta do Google. Esse campo pode ficar vazio. Requer a permissão NAME.

PackageEntitlement

Lista de direitos relacionados a um nome de pacote

Representação JSON
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
Campos
packageName

string

Precisa corresponder ao nome do pacote de ação

entitlements[]

object (Entitlement)

Lista de direitos para um determinado app

Direito

Define o direito digital de um usuário. Tipos de direitos possíveis: apps pagos, compras no app e assinaturas no app.

Representação JSON
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
Campos
sku

string

SKU do produto. Nome do pacote do app pago, sufixo de Finsky docid para compra e assinatura no app. Corresponde a getSku() na API Play InApp Billing.

skuType

enum (SkuType)

inAppDetails

object (SignedData)

Presente apenas para compras e assinaturas no app.

SignedData

Representação JSON
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
Campos
inAppPurchaseData

object (Struct format)

Corresponde a INAPP_PURCHASE_DATA no método getPurchases(). Contém todos os dados de compra no app no formato JSON. Veja detalhes na tabela 6 de https://developer.android.com/google/play/billing/billing_reference.html.

inAppDataSignature

string

Corresponde a IN_APP_DATA_SIGNATURE do método getPurchases() na API Play InApp Billing.

Dispositivo

Informações sobre o dispositivo que o usuário está usando para interagir com a ação.

Representação JSON
{
  "location": {
    object (Location)
  }
}
Campos
location

object (Location)

Representa a localização real do dispositivo, como latitude, longitude e endereço formatado. Requer a permissão DEVICE_COARSE_LOCATION ou DEVICE_PRECISE_LOCATION.

Superfície

Informações específicas da plataforma do cliente do Google Assistente com que o usuário está interagindo. A distinção entre a plataforma e o dispositivo é feita pelo fato de que várias superfícies do Google Assistente podem estar no mesmo dispositivo.

Representação JSON
{
  "capabilities": [
    {
      object (Capability)
    }
  ]
}
Campos
capabilities[]

object (Capability)

Uma lista de recursos compatíveis com a superfície no momento da solicitação, por exemplo, actions.capability.AUDIO_OUTPUT

Capacidade

Representa uma unidade de funcionalidade compatível com a superfície.

Representação JSON
{
  "name": string
}
Campos
name

string

O nome da capacidade, por exemplo, actions.capability.AUDIO_OUTPUT

Conversa

Representação JSON
{
  "conversationId": string,
  "type": enum (ConversationType),
  "conversationToken": string
}
Campos
conversationId

string

ID exclusivo da conversa de vários turnos. Está atribuído para a primeira curva. Depois disso, ele permanece o mesmo para conversas subsequentes até que a conversa seja encerrada.

type

enum (ConversationType)

type indica o estado da conversa no ciclo de vida.

conversationToken

string

Token opaco especificado pela ação na última rodada da conversa. Ele pode ser usado por uma ação para rastrear a conversa ou armazenar dados relacionados.

Entrada

Representação JSON
{
  "rawInputs": [
    {
      object (RawInput)
    }
  ],
  "intent": string,
  "arguments": [
    {
      object (Argument)
    }
  ]
}
Campos
rawInputs[]

object (RawInput)

Transcrição bruta de entradas de cada turno da conversa. Várias interações podem ser necessárias para que as ações no Google forneçam alguns tipos de entrada para a ação.

intent

string

Indica a intenção do usuário. Na primeira rodada de conversa, a intent se referirá à intent de acionamento da ação. Nas próximas rodadas da conversa, a intent será uma ação comum no Google (começa com "actions"). Por exemplo, se a entrada esperada for actions.intent.OPTION, a intent especificada aqui será actions.intent.OPTION se o Google Assistente conseguir atender a essa intent ou actions.intent.TEXT se o usuário tiver fornecido outras informações. Consulte https://developers.google.com/assistant/df-asdk/reference/intents.

arguments[]

object (Argument)

Uma lista de valores de argumento fornecidos para a entrada solicitada pela ação.

RawInput

Representação 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 como o usuário forneceu essa entrada: uma resposta digitada, uma resposta de voz, não especificada etc.

Campo de união input. O valor de entrada real input pode ser apenas um dos seguintes:
query

string

Entrada digitada ou falada do usuário final.

url

string

O URL de acionamento.