Compartilhar acesso

Há duas maneiras de compartilhar uma Account, dependendo da pessoa que terá o acesso:

Compartilhar acesso usando o RoleAssignmentService

Você pode usar accounts.roleAssignments.create para compartilhar uma Account com outras credenciais do Waze, ou seja, um usuário que já fez login no Painel de anunciantes do Waze. Uma RoleAssignment define as permissões do usuário em uma Account específica. As permissões são encapsuladas em uma destas instâncias de Role:

  • A Role VIEWER concede permissões de leitura.
  • A Role EDITOR concede permissões de leitura e gravação.

Compartilhar uma conta

Para compartilhar uma Account com outras credenciais do Waze, envie o seguinte para accounts.roleAssignments.create:

  • O email das credenciais do Waze a que você quer dar acesso
  • Uma Role

A consulta a seguir concede acesso para ler ao usuário grace@gmail.com do Waze.

curl -X POST https://ads.wazeapis.com/v1/accounts/ACCOUNT_ID/roleAssignments?key=API_KEY \
  -H 'Authorization: Bearer WAZE_ACCESS_TOKEN' \
  -d '{
    email: "grace@gmail.com",
    role: "VIEWER"
  }'

A Role é concedida imediatamente. O usuário com email pode ler ou gravar conteúdo no objeto Account com o ID ACCOUNT_ID.

Para compartilhar todas as suas contas com um determinado email, chame o método list e, depois, chame accounts.roleAssignments.create para cada conta retornada na resposta paginada.

Recuperar acessos

Para recuperar todos os outros usuários do Waze que têm acesso à Account, chame o método list. É necessário ter a Role EDITOR para chamá-lo.

Compartilhar acesso usando o InvitationService

Use accounts.invitations.create para convidar uma Conta do Google para receber permissões em uma Account. De forma semelhante ao recurso RoleAssignment, as permissões são encapsuladas em uma destas instâncias de Role:

  • A Role VIEWER concede permissões de leitura.
  • A Role EDITOR concede permissões de leitura e gravação.

Criar um convite

Para criar um Invitation para uma Account, você precisa enviar o seguinte para accounts.invitations.create:

  • O email da pessoa para quem você quer conceder acesso
  • Uma Role

A consulta a seguir cria um Invitation para alan@gmail.com com acesso de leitura e gravação a ACCOUNT_ID:

curl -X POST https://ads.wazeapis.com/v1/accounts/ACCOUNT_ID/invitations?key=API_KEY \
  -H 'Authorization: Bearer WAZE_ACCESS_TOKEN' \
  -d '{
    email: "alan@gmail.com",
    role: "EDITOR"
  }'

Recursos Invitation expiram depois de 28 dias.

Ao criar um Invitation, você precisa fornecer o accept_uri do Invitation ao convidado. O accept_uri leva a pessoa ao Painel de anunciantes do Waze, onde ela precisa aceitar o Invitation. Então, ela recebe permissões da Account especificada. Um recurso RoleAssignment é criado para especificar que a pessoa tem uma Role na Account.