REST JAVA

Faça o download do nosso cliente de API de atualização em tempo real do Java para começar a implementar as atualizações em tempo real.

Pré-requisitos:

Crie sua conta de serviço e faça o download da chave privada.

Como começar:

  1. Faça o download da biblioteca de cliente Java descompactar o arquivo para acessar o pacote "mapsbooking".
  2. Crie um projeto Java no seu ambiente de desenvolvimento integrado, faça o download dos códigos de amostra InventoryUpdate.java e BookingNotification.java neste repositório:

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
    

    e as importe para o projeto Java no diretório src.

  3. Faça uma cópia da sua chave privada (arquivo JSON) para o diretório src.
  4. Adicione a biblioteca de cliente Java às dependências do seu projeto. Inclua os arquivos jar no diretório mapsbooking e libs-sources.
  5. Nos dois arquivos Java, siga os comentários anotados com "TODO" para concluir suas implementações

Veja mais detalhes sobre a API REST neste link.

Solução de problemas:

  1. Ao tentar criar um novo comerciante/serviço com um merchantId ou serviceId existente, você recebe a seguinte mensagem de erro:

    409 Conflict
    {
      “code” : 409,
      “errors” :
        [{
            “domain” : “global”,
            “message” : “Requested entity already exists”,
            “reason” : “alreadyExists”,
            “debugInfo” : “detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      “message” : “Requested entity already exists”,
      “status” : “ALREADY_EXISTS”
    }
    
  2. Ao fazer uma chamada de substituição de disponibilidade por um merchantId ou serviceId inválido, a chamada não gerará uma mensagem de erro. Isso ocorre porque as alterações nos slots de disponibilidade via RTUs são compatíveis com a execução fora de ordem e, portanto, não estão associadas a um merchantId ou serviceId. No entanto, os slots na solicitação não serão veiculados na produção devido ao merchantId ou serviceId inválido. Para tornar os slots acessíveis, adicione o comerciante ou serviço ausente via RTUs ou feeds.
  3. Em todas as funções de atualização, o parâmetro "updateMask" precisa estar no formato FieldMask para especificar os campos a serem atualizados. A API é obrigatória para mudar apenas os valores dos campos, conforme especificado na máscara, e deixar os outros intactos. Se você transmitir a string updateMask incorreta, a atualização não terá efeito. Se uma máscara de campo não estiver presente na atualização, a operação será aplicada a todos os campos (como se uma máscara de todos os campos tivesse sido especificada). Portanto, se você quiser atualizar todos os campos, basta definir updateMask vazia.
  4. Os campos com valor zero não são exibidos na resposta.