Arthur Maintenance API

The largest surface in the API - tasks, subtasks, work orders, quotes and the contractor workflow around them. 45 documented paths.

OpenAPI Specification

arthur-online-maintenance-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Arthur Maintenance API
  version: 2.0.0
  description: Arthur Maintenance API - the maintenance surface of the Arthur API v2, the UK property
    management platform from Arthur Online (an Aareon company). Derived operation-for-operation from the
    provider's public Postman Documenter collection at https://developer.arthuronline.co.uk/. Every request
    is scoped to an Arthur entity via the mandatory X-EntityID header and authorised with an OAuth 2.0
    Authorization Code access token.
  contact:
    name: Arthur Online API Support
    url: https://support.arthuronline.co.uk/
  termsOfService: https://www.arthuronline.co.uk/terms-and-conditions/
  x-derived-from: collections/arthur-online.postman_collection.json
  x-derived-by: API Evangelist enrichment pipeline
  x-derived-date: '2026-07-26'
servers:
- url: https://api.arthuronline.co.uk/v2
  description: Arthur API v2 production
security:
- arthurOAuth: []
tags:
- name: Tasks
- name: Subtasks
- name: Workorders
- name: Quotes
paths:
  /tasks/{task_id}/subtasks:
    get:
      operationId: listSubtasksOnTask
      summary: List Subtasks on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: This endpoint retrieves a list of subtasks associated with the given task ID.
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      operationId: createSubtaskOnTask
      summary: Create Subtask on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to create a new subtask record for a  task . The API will return\
        \ the saved data and a unique subtask ID.\n\nSupported Fields \n The following fields are supported\
        \ for the request body\n\nField \n Example \n Type \n Required? \n\ndescription \n subtask nb1\
        \ \n String \n Yes \n\ndue_date \n 2020-09-22 \n Date \n No \n\ncompleted \n true \n Boolean \n\
        \ No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  type: string
                  example: subtask nb1
                due_date:
                  type: string
                  format: date
                  example: '2020-09-22'
                completed:
                  type: boolean
                  example: true
              required:
              - description
            example:
              description: new subtask
              due_date: '2020-09-21'
              completed: false
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/subtasks/{subtask_id}:
    get:
      operationId: viewSubtaskOnTask
      summary: View Subtask On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: subtask_id
        in: path
        required: true
        description: Arthur subtask id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: 'This API endpoint retrieves the details of a single subtask, identified by its unique 
        subtask_id .


        Use this endpoint to view the specific details of a subtask on a task.'
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateSubtaskOnTask
      summary: Update Subtask On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: subtask_id
        in: path
        required: true
        description: Arthur subtask id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "This endpoint updates an existing subtask on a task using the same fields as the 'Add\
        \ Subtask' endpoint. The API will return the updated data for the note in the response.\n\nSupported\
        \ Fields \n The following fields are supported for the request body\n\nField \n Example \n Type\
        \ \n Required? \n\ndescription \n subtask nb1 \n String \n No \n\ndue_date \n 2020-09-22 \n Date\
        \ \n No \n\ncompleted \n true \n Boolean \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  type: string
                  example: subtask nb1
                due_date:
                  type: string
                  format: date
                  example: '2020-09-22'
                completed:
                  type: boolean
                  example: true
            example:
              completed: true
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteSubtaskOnTask
      summary: Delete Subtask On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: subtask_id
        in: path
        required: true
        description: Arthur subtask id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: This endpoint deletes an existing subtask note using the subtask  id .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/workorders:
    get:
      operationId: listWorkordersOnTask
      summary: List Workorders On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: This endpoint retrieves a list of workorders associated with the given task ID.
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      operationId: createWorkorderOnTask
      summary: Create Workorder On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to create a new workorder record for a  task . The API will return\
        \ the saved data and a unique workorder ID.\n\nSupported Fields \n The following fields are supported\
        \ for the request body\n\nField \n Example \n Type \n Required? \n\ntitle \n workorder title \n\
        \ String \n No \n\ndescription \n workorder description \n String \n No \n\ninvite_contractors\
        \ \n [123,1234] \n Array(integer) \n No \n\nservice_type \n Carpet Layer \n String \n Yes \n\n\
        start_date \n 2020-02-20 \n Date \n No \n\ndue_date \n 2020-02-20 \n Date \n No \n\nbudget \n\
        \ 1000,00 \n Float \n No \n\nallocated_time_hours \n 20 \n Float \n No \n\nactual_time_hours \n\
        \ 20 \n Float \n No \n\nprice_per_hour \n 7,90 \n Float \n No \n\nemergency \n true \n Boolean\
        \ \n No \n\nquote_required \n true \n Boolean \n No \n\nshare_assets \n false \n Boolean \n No\
        \ \n\nhide_tenant_details \n true \n Boolean \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  example: workorder title
                description:
                  type: string
                  example: workorder description
                invite_contractors:
                  type: array
                  items:
                    type: integer
                  example: '[123,1234]'
                service_type:
                  type: string
                  example: Carpet Layer
                start_date:
                  type: string
                  format: date
                  example: '2020-02-20'
                due_date:
                  type: string
                  format: date
                  example: '2020-02-20'
                budget:
                  type: number
                allocated_time_hours:
                  type: number
                  example: 20.0
                actual_time_hours:
                  type: number
                  example: 20.0
                price_per_hour:
                  type: number
                emergency:
                  type: boolean
                  example: true
                quote_required:
                  type: boolean
                  example: true
                share_assets:
                  type: boolean
                  example: false
                hide_tenant_details:
                  type: boolean
                  example: true
              required:
              - service_type
            example:
              service_type: aerial-network-specialist
              title: Workorder title
              description: Workorder Description
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/workorders/{workorder_id}:
    get:
      operationId: viewWorkorderOnTask
      summary: View Workorder On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: workorder_id
        in: path
        required: true
        description: Arthur workorder id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: This API endpoint retrieves the details of a single task  workorder , identified by
        its unique  id .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateWorkorderOnTask
      summary: Update Workorder On Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: workorder_id
        in: path
        required: true
        description: Arthur workorder id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "This endpoint updates an existing workorder on a task using the same fields as the\
        \ 'Add Workorder' endpoint. The API will return the updated data for the tenancy in the response.\n\
        \nSupported Fields \n The following fields are supported for the request body\n\nField \n Example\
        \ \n Type \n Required? \n\ntitle \n workorder title \n String \n No \n\ndescription \n workorder\
        \ description \n String \n No \n\ninvite_contractors \n [123,1234] \n Array(integer) \n No \n\n\
        service_type \n Carpet Layer \n String \n No \n\nstart_date \n 2020-02-20 \n Date \n No \n\ndue_date\
        \ \n 2020-02-20 \n Date \n No \n\nbudget \n 1000,00 \n Float \n No \n\nallocated_time_hours \n\
        \ 20 \n Float \n No \n\nactual_time_hours \n 20 \n Float \n No \n\nprice_per_hour \n 7,90 \n Float\
        \ \n No \n\nemergency \n true \n Boolean \n No \n\nquote_required \n true \n Boolean \n No \n\n\
        share_assets \n false \n Boolean \n No \n\nhide_tenant_details \n true \n Boolean \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  example: workorder title
                description:
                  type: string
                  example: workorder description
                invite_contractors:
                  type: array
                  items:
                    type: integer
                  example: '[123,1234]'
                service_type:
                  type: string
                  example: Carpet Layer
                start_date:
                  type: string
                  format: date
                  example: '2020-02-20'
                due_date:
                  type: string
                  format: date
                  example: '2020-02-20'
                budget:
                  type: number
                allocated_time_hours:
                  type: number
                  example: 20.0
                actual_time_hours:
                  type: number
                  example: 20.0
                price_per_hour:
                  type: number
                emergency:
                  type: boolean
                  example: true
                quote_required:
                  type: boolean
                  example: true
                share_assets:
                  type: boolean
                  example: false
                hide_tenant_details:
                  type: boolean
                  example: true
            example:
              title: Updated title
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/tags:
    get:
      operationId: listTagsOnTask
      summary: List Tags on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: This endpoint retrieves a list of tags associated with the given Task ID.
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: object
              example:
                status: 200
                data:
                - id: 123
                  name: tag one
                  color: sky
                - id: 123
                  name: tag two
                  color: lightgreen
                - id: 123
                  name: tag three
                  color: purple
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: tagTask
      summary: Tag Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to create a new tag record for a  task . The API will return the\
        \ saved data and a unique tag ID.\n\nSupported Fields \n The following fields are supported for\
        \ the request body\nTag field should be a valid tag ID or name.\n\nField \n Example \n Type \n\
        \ Required? \n\ntag \n [\"123\"] \n Array(String) \n Yes"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tag:
                  type: array
                  items:
                    type: string
                  example: '["123"]'
              required:
              - tag
            example:
              tag:
              - '1234'
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/untag:
    put:
      operationId: untagTask
      summary: Untag Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to unassign tag record from a  task . The API will return the saved\
        \ data. Tag field should be a valid tag ID or name.\n\nSupported Fields \n The following fields\
        \ are supported for the request body\n\nField \n Example \n Type \n Required? \n\ntag \n \"123\"\
        \ \n String \n Yes"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tag:
                  type: string
                  example: '"123"'
              required:
              - tag
            example:
              tag: '1234'
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/untag_all:
    put:
      operationId: untagAllTaskTags
      summary: Untag All Task Tags
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: Use this endpoint to unassign all tags from the  task .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/notes:
    get:
      operationId: listNotesOnTask
      summary: List Notes on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: This endpoint retrieves a list of  notes  associated with the given task ID.
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      operationId: createNoteOnTask
      summary: Create Note on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to create a new note record for a  task . The API will return the\
        \ saved data and a unique note ID.\n\nSupported Fields \n The following fields are supported for\
        \ the request body\n\nField \n Example \n Type \n Required? \n\ncontent \n Moving away \n String\
        \ \n Yes \n\ntags \n ['one','two'] \n Array(String) \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                content:
                  type: string
                  example: Moving away
                tags:
                  type: array
                  items:
                    type: string
                  example: '[''one'',''two'']'
              required:
              - content
            example:
              content: Remember this note
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/notes/{note_id}:
    get:
      operationId: viewNoteOnTask
      summary: View Note on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: note_id
        in: path
        required: true
        description: Arthur note id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: This API endpoint retrieves the details of a single task  note , identified by its
        unique  id
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateNoteOnTask
      summary: Update Note on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: note_id
        in: path
        required: true
        description: Arthur note id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "This endpoint updates an existing note on a task using the same fields as the 'Add\
        \ Note' endpoint. The API will return the updated data for the note in the response.\n\nSupported\
        \ Fields \n The following fields are supported for the request body\n\nField \n Example \n Type\
        \ \n Required? \n\ncontent \n Moving away \n String \n No \n\ntags \n ['one','two'] \n Array(String)\
        \ \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                content:
                  type: string
                  example: Moving away
                tags:
                  type: array
                  items:
                    type: string
                  example: '[''one'',''two'']'
            example:
              content: Updated Note
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteNoteOnTask
      summary: Delete Note on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - name: note_id
        in: path
        required: true
        description: Arthur note id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: This endpoint deletes an existing task note using the note  id .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/conversation_recipients:
    get:
      operationId: getRecipientsForTask
      summary: Get Recipients for Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: This endpoint retrieves a list of conversation recipients on a task record, identified
        by its unique  task_id .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /tasks/{task_id}/conversations:
    get:
      operationId: listConversationsOnTask
      summary: List Conversations on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: This endpoint retrieves a list of conversations on a task, identified by its unique 
        task_id .
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      operationId: addConversationOnTask
      summary: Add Conversation on Task
      tags:
      - Tasks
      parameters:
      - name: task_id
        in: path
        required: true
        description: Arthur task id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "Use this endpoint to create a new conversation on a task record. The API will return\
        \ the saved data and a unique Conversation ID.\n\nSupported Fields \n The following fields are\
        \ supported for the request body\n\nField \n Example \n Type \n Required? \n\nmessage \n It's\
        \ done \n String \n Yes \n\nsubject \n Meeting tomorrow \n String \n Yes \n\nperson_ids \n ['1','2']\
        \ \n Array(String) \n Yes"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                message:
                  type: string
                  example: It's done
                subject:
                  type: string
                  example: Meeting tomorrow
                person_ids:
                  type: array
                  items:
                    type: string
                  example: '[''1'',''2'']'
              required:
              - message
              - subject
              - person_ids
            example:
              message: Please clean the house on friday.
              subject: House duties
              person_ids:
     

# --- truncated at 32 KB (122 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthur-online/refs/heads/main/openapi/arthur-online-maintenance-openapi.yml