Appearance
schedule
5 endpoints.
GET /api/v1/schedule/channels
List Channels
The channel registry with this site's resolved local + portal links.
200 — Successful Response
json
{
"additionalProperties": true,
"type": "object",
"title": "Response List Channels Api V1 Schedule Channels Get"
}GET /api/v1/schedule/events
List Events
Planned + live campaign events overlapping [start, end].
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
start | query | yes | string | |
end | query | yes | string | |
channel | query | no | ||
include_live | query | no | boolean |
200 — Successful Response
json
{
"type": "object",
"additionalProperties": true,
"title": "Response List Events Api V1 Schedule Events Get"
}422 — Validation Error
json
{
"properties": {
"detail": {
"items": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
}POST /api/v1/schedule/events
Create Event
Request body
json
{
"properties": {
"title": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"title": "Title"
},
"channel": {
"type": "string",
"title": "Channel",
"default": "other"
},
"status": {
"type": "string",
"title": "Status",
"default": "planned"
},
"start_at": {
"type": "string",
"format": "date-time",
"title": "Start At"
},
"end_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "End At"
},
"all_day": {
"type": "boolean",
"title": "All Day",
"default": false
},
"recurrence": {
"type": "string",
"title": "Recurrence",
"default": "none"
},
"objective": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Objective"
},
"audience": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Audience"
},
"budget": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Budget"
},
"source_grid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Grid"
},
"source_record_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Record Id"
},
"source_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Label"
},
"local_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Local Url"
},
"portal_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Portal Url"
},
"colour": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Colour"
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notes"
}
},
"type": "object",
"required": [
"title",
"start_at"
],
"title": "EventIn"
}201 — Successful Response
json
{
"type": "object",
"additionalProperties": true,
"title": "Response Create Event Api V1 Schedule Events Post"
}422 — Validation Error
json
{
"properties": {
"detail": {
"items": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
}PATCH /api/v1/schedule/events/{event_id}
Update Event
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
event_id | path | yes | string |
Request body
json
{
"properties": {
"title": {
"anyOf": [
{
"type": "string",
"maxLength": 255,
"minLength": 1
},
{
"type": "null"
}
],
"title": "Title"
},
"channel": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Channel"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Status"
},
"start_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Start At"
},
"end_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "End At"
},
"all_day": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "All Day"
},
"recurrence": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Recurrence"
},
"objective": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Objective"
},
"audience": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Audience"
},
"budget": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Budget"
},
"source_grid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Grid"
},
"source_record_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Record Id"
},
"source_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Source Label"
},
"local_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Local Url"
},
"portal_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Portal Url"
},
"colour": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Colour"
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notes"
}
},
"type": "object",
"title": "EventPatch"
}200 — Successful Response
json
{
"type": "object",
"additionalProperties": true,
"title": "Response Update Event Api V1 Schedule Events Event Id Patch"
}422 — Validation Error
json
{
"properties": {
"detail": {
"items": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
}DELETE /api/v1/schedule/events/{event_id}
Delete Event
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
event_id | path | yes | string |
204 — Successful Response
422 — Validation Error
json
{
"properties": {
"detail": {
"items": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
}