Discover active event types and their IDs.
Action: app_topolo_calendar.event_types.list · GET /api/admin/event-types
Declared permission: app_topolo_calendar.event_types:read. For authorized Calendar users; permissions and resource access still apply.
Before you start
- Use the current credential to confirm the production organization and inspect this exact action before preparing a call.
- Declared permission: app_topolo_calendar.event_types:read. Permission discovery is not a grant.
- Discover the authorized Calendar workspace and pass it as resourceType=workspace/resourceId separately from this action input. Calendar records and IDs are scoped to the selected host/workspace.
Inputs and field meanings
No action input fields. Supply the empty JSON object {}; keep resource context separate.
Worked request and response
Source-reviewed illustration only. Nothing below was executed; all identifiers, counts, states, credentials and URLs are synthetic. Replace identifiers through discovery before any separately authorized call.
Resource context: workspace; it is not an extra action input field.
Illustrative action input:
{}
Illustrative HTTP 200 source response:
{
"eventTypes": [
{
"id": "evt_example",
"hostId": "hst_example",
"slug": "intro-call",
"name": "Intro call",
"description": null,
"durationMinutes": 30,
"bufferBeforeMinutes": 0,
"bufferAfterMinutes": 10,
"minNoticeMinutes": 120,
"maxAdvanceDays": 60,
"slotIncrementMinutes": 15,
"locationKind": "phone",
"locationDetail": "Use the agreed phone number.",
"displayOrder": 0,
"isActive": true,
"approvalRequired": false
}
]
}
eventTypes contains active types ordered by display order. An empty list can mean no host or no active types; it does not prove inactive records are absent.
The illustrative response passes the declared structural schema. This establishes only schema compatibility, not deployed shape, values, authorization or business outcome.
Effects and verification
- Lists active event types for the selected host.
- Use returned id for get/update/delete and inspect host state if the list is empty.
Refusals and recovery
Selected source refusals are listed below; runtime middleware can return additional structured errors.
| HTTP | Error | Supported response |
|---|---|---|
| 403 | forbidden | Reconcile the declared permission, organization and verified resource grant with the legitimate access owner; do not switch context to bypass a refusal. |
Recovery: This read does not mutate Calendar records. Correct the selected context or request fields before another authorized read.
Related actions
app_topolo_calendar.host.get: Read the selected workspace host, including the unconfigured host:null state.app_topolo_calendar.event_types.get: Read one known event type, including an inactive one.app_topolo_calendar.event_types.create: Create an active event type with an explicit booking address and timing rules.
Declared schemas and provenance
The hidden action guide carries these exact current declared schemas. They are not rewritten to make the illustrations pass.
Input schema:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
Output schema:
{
"title": "List event types response",
"description": "Collection response returned by event_types.list. The service may return the collection directly or in an envelope.",
"oneOf": [
{
"type": "array",
"items": {
"type": "object",
"title": "event record",
"properties": {
"id": {
"type": "string",
"description": "Stable identifier when the event exposes one."
}
},
"additionalProperties": true
}
},
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "array",
"items": {
"type": "object",
"title": "event record",
"properties": {
"id": {
"type": "string",
"description": "Stable identifier when the event exposes one."
}
},
"additionalProperties": true
}
},
{
"type": "object",
"additionalProperties": true
}
]
},
"items": {
"type": "array",
"items": {
"type": "object",
"title": "event record",
"properties": {
"id": {
"type": "string",
"description": "Stable identifier when the event exposes one."
}
},
"additionalProperties": true
}
},
"event": {
"type": "array",
"items": {
"type": "object",
"title": "event record",
"properties": {
"id": {
"type": "string",
"description": "Stable identifier when the event exposes one."
}
},
"additionalProperties": true
}
},
"count": {
"type": "integer",
"minimum": 0
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": true
}
],
"x-topolo-contract-source": "derived-action-metadata",
"x-topolo-contract-precision": "structural"
}
Source: TopoloCalendar@b378ceb73800ee1d1e6c4ff6f0b4179918cf632c, apps/api/src/routes/admin-event-types.ts. Current catalog metadata and source were compared without executing the application.
- Source-reviewed synthetic input/response; not captured or executed.
- Source revision is not proof of current deployment, caller access, provider connection or notification delivery.
- The illustrative response passes the declared structural schema. This establishes only schema compatibility, not deployed shape, values, authorization or business outcome.
- The reviewed list source excludes inactive types. A known ID can still be retrieved directly with event_types.get.