naftiko: 1.0.0-alpha2 info: label: Cal.diy API v2 — Schedules description: 'Cal.diy API v2 — Schedules. 6 operations. Lead operation: Create a schedule. Self-contained Naftiko capability covering one Cal Com business surface.' tags: - Cal Com - Schedules created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CAL_COM_API_KEY: CAL_COM_API_KEY capability: consumes: - type: http namespace: cal-com-schedules baseUri: '' description: Cal.diy API v2 — Schedules business capability. Self-contained, no shared references. resources: - name: v2-schedules path: /v2/schedules operations: - name: schedulescontroller20240611createschedule method: POST description: Create a schedule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: schedulescontroller20240611getschedules method: GET description: Get all schedules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: v2-schedules-default path: /v2/schedules/default operations: - name: schedulescontroller20240611getdefaultschedule method: GET description: Get default schedule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: v2-schedules-scheduleId path: /v2/schedules/{scheduleId} operations: - name: schedulescontroller20240611getschedule method: GET description: Get a schedule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: scheduleId in: path type: number required: true - name: schedulescontroller20240611updateschedule method: PATCH description: Update a schedule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: scheduleId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: schedulescontroller20240611deleteschedule method: DELETE description: Delete a schedule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Authorization in: header type: string description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true - name: cal-api-version in: header type: string description: Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version. required: true - name: scheduleId in: path type: number required: true exposes: - type: rest namespace: cal-com-schedules-rest port: 8080 description: REST adapter for Cal.diy API v2 — Schedules. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v2/schedules name: v2-schedules description: REST surface for v2-schedules. operations: - method: POST name: schedulescontroller20240611createschedule description: Create a schedule call: cal-com-schedules.schedulescontroller20240611createschedule with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version body: rest.body outputParameters: - type: object mapping: $. - method: GET name: schedulescontroller20240611getschedules description: Get all schedules call: cal-com-schedules.schedulescontroller20240611getschedules with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version outputParameters: - type: object mapping: $. - path: /v1/v2/schedules/default name: v2-schedules-default description: REST surface for v2-schedules-default. operations: - method: GET name: schedulescontroller20240611getdefaultschedule description: Get default schedule call: cal-com-schedules.schedulescontroller20240611getdefaultschedule with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version outputParameters: - type: object mapping: $. - path: /v1/v2/schedules/{scheduleid} name: v2-schedules-scheduleid description: REST surface for v2-schedules-scheduleId. operations: - method: GET name: schedulescontroller20240611getschedule description: Get a schedule call: cal-com-schedules.schedulescontroller20240611getschedule with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version scheduleId: rest.scheduleId outputParameters: - type: object mapping: $. - method: PATCH name: schedulescontroller20240611updateschedule description: Update a schedule call: cal-com-schedules.schedulescontroller20240611updateschedule with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version scheduleId: rest.scheduleId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: schedulescontroller20240611deleteschedule description: Delete a schedule call: cal-com-schedules.schedulescontroller20240611deleteschedule with: Authorization: rest.Authorization cal-api-version: rest.cal-api-version scheduleId: rest.scheduleId outputParameters: - type: object mapping: $. - type: mcp namespace: cal-com-schedules-mcp port: 9090 transport: http description: MCP adapter for Cal.diy API v2 — Schedules. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-schedule description: Create a schedule hints: readOnly: false destructive: false idempotent: false call: cal-com-schedules.schedulescontroller20240611createschedule with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version body: tools.body outputParameters: - type: object mapping: $. - name: get-all-schedules description: Get all schedules hints: readOnly: true destructive: false idempotent: true call: cal-com-schedules.schedulescontroller20240611getschedules with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version outputParameters: - type: object mapping: $. - name: get-default-schedule description: Get default schedule hints: readOnly: true destructive: false idempotent: true call: cal-com-schedules.schedulescontroller20240611getdefaultschedule with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version outputParameters: - type: object mapping: $. - name: get-schedule description: Get a schedule hints: readOnly: true destructive: false idempotent: true call: cal-com-schedules.schedulescontroller20240611getschedule with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version scheduleId: tools.scheduleId outputParameters: - type: object mapping: $. - name: update-schedule description: Update a schedule hints: readOnly: false destructive: false idempotent: true call: cal-com-schedules.schedulescontroller20240611updateschedule with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version scheduleId: tools.scheduleId body: tools.body outputParameters: - type: object mapping: $. - name: delete-schedule description: Delete a schedule hints: readOnly: false destructive: true idempotent: true call: cal-com-schedules.schedulescontroller20240611deleteschedule with: Authorization: tools.Authorization cal-api-version: tools.cal-api-version scheduleId: tools.scheduleId outputParameters: - type: object mapping: $.