> ## Documentation Index
> Fetch the complete documentation index at: https://docs.developers.mijnklantportaal.nl/llms.txt
> Use this file to discover all available pages before exploring further.

# Cancel appointment

> Cancel an existing appointment



## OpenAPI

````yaml /openapi.yaml delete /appointments/{appointmentId}
openapi: 3.1.1
info:
  title: MijnKlantportaal API
  version: v1
servers:
  - url: https://api.mijnklantportaal.nl/v1
security:
  - APIKey: []
tags:
  - name: Agreements API
  - name: Appointments API
  - name: Customers API
  - name: Customer Groups API
  - name: Customer Invoices API
  - name: Customer Offers API
  - name: Customer Subscriptions API
  - name: Customer Subscription Packages API
  - name: Files API
  - name: File Request API
  - name: File Share API
  - name: Invoices API
  - name: Payment Links API
  - name: Punch Cards API
  - name: Tickets API
  - name: Webhooks API
paths:
  /appointments/{appointmentId}:
    delete:
      tags:
        - Appointments API
      summary: Cancel appointment
      description: Cancel an existing appointment
      operationId: cancel-appointment
      parameters:
        - name: appointmentId
          in: path
          description: ID of the appointment to cancel
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Getting the canceled appointment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Appointment'
        '404':
          description: No appointment can be found for the given ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_ApiError'
        '409':
          description: The appointment is already canceled
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_ApiError'
components:
  schemas:
    Appointment:
      type: object
      description: Appointment
      properties:
        id:
          type: string
          example: apt_abc12346def678
          description: ID of the appointment, always starting with `apt_`.
        customerId:
          type: string
          example: cst_abc12345def678
          nullable: true
          description: ID of the Customer involved in this appointment, when the case
        attendeeName:
          type: string
          example: John Doe
          description: Name of the attendee of the meeting
        attendeeEmail:
          type: string
          example: john.doe@example.com
          description: Emailaddress of the attendee of the meeting
        startsAt:
          type: string
          example: '2025-03-05T16:00:00+02:00'
          description: Date and time when the appointment starts, written in ATOM format.
        endsAt:
          type: string
          example: '2025-03-05T16:30:00+02:00'
          description: Date and time when the appointment ends, written in ATOM format.
        status:
          type: string
          example: scheduled
          description: >-
            Current status of the appointment. Possible values are `scheduled`,
            `canceled`, and `pending`.
        onlineMeetingLink:
          type: string
          example: https://meet.google.com/abc-123
          nullable: true
          description: >-
            Link to the online meeting of the connected integration, when
            available
        createdAt:
          type: string
          example: '2025-03-04T17:23:14+02:00'
          description: >-
            Date and time when the appointment is added to MijnKlantportaal, not
            matter of the status. Written in ATOM format.
    Error_ApiError:
      type: object
      properties:
        message:
          type: string
          description: Explanation what went wrong
  securitySchemes:
    APIKey:
      type: http
      scheme: bearer

````