Check the event ID from the event information in the list
Send a calendar message
You can send a calendar message that delivers a public event or a subscribed calendar through Kakao Talk. Users can add the public event to their calendar or subscribe to the subscribed calendar with the buttons in the message. For details, see Send a calendar message.
User calendar
This section introduces the APIs to manage a user's calendar. To see the calendar types, read Concepts > Calendar types.
This section introduces the APIs to manage the events in user's My Calendar or sub-calendars. To learn about the calendar and event types, read Concepts.
Start time to retrieve events (in RFC3339 format based on UTC, Example: "2022-05-17T00:00:00Z"). Period between from and to must be within 31 days.
Important: Ignored if preset or next_page_token is set.
X
to
String
End time to retrieve events (in RFC3339 format based on UTC, Example: "2022-06-16T00:00:00Z"). Period between from and to must be within 31 days.
Important: Ignored if preset or next_page_token is set.
X
limit
Integer
Maximum number of events to be retrieved per page. (Default: 100, Maximum: 1000)
Important: Ignored if preset or next_page_token is set.
X
next_page_token
String
Token used to filter events. The token contains the filtering conditions (from, to, limit) and is encoded from JSON to Base64 format. If you pass next_page_token, then from, to, and limit are ignored.
List of events. If there is no event, an empty array is returned.
O
has_next
Boolean
Whether a next page exists.
O
after_url
String
URL used to request the next page.
Condition: Provided only if has_next in the response is true.
X
EventBrief
For schedules that are not created by your service, only time field is included in the response.
Name
Type
Description
Required
id
String
Event ID. For a recurring event, the ID of each occurrence, which joins the event ID and the occurrence start time with an underscore (_). The occurrence start time is in RFC5545DATE-TIME format. (Example: 6358e3987ec8e318d0b813bc_20220517T120000Z)
X
title
String
Event title.
X
type
Enum
Event type.
USER: Event that a user added.
TEAM: Shared event.
PUBLIC: Public event.
SUBSCRIBE: Subscribed event.
X
calendar_id
String
Calendar ID Fixed to primary in the case of My Calendar.
X
is_host
Boolean
Whether the user is a host of the event.
true: Personal event that the user has created.
false: Personal event that the user has not created, public event, or subscribed event.
Access token as a type of user authentication. Authorization: Bearer ${ACCESS_TOKEN}
O
Query parameter
Name
Type
Description
Required
event_id
String
Event ID. For a recurring event, specify the ID of the occurrence, which joins the event ID and the occurrence start time with an underscore (_). The occurrence start time is in RFC5545DATE-TIME format. (Example: 6358e3987ec8e318d0b813bc_20220517T120000Z)
Event ID. For a recurring event, the ID of each occurrence, which joins the event ID and the occurrence start time with an underscore (_). The occurrence start time is in RFC5545DATE-TIME format. (Example: 6358e3987ec8e318d0b813bc_20220517T120000Z)
O
title
String
Event title.
O
type
Enum
Event type.
USER: Event that a user added.
TEAM: Shared event.
PUBLIC: Public event.
SUBSCRIBE: Subscribed event.
O
calendar_id
String
Calendar ID Fixed to primary in the case of My Calendar.
Access token as a type of user authentication. Authorization: Bearer ${ACCESS_TOKEN}
O
Body
Name
Type
Description
Required
event_id
String
Event ID. For a recurring event, specify the ID of the occurrence, which joins the event ID and the occurrence start time with an underscore (_). The occurrence start time is in RFC5545DATE-TIME format. (Example: 6358e3987ec8e318d0b813bc_20220517T120000Z)
O
calendar_id
String
Calendar ID (Default: existing value).
Important: Required if event is not included.
Important: Only the ID of My Calendar (primary) or a sub-calendar created by the service can be specified.
X
recur_update_type
Enum
Scope of recurring events to which the changes are applied.
ALL: Update all recurring events associated with the specified event_id.
THIS: Update this event only.
THIS_AND_FOLLOWING: Update this and following events.
Important: Required in case of recurring events.
Important: If recur_update_type is set to THIS, you cannot update calendar_id, memo, reminders, color, rrule, time.lunar and time.all_day.
Event time information (Default: existing value). If recur_update_type is set to THIS (edit this recurring event only), you cannot edit lunar and all_day.
X
rrule
String
Interval of recurring events (in RFC5545RRULE format, Example: "FREQ=DAILY;UNTIL=20221030T000000Z", Default: existing value).
Important: When changing rrule, recur_update_type must not be THIS.
Deletes the user's personal event or public event added on a user's calendar.
Request
Header
Name
Description
Required
Authorization
Access token as a type of user authentication. Authorization: Bearer ${ACCESS_TOKEN}
O
Query parameter
Name
Type
Description
Required
event_id
String
Event ID. For a recurring event, specify the ID of the occurrence, which joins the event ID and the occurrence start time with an underscore (_). The occurrence start time is in RFC5545DATE-TIME format. (Example: 6358e3987ec8e318d0b813bc_20220517T120000Z)
O
recur_update_type
Enum
Scope of recurring events to which the changes are applied.
ALL: Delete all recurring events associated with the specified event_id.
THIS: Delete this event only.
THIS_AND_FOLLOWING: Delete this and following events.
Important: Required in case of recurring events.
X
Response
Body
Name
Type
Description
Required
event_id
String
ID of the deleted personal event.
Condition: Provided only for a non-recurring event.
You can only create public events for a Kakao Talk Channel connected to the app.
Request
Header
Name
Description
Required
Authorization
Service app admin key as a type of user authentication. Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
O
Body
Name
Type
Description
Required
channel_public_id
String
Kakao Talk Channel profile ID of your service. If your app is connected with only one Kakao Talk Channel, the value of channel_public_id will be automatically set to the connected Kakao Talk Channel's ID. In other cases, you must specify a Kakao Talk Channel profile ID.
Link information for the custom button in the notification message.
O
Link
Name
Type
Description
Required
web_url
String
URL that is directed to when the button is invoked in a PC environment, ignore custom button settings and apply the default custom button (공유하기) when an invalid URL is entered.
X*
mobile_web_url
String
URL that is directed to when the button is invoked in a mobile environment, ignore custom button settings and apply the default custom button (공유하기) when an invalid URL is entered.
Returns a list of public events registered for a Kakao Talk Channel.
You can only retrieve public events for a Kakao Talk Channel connected to the app.
Request
Header
Name
Description
Required
Authorization
Service app admin key as a type of user authentication. Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
O
Query parameter
Name
Type
Description
Required
channel_public_id
String
Kakao Talk Channel profile ID of your service. If your app is connected with only one Kakao Talk Channel, the value of channel_public_id will be automatically set to the connected Kakao Talk Channel's ID. In other cases, you must specify a Kakao Talk Channel profile ID.
X
from
String
Start time to retrieve events (in RFC3339 format based on UTC, Example: "2022-05-17T00:00:00Z").
Important: Period between from and to must be within 31 days.
O
to
String
End time to retrieve events (in RFC3339 format based on UTC, Example: "2022-06-16T00:00:00Z").
Important: Period between from and to must be within 31 days.
O
limit
Integer
Maximum number of events to be retrieved per page. (Default: 10, Maximum: 30)
X
offset
Integer
Order that the list of public events starts from. For example, if it is set to 10, the tenth and the following public events are retrieved. (Default: 0)
Returns the details of a public event for a Kakao Talk Channel.
You can only retrieve public events for a Kakao Talk Channel connected to the app.
Request
Header
Name
Description
Required
Authorization
Service app admin key as a type of user authentication. Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
O
Query parameter
Name
Type
Description
Required
channel_public_id
String
Kakao Talk Channel profile ID of your service. If your app is connected with only one Kakao Talk Channel, the value of channel_public_id will be automatically set to the connected Kakao Talk Channel's ID. In other cases, you must specify a Kakao Talk Channel profile ID.
Service app admin key as a type of user authentication. Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
O
Body
Name
Type
Description
Required
channel_public_id
String
Kakao Talk Channel profile ID of your service. If your app is connected with only one Kakao Talk Channel, the value of channel_public_id will be automatically set to the connected Kakao Talk Channel's ID. In other cases, you must specify a Kakao Talk Channel profile ID.
You can only delete public events for a Kakao Talk Channel connected to the app.
Request
Header
Name
Description
Required
Authorization
Service app admin key as a type of user authentication. Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
O
Query parameter
Name
Type
Description
Required
channel_public_id
String
Kakao Talk Channel profile ID of your service. If your app is connected with only one Kakao Talk Channel, the value of channel_public_id will be automatically set to the connected Kakao Talk Channel's ID. In other cases, you must specify a Kakao Talk Channel profile ID.
This section introduces the APIs to manage Subscribed calendars. Users can see the Subscribed calendars that they are subscribing to under the Subscribed Calendars category. To see the calendar types, read Concepts > Calendar types.
Edits a particular public event or subscribed event added to a user's calendar.
Notes
You can edit only the reminders, memo, color, or calendar ID. The changes do not affect the original event. To edit an event you created, use Edit event for host API.
Important: If you pass event, at least one of the parameters must be specified. Otherwise, an error occurs. To delete the existing value, pass an empty value for a string type of the fields. For integer or long type of fields, pass null to delete the existing value. The fields that are not input remain the same as the initial value.
X
EventGuest
Name
Type
Description
Required
reminders
Integer[]
Time of reminders applied to an event (Unit: minutes, Maximum: 2). Set in multiples of five in the following ranges:
All-day event: -1440 (before the end of the event day) < reminder value ≤ 43200 (30 days before the event starts)
Non-all-day event: 0 (start time of the event) < reminder value ≤ 43200 (30 days before the event starts)
Recurring information. If included, creates a recurring task at regular intervals from the due date; if omitted, creates a one-time task. (Default: No recurring)
X
Recur
Name
Type
Description
Required
rrule
String
Recurring interval (in RFC5545RRULE format, Example: "FREQ=DAILY;UNTIL=20221030T000000Z"). UNTIL can only be specified after due_date in yyyyMMdd'T'000000Z format and must exist at least one day that satisfies the rrule condition. (Maximum: 20501231T000000Z)
List of task information. Multiple tasks are sorted by most recent edit. Recurring tasks are shown as one task; if the current time passes the due date, the due date is automatically updated to the next occurrence.
O
count
Integer
The total number of tasks in the search period. Up to the number specified by limit, and the list of uncompleted tasks can be retrieved by after_url.
O
has_next
Boolean
Whether a next page exists.
O
after_url
String
URL used to request the next page.
Condition: Provided only if has_next in the response is true.
Recurring interval (in RFC5545RRULE format, Example: "FREQ=DAILY;UNTIL=20221030T000000Z"). UNTIL can only be specified after due_date in yyyyMMdd'T'000000Z format and must exist at least one day that satisfies the rrule condition. (Default: existing value, Maximum: 20501231T000000Z)
X
record_on
Boolean
Whether to enable [My Challenge Record]. (Default: Not edited)