Ações do Play Games
Visão geral
Este documento apresenta as ações do Google Play Games para videogames, lista os requisitos de esquema e detalha o processo de integração para lançamento no recurso.
Introdução às ações do Google Play Games




Com as ações de jogos para videogames, os usuários podem jogar diretamente na página de resultados da Pesquisa (SRP) em computadores ou dispositivos móveis. Os usuários encontram uma ação "Jogar" na guia "Visão geral" da página de resultados da pesquisa organizada (OSRP) ou no painel de informações quando pesquisam um jogo que tem pelo menos uma ação "Jogar" associada a ele. Isso funciona para versões de demonstração ou completas dos jogos disponíveis sem custo financeiro, por assinatura ou compra à la carte, que podem ser transmitidos da nuvem em computadores ou dispositivos móveis ou baixados por apps clientes locais em computadores ou consoles.
As ações do Google Play Jogos são alimentadas por um feed, que contém os detalhes do catálogo de jogos.
O feed é um objeto JSON que contém uma coleção de entidades. Uma entidade é um objeto schema.org
que representa o jogo no seu catálogo e o link direto associado para transmitir o
jogo (demonstração, teste instantâneo ou versão completa).
Para que o Google obtenha seu feed, você precisa armazená-lo em um arquivo e hospedar esse arquivo em um local acessível ao Google. Para garantir que seu conteúdo esteja atualizado, o Google busca regularmente o arquivo de feed no seu host.
Vamos detalhar cada um desses requisitos nas seções a seguir.
Primeiros passos
Como afirma a seção anterior, suas responsabilidades como provedor incluem o seguinte:
- Entenda as informações necessárias para criar o feed, as fontes e a disponibilidade dele, além de como ele aparece no feed.
- Crie um feed com os detalhes necessários de cada entidade de jogo no seu catálogo.
- Hospede o feed em um servidor ou serviço de armazenamento em nuvem e permita que o Google busque o feed regularmente.
- Responda e corrija os problemas levantados pelo Google. Esses problemas podem estar relacionados à qualidade ou à estrutura dos próprios arquivos JSON.
- Mantenha o feed atualizado conforme seu catálogo evolui.
- Mantenha a qualidade do feed após o lançamento.
Vamos entender melhor cada um deles.
Antes de começar
Antes de começar a criar o feed, sugerimos que você entenda os requisitos de metadados das ações do Google Play Games e reúna todas as informações necessárias em um só lugar. Recomendamos o seguinte antes de começar a criar um feed:
- Revise os requisitos de metadados para a entidade
VideoGame
. - Colete os metadados.
- Analise as propriedades obrigatórias e altamente recomendadas. O Google usa essas propriedades para reconciliar o conteúdo do feed com as informações dos bancos de dados do Google. Quanto mais metadados você fornecer, melhor será a correspondência.
Entenda o uso de Works e Editions nesta documentação
- Obra: é o conceito abstrato de um videogame. Especificamente, metadados como título, desenvolvedor, descrição do jogo e editora são atributos de uma obra.
- Edição: uma versão concreta do videogame. Especificamente, metadados como ano de publicação, nome da plataforma e links diretos são atributos da edição.
Por exemplo, "Shadow of the Tomb Raider" é uma obra, mas cada versão diferente é uma edição. Nesse caso, a obra "Shadow of the Tomb Raider" pode ter uma edição para o Stadia, uma edição para o PlayStation, uma edição para o acesso antecipado no Stadia e assim por diante.
Essa distinção é especialmente importante no feed, onde ela pode não ser tão óbvia. Há duas entidades "VideoGame":
- VideoGame (Work) é a entidade "de nível superior" VideoGame:
exampleOfWork
é uma propriedade de VideoGame (Work) e especifica uma ou mais instâncias de VideoGame (Edition).- É preciso haver pelo menos um
exampleOfWork
VideoGame (Edition) para cada VideoGame (Work). - VideoGame (Edition) é a entidade "nível inferior" VideoGame.
É importante lembrar que pode haver várias edições de uma obra. Recomendamos que você as agrupe o máximo possível. Isso ajuda os sistemas do Google a aproveitarem todas as informações relevantes sobre um videogame e exibi-lo na Pesquisa.
Entenda duas propriedades principais e os requisitos delas. É fundamental acertar essas informações ao criar o feed, que é a próxima etapa.
URL canônico (url)
Um URL canônico (url
) ajuda o Google a reconciliar com precisão o conteúdo do seu catálogo com as informações dos bancos de dados do Google.
"Um URL canônico é o URL da página que o Google considera a mais representativa de um conjunto de páginas duplicadas em um site. Por exemplo, se você tiver URLs para a mesma página (por exemplo: example.com?dress=1234 e example.com/dresses/1234), o Google escolherá um como canônico." (Fonte: Consolidar URLs duplicados)
Confira os requisitos para o URL canônico:
- O
url
precisa ser globalmente exclusivo. url
precisa conter um URL canônico funcional que o Google possa rastrear.
Identificador (@id)
Um identificador (@id) precisa atender aos seguintes requisitos:
- Exclusivo globalmente em todo o catálogo:
- Por exemplo, não use o mesmo
@id
para dois videogames diferentes.
- Por exemplo, não use o mesmo
- Estático:
- Não é possível mudar
@id
depois.
- Não é possível mudar
- Na forma de um identificador uniforme de recurso (URI):
- Se o identificador local (ID) do seu conteúdo não estiver em um formato URI, adicione seu domínio ao ID para atender a esse requisito. Por exemplo, se o ID do conteúdo for
1234abc
e o domínio forhttps://example.com
,@id
poderá serhttps://example.com/1234abc
. @id
não precisa ser um URL funcional, apenas estar no formato de URI.- O domínio usado em
@id
(por exemplo,https://example.com
) precisa ser de propriedade da sua organização.
- Se o identificador local (ID) do seu conteúdo não estiver em um formato URI, adicione seu domínio ao ID para atender a esse requisito. Por exemplo, se o ID do conteúdo for
Como o url
de uma entidade atende a todos os requisitos de um identificador (ou seja, globalmente exclusivo, estático e na forma de um URI), recomendamos que você use o url
de uma entidade como @id
nos casos em que isso fizer sentido.
Entender e identificar os requisitos de link direto
Quando um usuário inicia as Ações no jogo do Google Play em um conteúdo, o Google usa o link direto dele para levar o usuário diretamente ao conteúdo no seu app ou plataforma. Lembre-se do seguinte:
- Os links diretos precisam abrir o conteúdo segmentado em todas as plataformas especificadas. Plataformas diferentes podem ter links diretos diferentes. Por exemplo, o link direto que funciona na Web para computadores pode ser diferente do link direto que funciona na Web para dispositivos móveis. Para cada jogo, verifique se ele tem links diretos diferentes com base na plataforma.
- Os links diretos podem incluir parâmetros (&) ou tags de âncora (#).
- Para garantir que seu conteúdo esteja disponível nas várias plataformas do Google (Pesquisa, Assistente e Android TV), é necessário ter um link direto.
Como o url
de uma entidade atende a todos os requisitos de um identificador (ou seja, globalmente exclusivo, estático e na forma de um URI), recomendamos que você use o url
de uma entidade como @id
nos casos em que isso fizer sentido.
Plataforma | Descrição |
---|---|
http://schema.org/DesktopWebPlatform | Pesquise a plataforma em um navegador da Web para computador. |
http://schema.org/MobileWebPlatform | Plataforma de pesquisa em navegadores da Web para dispositivos móveis. |
http://schema.org/AndroidPlatform | Plataforma de pesquisa no app Android. |
http://schema.org/AndroidTVPlatform | Plataforma Android TV no app Android TV. |
http://schema.org/IOSPlatform | Plataforma de pesquisa no app iOS. |
Identifique os requisitos de acesso dos jogos no seu catálogo. Faça as seguintes perguntas e verifique se há uma maneira de identificar as respostas usando metadados no feed.
- Os usuários precisam fazer login no seu app ou plataforma para acessar o conteúdo?
- Os usuários precisam de uma assinatura?
- Os usuários precisam fazer uma compra para jogar?
- O requisito de acesso muda com o tempo?
- O requisito de acesso depende da localização do dispositivo?
Se você oferece mais de um pacote de assinatura para compra, entenda o que é um commonTier
e como ele se aplica à sua integração com o Google.
Tipos de paywall
No momento, as ações do Google Play Games são compatíveis apenas com os seguintes tipos de paywall:
Valor da categoria | Tipo de paywall |
---|---|
nologinrequired |
Não é necessário fazer login nem comprar nada. |
free |
O usuário precisa fazer login, mas não precisa de uma assinatura paga. |
subscription
|
O usuário precisa ter uma assinatura ativa. O acesso é independente do nível de assinatura. |
subscription
|
O usuário precisa ter uma assinatura ativa. O acesso é independente do nível de assinatura. |
purchase |
O conteúdo fica disponível por um período indefinido após a compra. |
rental |
O conteúdo fica disponível por um período limitado após a compra. |
Esses valores de categoria são usados mais tarde ao criar o feed. Além disso, considere que a categoria rental
na tabela anterior é totalmente opcional hoje e pode ser compatível com uma melhoria futura do produto. No momento, apenas os valores de categoria free
, nologinrequired
, subscription
e purchase
são usados pelo produto do feed.
Por fim, dê uma olhada rápida no feed de exemplo para ter uma ideia do que queremos alcançar.
Entender o que foi explicado acima e garantir que há metadados para representar as respostas (a essas perguntas), o que é suficiente para avançar para a etapa de criação do feed.
Criar um feed
O feed de ações do Google Play Jogos é um objeto JSON que contém uma coleção de entidades que representam os videogames no seu catálogo. Você precisa fornecer um feed como um arquivo ou vários arquivos e hospedá-lo em um servidor ou serviço de armazenamento em nuvem para que o Google faça buscas regularmente.
Obedecer aos requisitos de tamanho, quantidade e formato de arquivo do feed
Você precisa atender aos seguintes requisitos:
- Todos os arquivos de feed precisam usar a extensão de nome de arquivo
.json
. - Verifique se os nomes dos arquivos não contêm espaços.
- Não criptografe o arquivo de feed.
- Codifique o arquivo do feed em UTF-8 (verifique a configuração do editor de arquivos).
- Se o arquivo do feed for maior que 1 GB descompactado, divida-o em vários arquivos.
- Desde que o tamanho do arquivo seja inferior a 1 GB, não há limitação quanto ao número de entidades que podem ser incluídas em um único arquivo ou quantos arquivos você envia ao Google como parte do envio do feed.
- Verifique se o arquivo está codificado sem BOM, de acordo com a especificação JSON. Para verificar isso no SO Linux,
hexdump file.json | head -n 1
não pode começar comBBEF
no endereço0x00
.
Obedecer aos requisitos de conteúdo do feed
Você precisa obedecer aos seguintes requisitos de conteúdo:
- O feed não pode conter entidades desatualizadas. Entidades desatualizadas são aquelas em que o
availabilityEnds
do link direto está definido para uma data passada ou que não estão mais disponíveis no site. - Todos os links diretos, como
urlTemplate
, e todos os URLs, comourl
, que forem incluídos no feed precisam apontar para a versão de produção. Não use URLs de controle de qualidade, desenvolvimento ou qualquer outro tipo de URL que não seja de produção. - Todos os URLs, como
url
, precisam ser canônicos, conforme mencionado na seção anterior. - Cada entidade no feed precisa especificar as seguintes propriedades:
- Um ID exclusivo:
@id
- Um URL exclusivo:
url
- Um link direto exclusivo:
urlTemplate
- Um ID exclusivo:
Confira nossas recomendações para criar o feed:
- Entenda como o feed é estruturado em detalhes.
- Comece com um feed de exemplo.
- Selecione até cinco entidades representativas do seu catálogo. Escolha entidades com uma estrutura razoavelmente complexa, mas ainda típica de uma entidade no catálogo, e crie o feed para ela.
- Envie para seu representante do Google atribuído para uma validação rápida.
- Depois de resolver todos os erros no feed de amostra, expanda-o para incluir todas as entidades do catálogo.
- Para confirmar que o feed inclui todas as entidades do catálogo, compare o número de entidades no feed com o número de itens no catálogo.
Hospedar seu feed
Quando o arquivo do feed estiver pronto, hospede-o em um local seguro. O Google busca o feed regularmente para garantir que o conteúdo esteja atualizado. Oferecemos suporte aos seguintes métodos de hospedagem:
Método de hospedagem | Suporte à autenticação |
---|---|
Google Cloud Storage | Conceder permissão de Leitor de objetos do Storage a 088794101-100000002-account@partnercontent.gserviceaccount.com |
HTTPS | Exige que você compartilhe nome de usuário + senha ou certificados do cliente HTTP. |
SFTP | Exige que você compartilhe senha, chave + frase ou ambos. |
AWS S3 | Exige que você compartilhe o ID da chave e a chave de acesso do bucket do AWS S3. |
Depois de fazer upload do arquivo de feed para um sistema host, entre em contato com a equipe de ações do Play Games para analisar o arquivo.
Enviar seu feed para revisão
Depois que o arquivo de feed for hospedado, entre em contato com seu contato atribuído do Play Game Actions para iniciar o processo de revisão do feed. Compartilhe as seguintes informações nesta comunicação:
- Visão geral/Descrição: informe se você está compartilhando um feed de amostra ou de produção completo. Se você estiver compartilhando um feed de exemplo, informe o prazo estimado para o feed de produção, se possível.
- Local da hospedagem: o URL do arquivo do feed.
- Autenticação de hospedagem: inclua as credenciais de autenticação para permitir que o Google recupere o arquivo de feed do seu host, se aplicável. Para mais informações, consulte Hospedar seu feed.
- Conta de teste: uma conta de teste que permite à equipe de ações do Play Games acessar os links diretos no seu app ou plataforma para testes. Se o feed tiver entidades em várias plataformas, forneça uma conta de teste para cada uma delas.
- Icons: envie os cinco ícones a seguir. Esses ícones são usados ao lado das ações do Google Play Jogos na Pesquisa.
Categoria | Dimensões (px) | Tamanho do arquivo | Diretrizes |
---|---|---|---|
Usar ações de jogos na Pesquisa/Cast/Outros | |||
16x16 | O tamanho do arquivo de todos os ícones, exceto o de 112 x 112 px, não pode ser maior que 1 KB.
O tamanho do arquivo do ícone de 112 x 112 px não pode ser maior que 3 KB. |
Todas as cinco dimensões de ícone são obrigatórias.
As imagens precisam obedecer ao seguinte:
|
|
20 x 20 | |||
40x40 | |||
44x44 | |||
112x112 |
Exemplo

Como funciona a validação de feeds
Há duas etapas de validação do feed:
- Validação da estrutura:
- Esta é a primeira fase das verificações de validação.
- O Google fornece feedback relacionado à estrutura dos arquivos JSON. O JSON está bem formado? Temos todas as propriedades obrigatórias e altamente recomendadas no feed? Os links diretos fornecidos e anotados estão de acordo com nossos requisitos de feed?
- Essa fase exige várias discussões com o Google e continua até que todos os feedbacks sejam resolvidos.
- Reconciliação de metadados:
- Isso só começa depois que o feed passa pela fase de validação da estrutura, e é quando o Google inicia o processo de conciliação com o gráfico de conhecimento do Google.
- Nesta fase, fornecemos feedback sobre os metadados contidos no feed. Todos os problemas precisam ser resolvidos para um lançamento bem-sucedido. Por exemplo, o feedback nessa fase pode pedir que você corrija o título ou a data de lançamento de um jogo.
- Essa fase também exige várias discussões com o Google e continua até que todo o feedback seja abordado.
Critérios de aceitação do feed
Um feed é considerado aceitável para lançamento quando todos os problemas de bloqueio são resolvidos e o Google certifica que a qualidade dos metadados está no nível de lançamento.
Atualizar o feed conforme necessário
Recomendamos que você atualize o feed diariamente, mas isso depende da frequência em que seu catálogo muda. Atenção às seguintes condições e dicas:
- A Pesquisa Google não é compatível com atualizações em tempo real.
- A Pesquisa Google busca o feed uma vez por dia e normalmente indexa o conteúdo em dois dias (quando lançado).
- Se houver uma mudança prevista na disponibilidade de um link direto, use
availabilityStarts
eavailabilityEnds
para definir as datas exatas. - Se a entidade não estiver mais disponível no seu catálogo, remova-a completamente do feed.
Referência
Visão geral da estrutura do feed
O feed de ações do Google Play Jogos tem a seguinte estrutura:

Envelope do feed de dados
Um envelope de feed de dados é o objeto de nível superior no feed de ações do Google Play Jogos. O objeto contém uma matriz de objetos de marcação de conteúdo (entidades VideoGame (Work)) que representam todos os videogames no seu catálogo.
Propriedade | Tipo esperado | Descrição |
---|---|---|
@context |
URL | Obrigatório. Defina como http://schema.org . |
@type |
Texto | Obrigatório. Defina como DataFeed . |
dateModified |
DateTime | Obrigatório. A data e a hora da última modificação do feed, no formato ISO 8601 (incluindo o fuso horário). |
dataFeedElement |
Objeto | Obrigatório. As entidades do catálogo de jogos. |
Modelo
{ "@context": "http://schema.org", "@type": "DataFeed", "dateModified": "2018-07-20T00:44:51Z", "dataFeedElement": [ {}, { }, { }, ... ] }
Objetos de marcação de conteúdo
Um objeto de marcação de conteúdo representa uma única entidade no seu catálogo: VideoGame (Work). O
objeto contém o identificador e o URL canônico do conteúdo e ajuda a descrever o conteúdo por
metadados. O objeto de marcação de conteúdo para VideoGame (Work) tem uma propriedade chamada exampleOfWork
para vinculá-lo ao objeto VideoGame(Edition). Esse VideoGame(Edition) pode ter uma matriz de objetos de marcação Action
que permitem associar o conteúdo a vários objetos de marcação Action.
Por exemplo, o conteúdo pode ter um objeto de marcação de ação diferente para cada região.
Objetos de marcação de ação
Um objeto de marcação de ação descreve o link direto que leva os usuários ao jogo e o nível de acesso
necessário para ele. O objeto é uma propriedade (potentialAction
) de um objeto de
marcação de conteúdo. Para ações do Google Play Jogos, use um objeto de especificação de acesso à ação para especificar as restrições de acesso.
Propriedade | Tipo esperado | Descrição |
---|---|---|
@type |
Texto | Obrigatório. Sempre definido como PlayGameAction . |
gameAvailabilityType |
GameAvailabilityEnumeration ou Text | Obrigatório. Indica o tipo de disponibilidade do conteúdo do jogo associado a essa
ação, como se é uma versão completa ou uma demonstração. Os valores aceitos incluem DEMO e
FULL . |
additionalType |
Texto | Obrigatório. Indica o tipo de ação de jogo associada a este jogo. Os valores aceitos incluem:
|
target |
EntryPoint | Obrigatório. Um objeto de destino que fornece o mapeamento de links diretos para várias plataformas do Google. |
target.@type |
Texto | Obrigatório. Sempre definido como EntryPoint . |
target.urlTemplate |
URL | Obrigatório. Um link direto que leva os usuários ao seu app ou plataforma e inicia a reprodução do jogo. |
target.inLanguage |
Texto | Opcional. Idioma original da série no formato BCP 47. |
target.actionPlatform |
Texto | Obrigatório. As plataformas mapeadas para urlTemplate . As Ações no jogo do Google Play aceitam os seguintes valores:
Para conferir os requisitos, consulte Tipos de plataforma. |
actionAccessibilityRequirement |
ActionAccessSpecification | Obrigatório. Um objeto de especificação de acesso à ação que descreve o requisito de acesso do conteúdo. Para mais detalhes, consulte Propriedades de especificação de acesso à ação. |
Modelo
"potentialAction": { "@type": "PlayGameAction", "target": [ {}, { } ], "actionAccessibilityRequirement": [ { }, { } ] }
Destino
Um objeto de destino fornece o mapeamento de um link direto para várias plataformas do Google. O objeto é uma propriedade (target
) de um objeto Action markup. A propriedade urlTemplate
captura o link direto, e a actionPlatform
captura as plataformas que o aceitam.
Exemplo
"target": [ { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/game007?autoplay=true", "actionPlatform": [ "http://schema.org/DesktopWebPlatform", "http://schema.org/AndroidPlatform", "http://schema.org/AndroidTVPlatform", "http://schema.org/IOSPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true", "actionPlatform": [ "http://schema.org/MobileWebPlatform" ] } ]
Especificação de acesso à ação
Um objeto de especificação de acesso a ações descreve o requisito de acesso ao conteúdo com base na região e no período. O objeto é uma propriedade, actionAccessibilityRequirement
, de
um objeto marcação de ação.
Exemplo de destino com dois links diretos
"target": [ { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/game007?autoplay=true", "actionPlatform": [ "http://schema.org/DesktopWebPlatform", "http://schema.org/AndroidPlatform", "http://schema.org/AndroidTVPlatform", "http://schema.org/IOSPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true", "actionPlatform": [ "http://schema.org/MobileWebPlatform" ] } ]
Especificação de acesso à ação
Um objeto de especificação de acesso a ações descreve o requisito de acesso ao conteúdo com base na região e no período. O objeto é uma propriedade, actionAccessibilityRequirement
, de um objeto de marcação de ação.
Propriedade | Tipo esperado | Descrição | |||
---|---|---|---|---|---|
actionAccessibilityRequirement.@type |
Texto | Obrigatório. Sempre definido como ActionAccessSpecification . |
|||
actionAccessibilityRequirement.category |
Texto | Obrigatório. Um requisito de acesso para o conteúdo. Para valores aceitos e mais informações, consulte Tipo de paywall.
Se uma entidade representar um grupo de conteúdo, defina a categoria como o requisito de acesso menos restritivo do conteúdo. Por exemplo, se um jogo tiver acesso disponível
sem custo financeiro usando |
|||
actionAccessibilityRequirement.availabilityStarts |
Data | Obrigatório. Data após a qual a ação fica disponível, no formato ISO 8601 (incluindo o fuso horário). A data pode ser definida no futuro.
Exigimos que a entidade correspondente seja fornecida no feed pelo menos sete dias antes da data de |
|||
actionAccessibilityRequirement.availabilityEnds |
Data | Obrigatório. Data após a qual a ação não estará mais disponível, no formato ISO 8601 (incluindo o fuso horário). A data pode ser definida no futuro.
É necessário fazer as atualizações na data |
|||
actionAccessibilityRequirement.eligibleRegion |
País, Cidade, Estado, GeoShape ou Texto | Obrigatório. Regiões em que o conteúdo está disponível. Se o conteúdo estiver disponível
globalmente, use a string especial EARTH . Para entender o que é necessário, consulte Propriedades do GeoShape. |
|||
actionAccessibilityRequirement.ineligibleRegion |
País, Cidade, Estado, GeoShape ou Texto | Obrigatório, se aplicável. Regiões em que o conteúdo é restrito. Não é necessário informar essa propriedade se o conteúdo estiver disponível em todos os lugares dentro de eligibleRegion .
Para entender o que é necessário, consulte Propriedades do GeoShape. |
|||
actionAccessibilityRequirement.requiresSubscription |
MediaSubscription | Obrigatório, se aplicável. Os detalhes da assinatura que os usuários precisam para
acessar o conteúdo. Para mais detalhes, consulte Propriedades de assinatura de mídia.
|
|||
actionAccessibilityRequirement.expectsAcceptanceOf |
Oferta | Obrigatório se o conteúdo exigir uma compra. Os detalhes da oferta
associada ao conteúdo. Forneça as informações de preço para os seguintes casos:
Se o preço for 0,00, remova o objeto "Offer" por completo e defina |
A especificação de assinatura de mídia
Um objeto de assinatura de mídia descreve os detalhes da assinatura necessária para o conteúdo.
O objeto é uma propriedade, requiresSubscription
, de um objeto de especificação de acesso à ação.
actionAccessibilityRequirement.category
for subscription
e sua oferta de assinatura incluir
vários pacotes ou níveis ou tiver suporte a complementos. Omita isso se sua assinatura for de um único nível
e der acesso a todo o conteúdo do catálogo.Propriedade | Tipo esperado | Descrição | |||
---|---|---|---|---|---|
requiresSubscription.@type |
Texto | Obrigatório. Sempre definido como MediaSubscription . |
|||
requiresSubscription.@id |
URL | Obrigatório. O ID exclusivo da assinatura. Se o conteúdo estiver acessível com diferentes assinaturas, cada uma delas precisará ter um ID exclusivo. | |||
requiresSubscription.name |
Texto | Obrigatório. O nome da assinatura. Confira se:
|
|||
requiresSubscription.sameAs |
URL | Opcional. A página que descreve a assinatura. | |||
requiresSubscription.identifier |
Texto | Obrigatório se category for subscription e commonTier for falso. Uma
string exclusiva para esta assinatura que representa o acesso a um grupo de conteúdo no seu
catálogo de mídia.
|
|||
requiresSubscription.commonTier |
Booleano | Obrigatório se a categoria estiver definida como "assinatura". Leia mais sobre commonTier na documentação de requisitos comuns de nível. |
Propriedades da oferta
Um objeto de oferta descreve o preço associado ao conteúdo. O objeto é uma propriedade (expectsAcceptanceOf
) do
objeto de especificação de acesso à ação. Ele pode ser usado para duas finalidades:
- Para fornecer os detalhes da compra do jogo.
actionAccessibilityRequirement.category
precisa ser definido comopurchase
para esse caso de uso. - Para fornecer os detalhes da compra do jogo quando ele estiver em promoção.
actionAccessibilityRequirement.category
precisa ser definido comopurchase
para esse caso de uso, e duas ofertas por ação precisam ser fornecidas: uma para fornecer os detalhes do preço de tabela e outra para os detalhes do preço promocional.
Propriedade | Tipo esperado | Descrição |
---|---|---|
expectsAcceptanceOf.@type |
Texto | Obrigatório: sempre definido como Offer . |
expectsAcceptanceOf.name |
Texto | Opcional: o nome da oferta. |
expectsAcceptanceOf.priceSpecification |
PriceSpecification | Obrigatório: os detalhes de preços associados ao jogo. |
expectsAcceptanceOf.priceSpecification.@type |
Texto | Obrigatório: sempre definido como UnitPriceSpecification . |
expectsAcceptanceOf.priceSpecification.price |
Número | Obrigatório: o preço de compra do conteúdo. O preço precisa ser um valor positivo diferente de zero. Para jogos com preço 0,00, defina actionAccessibilityRequirement.category como "free". |
expectsAcceptanceOf.priceSpecification.priceCurrency |
Texto | Obrigatório: é a moeda do preço no formato de três letras ISO 4217. |
expectsAcceptanceOf.priceSpecification.priceType |
PriceTypeEnumeration ou Text | Obrigatório, se aplicável: o tipo de preço fornecido na oferta. Quando actionAccessibilityRequirement.category
é definido como purchase , essa é uma propriedade obrigatória e só pode aceitar dois valores:
https://schema.org/ListPrice e https://schema.org/SalePrice são obrigatórios ao fornecer detalhes de preços promocionais.
|
expectsAcceptanceOf.seller |
Organização | A organização que oferece a compra de conteúdo. |
expectsAcceptanceOf.seller.@type |
Texto | Sempre defina como Organization . |
expectsAcceptanceOf.seller.name |
Texto | O nome do vendedor. |
expectsAcceptanceOf.seller.sameAs |
URL | É o URL de uma página da Web que identifica o vendedor, por exemplo, a página inicial dele. |
Para cada um dos tipos de paywall compatíveis, o exemplo abaixo mostra como o
actionAccessibilityObject
precisa ser criado:
Sem custo financeiro (não é necessário fazer login)
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "nologinrequired", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Sem custo financeiro (não é necessário fazer login) com teste de uma hora
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "nologinrequired", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" } "expectsAcceptanceOf": { "@type": "Offer", "eligibleDuration": 60 } } }
Sem custo financeiro (é necessário fazer login)
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "free", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Compra única com venda
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "purchase", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" }, "expectsAcceptanceOf": [ { "@type": "Offer", "name": "Original Price", "priceSpecification": { "@type": "UnitPriceSpecification", "price": 7.99 "priceCurrency": "USD" "priceType": "https://schema.org/ListPrice" }, "seller": { "@type": "Organization", "name": "Example", "sameAs": "http://www.example.com/" } }, { "@type": "Offer", "name": "Sale Price", "priceSpecification": { "@type": "UnitPriceSpecification", "price": 4.99 "priceCurrency": "USD" "priceType": "https://schema.org/SalePrice" }, "seller": { "@type": "Organization", "name": "Example", "sameAs": "http://www.example.com/" } } ] } }
Compra única
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "purchase", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" }, "expectsAcceptanceOf": { "@type": "Offer", "price": 7.99, "priceCurrency": "USD", "seller": { "@type": "Organization", "name": "Example", "sameAs": "http://www.example.com/" } } } }
Assinaturas de nível único/vários níveis/complementos
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "subscription", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "requiresSubscription": { "@type": "MediaSubscription", "name": "Example Package", "commonTier": true, "@id": "http://www.example.com/example_package" }, "eligibleRegion": { "@type": "Country", "name": "US" } } }
Assinaturas e complementos por níveis
Confira abaixo como as assinaturas e os complementos por níveis são aplicados:
- Em um modelo de assinatura de nível único, um provedor de serviços tem um nível de assinatura. Todos os assinantes podem acessar o mesmo conteúdo, independente do pacote de assinatura.
- Em um modelo de assinatura por níveis, um provedor de serviços tem vários níveis de assinatura, como
ouro, prata e bronze. Os usuários com a assinatura de nível superior podem acessar todo o conteúdo dos níveis inferiores. No entanto, os usuários com a assinatura de nível inferior não podem acessar o conteúdo do nível superior.
- Em um modelo de assinatura de complementos, um provedor de serviços permite que os usuários ampliem os direitos e adicionem conteúdo a uma assinatura básica. Os usuários podem adicionar quantas peças de conteúdo quiserem.
Modelo geral de uma entidade
Este é um exemplo do modelo geral de uma entidade:
Modelo
{ "@context": "http://schema.org", "@type": "DataFeed", "dateModified": "2018-07-20T00:44:51Z", "dataFeedElement": [ {}, { "@context": ["http://schema.org", {"@language": "en"}], "@type": "VideoGame", "@id": "http://www.example.com/game007", "url": "http://www.example.com/game007", "name": "Games Bond 007", "exampleOfWork": [ { }, { "@type": "VideoGame", "@id": "http://www.example.com/game007Stadia", "url": "http://www.example.com/game007Stadia", "name": "Games Bond 007", // Other properties "potentialAction": [ { }, { "@type": "PlayGameAction", "target": [ { }, { } ], "actionAccessibilityRequirement": [ { }, { } ] } ], ... } ] }
Definições de tipos de dados estruturados
Esta seção fornece detalhes sobre as propriedades de marcação de conteúdo para o tipo de entidade VideoGame
. É necessário incluir as propriedades obrigatórias listadas aqui para que o conteúdo esteja qualificado para exibição nos resultados da pesquisa. Recomendamos que você inclua propriedades altamente recomendadas para adicionar mais informações sobre seu conteúdo, o que pode proporcionar uma melhor experiência do usuário e nos ajudar com a reconciliação de entidades com o Mapa de Informações do Google.
Tabela de especificação de VideoGame (Work)
Propriedade | Tipo esperado | Descrição | |||
---|---|---|---|---|---|
@context |
Texto | Obrigatório. Sempre definido como ["http://schema.org", {"@language": "xx"}] .
|
|||
@type |
Texto | Obrigatório. Sempre definido como VideoGame . |
|||
@id |
URL | Obrigatório. O identificador do conteúdo no formato URI. Por exemplo, https://example.com/1234abc.
@id precisa atender aos seguintes requisitos:
Como o |
|||
url |
URL | Obrigatório. O URL canônico do conteúdo, que o Google usa para corresponder o conteúdo
no seu feed com o conteúdo nos bancos de dados do Google. url precisa atender aos seguintes
requisitos:
Para um link direto de uma reprodução, consulte a propriedade |
|||
name |
Texto | O nome do jogo.
|
|||
description |
Texto | Altamente recomendado. Uma sinopse do jogo. Limite de 300 caracteres.
|
|||
genre |
Texto | Uma lista ordenada de todos os gêneros relevantes. Por exemplo: ["Action", "Role playing"] |
|||
image |
ImageObject | Altamente recomendado. As imagens relacionadas ao jogo. Para mais detalhes sobre as propriedades obrigatórias e opcionais
a serem incluídas com image , consulte Propriedades de imagem. |
|||
applicationCategory |
Texto | Opcional. Tipo de aplicativo de software. Defina o valor como Game . |
|||
exampleOfWork |
VideoGame | Obrigatório: a edição do VideoGame . Essa entidade VideoGame (Edition) também carrega
os detalhes do link direto. Para mais detalhes, consulte a tabela de especificação de VideoGame (Edition). |
|||
playMode |
Text ou GamePlayMode | Opcional. Indica se o jogo é multiplayer, cooperativo ou para um jogador.
O jogo pode ser marcado como multiplayer, cooperativo e para um jogador ao mesmo tempo. Aceita
os seguintes valores:
|
Tabela de especificações de VideoGame (Edition)
Propriedade | Tipo esperado | Descrição | |||
---|---|---|---|---|---|
@type |
Texto | Obrigatório. Sempre definido como VideoGame . |
|||
@id |
URL | Obrigatório. O identificador do conteúdo no formato URI. Por exemplo, https://example.com/1234abc.@id precisa atender aos seguintes requisitos:
Como o |
|||
url |
URL | Obrigatório. O URL canônico do conteúdo, que o Google usa para corresponder o conteúdo
no seu feed com o conteúdo nos bancos de dados do Google. url precisa atender aos seguintes
requisitos:
Para um link direto de uma reprodução, consulte a propriedade |
|||
name |
Texto | O nome do jogo.
|
|||
description |
Texto | Altamente recomendado. Uma sinopse do jogo. Limite de 300 caracteres.
|
|||
genre |
Texto | Uma lista ordenada de todos os gêneros relevantes. Por exemplo: ["Action", "Role playing"] |
|||
image |
ImageObject | Altamente recomendado. As imagens relacionadas ao jogo. Para mais detalhes sobre as propriedades obrigatórias e opcionais
a serem incluídas com image , consulte Propriedades de imagem. |
|||
applicationCategory |
Texto | Opcional. Tipo de aplicativo de software. Defina o valor como Game . |
|||
playMode |
Text ou GamePlayMode | Opcional. Indica se o jogo é multiplayer, cooperativo ou para um jogador.
O jogo pode ser marcado como multiplayer, cooperativo e para um jogador ao mesmo tempo. Aceita
os seguintes valores:
|
|||
potentialAction |
PlayGameAction |
Obrigatório, se aplicável. Um objeto de marcação de ação que fornece os detalhes da ação. Use uma matriz para especificar links diretos diferentes em várias regiões. Para mais informações, consulte o exemplo Várias regiões e idiomas. |
|||
gameEdition |
Texto |
Obrigatório. A edição do jogo. Por exemplo, o jogo popular "Shadow of the Tomb Raider" é oferecido em quatro edições: "Croft Edition", "Standard Edition", "Digital Deluxe Edition" e "Ultimate Edition". |
|||
gamePlatform |
Texto | Obrigatório. Plataforma ou sistema eletrônico usado para jogar o videogame. | |||
releasedEvent |
PublicationEvent | Altamente recomendável. Um PublicationEvent é usado para especificar o lançamento original (global ou local) de conteúdo por um editor. |
|||
releasedEvent.@type |
Texto | Obrigatório. Não se esqueça de sempre definir essa propriedade como PublicationEvent . |
|||
releasedEvent.Location |
País | Obrigatório. As regiões associadas a esse evento de lançamento.
Use os códigos ISO 3166 para países. Para indicar todos os lugares do mundo, defina como |
|||
releasedEvent.startDate |
Data ou Hora | Recomendado. Obrigatório para ExclusiveEvent . A data de início da publicação da entidade. |
|||
releasedEvent.endDate |
Data ou Hora | Opcional. Representa a data em que os direitos sobre o conteúdo expiram. | |||
releasedEvent.publishedBy |
Organization ou Person | Opcional. A organização ou pessoa que publicou esta entidade. | |||
contentRating |
Texto | Obrigatório para jogos adultos e altamente recomendado para outros casos. Classificação geral do conteúdo.
Se a classificação do conteúdo for fornecida na forma de uma string de texto, duas variações serão aceitas:
|
|||
publisher |
Organization ou Person | Opcional. A organização ou pessoa que publicou esta entidade. | |||
contributor |
Organization ou Person | Opcional. Um colaborador secundário desta entidade. |
Tabela de especificações de imagens
As ações do Play Games reutilizam o esquema de ações de mídia para capturar os requisitos de imagem. Para mais informações, consulte especificações do esquema de imagem.
Confira outros requisitos importantes.
Proporção e contentAttributes |
Resolução mínima (em pixels) |
---|---|
16:9, pôster icônico | 3840 x 2160 |
2:3, pôster icônico | 1000x1500 |
4:3, pôster icônico | 800x600 |
1:1, pôster icônico | 600x600 |
3:4, pôster icônico | 600x800 |
16:9, plano de fundo icônico [preferido] ou sceneStill | 3840 x 2160 |
2:3, plano de fundo icônico [preferido] ou sceneStill | 1000x1500 |
3:4, plano de fundo icônico [preferido] ou sceneStill | 600x800 |
Requisitos de formato
Estes são os requisitos de formato que você precisa seguir para tamanho, qualidade e outros aspectos da imagem:
- Inclua os pôsteres e
sceneStills
de maior resolução que você tiver para o jogo. - A imagem precisa estar no formato JPG, PNG ou WebP.
- O URL da imagem precisa ser rastreável e indexável.
- O tamanho dos arquivos não pode exceder 20 MB.
- Preferimos imagens que funcionem para
smallFormat
elargeFormat
. -
A imagem não pode conter o seguinte:
- Imagem desfocada, pixelada, girada ou de baixa qualidade.
- Fotografias sem licença ou de banco de imagens.
- Nudez.
- Conteúdo ilegal.
- Além dos tamanhos listados na tabela anterior, você pode incluir outros.
Exemplos
As seções a seguir contêm exemplos de feeds de amostra para diferentes cenários.
Feed de amostra com uma entidade VideoGame
Este é um exemplo de uma entidade VideoGame
que representa o jogo "Space Wars Made Up Game". Essa entidade precisa estar incluída no envelope do feed de dados no arquivo JSON para ficar visível para o Google.
{ "@context": ["http://schema.org", {"@language": "en"}], "@type":"DataFeed", "dateModified":"2021-07-20T00:44:51Z", "dataFeedElement":[ { "@context": ["http://schema.org", {"@language": "en"}], "@id":"https://www.examplegame.com/VideoGame007", "@type":"VideoGame", "url":"https://www.examplegame.com/games/VideoGame007", "name":"Space Wars Made Up Game", "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.", "genre":[ "Role playing" ], "applicationCategory":"Game", "publisher":{ "name":"Made Up Media", "@id":"https://www.examplegame.com/uniuqe-id-org", "@type":"Organization" }, "contributor":[ { "roleName":"developer", "name":"Alpha Labs Man Made Studio", "@id":"https://www.studionice.com/uniuqe-id-alpha", "@type":"Organization" } ], "playMode":[ "SINGLE_PLAYER", "LOCAL_MULTI_PLAYER", "ONLINE_MULTI_PLAYER", "LOCAL_COOP", "ONLINE_COOP" ], "image":[ { "@context":"http://schema.org", "@type":"ImageObject", "name":"keyart_1X1_3X", "contentUrl":"https://lh3.googleusercontent.com/ept4", "copyrightHolder":{ "@type":"Organization", "name":"Studio Nice" }, "additionalProperty":[ { "@type":"PropertyValue", "name":"contentAttributes", "value":[ "SMALLFORMAT", "LARGEFORMAT", "SCENESTILL", "CENTERED", "NOTITLE", "NOLOGO" ] } ] } ], "exampleOfWork":{ "@id":"https://www.examplegame.com/VideoGame007/version/v3", "name":"Space Wars Made Up Game", "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.", "gameEdition":"Early Access", "url":"https://www.examplegame.com/VideoGame007/version/v3/stream", "contentRating":[ "Entertainment Software Rating Board Mature", "Pan European Game Information 12", "Unterhaltungssoftware Selbstkontrolle Video Game Rating System USK 12" ], "applicationCategory":"Game", "releasedEvent":[ { "@type":"PublicationEvent", "startDate":"2020-11-30", "location":{ "@type":"Country", "name":"US" } } ], "potentialAction":{ "@type":"PlayGameAction", "gameAvailabilityType":"DEMO", "target":[ { "@type":"EntryPoint", "urlTemplate":"https://www.examplegame.com/VideoGame007/play", "actionPlatform":[ "http://schema.org/DesktopWebPlatform", "http://schema.org/MobileWebPlatform", "http://schema.org/AndroidPlatform", "http://schema.org/AndroidTVPlatform", "http://schema.org/IOSPlatform" ] } ], "actionAccessibilityRequirement":[ { "@type":"ActionAccessSpecification", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion":{ "@type":"Country", "name":[ "US" ] }, "category":"subscription", "requiresSubscription":{ "@type":"MediaSubscription", "name":"", "@id":"" } } ], }, "gamePlatform": "Google Stadia", "publisher":{ "name":"Made Up Media", "@id":"https://www.examplegame.com/uniuqe-id-org", "@type":"Organization" }, "contributor":[ { "roleName":"developer", "name":"Alpha Labs Man Made Studio", "@id":"https://www.studionice.com/uniuqe-id-alpha", "@type":"Organization" } ] } } ] }
Representando uma imagem de amostra com dois personagens de jogo

{ "@context": [ "http://schema.org", { "@language": "en" } ], "@type": "VideoGame", "@id": "http://www.examplegame.com/videoGame1", "url": "http://www.examplegame.com/videoGame1", ..., "image": { "@context": "http://schema.org", "@type": "ImageObject", "name": "Mauren and Lord Wingflap!", "Keywords": "Mauren, Lord Wingflap the Destroyer", "contentUrl": "http://example.com/images/mountain-view.jpg", "character": [ { "@type": "Person", "name": "Mauren" }, { "@type": "Person", "name": "Lord Wingflap the Destoyer" } ], "copyrightHolder": { "@type": "Organization", "name": " ExampleOrganization Studios, Inc." }, "inLanguage": "en-US", "audience": { "@type": "Audience", "geographicArea": [{"@type": "Country", "name": "US"}, {"@type": "Country", "name": "GB"}] }, "additionalProperty": [ { "@type": "PropertyValue", "name": "contentAttributes", "value": [ "iconic", "background", "rightCentered", "noTitle", "noLogo", "noCopyright", "noMatte", "smallFormat", "largeFormat"] } ] } }
Como lidar com várias regiões e idiomas (internacionalização)
Uma entidade VideoGame
pode estar disponível em várias regiões e idiomas.
{ "@context": ["http://schema.org", {"@language": "en"}], "@type": "VideoGame", "@id": "http://www.example.com/my_favorite_game", "url": "http://www.example.com/my_favorite_game", "name": [ { "@language": "en-us", "@value": "My Favorite Game" }, { "@language": "es-mx", "@value": "mi juego favorito" }, { "@language": "ja-jp", "@value": "私のfavourite game" } ], "description": [ { "@language": "en-us", "@value": "Jenny meets Paul." }, { "@language": "es-mx", "@value": "Jenny conoce a paul." }, { "@language": "ja-jp", "@value": "PaulとJennyが会う。" } ], "potentialAction": [ { "@type": "PlayGameAction", "gameAvailabilityType": "DEMO", "additionalType": "DownloadPlayAction", "target": { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/my_favorite_game?autoplay=true", "actionPlatform": [ "http://schema.org/DesktopWebPlatform", "http://schema.org/MobileWebPlatform" ] } "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "purchase", "availabilityStarts": "2021-06-24T11:00:00Z", "availabilityEnds": "2041-06-24T11:00:00Z", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "MX" } ] }, "additionalProperty": [ { "@type": "PropertyValue", "name": "contentLanguage", "value": [ "en", "es" ] } ], "expectsAcceptanceOf": { "@type": "Offer", "priceSpecification": [ { "@type": "UnitPriceSpecification", "price": 19.99, "priceCurrency": "USD", "priceType": "https://schema.org/ListPrice" }, { "@type": "UnitPriceSpecification", "price": 360.00, "priceCurrency": "MXN", "priceType": "https://schema.org/ListPrice" } ], "seller": { "@type": "Organization", "name": "My Favorite Game Publisher" } } }, { "@type": "PlayGameAction", "gameAvailabilityType": "DEMO", "additionalType": "DownloadPlayAction", "target": { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/jp/my_favorite_game?autoplay=true", "actionPlatform": [ "http://schema.org/DesktopWebPlatform", "http://schema.org/MobileWebPlatform" ] } "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "purchase", "availabilityStarts": "2021-07-24T11:00:00Z", "availabilityEnds": "2041-07-24T11:00:00Z", "eligibleRegion": [ { "@type": "Country", "name": "JP" } ] }, "additionalProperty": [ { "@type": "PropertyValue", "name": "contentLanguage", "value": [ "ja" ] } ], "expectsAcceptanceOf": { "@type": "Offer", "priceSpecification": [ { "@type": "UnitPriceSpecification", "price": 2189, "priceCurrency": "JPY", "priceType": "https://schema.org/ListPrice" } ], "seller": { "@type": "Organization", "name": "My Favorite Game Publisher" } } } ], // Other properties... }