Primeiros passos com a biblioteca de cliente PHP

Para começar a usar a API Google Photos Library com a biblioteca de cliente PHP, é preciso configurar a biblioteca de cliente no seu ambiente de desenvolvimento. Antes disso, configure seu projeto ativando a API no Console de APIs do Google e definindo um ID do cliente do OAuth 2.0.

O aplicativo interage com o Google Fotos em nome de um usuário do Google Fotos. Por exemplo, quando você cria álbuns na biblioteca do Google Fotos de um usuário ou faz upload de itens de mídia para a conta do Google Fotos de um usuário, o usuário autoriza essas solicitações de API usando o protocolo OAuth 2.0.

O ID do cliente OAuth 2.0 permite que os usuários do aplicativo façam login, autentiquem e usem a API Library. A API Library não oferece suporte a contas de serviço. Para usar essa API, os usuários precisam estar conectados a uma Conta do Google válida.

Configurar o app

Ativar a API

Antes de usar a API Library, é necessário ativá-la no projeto.

  1. Vá para o Console de APIs do Google.
  2. Na barra de menus, selecione um projeto ou crie um novo.
  3. Para abrir a biblioteca de APIs do Google, no menu de navegação, selecione APIs e serviços > Biblioteca.
  4. Pesquise "API Google Photos Library". Selecione o resultado correto e clique em Ativar.

Solicitar um ID do cliente OAuth 2.0

Siga as etapas abaixo para solicitar um ID do cliente OAuth e configurá-lo para seu aplicativo. Este exemplo usa um aplicativo em que todo o fluxo do OAuth é processado no lado do servidor, como o dos nossos exemplos. O processo de configuração pode variar para outros cenários de implementação.

  1. Acesse o Console de APIs do Google e selecione seu projeto.
  2. No menu, selecione APIs e serviços > Credenciais.
  3. Na página Credenciais, clique em Criar credenciais > ID do cliente OAuth.
  4. Selecione o Tipo de aplicativo. Neste exemplo, o tipo é aplicativo da Web.
  5. Registre as origens de onde o app tem permissão para acessar as APIs do Google da seguinte maneira:

    1. Insira um nome para identificar o ID do cliente.
    2. No campo Origens JavaScript autorizadas, insira a origem do app. Esse campo não permite caracteres curinga.

      Você pode inserir várias origens para permitir que o app seja executado em diferentes protocolos, domínios ou subdomínios. Os URLs inseridos podem iniciar uma solicitação OAuth.

      O exemplo a seguir mostra um URL de desenvolvimento local (nossas amostras usam localhost:8080) e um URL de produção.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. O campo URI de redirecionamento autorizado é o endpoint que recebe respostas do servidor OAuth 2.0. Normalmente, isso inclui seu ambiente de desenvolvimento e aponta para um caminho no aplicativo.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. Clique em Criar.

  1. Na caixa de diálogo do cliente OAuth, faça o download do arquivo JSON que contém a configuração do seu cliente. Os detalhes do cliente consistem no seguinte:

    • ID do cliente
    • Chave secreta do cliente

    Esse arquivo JSON será usado posteriormente para configurar a biblioteca do Google Auth para PHP, que funciona com essa biblioteca de cliente.

Antes de iniciar um aplicativo público que acessa a API Library, ele precisa ser revisado pelo Google. A mensagem "App não verificado" é mostrada na tela durante o teste do aplicativo, até que ele seja verificado.

Configure a biblioteca de cliente.

A biblioteca de cliente PHP processa todas as chamadas de API de back-end e expõe objetos amigáveis para trabalhar, incluindo amostras de código de algumas tarefas comuns da API. Primeiro, faça o download e instale a biblioteca de cliente da API Google Photos Library para PHP com as dependências do GitHub. Em seguida, configure suas credenciais do OAuth2 para PHP.

Opções de download

Use o composer para incluir a biblioteca como dependência no seu ambiente de desenvolvimento. Execute o comando a seguir para adicionar a biblioteca à configuração do projeto e fazer o download para o diretório vendor/.

composer require google/photos-library

Como alternativa, também é possível clonar o repositório ou fazer o download de um tarball compactado.

Configurar suas credenciais do OAuth2 para PHP

Essa biblioteca de cliente funciona com a Biblioteca do Google Auth para PHP. Para mais informações, consulte Como usar o OAuth 2.0 com a biblioteca de cliente de APIs do Google para PHP.

Use as credenciais de autenticação retornadas pela biblioteca de autenticação ao configurar o PhotosLibraryClient.

Teste algumas amostras

Experimente o código abaixo para fazer sua primeira chamada de API usando a biblioteca de cliente PHP.

use Google\Auth\Credentials\UserRefreshCredentials;
use Google\Photos\Library\V1\PhotosLibraryClient;
use Google\Photos\Library\V1\PhotosLibraryResourceFactory;

try {
    // Use the OAuth flow provided by the Google API Client Auth library
    // to authenticate users. See the file /src/common/common.php in the samples for a complete
    // authentication example.
    $authCredentials = new UserRefreshCredentials( /* Add your scope, client secret and refresh token here */ );

    // Set up the Photos Library Client that interacts with the API
    $photosLibraryClient = new PhotosLibraryClient(['credentials' => $authCredentials]);

    // Create a new Album object with at title
    $newAlbum = PhotosLibraryResourceFactory::album("My Album");

    // Make the call to the Library API to create the new album
    $createdAlbum = $photosLibraryClient->createAlbum($newAlbum);

    // The creation call returns the ID of the new album
    $albumId = $createdAlbum->getId();
} catch (\Google\ApiCore\ApiException $exception) {
    // Error during album creation
} catch (\Google\ApiCore\ValidationException $e) {
    // Error during client creation
    echo $exception;
}

Há mais exemplos no GitHub para você testar.