{{getMsg('Help_YouAreHere')}}:
/
{{page.title}}
{{page.title}}
{{$root.getMsg("downLoadHelpAsPdf")}}
{{helpModel.downloadHelpPdfDataStatus}}
Calendar
/api/calendar/{calendarId}/externalSource
Exposes calendars visible to the current user and stages calendar changes until they are validated and committed.
GET /api/calendar/{calendarId}/externalSource
Returns the external source without authentication data.
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
calendarId |
path | string |
yes | calendar identifier from the request path |
Response
| Status | Content Type | Schema | Description |
|---|---|---|---|
200 |
application/json |
ExternalSourceView |
safe external source view, or null for a local calendar |
Example Request
# Request
GET /api/calendar/<calendarId>/externalSource HTTP/1.1
Accept: application/json
Authorization: Bearer <access-token>
# Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"syncIntervalSeconds": 0,
"creatorId": "2zwfxo0p2hm8yiy0mkgg7usxo",
"type": "string",
"url": "string"
}
PUT /api/calendar/{calendarId}/externalSource
Replaces or clears the external source configuration.
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
calendarId |
path | string |
yes | calendar identifier from the request path |
Request Body
| Content Type | Schema | Required | Description |
|---|---|---|---|
application/json |
ExternalSourceUpdate |
yes | source configuration including optional authentication data |
Response
| Status | Content Type | Schema | Description |
|---|---|---|---|
200 |
application/json |
ExternalSourceView |
Successful response. |
Example Request
# Request
PUT /api/calendar/<calendarId>/externalSource HTTP/1.1
Accept: application/json
Authorization: Bearer <access-token>
Content-Type: application/json
{
"syncIntervalSeconds": 0,
"authData": "string",
"type": "string",
"url": "string"
}
# Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"syncIntervalSeconds": 0,
"creatorId": "2zwfxo0p2hm8yiy0mkgg7usxo",
"type": "string",
"url": "string"
}
Common Error Responses
The status codes 400, 403, 404, 405, 406, 409, 413, 415, and 500 use the same ApiError JSON error format:
{
"status": 404,
"code": "route_not_found",
"message": "The requested API route does not exist.",
"details": []
}
Schemas
Request and response schemas used on this page.
ExternalSourceView
| Property | Type | Required | Description |
|---|---|---|---|
syncIntervalSeconds |
number (int64) |
no | — |
creatorId |
string |
no | — |
type |
string |
no | — |
url |
string |
no | — |
ApiError
| Property | Type | Required | Description |
|---|---|---|---|
status |
integer (int32) |
yes | — |
code |
string |
yes | — |
message |
string |
yes | — |
details |
array<object> |
no | — |
ExternalSourceUpdate
| Property | Type | Required | Description |
|---|---|---|---|
syncIntervalSeconds |
number (int64) |
no | — |
authData |
string |
no | — |
type |
string |
no | — |
url |
string |
no | — |