Fixflo Contractor networks API

The Contractor networks API from Fixflo — 27 operation(s) for contractor networks.

Operations 30

POST /Issue/{issueid}/jobjobber Jobber #
GET /Issue/{issueid}/jobcompletiondetails Completion details #
POST /Issue/{issueid}/jobcompletiondetails Completion details #
POST /issue/{issueid}/completiondoc Completion document / Add #
GET /issue/{issueid}/completiondoc/{mediaid} Completion document #
POST /issue/{issueid}/completiondoc/{mediaid} Completion document / Save #
DELETE /issue/{issueid}/completiondoc/{mediaid}/delete Completion document #
GET /issue/{issueid}/completiondocs Completion documents #
POST /Issue/{issueId}/completioncertificatedoc Completion certificate document #
GET /Issue/{issueId}/completioncertificatedoc/{mediaId} Completion certificate document #
DELETE /Issue/{issueId}/completioncertificatedoc/{mediaId}/delete Completion certificate document #
GET /issue/{issueid}/invoicedetails Invoice details #
POST /issue/{issueid}/invoicedetails Invoice details #
POST /issue/{issueid}/submitinvoice Invoice / submit #
GET /Issue/{issueId}/quotes Issue / quotes #
POST /Issue/{issueId}/quote Quote #
POST /Issue/{issueId}/quote/{quoteId} Amend quote #
POST /Issue/{issueId}/declinetoquote Decline to quote #
POST /Issue/{issueId}/declinejob Decline job #
POST /Issue/{issueId}/appointment Appointment #
PUT /Issue/{issueId}/appointment/{appointmentId}/cancel Cancel Appointment #
POST /Issue/{issueId}/createfurtherworks Create Further Works #
POST /Issue/{issueId}/quotefurtherworks Quote for Further Works #
POST /Issue/{issueId}/quoteinstead Quote instead #
POST /Issue/{issueId}/contractornetworkcomment Contractor Network Comment #
GET /Customers Customers #
GET /Customer/{Id} Customer #
POST /ServiceEvent/CreateRemedial Raise Remedial #
GET /Issue/{Id}/Comments Issue comments #
POST /Issue/{issueId}/Comment Issue comment #

Documentation

Specifications

SDKs

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fixflo-contractor-networks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fixflo-contractor-networks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '2.0'
  title: Fixflo Contractor networks API
  description: Fixflo api docs
  termsOfService: https://fixflostore.blob.core.windows.net/live-assets/SystemApplicationDeveloperAndAPILicenseAgreement.pdf
  contact:
    email: support@fixflo.com
    name: Support
  license:
    url: https://fixflostore.blob.core.windows.net/live-assets/SystemApplicationDeveloperAndAPILicenseAgreement.pdf
    name: Fixflo API licence agreement
servers:
- url: https://api-sandbox.fixflo.com/api/v2
  description: live sandbox
- url: https://plus.dev.fixflo.com/api/v2
  description: dev
security:
- Bearer: []
tags:
- name: Contractor networks
paths:
  /Issue/{issueid}/jobjobber:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    post:
      summary: Jobber
      operationId: post-Issue-issueid-jobjobber
      responses:
        '200':
          description: OK
          headers: {}
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddJobberDetails'
            examples:
              example-1:
                value:
                  Jobber:
                    id: string
                    ExternalReference: string
                  JobExternalReference: string
        description: ''
      description: Add contractor to a job
      tags:
      - Contractor networks
  /Issue/{issueid}/jobcompletiondetails:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    get:
      summary: Completion details
      operationId: get-Issue-issueid-jobcompletiondetails
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobCompletionDetails'
      description: Get completion details
      tags:
      - Contractor networks
    post:
      summary: Completion details
      operationId: post-Issue-issueid-jobcompletiondetails
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/JobCompletionDetails'
      description: Save job completion details
      tags:
      - Contractor networks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobCompletionDetails'
        description: ''
  /issue/{issueid}/completiondoc:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    post:
      summary: Completion document / Add
      operationId: post-job-completion-document
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Media'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Media'
          application/xml:
            schema:
              $ref: '#/components/schemas/Media'
      description: Add job completion document
      tags:
      - Contractor networks
  /issue/{issueid}/completiondoc/{mediaid}:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    - schema:
        type: string
        format: uuid
      name: mediaid
      in: path
      required: true
    get:
      summary: Completion document
      operationId: get-job-completion-document
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Media'
      description: Job completion document
      tags:
      - Contractor networks
    post:
      tags:
      - Contractor networks
      summary: Completion document / Save
      description: Save job completion document
      operationId: post-issue-issueid-completiondoc-mediaid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  x-stoplight:
                    id: h1csibf3ppydg
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Media'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Media'
  /issue/{issueid}/completiondoc/{mediaid}/delete:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    - schema:
        type: string
        format: uuid
      name: mediaid
      in: path
      required: true
    delete:
      summary: Completion document
      operationId: delete-job-completion-document
      responses:
        '200':
          description: OK
      description: Job completion document
      tags:
      - Contractor networks
  /issue/{issueid}/completiondocs:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    get:
      summary: Completion documents
      operationId: get-job-completion-documents
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Media'
          headers: {}
      description: Job completion documents
      tags:
      - Contractor networks
  /Issue/{issueId}/completioncertificatedoc:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Completion certificate document
      operationId: post-Issue-issueId-completioncertificatedoc
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Media'
      description: Add job completion certificate document
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Media'
      tags:
      - Contractor networks
  /Issue/{issueId}/completioncertificatedoc/{mediaId}:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    - schema:
        type: string
      name: mediaId
      in: path
      required: true
    get:
      summary: Completion certificate document
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Media'
      operationId: get-Issue-issueId-completioncertificatedocument-mediaId
      description: Get completion certificate documents attached to a certain Issue, by ID
  /Issue/{issueId}/completioncertificatedoc/{mediaId}/delete:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    - schema:
        type: string
      name: mediaId
      in: path
      required: true
    delete:
      summary: Completion certificate document
      operationId: delete-Issue-issueId-completioncertificatedoc-mediaId-delete
      responses:
        '200':
          description: OK
      description: Deletes certificate document attached to an issue by specific media id
      tags:
      - Contractor networks
  /issue/{issueid}/invoicedetails:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    get:
      summary: Invoice details
      operationId: get-invoice-details
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InvoiceDetails'
      description: Job Invoice Details
      tags:
      - Contractor networks
    post:
      description: Invoice details
      summary: Invoice details
      operationId: post-issue-issueid-invoicedetails
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/InvoiceDetails'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InvoiceDetails'
      x-internal: false
  /issue/{issueid}/submitinvoice:
    parameters:
    - schema:
        type: string
      name: issueid
      in: path
      required: true
    post:
      summary: Invoice / submit
      operationId: submit-invoice
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/SubmitInvoice'
              examples: {}
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitInvoice'
            examples:
              example-1:
                value:
                  InvoiceNumber: string
                  TotalNet: 0
                  TotalTax: 0
                  Total: 0
      description: Invoice
  /Issue/{issueId}/quotes:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    get:
      summary: Issue / quotes
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Quote'
      operationId: get-Issue-issueId-quotes
      x-internal: false
      description: Gets all quotes attached to an Issue on an Agency
  /Issue/{issueId}/quote:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Quote
      operationId: post-Issue-issueId-Quote
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Quote'
      description: Adds a quote to the current Agency's attached Issue
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Quote'
        description: ''
      tags:
      - Contractor networks
  /Issue/{issueId}/quote/{quoteId}:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    - schema:
        type: string
      name: quoteId
      in: path
      required: true
    post:
      summary: Amend quote
      operationId: post-Issue-issueId-amendquote-quoteId
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Quote'
      description: Amends a quote on an attached Issue using the quote's ID
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LineItem'
      x-internal: false
      tags:
      - Contractor networks
  /Issue/{issueId}/declinetoquote:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Decline to quote
      operationId: post-Issue-issueId-declinetoquote
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: boolean
                  properties: {}
      description: Declines to quote on current issue attached to agency
      tags:
      - Contractor networks
  /Issue/{issueId}/declinejob:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Decline job
      operationId: post-Issue-issueId-declineJob
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: boolean
                  properties: {}
      description: Declines job based on current Issue
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobDeclineReasonMessage'
        description: ''
      tags:
      - Contractor networks
  /Issue/{issueId}/appointment:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Appointment
      operationId: post-Issue-issueId-appointment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Appointment'
      description: Set an appointment for the current job accepted on an issue
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Appointment'
      tags:
      - Contractor networks
  /Issue/{issueId}/appointment/{appointmentId}/cancel:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    - schema:
        type: string
      name: appointmentId
      in: path
      description: Id of the appointment you wish to cancel
      required: true
    put:
      summary: Cancel Appointment
      operationId: put-Issue-issueId-appointment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Appointment'
      description: Cancel a specified appointment for the current job accepted on an issue
      requestBody:
        content: {}
      tags:
      - Contractor networks
      x-stoplight:
        id: 3khpjsf7pzfgg
  /Issue/{issueId}/createfurtherworks:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Create Further Works
      operationId: post-Issue-issueId-createfurtherworks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Issue'
      description: Create a duplicate linked issue of type 'Further Works'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                furtherNotes:
                  type: string
                isEmergency:
                  type: boolean
          application/xml:
            schema:
              type: object
              properties: {}
      tags:
      - Contractor networks
  /Issue/{issueId}/quotefurtherworks:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Quote for Further Works
      operationId: post-Issue-issueId-quotefurtherworks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Issue'
      description: Create a duplicate linked issue of type 'Further Works' with a quote attached
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteFurtherWorks'
      tags:
      - Contractor networks
      x-stoplight:
        id: woiiwvckzhycl
  /Issue/{issueId}/quoteinstead:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Quote instead
      operationId: post-Issue-issueId-quoteinstead
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  properties:
                    Entity:
                      $ref: '#/components/schemas/Quote'
      description: Decline a job instruction and instead send a quote for the work
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Quote'
      tags:
      - Contractor networks
      x-stoplight:
        id: 6pzrl2am3vbnt
  /Issue/{issueId}/contractornetworkcomment:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Contractor Network Comment
      operationId: post-Issue-issueId-contractornetworkcomment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: boolean
      description: Add a comment to a further works issue that was raised by your agency
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                message:
                  type: string
          application/xml:
            schema:
              type: object
              properties: {}
      tags:
      - Contractor networks
  /Customers:
    parameters: []
    get:
      summary: Customers
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - properties:
                    Items:
                      type: array
                      items:
                        $ref: '#/components/schemas/Customer'
                type: object
      operationId: get-Customer-Customers
      parameters:
      - schema:
          type: integer
        in: query
        name: pg
        description: page
      description: Gets a list of users associated with an agency.
  /Customer/{Id}:
    parameters:
    - schema:
        type: string
      name: Id
      in: path
      required: true
    get:
      summary: Customer
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Customer'
      operationId: get-Customer-Id
      description: Gets a user attached to an agency by the attached agency ID
  /ServiceEvent/CreateRemedial:
    post:
      summary: Raise Remedial
      tags:
      - Contractor networks
      responses:
        '200':
          description: Issue {issueId} Created
      operationId: post-ServiceEvent-CreateRemedial
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                parentIssueId:
                  type: string
                  x-stoplight:
                    id: 59oks94uui7ac
                details:
                  type: string
                  x-stoplight:
                    id: exvu6nch1k6tl
                media:
                  type: array
                  x-stoplight:
                    id: b5j91te08qpx2
                  items:
                    $ref: '#/components/schemas/Media'
      description: Create a duplicate linked issue of type 'Remedial'
  /Issue/{Id}/Comments:
    parameters:
    - schema:
        type: string
      name: Id
      in: path
      required: true
    get:
      summary: Issue comments
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/PrevNextPager'
                - type: array
                  x-stoplight:
                    id: jw63mjtr92ckj
                  items:
                    $ref: '#/components/schemas/Comment'
      operationId: get-Issue-Id-Comments
      x-stoplight:
        id: 0ap4unnzbwmxu
      parameters:
      - schema:
          type: string
        in: query
        name: Id
        description: IssueId
        required: true
      - schema:
          type: integer
          default: 1
        in: query
        name: pg
        description: page number
      - schema:
          type: integer
          default: 10
        in: query
        name: pgsz
        description: page size
      description: 'It is recommended that the webhook is used to receive new comments rather than polling this endpoint on a regular basis. '
  /Issue/{issueId}/Comment:
    parameters:
    - schema:
        type: string
      name: issueId
      in: path
      required: true
    post:
      summary: Issue comment
      tags:
      - Contractor networks
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/Envelope'
                - type: object
                  $ref: '#/components/schemas/Comment'
      operationId: post-Issue-Id-Comment
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - type: object
                $ref: '#/components/schemas/Comment'
      x-stoplight:
        id: jumz19f9w6lvh
components:
  schemas:
    JobDeclineReasonMessage:
      title: JobDeclineReasonMessage
      type: object
      properties:
        DeclineMessage:
          type: string
    JobQuoteApproval:
      title: JobQuoteApproval
      x-stoplight:
        id: 95aa6169dc73e
      type: object
      properties:
        ApprovalNameTyped:
          type: string
        Approved:
          type: boolean
        ApprovedDate:
          format: date-time
          type: string
        QuoteAmount:
          type: number
        RequestedDate:
          format: date-time
          type: string
        QuoteId:
          type: string
        PriceAgencyReceivableGross:
          type: number
        PriceAgencyReceivableNet:
          type: number
        PriceAgencyReceivableTax:
          type: number
    Comment:
      title: Comment
      x-stoplight:
        id: u4mszzmo2qoo3
      type: object
      description: This is used for contractor networks to send and receive comments via the API
      properties:
        id:
          type: integer
          x-stoplight:
            id: d1d4todovzk0k
          readOnly: true
        commentFromEntityType:
          x-stoplight:
            id: 0rb0obg2o4392
          enum:
          - agent
          - tenant
          - contractorNetwork
          readOnly: true
        commentToEntityType:
          type: array
          x-stoplight:
            id: hmy42gxpmqsab
          items:
            x-stoplight:
              id: fxb9soxku2bji
            enum:
            - agent
            - tenant
            - contractorNetwork
        message:
          type: string
          x-stoplight:
            id: u9zd1s4x7nl8o
        media:
          type: array
          x-stoplight:
            id: oti1ylqnugiov
          items:
            $ref: '#/components/schemas/Media'
        commentSent:
          type: string
          x-stoplight:
            id: pjpfbr6kec6qw
          format: date-time
    Envelope:
      title: Envelope
      type: object
      description: This object is used to carry/return responses following post operations.
      properties:
        HttpStatusCode:
          type: integer
        HttpStatusCodeDesc:
          type: string
        Errors:
          type: array
          items:
            type: string
        Messages:
          type: array
          items:
            type: string
    FaultTree:
      title: FaultTree
      type: object
      properties:
        FaultId:
          type: integer
          description: 'Unique Id of the Fault

            '
        FaultTreeParent0:
          type: integer
          description: 'Id of the 1st parent of the Fault (can be null)

            '
        FaultTreeParent1:
          type: integer
          description: 'Id of the 2nd parent of the Fault (can be null)

            '
    InvoiceDetails:
      title: InvoiceDetails
      type: object
      description: This object is for use by contractor networks for submitting invoice details
      properties:
        InvoiceDate:
          format: date-time
          type: string
          description: The invoice date is expressed as a date.
        DueDate:
          format: date-time
          type: string
          description: The due date is expressed as a date.
        InvoiceNumber:
          type: string
        LineItems:
          type: array
          items:
            $ref: '#/components/schemas/LineItem'
    Block:
      type: object
      properties:
        Id:
          type: integer
        ExternalBlockReference:
          type: string
        Name:
          type: string
        Address:
          $ref: '#/components/schemas/Address'
        IsStandAlone:
          type: boolean
        KeyReference:
          type: string
        ManagementStartDate:
          type: string
          format: date-time
          description: Management end date.
        ManagementEndDate:
          type: string
          format: date-time
          description: Management end date.
        EstateId:
          type: integer
        ExternalEstateRef:
          type: string
        LandlordId:
          type: string
        ExternalLandlordRef:
          type: string
        PropertyManager:
          $ref: '#/components/schemas/AssignedAgent'
        AssignedAgent:
          $ref: '#/components/schemas/AssignedAgent'
        IsDeleted:
          type: boolean
        Created:
          type: string
          format: date-time
          description: Created date/time (UTC).
        UpdateDate:
          type: string
          format: date-time
          description: Updated date/time (UTC).
        Warranties:
          type: array
          description: List of warranties which apply to the block
          items:
            $ref: '#/components/schemas/Warranty'
    ServiceProgrammeDef:
      title: ServiceProgrammeDef
      type: object
      properties:
        id:
          type: string
          readOnly: true
        EventType:
          type: string
          readOnly: true
        Class:
          type: string
          readOnly: true
        Category:
          type: string
          readOnly: true
        Description:
          type: string
          readOnly: true
        IsStatutory:
          type: boolean
          readOnly: true
        CostCode:
          type: string
          readOnly: true
        InstructionNotes:
          type: string
          readOnly: true
        InstructionDateOffsetPeriod:
          type: integer
          description: '0 = days, 1 = weeks, 2 = months

            '
          enum:
          - 0
          - 1
          - 2
          readOnly: true
        InstructionDateOffsetType:
          type: integer
          readOnly: true
        ServiceFrequency:
          type: integer
          readOnly: true
        ServiceFrequencyType:
          type: integer
          readOnly: true
          description: '0 = months, 1 = years, 2 = weeks

            '
          enum:
          - 0
          - 1
          - 2
        IsDisabled:
          type: boolean
          readOnly: true
        IsPropertyDefinition:
          type: boolean
          readOnly: true
          description: 'not used for posts.

            '
    QuoteFurtherWorks:
      title: QuoteFurtherWorks
      x-stoplight:
        id: 7f1po1xkvavbx
      type: object
      properties:
        IssueId:
          type: string
          x-stoplight:
            id: n707tk8vc2zo8
        NetworkContractorId:
          type: integer
          x-stoplight:
            id: 1yq8hfmzt9g3a
        NetworkContractorExternalRef:
          type: string
          x-stoplight:
            id: m6796ax2ikjuo
        LeadTime:
          type: string
          x-stoplight:
            id: e3jzq9yu9tfp5
        EstimatedDuration:
          type: string
          x-stoplight:
            id: bjdth1d1u8cko
        ExpiryDate:
          type: string
          x-stoplight:
            id: 4id5cop45c61d
          format: date-time
        Media:
          type: array
          x-stoplight:
            id: dsutto5tv3qn8
          items:
            $ref: '#/components/schemas/Media'
        QuoteDetail:
          type: string
          x-stoplight:
            id: 0x63c2kqmdh8v
        LineItems:
          type: array
          x-stoplight:
            id: b8i6qamdkpskq
          items:
            $ref: '#/components/schemas/LineItem'
        IsUrgent:
          type: boolean
          x-stoplight:
            id: 3s0mvxc6y21mi
    AssignedAgent:
      title: AssignedAgent
      type: object
      properties:
        Id:
          type: integer
          format: int64
        ExternalRef:
          type: string
        EmailAddress:
          type: string
        DisplayName:
          type: string
        ContactNo:
          type: string
        IsDeleted:
          type: boolean
        Brand:
          $ref: '#/components/schemas/Brand'
        UpdateDate:
          type: string
          format: date-time
          description: Updated date/time (UTC).
    PrevNextPager:
      type: object
      properties:
        TotalItems:
          type: integer
          x-stoplight:
            id: qbm018n4fbivf
          description: The total number of items
        TotalPages:
          type: integer
          x-stoplight:
            id: 8d0f4tjvn3d91
          description: 'The total number of pages

            '
        Items:
          x-stoplight:
            id: x8n82kadpvt9w
          type: array
          items:
            x-stoplight:
              id: yp4jiel1kmn2j
            type: object
        NextURL:
          type: string
          x-stoplight:
            id: tcm929q75tirz
          description: The URL of the next page of results
        PreviousURL:
          type: string
          x-stoplight:
            id: 3hruq0fcrc5sz
          description: 'The URL of the previous page of results

            '
    LineItem:
      title: LineItem
  

# --- truncated at 32 KB (53 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fixflo/refs/heads/main/openapi/fixflo-contractor-networks-api-openapi.yml