Microsoft Office 365 · Arazzo Workflow

Microsoft Office 365 Cancel Event

Version 1.0.0

Create an event, read it back to confirm, then delete it from the calendar.

1 workflow 1 source API 1 provider
View Spec View on GitHub CloudCollaborationEnterpriseMicrosoftProductivityArazzoWorkflows

Provider

microsoft-office-365

Workflows

cancel-event
Book an event then cancel it after confirming it exists.
Creates an event via POST /me/events (201), reads it via GET /me/events/{event-id} (200), then deletes it via DELETE /me/events/{event-id} (204).
3 steps inputs: endDateTime, startDateTime, subject, timeZone outputs: cancelledEventId
1
createEvent
createEvent
Create the event on the default calendar.
2
confirmEvent
getEvent
Read the event back by id to confirm it was booked.
3
deleteEvent
deleteEvent
Delete the event from the calendar. Returns 204 no content.

Source API Descriptions

Arazzo Workflow Specification

microsoft-office-365-cancel-event-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Microsoft Office 365 Cancel Event
  summary: Create an event, read it back to confirm, then delete it from the calendar.
  description: >-
    A full event lifecycle that books and then cancels a meeting. The workflow
    creates an event, reads it back to confirm the booking exists, and then
    deletes the event from the calendar. The delete returns 204 with no content.
    This supports tentative bookings that are later withdrawn. Every step spells
    out its request inline so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: graphApi
  url: ../openapi/microsoft-graph-api-openapi.yml
  type: openapi
workflows:
- workflowId: cancel-event
  summary: Book an event then cancel it after confirming it exists.
  description: >-
    Creates an event via POST /me/events (201), reads it via GET
    /me/events/{event-id} (200), then deletes it via DELETE /me/events/{event-id}
    (204).
  inputs:
    type: object
    required:
    - subject
    - startDateTime
    - endDateTime
    - timeZone
    properties:
      subject:
        type: string
        description: The subject of the event.
      startDateTime:
        type: string
        description: The event start date-time.
      endDateTime:
        type: string
        description: The event end date-time.
      timeZone:
        type: string
        description: The time zone name for the date-times.
  steps:
  - stepId: createEvent
    description: Create the event on the default calendar.
    operationId: createEvent
    requestBody:
      contentType: application/json
      payload:
        subject: $inputs.subject
        start:
          dateTime: $inputs.startDateTime
          timeZone: $inputs.timeZone
        end:
          dateTime: $inputs.endDateTime
          timeZone: $inputs.timeZone
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      eventId: $response.body#/id
  - stepId: confirmEvent
    description: Read the event back by id to confirm it was booked.
    operationId: getEvent
    parameters:
    - name: event-id
      in: path
      value: $steps.createEvent.outputs.eventId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      subject: $response.body#/subject
  - stepId: deleteEvent
    description: Delete the event from the calendar. Returns 204 no content.
    operationId: deleteEvent
    parameters:
    - name: event-id
      in: path
      value: $steps.createEvent.outputs.eventId
    successCriteria:
    - condition: $statusCode == 204
    outputs:
      cancelledEventId: $steps.createEvent.outputs.eventId
  outputs:
    cancelledEventId: $steps.deleteEvent.outputs.cancelledEventId