2013-01-02 1 views
3

내 프로젝트 중 하나에 대한 Google 캘린더 API를 사용하고 있어야합니다.Google 캘린더 API - 가져 오기 이벤트 : 소유자 주최자 또는 참석자

나는 내 응용 프로그램에서 Google 캘린더에 이벤트를 가져, 최종 사용자가 Google 캘린더를 수정할 수 없습니다, 그래서 그들을 잠 그려.

이 API는 내가 수입 이벤트에 때 큰 지금까지, 그러나, 나는이 오류가 얻을 작동 : 나는 달력의 소유자 중 하나가 될 수있는 주최자를 설정하더라도

The owner of the calendar must either be the organizer or an attendee of an event that is imported.

합니다.

POST https://www.googleapis.com/calendar/v3/calendars/_my_calendar_id%40group.calendar.google.com/events/import?key={YOUR_API_KEY} 

Content-Type: application/json 
Authorization: Bearer ya29.AHES6ZTdiWGywGp2LLSUlc8BV-dVIwJET5azIkNekjNgRjHRWc_Ojg 
X-JavaScript-User-Agent: Google APIs Explorer 

{ 
"end": { 
    "dateTime": "2013-01-02T16:22:00+00:00" 
}, 
"iCalUID": "123456789", 
"start": { 
    "dateTime": "2013-01-02T14:22:00+00:00" 
}, 
"organizer": { 
    "email": "[email protected]", 
    "displayName": "Owner Guy" 
}, 
"attendees": [ 
    { 
    "email": "[email protected]" 
    } 
] 
} 

단계 재현 :

  • 이 달력을 작성하고 ID를 얻거나 기본 일정은 "차"를 사용 여기

    는 POST의 API를 콘솔에서 샘플입니다.
  • 는 사람과 공유하거나, 누군가 소유자합니다. 캘린더 API 참조/이벤트/수입에
  • 이동 -> "! 그것을 시도"및 POST를 제출하기 전에 인증하기 위해 OAuth를 사용합니다.
  • 는 (시작, 끝, icaluid 등) 필수 필드가
  • 주최자 또는 달력의 소유자의 하나로서 참석자를 설정하는 시도를 완료합니다.
+0

로 달력 ID를 설정? 지금 이벤트를 가져올 수 있습니까? –

답변

2

내 실험 (어디서나 문서화되어 있다는 사실을 알지 못합니다) 참석자가있는 일정을 하위 캘린더가 아닌 계정의 기본 캘린더로 '가져 오기'만 할 수 있습니다. 나는 이것이 왜 있는지 모른다. 또한 '가져 오기'는 이벤트의 비공개 사본을 만들고 이벤트의 변경 사항은 다른 참석자에게 전파되지 않습니다 (참석자 상태가 될 수도 있음). 오류 메시지에

3

:

The owner of the calendar must either be the organizer or an attendee of an event that is imported.

이럴, The owner 정말 NOT 구글 사용자를 의미하지만 이메일과 같은 달력 ID 당신은에 최선을 다하고 있습니다. 어떤 경우는 primary 달력에서만 작동하는 이유 기본 캘린더 소유자 사용자 ([email protected])와 동일한 ID를 가지고 있기 때문에이 설명합니다.

그래서, 당신은 다음을 시도 할 수 있습니다 :

  1. 는 주최자 관련 분야를 설정하지 마십시오. 그리고 구글은 필드 (중 attendees[].organizer 또는 organizer)에 대한 적절한 값을 설정합니다.
  2. 는이 문제를 해결 않았던 attendee[].email