O inventário no seu sistema muda devido a novas reservas, cancelamentos e alterações na programação dos comerciantes. A API Real-Time Update (RTU) é um mecanismo para notificar o Google sobre essas mudanças e as alterações feitas nas reservas atuais.
As RTUs são necessárias nos seguintes casos:
- Quando um usuário cancela uma reserva no seu sistema e o horário fica disponível.
- Quando um usuário faz uma reserva pela Central de ações e o horário não está mais disponível.
- Quando uma reserva feita pela Central de ações é cancelada por você. Um exemplo é o cancelamento feito diretamente pelo comerciante. Você precisa atualizar a reserva e a disponibilidade, porque o horário original está disponível.
Conclua a seguinte tarefa de marco da RTU antes de passar para a revisão da Sandbox:
Cada tarefa é marcada como concluída e fica verde quando os últimos 20 pedidos não têm erros por um período de 14 dias. Continue enviando solicitações bem-sucedidas para garantir que a etapa permaneça verde.
RTU e feeds da API
As RTUs da API notificam o Google sobre mudanças incrementais na disponibilidade de inventário e nas reservas em tempo real. Além das RTUs, envie feeds de disponibilidade completos diariamente. Isso garante que o Google tenha as informações de disponibilidade mais precisas e atualizadas do seu sistema. Os feeds completos atuam como um instantâneo do estado mais recente da disponibilidade do inventário no seu sistema.
Para saber mais, acesse os recursos a seguir:
Acessar a API
Seu projeto do Google Cloud é a maneira de acessar a API Maps Booking da Central de ações, que é como você envia RTUs. Você precisa usar uma Conta do Google no console do Google Developers e informar o número do projeto do Cloud na etapa de configuração do seu plano de integração. Para mais informações sobre como ativar as APIs do Cloud, consulte Ativar as APIs do Cloud.
Usar chamadas RESTful ou fazer o download da biblioteca de cliente
Recomendamos que você faça chamadas RESTful diretamente para a API Maps Booking com payloads JSON. Para mais informações, consulte a documentação da API REST.
Você também pode usar bibliotecas de cliente para se conectar à API.
.Idioma | Link de download |
---|---|
Java | Biblioteca de cliente Java. Para mais informações, consulte as instruções do cliente Java. |
Também estão disponíveis para download outras bibliotecas de suporte que lidam com a autorização e outros aspectos de chamadas para APIs do Google. Para mais informações, consulte Exemplos de código.
Buscar o documento de descoberta
Para algumas bibliotecas de cliente, como Ruby, é necessário buscar o documento de descoberta da API, que descreve os métodos e parâmetros dela.
Para buscar o documento de descoberta, use o seguinte comando:
curl -s -o mapsbooking_rest
https://mapsbooking.googleapis.com/$discovery/rest?version=v1alpha
Para mais informações sobre como acessar a API em Ruby, consulte Cliente da API Ruby e Biblioteca de autenticação Ruby.
Fazer chamadas autorizadas para a API
Ao fazer chamadas à API, consulte Como se preparar para fazer uma chamada de API delegada para autorizar sua conta de serviço com a chave privada e o seguinte escopo do OAuth:
https://www.googleapis.com/auth/mapsbooking
Endpoints de sandbox e produção
Você pode fazer chamadas para os ambientes de sandbox e produção usando a API. Verifique se você ativou as duas APIs no projeto do Google Cloud. Ambas as APIs usam o mesmo escopo, mas têm endpoints diferentes.
Endpoint de produção: https://mapsbooking.googleapis.com/
Endpoint do sandbox: https://partnerdev-mapsbooking.googleapis.com/
Veja a seguir um exemplo em Java de como alternar endpoints:
// This block of code is for OAuth and is the same for prod and sandbox.
GoogleCredential
.fromStream(new FileInputStream(...))
.createScoped(Collections.singleton("https://www.googleapis.com/auth/mapsbooking"))
// This block of code sets the endpoint. This is what you'd change to connect to the sandbox.
new GoogleMapsBookingAPI.Builder(...)
.setApplicationName(...)
.setRootUrl("https://partnerdev-mapsbooking.googleapis.com/") // you add this to change the endpoint to use partnerdev.
.build()