calendars
17 Endpunkte. Basis-URL: https://xapi.ambertech.cloud/api/v1
List the calendars this user may see#
/calendar/calendarsTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
sort | Query | string | Order of the list; by name when left out Werte: |
Antworten
- 200Calendars returned, each with the access level held
- 403Calendar module not enabled
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars" \
-H "Authorization: Bearer $XISUITE_TOKEN"Create a calendar, personal or in a space#
/calendar/calendarsTokenRequest-Body
| Name | Typ | Beschreibung |
|---|---|---|
namePflicht | string | – |
space_id | string | Space the calendar belongs to. Left out for a personal one. |
description | string | – |
color | string | Hex colour, e.g. #4f8cff |
visibility | string | private or organization for a personal calendar, private or space for a space calendar Werte: |
default_timezone | string | IANA time zone new events start in, e.g. Europe/Berlin |
shares | CalendarShareDto[] | – |
shares[].target_typePflicht | string | Werte: |
shares[].target_idPflicht | string | User id, or role id when target_type is role |
shares[].level | string | The older single level. Read when no permissions object is sent. Werte: |
shares[].permissions | CalendarSharePermissionsDto | – |
shares[].base_role | string | Space or organization role the target came from, for display |
shares[].granted_by | string | Who last granted or changed this rule (set by the server) |
shares[].granted_at | string | When this rule was last granted or changed (set by the server) |
field_settings | CalendarFieldSettingDto[] | – |
field_settings[].field_idPflicht | string | Id of an existing custom field |
field_settings[].required | boolean | |
field_settings[].order | number | – |
default_reminders | CalendarReminderDto[] | Reminders every entry gets unless it sets its own |
default_reminders[].minutes_beforePflicht | number | Werte: |
default_reminders[].channelsPflicht | string[] | Werte: |
default_reminders[].repeat_times | number | Times to send it, spaced evenly up to the start; once when left out |
Antworten
- 201Calendar created
- 403Not allowed to create a calendar in that space
curl -X POST "https://xapi.ambertech.cloud/api/v1/calendar/calendars" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"…"}'Read one calendar#
/calendar/calendars/{id}TokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Antworten
- 200Calendar returned
- 404Not found, or not visible to this user
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}" \
-H "Authorization: Bearer $XISUITE_TOKEN"Rename, recolour or re-scope a calendar#
/calendar/calendars/{id}TokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Request-Body
| Name | Typ | Beschreibung |
|---|---|---|
name | string | – |
description | string | – |
color | string | Hex colour, e.g. #4f8cff |
space_id | object | The space the calendar belongs to; null makes it personal |
visibility | string | Werte: |
default_timezone | string | IANA time zone, e.g. Europe/Berlin |
default_reminders | CalendarReminderDto[] | Reminders every entry gets unless it sets its own |
default_reminders[].minutes_beforePflicht | number | Werte: |
default_reminders[].channelsPflicht | string[] | Werte: |
default_reminders[].repeat_times | number | Times to send it, spaced evenly up to the start; once when left out |
Antworten
- 200Calendar updated
- 403Edit access required
curl -X PATCH "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"…","description":"…","color":"…"}'Delete a calendar and its entries#
/calendar/calendars/{id}TokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Antworten
- 200Calendar deleted
- 403Manage access required
curl -X DELETE "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}" \
-H "Authorization: Bearer $XISUITE_TOKEN"Replace the ticket sources shown on a calendar#
/calendar/calendars/{id}/feedsTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Request-Body
| Name | Typ | Beschreibung |
|---|---|---|
feedsPflicht | CalendarFeedDto[] | – |
feeds[].id | string | Kept when editing an existing source |
feeds[].space_idPflicht | string | Space whose tickets are shown |
feeds[].task_id | string | One ticket to show. Left out, the whole space is shown. |
feeds[].date_fieldPflicht | string | Werte: |
feeds[].label | string | What the source is called on the calendar |
feeds[].color | string | Hex colour, e.g. #f59e0b |
feeds[].linked_at | string | When the source was first linked (set by the server) |
feeds[].excluded_task_ids | string[] | Tickets of an All-tickets source that are not shown |
Antworten
- 200Ticket sources updated
- 403Manage access required, or you cannot see that space's tickets
curl -X PUT "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}/feeds" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"feeds":[]}'Replace the custom fields a calendar shows on its entries#
/calendar/calendars/{id}/fieldsTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Request-Body
| Name | Typ | Beschreibung |
|---|---|---|
fieldsPflicht | CalendarFieldSettingDto[] | – |
fields[].field_idPflicht | string | Id of an existing custom field |
fields[].required | boolean | |
fields[].order | number | – |
Antworten
- 200Fields updated
- 400A field is not available to this calendar
curl -X PUT "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}/fields" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"fields":[]}'One page of the given spaces' tickets not linked to this calendar yet#
/calendar/calendars/{id}/linkable-ticketsTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
space_ids | Query | string | Spaces to read, comma separated (1-20) |
search | Query | string | Search on key or summary |
page | Query | number | – |
pageSize | Query | number | – |
Antworten
- 200Ticket ids, page and total
- 403No ticket-dates access, or you cannot see that space's tickets
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}/linkable-tickets" \
-H "Authorization: Bearer $XISUITE_TOKEN"Replace who a calendar is shared with#
/calendar/calendars/{id}/sharesTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Request-Body
| Name | Typ | Beschreibung |
|---|---|---|
sharesPflicht | CalendarShareDto[] | – |
shares[].target_typePflicht | string | Werte: |
shares[].target_idPflicht | string | User id, or role id when target_type is role |
shares[].level | string | The older single level. Read when no permissions object is sent. Werte: |
shares[].permissions | CalendarSharePermissionsDto | – |
shares[].base_role | string | Space or organization role the target came from, for display |
shares[].granted_by | string | Who last granted or changed this rule (set by the server) |
shares[].granted_at | string | When this rule was last granted or changed (set by the server) |
Antworten
- 200Sharing updated
- 403Manage access required
curl -X PUT "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}/shares" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"shares":[]}'One page of the tickets linked to a calendar#
/calendar/calendars/{id}/ticket-linksTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
page | Query | number | – |
pageSize | Query | number | – |
search | Query | string | Search on key or summary |
space | Query | string | Only this space |
status | Query | string | Status names, comma separated |
priority | Query | string | Priority names, comma separated |
type | Query | string | Task type ids, comma separated |
Antworten
- 200Linked ticket ids, page and total
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars/{id}/ticket-links" \
-H "Authorization: Bearer $XISUITE_TOKEN"Whether this user may create calendars#
/calendar/calendars/can-createTokenAntworten
- 200{ allowed: boolean }
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars/can-create" \
-H "Authorization: Bearer $XISUITE_TOKEN"Calendars whose owner has left the organization (name and owner only)#
/calendar/calendars/ownerlessTokenAntworten
- 200Calendars returned
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/calendars/ownerless" \
-H "Authorization: Bearer $XISUITE_TOKEN"Delete a calendar left behind by someone who has left#
/calendar/calendars/ownerless/{id}TokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
idPflicht | Pfad | string | Calendar UUID |
Antworten
- 200Calendar deleted
- 404Calendar not found or still owned
curl -X DELETE "https://xapi.ambertech.cloud/api/v1/calendar/calendars/ownerless/{id}" \
-H "Authorization: Bearer $XISUITE_TOKEN"One page of a linkable space's tickets#
/calendar/link-ticketsTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
space_idPflicht | Query | string | Space to read |
search | Query | string | Search on key or summary |
page | Query | number | – |
page_size | Query | number | – |
Antworten
- 200Tickets, page and total
- 403That space cannot be linked
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/link-tickets" \
-H "Authorization: Bearer $XISUITE_TOKEN"One page of the tickets linked to the calendars this person may list#
/calendar/link-tickets/linkedTokenParameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
calendar | Query | string | Only this calendar |
space | Query | string | Only this space |
status | Query | string | Status names, comma separated |
priority | Query | string | Priority names, comma separated |
type | Query | string | Task type ids, comma separated |
date_field | Query | string | Only links shown by this date |
search | Query | string | Search on key or summary |
page | Query | number | – |
page_size | Query | number | – |
Antworten
- 200Linked tickets, page and total
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/link-tickets/linked" \
-H "Authorization: Bearer $XISUITE_TOKEN"Tickets by id, from linkable spaces only#
/calendar/link-tickets/lookupTokenRequest-Body
| Name | Typ | Beschreibung |
|---|---|---|
idsPflicht | string[] | – |
Antworten
- 200Found tickets and missing ids
curl -X POST "https://xapi.ambertech.cloud/api/v1/calendar/link-tickets/lookup" \
-H "Authorization: Bearer $XISUITE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ids":[]}'Every open space with Tasks on, for the Link ticket tab#
/calendar/link-tickets/spacesTokenAntworten
- 200Spaces, by name
curl -X GET "https://xapi.ambertech.cloud/api/v1/calendar/link-tickets/spaces" \
-H "Authorization: Bearer $XISUITE_TOKEN"