Acl: insert

Cria uma regra de controle de acesso. Faça um teste agora ou veja um exemplo.

Solicitação

Solicitação HTTP

POST https://www.googleapis.com/calendar/v3/calendars/calendarId/acl

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
calendarId string Identificador da agenda. Para recuperar IDs de agendas, chame o método calendarList.list. Para acessar a agenda principal do usuário conectado, use "primary" palavra-chave.
Parâmetros de consulta opcionais
sendNotifications boolean Se as notificações sobre a alteração no compartilhamento da agenda serão enviadas. Opcional. O padrão é "True".

Autorização

Esta solicitação requer autorização com o seguinte escopo:

Escopo
https://www.googleapis.com/auth/calendar

Para mais informações, consulte a página de autenticação e autorização.

Corpo da solicitação

No corpo da solicitação, forneça um recurso ACL com as seguintes propriedades:

Nome da propriedade Valor Descrição Observações
Propriedades obrigatórias
role string O papel atribuído ao escopo. Os valores possíveis são:
  • "none" - Não fornece acesso.
  • "freeBusyReader" - Dá acesso de leitura às informações de disponibilidade.
  • "reader" - Dá acesso de leitura à agenda. Os eventos particulares vão aparecer para os usuários com acesso de leitura, mas os detalhes deles vão ficar ocultos.
  • "writer" - Dá acesso de leitura e gravação à agenda. Os eventos particulares serão exibidos para os usuários com acesso de gravador, e os detalhes dos eventos ficarão visíveis.
  • "owner" - Fornece a propriedade da agenda. Esse papel tem todas as permissões da função de gravador, com a capacidade adicional de ver e manipular ACLs.
gravável
scope object Até que ponto o acesso à agenda é concedido por esta regra da ACL.
scope.type string O tipo de escopo. Os valores possíveis são:
  • "default" - O escopo público. Esse é o valor padrão.
  • "user" - Limita o escopo a um único usuário.
  • "group" - Limita o escopo a um grupo.
  • "domain" - Limita o escopo a um domínio.
Observação: as permissões concedidas ao escopo "default", ou público, se aplicam a qualquer usuário, autenticado ou não.
Propriedades opcionais
scope.value string O endereço de e-mail de um usuário ou grupo ou o nome de um domínio, dependendo do tipo de escopo. Omitido para o tipo "default". gravável

Resposta

Se for bem-sucedido, esse método retorna um recurso ACL no corpo da resposta.

Exemplos

Observação: os exemplos de código disponíveis para esse método não representam todas as linguagens de programação compatíveis. Consulte a página de bibliotecas cliente para ver uma lista de linguagens compatíveis.

Java

Usa a biblioteca cliente de Java.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.AclRule;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Create access rule with associated scope
AclRule rule = new AclRule();
Scope scope = new Scope();
scope.setType("scopeType").setValue("scopeValue");
rule.setScope(scope).setRole("role");

// Insert new access rule
AclRule createdRule = service.acl().insert('primary', rule).execute();
System.out.println(createdRule.getId());

Python

Usa a biblioteca cliente de Python.

rule = {
    'scope': {
        'type': 'scopeType',
        'value': 'scopeEmail',
    },
    'role': 'role'
}

created_rule = service.acl().insert(calendarId='primary', body=rule).execute()

print created_rule['id']

PHP

Usa a biblioteca cliente de PHP.

$rule = new Google_Service_Calendar_AclRule();
$scope = new Google_Service_Calendar_AclRuleScope();

$scope->setType("scopeType");
$scope->setValue("scopeValue");
$rule->setScope($scope);
$rule->setRole("role");

$createdRule = $service->acl->insert('primary', $rule);
echo $createdRule->getId();

Ruby

Usa a biblioteca de cliente Ruby.

rule = Google::Apis::CalendarV3::AclRule.new(
  scope: {
    type: 'scopeType',
    value: 'scopeEmail',
  },
  role: 'role'
)
result = client.insert_acl('primary', rule)
print result.id

Confira!

Use o APIs Explorer abaixo para chamar esse método em dados ativos e ver a resposta.