Fixflo Service Event API

The Service Event API from Fixflo — 7 operation(s) for service event.

Operations 9

GET /ServiceEvent/{id} Service event by Id #
GET /ServiceEvents Service events by Agency #
GET /ServiceEvent/{id}/Medias Service event media #
POST /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent Create Service Event #
GET /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvents Get Service Events by service programme id #
GET /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent/{serviceEventId} Get Service Event By Property and Service Programme #
POST /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent/{serviceEventId} Update Service Event #
OPTIONS /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent/{serviceEventId} Your OPTIONS endpoint #
POST /Property/{propertyId}/ServiceProgramme/{serviceProgramme}/ServiceEvent/Complete Complete Service Event #

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-service-event-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-service-event-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '2.0'
  title: Fixflo Service Event 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: Service Event
paths:
  /ServiceEvent/{id}:
    parameters:
    - schema:
        type: string
      name: id
      in: path
      required: true
      description: The id of the Service Event
    get:
      summary: Service event by Id
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceEvent'
      operationId: get-ServiceEvent
      parameters: []
      description: Get service event
      x-internal: false
  /ServiceEvents:
    get:
      summary: Service events by Agency
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/PrevNextPager'
                - type: object
                  properties:
                    Items:
                      $ref: '#/components/schemas/ServiceEvent'
      operationId: get-ServiceEvents
      description: Get agency service events
      parameters:
      - schema:
          type: string
        in: query
        name: pg
        description: The page number to return
      - schema:
          type: integer
        in: query
        name: propertyId
        description: Filters service events by the property Id of the property associated with them
      - schema:
          type: string
        in: query
        name: externalPropertyRef
        description: Filters service events by the external property ref of the property associated with them
      - schema:
          type: integer
        in: query
        name: blockId
        description: Filters service events by the block Id of the block associated with them
      - schema:
          type: string
        in: query
        name: externalBlockRef
        description: Filters service events by the external block ref of the block associated with them
      - schema:
          type: string
        in: query
        name: serviceProgrammeDefId
        description: Filters service events by their associated service programme def
      - schema:
          type: string
        in: query
        name: serviceProgrammeId
        description: Filters service events by their associated service programme
      - schema:
          type: string
        in: query
        name: dueDateSince
        description: Filters service events that are due after the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: dueDateBefore
        description: Filters service events that are due before the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: instructionDateSince
        description: Filters service events that are due for instruction after the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: instructionDateBefore
        description: Filters service events that are due for instruction before the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: updateDateSince
        description: Filters service events that have been updated since the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: updateDateBefore
        description: Filters service events that have been updated before the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: completedDateSince
        description: Filters service events that have been completed since the specified date time. (UTC date/time)
      - schema:
          type: string
        in: query
        name: completedDateBefore
        description: Filters service events that have been completed before the specified date time. (UTC date/time)
      x-internal: false
  /ServiceEvent/{id}/Medias:
    parameters:
    - schema:
        type: string
      name: id
      in: path
      required: true
      description: The id of the Service Event
    get:
      summary: Service event media
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/PrevNextPager'
                - type: object
                  properties:
                    items:
                      $ref: '#/components/schemas/Media'
      operationId: get-ServiceEvent-Media
      parameters:
      - schema:
          type: string
        in: query
        name: pg
        description: The page number to return
      description: Get all Media associated with a Service Event
      x-internal: false
      tags:
      - Service Event
  /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent:
    parameters:
    - schema:
        type: string
      name: propertyId
      in: path
      required: true
    - schema:
        type: string
      name: serviceProgrammeId
      in: path
      required: true
    post:
      summary: 'Create Service Event '
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceEvent'
      operationId: post-Property-propertyId-ServiceProgramme-serviceProgrammeId-ServiceEvent
      x-stoplight:
        id: s5ocd5sy0d2ru
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceEvent'
      parameters:
      - schema:
          type: string
        in: query
        name: serviceProgrammeId
  /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvents:
    parameters:
    - schema:
        type: string
      name: propertyId
      in: path
      required: true
    - schema:
        type: string
      name: serviceProgrammeId
      in: path
      required: true
    get:
      summary: Get Service Events by service programme id
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrevNextPager'
      operationId: get-Property-propertyId-ServiceProgramme-serviceProgrammeId-ServiceEvents
      x-stoplight:
        id: qg7j4r4u44o0e
  /Property/{propertyId}/ServiceProgramme/{serviceProgrammeId}/ServiceEvent/{serviceEventId}:
    parameters:
    - schema:
        type: string
      name: propertyId
      in: path
      required: true
      description: The Fixflo id of the property
    - schema:
        type: string
      name: serviceProgrammeId
      in: path
      required: true
      description: The Fixflo id of the service programme
    - schema:
        type: string
      name: serviceEventId
      in: path
      required: true
      description: The Fixflo id of the service event
    get:
      summary: Get Service Event By Property and Service Programme
      description: Gets a single service event by property, service programme and service event id.
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceEvent'
      operationId: get-Property-propertyId-ServiceProgramme-serviceProgrammeId-ServiceEvent-serviceEventId
      x-stoplight:
        id: ytapfznmv7vic
    post:
      summary: Update Service Event
      description: Updates the service event identified by property, service programme and service event id.
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceEvent'
      operationId: post-Property-propertyId-ServiceProgramme-serviceProgrammeId-ServiceEvent-serviceEventId
      x-stoplight:
        id: irivcypc9ckao
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceEvent'
    options:
      summary: Your OPTIONS endpoint
      description: CORS preflight support for this endpoint.
      tags:
      - Service Event
      responses:
        '200':
          description: OK
      operationId: options-Property-propertyId-ServiceProgramme-serviceProgrammeId-ServiceEvent-serviceEventId
      x-stoplight:
        id: wogh6ae2g0yn4
  /Property/{propertyId}/ServiceProgramme/{serviceProgramme}/ServiceEvent/Complete:
    parameters:
    - schema:
        type: string
      name: propertyId
      in: path
      required: true
    - schema:
        type: string
      name: serviceProgramme
      in: path
      required: true
    post:
      summary: Complete Service Event
      tags:
      - Service Event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceEventComplete'
      operationId: post-Property-propertyId-ServiceProgramme-serviceProgramme-ServiceEvent-Complete
      x-stoplight:
        id: maox05hgvxegw
components:
  schemas:
    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.

            '
    ContractorService:
      title: ContractorService
      type: object
      properties:
        id:
          type: integer
          description: Unique id of service. When updating a contractor to have new services this is the only field that is required
        Name:
          type: string
          description: 'This is the standard name of the service. This is what is shown within the Fixflo system

            '
        NameAndSynonyms:
          type: array
          description: This is a list of other terms the service may be referred as, to help with mapping.
          items:
            type: string
    ServiceEvent:
      title: ServiceEvent
      type: object
      properties:
        Id:
          type: string
        Reference:
          type: string
        BlockId:
          type: integer
        ExternalBlockRef:
          type: string
        PropertyAddressId:
          type: integer
        PropertyId:
          type: integer
        ExternalPropertyRef:
          type: string
        ServiceProgrammeDef:
          $ref: '#/components/schemas/ServiceProgrammeDef'
        ServiceProgrammeId:
          type: string
        UpdateDate:
          type: string
          format: date-time
        Status:
          type: integer
          enum:
          - 1
          - 2
          - 4
          - 8
          - 16
          - 32
          - 64
          - 128
          description: "Pending = 1,\nInProgress = 2, \nAwaitingReview = 4,\nRemedialsRaised = 8,\nComplete = 16, \nCompletedRemedialsRaised = 32,\nAwaitingApproval = 64,\nInstructionRequested = 128"
        InstructionDateOffsetPeriod:
          type: integer
        InstructionDateOffsetType:
          type: integer
          enum:
          - 0
          - 1
          - 2
          description: 0 = Days, 1 = Weeks, 2 = Months
        DueDate:
          type: string
          format: date-time
        InstructionDate:
          type: string
          format: date-time
        InstructionNotes:
          type: string
        RequiresReview:
          type: boolean
        Contractor:
          $ref: '#/components/schemas/Contractor'
        AssignedAgent:
          $ref: '#/components/schemas/AssignedAgent'
        Reviewer:
          $ref: '#/components/schemas/AssignedAgent'
        Reviewed:
          type: string
          format: date-time
        Completed:
          type: string
          format: date-time
    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).
    Media:
      title: Media
      type: object
      description: Please see note on [downloading binary data](docs/Downloading-binary-data.md).
      properties:
        Id:
          type: string
          format: uuid
          description: Unique GUID of Media.
          readOnly: true
        URL:
          type: string
          readOnly: true
        ContentType:
          type: string
          description: 'The content and mime type of the document eg. example image/png. On POST, if the content type is left blank the content type will be derived from the ShortDesc field. For example where:

            * ContentType = null and a ShortDesc = "picture1.png" a content type of image/png will be derived

            * ContentType = "image/png" and a ShortDesc= "picture1" a content type of image/png will be derived

            * ContentType = "" and a ShortDesc = "picture1" will result in an error

            * ContentType = "xxxxx" and a ShortDesc = "picture1" will result in an error as the content type is not recognised.'
        MediaType:
          type: string
          readOnly: true
        MediaTypeDescription:
          type: string
        ShortDescription:
          type: string
          description: 'For POST this is required and should be the filename with extension e.g. "file.pdf"

            '
        AddedByUserTypeId:
          type: string
          description: 'Id of the user that uploaded the file

            '
          readOnly: true
        EncodedByteData:
          type: string
          description: 'Used for POST only. This data represents the binary document encoded to base-64

            '
        ServiceProgrammeDef:
          $ref: '#/components/schemas/ServiceProgrammeDef'
          x-stoplight:
            id: r3wrv8s4lrh41
          readOnly: true
        DocumentStartDate:
          type: string
          x-stoplight:
            id: 62jrrkrk0brff
          format: date-time
          readOnly: true
        DocumentExpiryDate:
          type: string
          x-stoplight:
            id: tmdafqhw3cn9l
          format: date-time
          readOnly: true
    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

            '
    Contractor:
      title: Contractor
      type: object
      properties:
        Id:
          type: string
          description: Unique id of contractor
        ExternalRef:
          type: string
          description: 'This field is designed to be used to reference the contractor in other systems. If set this value must be unique for contractors

            '
        CompanyName:
          type: string
          description: 'Optional company name.

            '
        Title:
          type: string
          description: 'Title of contractor (eg Mr, Mrs, etc)

            '
        FirstName:
          type: string
        Surname:
          type: string
        DisplayName:
          type: string
          description: 'This value is used for addressing the contractor. For example Dear [DisplayName]

            '
        EmailAddress:
          type: string
          description: 'EmailAddress is also used as a login. This value must be unique for contractors.

            '
        ContactNumber:
          type: string
        ContactNumberAlt:
          type: string
        IsDeleted:
          type: boolean
        Address:
          $ref: '#/components/schemas/Address'
        InvoiceDetails:
          $ref: '#/components/schemas/InvoiceDetails'
        Services:
          type: array
          items:
            $ref: '#/components/schemas/ContractorService'
        Certifications:
          type: array
          items:
            $ref: '#/components/schemas/ContractorCertification'
        Brand:
          $ref: '#/components/schemas/Brand'
        UpdateDate:
          format: date-time
          type: string
          description: Updated date/time (UTC).
    ServiceEventComplete:
      title: ServiceEventComplete
      type: object
      properties:
        CertificateStartDate:
          type: string
          format: date-time
        certificateExpiryDate:
          type: string
          format: date-time
    LineItem:
      title: LineItem
      type: object
      description: 'This is an object in use only for contractor networks for providing invoice details

        '
      properties:
        LineType:
          type: integer
          description: 0 = labour, 1 = materials, 2 = other. This is reflected in an enum in the nuget package
          enum:
          - 0
          - 1
          - 2
        Description:
          type: string
        Quantity:
          type: number
        UnitPrice:
          type: number
        Net:
          type: number
        Tax:
          type: number
        Total:
          type: number
    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'
    Address:
      title: Address
      type: object
      properties:
        AddressLine1:
          type: string
        AddressLine2:
          type: string
        Town:
          type: string
        County:
          type: string
        PostCode:
          type: string
        Country:
          type: string
          description: If set this should be a two letter ISO code. If the information supplied does not match an ISO code it will default to blank
    Brand:
      title: Brand
      type: object
      properties:
        Id:
          type: string
          format: uuid
          description: Unique GUID of brand.
        Name:
          type: string
          description: Brand name
    ContractorCertification:
      title: ContractorCertification
      type: object
      description: ''
      properties:
        id:
          type: number
          description: This is a legacy field, 0 will be returned in all cases
        Name:
          type: string
          description: This is the name of the required certificate. Certificate names are set up on a per agency basis; a contractor may have 0 to many certificates, but must not have more than one certificate of the same name
        Expiry:
          format: date-time
          title: DateTime
          type: string
          description: When the contractor's certification will expire
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      description: ''
x-internal: false