Automile ResourceOwnerWorkOrder API

The ResourceOwnerWorkOrder API from Automile — 12 operation(s) for resourceownerworkorder.

OpenAPI Specification

automile-resourceownerworkorder-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Automile ClientApi ResourceOwnerWorkOrder API
  version: v1
tags:
- name: ResourceOwnerWorkOrder
paths:
  /v1/resourceowner/workorders:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Retrieve a list of work orders and their containing attachments, items and notes
      description: If no time is set on the "to" parameter, then it's assumed all entries on the date should be included, and the time part will be set to 11:59:59 PM
      operationId: ResourceOwnerWorkOrder_GetWorkOrderList
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: query
        name: from
        description: Filter on JobDate to be on or after the specified date and time (default is from now)
        type: string
        format: date-time
      - in: query
        name: to
        description: Filter on JobDate to be before the specified date and time (default is no limitation)
        type: string
        format: date-time
      - in: query
        name: jobStatus
        description: Status on job (New = 0, Started = 1, Paused = 2, Completed = 3, Cancelled = 4, Invoiced = 5, Paid = 6) (default is all)
        type: integer
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
      - in: query
        name: includeUnassigned
        description: Include unassigned jobs (default is true)
        type: boolean
        default: true
      - in: query
        name: includeDeleted
        description: Include deleted jobs (default is false)
        type: boolean
        default: false
      responses:
        '200':
          description: Successful request
          schema:
            type: array
            items:
              $ref: '#/definitions/WorkOrderModelGET'
        '500':
          description: Internal server error
      security:
      - oauth2: []
    post:
      tags:
      - ResourceOwnerWorkOrder
      summary: Create a work order and containing attachments, items and notes
      operationId: ResourceOwnerWorkOrder_CreateWorkOrder
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: body
        name: body
        description: Work order model
        schema:
          $ref: '#/definitions/WorkOrderModelPOST'
      responses:
        '200':
          description: Success
        '201':
          description: Successfully created
        '500':
          description: Internal server error
      security:
      - oauth2: []
    put:
      tags:
      - ResourceOwnerWorkOrder
      summary: Update or create one or many work orders
      description: "For work orders, items, attachments and notes with an id is updated. When id is not provided new objects is created. If an \r\n            item, attachment or note is missing on an existing work order that item, attachment or note is removed."
      operationId: ResourceOwnerWorkOrder_SaveWorkOrderList
      consumes:
      - application/json
      - text/json
      - application/*+json
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: body
        name: body
        description: List of Work Orders
        schema:
          type: array
          items:
            $ref: '#/definitions/WorkOrderModelSyncPUT'
      responses:
        '200':
          description: Successful update
          schema:
            type: array
            items:
              $ref: '#/definitions/WorkOrderModelGET'
        '500':
          description: Internal server error.
      security:
      - oauth2: []
  /v1/resourceowner/workorders/{workOrderId}:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Retrieve a work order
      operationId: ResourceOwnerWorkOrder_GetWorkOrder
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: workOrderId
        description: Work order id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful request
          schema:
            $ref: '#/definitions/WorkOrderModelGET'
        '500':
          description: Internal server error
      security:
      - oauth2: []
    put:
      tags:
      - ResourceOwnerWorkOrder
      summary: Update a work order
      operationId: ResourceOwnerWorkOrder_UpdateWorkOrder
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: path
        name: workOrderId
        description: Work order id
        required: true
        type: integer
        format: int32
      - in: body
        name: body
        description: Work order
        schema:
          $ref: '#/definitions/WorkOrderModelPUT'
      responses:
        '200':
          description: Successful update
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    delete:
      tags:
      - ResourceOwnerWorkOrder
      summary: Delete work order
      operationId: ResourceOwnerWorkOrder_DeleteWorkOrder
      parameters:
      - in: path
        name: workOrderId
        description: Work order id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful delete
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/getwithquoteid/{quoteId}:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Retrieve a work order by quote id
      operationId: ResourceOwnerWorkOrder_GetWorkOrderByQuoteId
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: quoteId
        description: Quote id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful request
          schema:
            $ref: '#/definitions/WorkOrderModelGET'
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/{workOrderId}/attachments:
    post:
      tags:
      - ResourceOwnerWorkOrder
      summary: Creates an attachment and adds it to an existing work order
      operationId: ResourceOwnerWorkOrder_CreateAttachment
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: path
        name: workOrderId
        description: The work order which the attachment will be associated with
        required: true
        type: integer
        format: int32
      - in: body
        name: body
        description: Attachment information
        schema:
          $ref: '#/definitions/WorkOrderAttachmentModelPOST'
      responses:
        '200':
          description: Success
        '201':
          description: Successfully created
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/{workOrderId}/status:
    put:
      tags:
      - ResourceOwnerWorkOrder
      summary: Update status of a work order
      operationId: ResourceOwnerWorkOrder_UpdateWorkOrderStatus
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: path
        name: workOrderId
        description: The work order which the satus should be updated on
        required: true
        type: integer
        format: int32
      - in: body
        name: body
        description: Job status
        schema:
          $ref: '#/definitions/WorkOrderStatusModelPUT'
      responses:
        '200':
          description: Successful update
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/articles:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get all articles
      operationId: ResourceOwnerWorkOrder_GetArticleList
      produces:
      - text/plain
      - application/json
      - text/json
      responses:
        '200':
          description: Successful request
          schema:
            type: array
            items:
              $ref: '#/definitions/WorkOrderArticleModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    post:
      tags:
      - ResourceOwnerWorkOrder
      summary: Create a article
      operationId: ResourceOwnerWorkOrder_CreateArticle
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: body
        name: body
        description: Article information
        schema:
          $ref: '#/definitions/WorkOrderArticleModelPOST'
      responses:
        '200':
          description: Success
        '201':
          description: Successfully created
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/articles/{workOrderArticleId}:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get a specific article
      operationId: ResourceOwnerWorkOrder_GetArticle
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: workOrderArticleId
        description: Work order article id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful request
          schema:
            $ref: '#/definitions/WorkOrderArticleModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    put:
      tags:
      - ResourceOwnerWorkOrder
      summary: Update a article
      operationId: ResourceOwnerWorkOrder_UpdateArticle
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: path
        name: workOrderArticleId
        description: Work order article id
        required: true
        type: integer
        format: int32
      - in: body
        name: body
        description: Article information
        schema:
          $ref: '#/definitions/WorkOrderArticleModelPUT'
      responses:
        '200':
          description: Successfully updated
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    delete:
      tags:
      - ResourceOwnerWorkOrder
      summary: Delete a article
      operationId: ResourceOwnerWorkOrder_DeleteArticle
      parameters:
      - in: path
        name: workOrderArticleId
        description: Work order article id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successfully deleted
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/categories:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get all categories
      operationId: ResourceOwnerWorkOrder_GetCategoryList
      produces:
      - text/plain
      - application/json
      - text/json
      responses:
        '200':
          description: Successful request
          schema:
            type: array
            items:
              $ref: '#/definitions/WorkOrderCategoryModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    post:
      tags:
      - ResourceOwnerWorkOrder
      summary: Create a category
      operationId: ResourceOwnerWorkOrder_CreateCategory
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: body
        name: body
        description: Category information
        schema:
          $ref: '#/definitions/WorkOrderCategoryModelPOST'
      responses:
        '200':
          description: Success
        '201':
          description: Successfully created
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/categories/{workOrderCategoryId}:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get a specific category
      operationId: ResourceOwnerWorkOrder_GetCategory
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: workOrderCategoryId
        description: Work order category id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful request
          schema:
            $ref: '#/definitions/WorkOrderCategoryModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    delete:
      tags:
      - ResourceOwnerWorkOrder
      summary: Delete a category
      operationId: ResourceOwnerWorkOrder_DeleteCategory
      parameters:
      - in: path
        name: workOrderCategoryId
        description: Work order category id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successfully deleted
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/customers:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get all customers
      operationId: ResourceOwnerWorkOrder_GetCustomerList
      produces:
      - text/plain
      - application/json
      - text/json
      responses:
        '200':
          description: Successful request
          schema:
            type: array
            items:
              $ref: '#/definitions/WorkOrderCustomerModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    post:
      tags:
      - ResourceOwnerWorkOrder
      summary: Create a customer
      operationId: ResourceOwnerWorkOrder_CreateCustomer
      consumes:
      - application/json
      - text/json
      - application/*+json
      parameters:
      - in: body
        name: body
        description: Customer information
        schema:
          $ref: '#/definitions/WorkOrderCustomerModelPOST'
      responses:
        '200':
          description: Success
        '201':
          description: Successfully created
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/customers/{workOrderCustomerId}:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get a specific customer
      operationId: ResourceOwnerWorkOrder_GetCustomer
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: workOrderCustomerId
        description: Work order customer id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successful request
          schema:
            $ref: '#/definitions/WorkOrderCustomerModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    put:
      tags:
      - ResourceOwnerWorkOrder
      summary: Update a customer
      operationId: ResourceOwnerWorkOrder_UpdateCustomer
      consumes:
      - application/json
      - text/json
      - application/*+json
      produces:
      - text/plain
      - application/json
      - text/json
      parameters:
      - in: path
        name: workOrderCustomerId
        description: Work order customer id
        required: true
        type: integer
        format: int32
      - in: body
        name: body
        description: Customer information
        schema:
          $ref: '#/definitions/WorkOrderCustomerModelPUT'
      responses:
        '200':
          description: Successfully updated
          schema:
            $ref: '#/definitions/WorkOrderCustomerModelGET'
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
    delete:
      tags:
      - ResourceOwnerWorkOrder
      summary: Delete a customer
      operationId: ResourceOwnerWorkOrder_DeleteCustomer
      parameters:
      - in: path
        name: workOrderCustomerId
        description: Work order customer id
        required: true
        type: integer
        format: int32
      responses:
        '200':
          description: Successfully deleted
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
  /v1/resourceowner/workorders/referenceId:
    get:
      tags:
      - ResourceOwnerWorkOrder
      summary: Get a new reference id for a work order (not unique)
      operationId: ResourceOwnerWorkOrder_GetNextWorkOrderId
      produces:
      - text/plain
      - application/json
      - text/json
      responses:
        '200':
          description: Successful request
          schema:
            type: string
        '403':
          description: Forbidden access to resource
        '500':
          description: Internal server error
      security:
      - oauth2: []
definitions:
  WorkOrderNoteModelPOST:
    required:
    - Note
    type: object
    properties:
      Note:
        minLength: 1
        type: string
    additionalProperties: false
  WorkOrderAttachmentModelGET:
    required:
    - AttachmentType
    - URL
    type: object
    properties:
      URL:
        minLength: 1
        type: string
      Description:
        type: string
      AttachmentType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        type: integer
      WorkOrderAttachmentId:
        format: int32
        type: integer
      CreatedByContactId:
        format: int32
        type: integer
      Created:
        format: date-time
        type: string
    additionalProperties: false
  TimeSpan:
    type: object
    properties:
      Ticks:
        format: int64
        type: integer
      Days:
        format: int32
        type: integer
        readOnly: true
      Hours:
        format: int32
        type: integer
        readOnly: true
      Milliseconds:
        format: int32
        type: integer
        readOnly: true
      Microseconds:
        format: int32
        type: integer
        readOnly: true
      Nanoseconds:
        format: int32
        type: integer
        readOnly: true
      Minutes:
        format: int32
        type: integer
        readOnly: true
      Seconds:
        format: int32
        type: integer
        readOnly: true
      TotalDays:
        format: double
        type: number
        readOnly: true
      TotalHours:
        format: double
        type: number
        readOnly: true
      TotalMilliseconds:
        format: double
        type: number
        readOnly: true
      TotalMicroseconds:
        format: double
        type: number
        readOnly: true
      TotalNanoseconds:
        format: double
        type: number
        readOnly: true
      TotalMinutes:
        format: double
        type: number
        readOnly: true
      TotalSeconds:
        format: double
        type: number
        readOnly: true
    additionalProperties: false
  WorkOrderModelGET:
    type: object
    properties:
      JobDate:
        format: date-time
        type: string
      JobTime:
        $ref: '#/definitions/TimeSpan'
      EstimatedTimeInMinutes:
        format: int32
        type: integer
      JobDescription:
        type: string
      ExternalId:
        type: string
      CustomerContactName:
        type: string
      CustomerEmail:
        type: string
      CustomerName:
        type: string
      CustomerCommunicationLanguageISO639_2:
        type: string
      CustomerPhoneNumber:
        type: string
      CustomerJobAddress:
        $ref: '#/definitions/CustomerJobAddressModel'
      CustomerBillingAddress:
        $ref: '#/definitions/CustomerBillingAddressModel'
      NotificationType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        type: integer
      WorkOrderCategoryId:
        format: int32
        type: integer
      CategoryName:
        type: string
      AssignedToContactId:
        format: int32
        type: integer
      QuoteId:
        format: int32
        type: integer
      WorkOrderCustomerId:
        format: int32
        type: integer
      Status:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        type: integer
      WorkOrderId:
        format: int32
        type: integer
      Created:
        format: date-time
        type: string
      IsDeleted:
        type: boolean
      Rating:
        format: double
        type: number
      RequestedByContactId:
        format: int32
        type: integer
      StatusHistory:
        type: array
        items:
          $ref: '#/definitions/WorkOrderStatusHistoryModelGET'
      Notes:
        type: array
        items:
          $ref: '#/definitions/WorkOrderNoteModelGET'
      Items:
        type: array
        items:
          $ref: '#/definitions/WorkOrderItemModelGET'
      Attachments:
        type: array
        items:
          $ref: '#/definitions/WorkOrderAttachmentModelGET'
    additionalProperties: false
  PositionPointModel:
    type: object
    properties:
      Longitude:
        format: double
        type: number
      Latitude:
        format: double
        type: number
    additionalProperties: false
  WorkOrderCustomerModelPUT:
    type: object
    properties:
      Name:
        type: string
      ContactName:
        type: string
      CommunicationLanguageISO639_2:
        type: string
      Email:
        type: string
      PhoneNumber:
        type: string
      BillingAddress:
        $ref: '#/definitions/CustomerBillingAddressModel'
      JobAddress:
        $ref: '#/definitions/CustomerJobAddressModel'
    additionalProperties: false
  WorkOrderNoteModelGET:
    required:
    - Note
    type: object
    properties:
      Note:
        minLength: 1
        type: string
      WorkOrderNoteId:
        format: int32
        type: integer
      CreatedByContactId:
        format: int32
        type: integer
      Created:
        format: date-time
        type: string
    additionalProperties: false
  WorkOrderCategoryModelPOST:
    required:
    - CategoryName
    type: object
    properties:
      CategoryName:
        minLength: 1
        type: string
    additionalProperties: false
  WorkOrderAttachmentModelPOST:
    required:
    - AttachmentType
    - URL
    type: object
    properties:
      URL:
        minLength: 1
        type: string
      Description:
        type: string
      AttachmentType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        type: integer
    additionalProperties: false
  WorkOrderModelPUT:
    type: object
    properties:
      JobDate:
        format: date-time
        type: string
      JobTime:
        $ref: '#/definitions/TimeSpan'
      EstimatedTimeInMinutes:
        format: int32
        type: integer
      JobDescription:
        type: string
      ExternalId:
        type: string
      CustomerContactName:
        type: string
      CustomerEmail:
        type: string
      CustomerName:
        type: string
      CustomerCommunicationLanguageISO639_2:
        type: string
      CustomerPhoneNumber:
        type: string
      CustomerJobAddress:
        $ref: '#/definitions/CustomerJobAddressModel'
      CustomerBillingAddress:
        $ref: '#/definitions/CustomerBillingAddressModel'
      NotificationType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        type: integer
      WorkOrderCategoryId:
        format: int32
        type: integer
      CategoryName:
        type: string
      AssignedToContactId:
        format: int32
        type: integer
      QuoteId:
        format: int32
        type: integer
      WorkOrderCustomerId:
        format: int32
        type: integer
      Status:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        type: integer
      Notes:
        type: array
        items:
          $ref: '#/definitions/WorkOrderNoteModelPUT'
      Items:
        type: array
        items:
          $ref: '#/definitions/WorkOrderItemModelPUT'
      Attachments:
        type: array
        items:
          $ref: '#/definitions/WorkOrderAttachmentModelPUT'
    additionalProperties: false
  WorkOrderArticleModelPOST:
    required:
    - ArticleName
    - PricePerQuantityExclVAT
    - TaxRate
    type: object
    properties:
      UnitType:
        format: int32
        enum:
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
        - 21
        - 22
        - 23
        - 24
        - 25
        - 26
        - 27
        - 28
        - 29
        - 30
        - 31
        - 32
        - 33
        - 34
        type: integer
      ArticleName:
        minLength: 1
        type: string
      PricePerQuantityExclVAT:
        format: double
        type: number
      TaxRate:
        format: double
        type: number
    additionalProperties: false
  WorkOrderModelPOST:
    type: object
    properties:
      JobDate:
        format: date-time
        type: string
      JobTime:
        $ref: '#/definitions/TimeSpan'
      EstimatedTimeInMinutes:
        format: int32
        type: integer
      JobDescription:
        type: string
      ExternalId:
        type: string
      CustomerContactName:
        type: string
      CustomerEmail:
        type: string
      CustomerName:
        type: string
      CustomerCommunicationLanguageISO639_2:
        type: string
      CustomerPhoneNumber:
        type: string
      CustomerJobAddress:
        $ref: '#/definitions/CustomerJobAddressModel'
      CustomerBillingAddress:
        $ref: '#/definitions/CustomerBillingAddressModel'
      NotificationType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        type: integer
      WorkOrderCategoryId:
        format: int32
        type: integer
      CategoryName:
        type: string
      AssignedToContactId:
        format: int32
        type: integer
      QuoteId:
        format: int32
        type: integer
      WorkOrderCustomerId:
        format: int32
        type: integer
      Status:
        format: int32
        enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        type: integer
      Notes:
        type: array
        items:
          $ref: '#/definitions/WorkOrderNoteModelPOST'
      Items:
        type: array
        items:
          $ref: '#/definitions/WorkOrderItemModelPOST'
      Attachments:
        type: array
        items:
          $ref: '#/definitions/WorkOrderAttachmentModelPOST'
    additionalProperties: false
  CustomerJobAddressModel:
    type: object
    properties:
      Street:
        type: string
      Apartment:
        type: string
      CareOf:
        type: string
      ZipCode:
        type: string
      City:
        type: string
      StateOrProvince:
        type: string
      ISO3166CountryCode:
        type: string
      Position:
        $ref: '#/definitions/PositionPointModel'
    additionalProperties: false
  WorkOrderArticleModelPUT:
    required:
    - ArticleName
    - PricePerQuantityExclVAT
    - TaxRate
    type: object
    properties:
      UnitType:
        format: int32
        enum:
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
        - 21
        - 22
        - 23
        - 24
        - 25
        - 26
        - 27
        - 28
        - 29
        - 30
        - 31
        - 32
        - 33
        - 34
        type: integer
      ArticleName:
        minLength: 1
        type: string
      PricePerQuantityExclVAT:
        format: double
        type: number
      TaxRate:
        format: double
        type: number
    additionalProperties: false
  WorkOrderAttachmentModelPUT:
    required:
    - AttachmentType
    - URL
    type: object
    properties:
      URL:
        minLength: 1
        type: string
      Description:
        type: string
      AttachmentType:
        format: int32
        enum:
        - 0
        - 1
        - 2
        type: integer
      WorkOrderAttachmentId:
        format: int32
        type: integer
    additionalProperties: false
  WorkOrderCustomerModelPOST:
    type: object
    properties:
      Name:
        type: string
      ContactName:
        type: string
      CommunicationLanguageISO639_2:
        type: string
      Email:
        type: string
      PhoneNumber:
        type: string
      BillingAddress:
        $ref: '#/definitions/CustomerBillingAddressModel'
      JobAddress:
        $ref: '#/definitions/CustomerJobAddressModel'
    additionalProperties: false
  WorkOrderItemModelPOST:
    required:
    - Quantity
    - WorkOrderArticleId
    type: object
    properties:
      Quantity:
        format: double
        type: number
      PricePerQuantityExclVAT:
        format: double
        type: number
      DiscountInPercentage:
        format: double
        type: number
      DiscountAmount:
        format: double
        type: number
      TaxRate:
        format: double
        type: number
      WorkOrderArticleId:
        format: int32
        type: integer
      ArticleName:
        type: string
      UnitType:
        format: int32
        enum:
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
        - 21
        - 22
        - 23
        - 24
        - 25
        - 26
        - 27
        - 28
        - 29
        - 30
        - 31
        - 32
        - 33
        - 34
        type: integer
    additionalProperties: false
  WorkOrderItemModelPUT:
    required:
    - Quantity
    - WorkOrderArticleId
    type: object
    properties:
      Quantity:
        format: double
        type: number
      PricePerQuantityExclVAT:
        format: double
        type: number
      DiscountInPercentage:
        format: double
        type: number
      DiscountAmount:
        format: double
        type: number
      TaxRate:
        format: double
        type: number
      WorkOrderArticleId:
        format: int32
        type: integer
      ArticleName:
        type: string
      UnitType:
        format: int32
        enum:
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
        - 21
        - 22
        - 23
        - 24
        - 25
        - 26
        - 27
        - 28
        - 29
        - 30
        - 31
        - 32
        - 33
        - 34
        

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/automile/refs/heads/main/openapi/automile-resourceownerworkorder-api-openapi.yml