Company Calendar for JiraΒΆ
The CompanyCalendar client wraps the Company Calendar for Jira REST API
at rest/brizo-calendar/api/1. See the vendor documentation for the full
reference:
https://brizoit.atlassian.net/wiki/spaces/CCJDOCS/pages/4018044966/REST+API
Authentication is done with a Bearer API token generated and assigned to one or more calendars by an administrator.
from atlassian import CompanyCalendar
# Cloud
calendar = CompanyCalendar(
"https://ccj.brizoit.com/ccj",
token="API-TOKEN",
)
# Data Center
calendar = CompanyCalendar(
"https://your-jira-instance.company.com",
token="API-TOKEN",
)
calendars = calendar.get_calendars()
calendar_details = calendar.get_calendar(calendars[0]["id"])
Calendars, sources, and events can be created, updated, and deleted:
calendar.create_calendar(
{
"publicCalendar": True,
"calendarEditable": True,
"eventsEditable": True,
"value": '{"name":"New public calendar","usersFromEvents":true}',
"user": "userID",
}
)
calendar.create_source(
{
"eventTypeId": 5,
"calendarConfigurationId": 1959,
"emailsEnabled": False,
"value": '{"color":"#0fff04","name":"New source"}',
}
)
calendar.create_event(
{
"event": {
"summary": "All-day Rest API event",
"eventTypeConfigId": "sourceId",
"userKeys": ["account-id"],
"allDayStart": "2024-09-29",
"allDayEnd": "2024-09-29",
},
"mode": "add",
}
)
Events can be searched by date range, optionally scoped to a calendar or a source:
calendar.search_events(
{
"startDate": 1672531200000,
"endDate": 1680307200000,
"calendarId": 1959,
}
)