CalDAV é uma extensão do WebDAV que fornece um padrão para os clientes acessarem informações da agenda em um servidor remoto.
O Google fornece uma interface CalDAV que você pode usar para visualizar e gerenciar agendas usando o protocolo CalDAV.
Especificações
Para cada uma das especificações relevantes, o suporte ao CalDAV do Google é o seguinte:
- rfc4918: extensões HTTP para criação e controle de versões distribuídos na Web
(WebDAV)
- Dá suporte aos métodos HTTP
GET
,PUT
,HEAD
,DELETE
,POST
,OPTIONS
,PROPFIND
ePROPPATCH
. - Não oferece suporte aos métodos HTTP
LOCK
,UNLOCK
,COPY
,MOVE
ouMKCOL
ou o cabeçalhoIf*
(exceto paraIf-Match
). - Não oferece suporte a propriedades WebDAV arbitrárias (definidas pelo usuário).
- Não oferece suporte ao controle de acesso WebDAV (rfc3744).
- Dá suporte aos métodos HTTP
- rfc4791: extensões de agenda para WebDAV (CalDAV) (em inglês)
- Oferece suporte ao método HTTP
REPORT
. Todos os relatórios, exceto consultas de disponibilidade sejam implementadas. - Não oferece suporte ao método HTTP
MKCALENDAR
. - Não oferece suporte à ação
AUDIO
.
- Oferece suporte ao método HTTP
- rfc5545: iCalendar (em inglês)
- Os dados expostos na interface CalDAV são formatados de acordo com a Especificação do iCalendar.
- No momento, não oferece suporte a dados
VTODO
ouVJOURNAL
. - Não é compatível com a extensão Apple iCal® para permitir propriedades de URL configuráveis pelo usuário.
- rfc6578: sincronização de coleções para WebDAV
- Os aplicativos clientes devem alternar para esse modo de operação após a para a sincronização inicial.
- rfc6638: programação de extensões para CalDAV
- Oferece suporte a uma "caixa de entrada" trivial, que é sempre vazio.
- Os convites recebidos são automaticamente enviados aos seus "eventos" coleção em vez de serem colocados em sua "caixa de entrada".
- Não oferece suporte à pesquisa de disponibilidade.
- caldav-ctag-02: Tag de entidade da coleção da agenda (CTag) no CalDAV
- A agenda
ctag
é como um recursoetag
. muda quando algo da agenda foi alterada. Isso permite que o aplicativo cliente determinar rapidamente que não precisa sincronizar alterações eventos.
- A agenda
- calendar-proxy: funcionalidade de proxy do usuário do Agenda no CalDAV
- Para melhorar o desempenho da sincronização de agendas em dispositivos iOS, o que
não têm suporte para delegação, usando
calendar-proxy-read-for
ou As propriedadescalendar-proxy-write-for
com um UserAgent do iOS falharão.
- Para melhorar o desempenho da sincronização de agendas em dispositivos iOS, o que
não têm suporte para delegação, usando
Ainda não fornecemos uma implementação completa de todos os especificações. No entanto, para muitos clientes, como o app Calendário da Apple, o protocolo CalDAV deve funcionar corretamente.
Observação: para a segurança da conta e para evitar abusos, o Google pode definir cookies em aplicativos clientes que acessam dados via CalDAV.
Como criar seu ID de cliente
Para usar a API CalDAV, você precisa ter uma Conta do Google Se você já tem uma conta que pode usar, então está tudo pronto.
Antes de enviar solicitações para a API CalDAV, você precisa se registrar seu cliente com o Console de APIs do Google criando um projeto.
Vá para o Console de APIs do Google. Clique em Criar projeto. digite um nome e clique em Criar.
A próxima etapa é ativar a API CalDAV.Para ativar uma API no seu projeto, siga estas etapas:
- Abra a Biblioteca de APIs no Console de APIs do Google. Se solicitado, selecione um ou criar um novo. A Biblioteca de APIs lista todas as APIs APIs, agrupadas por família de produtos e popularidade.
- Se a API que você quer ativar não estiver visível na lista, use a pesquisa para encontrá-la.
- Selecione a API que você quer ativar e clique em Ativar. .
- Se necessário, ative o faturamento.
- Se solicitado, aceite os Termos de Serviço da API.
Para localizar o ID do cliente e a chave secreta do cliente do projeto, faça o seguinte:
- Selecionar um OAuth 2.0 existente credencial ou abra a página Credenciais.
- Crie o OAuth 2.0 do seu projeto, caso ainda não tenha feito isso credenciais clicando em Criar credenciais > ID do cliente OAuth fornecendo as informações necessárias para criar as credenciais.
- Procure o ID do cliente na seção IDs do cliente OAuth 2.0. Para mais detalhes, clique no ID do cliente.
Como se conectar ao servidor CalDAV do Google
Para usar a interface CalDAV, um programa cliente se conecta inicialmente à
de agenda em um de dois pontos de partida. Em ambos os casos, a conexão
precisam ser feitos por HTTPS e usar o OAuth 2.0
esquema de autenticação. O servidor CalDAV se recusará a autenticar uma solicitação
a menos que chegue por HTTPS com a autenticação OAuth 2.0 de uma Conta do Google.
A tentativa de conexão por HTTP ou com a autenticação básica resulta em uma solicitação
Código de status 401 Unauthorized
.
Se o programa cliente (como o aplicativo Calendário da Apple) exigir uma coleção principal como ponto de partida, o URI a ser conectado será:
https://apidata.googleusercontent.com/caldav/v2/calid/user
Em que calid
deve ser substituído pelo
"ID da agenda" da agenda a ser acessada. Ela pode ser encontrada na
interface da web do Google Agenda da seguinte maneira: no menu suspenso ao lado do
nome da agenda, selecione Configurações da agenda. Na página resultante
o ID da agenda é mostrado em uma seção chamada Agenda
Endereço. O ID da agenda principal do usuário é o mesmo que
o endereço de e-mail desse usuário.
Se um programa cliente (como Mozilla Sunbird) requer uma um conjunto de agendas como ponto de partida, o URI que será usado para conexão será:
https://apidata.googleusercontent.com/caldav/v2/calid/events
O ponto de extremidade antigo https://www.google.com/calendar/dav é descontinuada e não terá mais suporte. usá-lo por sua conta e risco. Recomendamos que você faça a transição para o novo formato de endpoint descrito acima.
iCal® é uma marca registrada da Apple Inc.