Criar um evento
Se você tiver acesso de gravação ao Google Agenda do organizador, poderá adicionar um
evento usando o Events: insert
método.
Esse método adiciona o evento diretamente à agenda do organizador, independentemente da configuração para adicionar convites.
Adicionar convidados
Com esse método, você também pode adicionar convidados ao mesmo evento, incluindo o endereço de e-mail deles na attendees
propriedade do evento. Todas as mudanças futuras feitas pelo organizador no evento são
propagadas para os convidados.
Os convidados recebem o convite do endereço de e-mail do organizador. Os usuários do Google Agenda recebem o convite no e-mail e/ou na agenda, dependendo das configurações de eventos nas configurações do Google Agenda:
- Se a configuração for
From everyone, o evento será adicionado diretamente à agenda. - Se a configuração for
Only if the sender is known, o evento será adicionado diretamente à agenda se o usuário já tiver interagido com o organizador, se o organizador estiver na mesma organização ou se o organizador estiver nos contatos do Google. Se o organizador não for conhecido, o usuário poderá clicar em Add to calendar ou confirmar presença clicando em Yes ou Maybe no e-mail de convite. Em seguida, o evento será adicionado à agenda. - Se os usuários tiverem a configuração
When I respond in email, todos os convites não serão adicionados à agenda até que o usuário confirme presença clicando em Yes, Maybe, ou No no e-mail de convite.
Para mais informações sobre como os convites são adicionados ao Google Agenda, consulte Gerenciar convites no Google Agenda.
Mostrar o evento diretamente nas agendas dos convidados
Para mostrar um evento diretamente nas agendas dos convidados do Google Agenda para qualquer configuração que o convidado possa ter, você pode definir a confirmação de presença do convidado ou importar uma cópia do evento diretamente na agenda do convidado. Para ambos os métodos, você precisa de acesso de gravação às agendas dos convidados. Se não tiver, considere adicionar o organizador aos contatos do convidado, o que pode exigir acesso de gravação aos contatos do convidado.
Definir a confirmação de presença do convidado
Para definir a confirmação de presença de um convidado em um evento, siga estas etapas:
- Crie o evento na agenda do organizador do Google Agenda e adicione convidados (consulte acima).
- Use o
Events: updatemétodo para definir a confirmação de presença do convidado comoacceptedoutentative. Você precisa ter acesso de gravação à agenda do convidado. Pode haver um pequeno atraso antes que o evento apareça na agenda do convidado. Saiba mais sobre como usar o métodoEvents: update.
Esse método adiciona o evento à agenda do convidado, mas o convidado ainda pode ver o banner no e-mail informando que o convite foi enviado de um endereço desconhecido.
Importar uma cópia do evento diretamente na agenda do convidado
Para importar uma cópia de um evento para a agenda de um convidado, siga estas etapas:
- Se você tiver acesso de gravação ao Google Agenda do organizador, importe uma cópia
do evento usando o
Events: importmétodo. - Importe outra cópia do mesmo evento na agenda do convidado
usando
Events: import. Você precisa ter acesso de gravação à agenda do convidado. Use o mesmo ID do evento (iCalUID) para as cópias do organizador e do convidado e especifique o organizador na cópia do convidado.
Com esse método, o convidado pode ver o evento na agenda, mas não recebe um e-mail de convite do Google Agenda.
Adicionar o organizador aos contatos do convidado
Se você não tiver as credenciais do convidado, peça que ele ou a organização adicione o endereço de e-mail do organizador aos contatos do Google com antecedência para mostrar um evento diretamente na agenda. Pode haver um pequeno atraso para que um contato recém-criado entre em vigor.
- Peça ao usuário do Google Agenda para adicionar o organizador aos contatos do Google.
- Se os convidados pertencerem a uma organização, você poderá pedir ao administrador da organização para adicionar endereços de e-mail aos contatos dos usuários de forma programática. Peça ao administrador para ativar
a delegação em todo o domínio,
representar os usuários e usar o método
People: createContactpara criar contatos para cada usuário, para garantir que os convites futuros desses endereços de e-mail apareçam automaticamente nas agendas dos usuários. - Se você tiver acesso aos contatos do convidado, também poderá adicionar o
endereço de e-mail do organizador aos contatos do convidado usando o
People: createContactmétodo.
Convidar um usuário de um endereço de e-mail
Se você não tiver acesso de gravação ao Google Agenda do organizador ou não quiser expor o endereço de e-mail do organizador, use o protocolo iCalendar (RFC-5545) para convidar usuários com e-mail usando um arquivo .ICS.
Se o convidado for um usuário do Google Agenda com a configuração Only if the sender
is known e não tiver interagido ou registrado o endereço como
conhecido, o convite não será adicionado à agenda até que ele clique em
Add to calendar ou confirme presença no evento.
Fornecer um link para os usuários adicionarem o evento
Como alternativa, se você quiser facilitar a adição de um evento único para os usuários do Google Agenda sem mantê-lo atualizado, forneça um link com um evento pré-preenchido para o usuário se adicionar. Esse método cria um evento distinto na agenda do usuário, que não pode ser atualizado, a menos que você tenha acesso à agenda do usuário.
Use o seguinte modelo de link:
https://calendar.google.com/calendar/r/eventedit?action=TEMPLATE&dates=20230325T224500Z%2F20230326T001500Z&stz=Europe/Brussels&etz=Europe/Brussels&details=EVENT_DESCRIPTION_HERE&location=EVENT_LOCATION_HERE&text=EVENT_TITLE_HERE
atualizando as seguintes informações:
- Datas e horários de início e término: use o formato ISO 8601. No exemplo acima, substitua
20230325T224500Ze20230326T001500Z. - Fusos horários de início e término: formato como um nome do banco de dados de fusos horários da IANA.
Coloque os fusos horários nos campos
stzeetz. - Descrição do evento: precisa ser codificada por URL.
- Local do evento: precisa ser codificado por URL.
- Título do evento: precisa ser codificado por URL.
Exemplo
Vamos considerar o exemplo de criar um serviço de agendamento de horários para ajudar os usuários a agendar horários com uma empresa. Quando um usuário agenda um horário, você quer que seu serviço adicione um evento ao Google Agenda do agendador e da empresa.
Para a melhor experiência do usuário, recomendamos que a empresa conceda acesso de gravação à agenda para que você possa adicionar o evento diretamente à agenda da empresa (Criar evento) e convidar o agendador para esse evento (Adicionar convidados). Para garantir que o agendador veja o evento na agenda e receba um lembrete, informe que ele precisa verificar os e-mails e confirmar presença Yes no evento imediatamente após fazer uma reserva. Depois de confirmar presença no evento, o usuário recebe notificações de eventos do Google Agenda de acordo com as configurações de notificação.
Se você quiser adicionar o evento diretamente à agenda do agendador, informe aos agendadores para adicionar aos contatos o endereço de e-mail de que eles receberão o convite. Como alternativa, peça aos agendadores acesso de gravação à agenda para confirmar presença de forma programática em nome deles (Definir a confirmação de presença do convidado) e envie uma notificação por e-mail sobre a reserva confirmada.
Se a empresa não quiser expor o endereço de e-mail, use um endereço de e-mail específico do usuário para enviar o evento ao agendador por e-mail (Convidar usuário de um endereço de e-mail).
Propagação de eventos
O diagrama a seguir explica a dinâmica. Primeiro, Jack cria um evento na agenda principal (e, portanto, é o proprietário da cópia do organizador). Em seguida, ele convida a agenda secundária do grupo de aulas de violoncelo e Susan, que tem a configuração de evento Only if the sender is known. As cópias dos convidados são criadas na agenda secundária do grupo de aulas de violoncelo e na agenda de Susan se ela conhecer Jack. Caso contrário, quando ela confirmar presença ou indicar que conhece Jack. Quando Susan responde, a mudança de confirmação de presença é propagada de volta para o organizador, atualizando a cópia do organizador com a resposta de Susan. Essas mudanças feitas na cópia do evento do organizador são propagadas para os outros convidados.

Propriedades de eventos compartilhados
A agenda em que o evento é criado é a agenda do organizador. Essa agenda é proprietária das informações de eventos compartilhados, incluindo ID, horário de início e término, resumo e descrição. Quando essas informações são atualizadas na agenda do organizador, as mudanças são propagadas para as cópias dos convidados.
Propriedades de eventos particulares
Nem todas as informações são compartilhadas entre todas as cópias de eventos. Algumas propriedades são particulares, como lembretes, colorId, transparência ou a propriedade extendedProperties.private. Essas propriedades são controladas pelas configurações do convidado e não pela agenda do organizador.
Os convidados também podem mudar as propriedades compartilhadas do evento. No entanto, essas mudanças só são refletidas na própria cópia e podem ser perdidas se o organizador fizer uma mudança.
A única mudança de evento que é propagada dos convidados de volta para o organizador é
o status de resposta do convidado, armazenado na
attendees[].responseStatus
propriedade.