openapi: 3.2.0 info: version: '2.0' title: Fixflo Job 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: Job paths: /Job/{id}: parameters: - schema: type: string name: id in: path required: true description: Job id get: summary: Job description: Gets a Job object responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Job' operationId: get-job-id tags: - Job components: schemas: 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 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 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). 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 Job: title: Job type: object properties: id: type: string IssueId: type: string TenantNotes: type: string JobberNotes: type: string StartDate: type: string format: date-time description: The start date is expressed as a local date. ExternalRefJob: type: string description: 'This field is used to provide a reference to a works order number in another system. In other words, this field should contain a the job purchase order number (aka works order reference) ' PriceAgencyPayableGross: type: number description: 'This is the gross amount the agency is required to pay the contractor for completion of works ' PriceAgencyPayableNet: type: number description: 'This is the amount, net of sales taxes, the agency is required to pay the contractor for completion of works ' PriceAgencyPayableTax: type: number description: 'Should equal PriceAgencyPayableGross - PriceAgencyPayableNet ' PriceAgencyReceivableGross: type: number description: 'This is the amount the agency should receive from the landlord for completion of works. It will typically be the same as PriceAgencyPayableGross but might include a management charge ' PriceAgencyReceivableNet: type: number description: 'This is the amount, net of sales taxes, the agency should receive from the landlord for completion of works ' PriceAgencyReceivableTax: type: number description: Should equal PriceAgencyReceivableGross - PriceAgencyReceivableTax JobInvoiceNumber: type: string description: This the invoice number as supplied by the contractor. If an invoice is uploaded by the contractor it will default to the file name if the field is blank. QuotedPriceAgencyPayableGross: type: number description: 'If a job resulted from the contractor submitting a quote, this is the gross amount the agency agreed to pay the contractor for completion of works ' QuotedPriceAgencyPayableNet: type: number description: 'If a job resulted from the contractor submitting a quote, this is the amount, net of sales taxes, the agency agreed to pay to pay the contractor for completion of works ' QuotedPriceAgencyPayableTax: type: number description: 'Should equal QuotedPriceAgencyPayableGross - QuotedPriceAgencyPayableNet ' QuotedPriceAgencyReceivableGross: type: number description: 'If a job resulted from the contractor submitting a quote, this is the gross amount the landlord agreed to pay the agency for completion of works ' QuotedPriceAgencyReceivableNet: type: number description: 'If a job resulted from the contractor submitting a quote, this is the amount, net of sales taxes, the landlord agreed to pay the agency for completion of works ' QuotedPriceAgencyReceivableTax: type: number description: 'Should equal QuotedPriceAgencyReceivableGross - QuotedPriceAgencyReceivableNet ' AppointmentDescription: type: string description: 'One of: Any, At, Before, After, Between ' AppointmentRange: type: string CreatedDate: format: date-time type: string description: Created date/time (UTC). JobCompleted: type: string format: date-time description: Job completed date. JobDuration: type: string description: 'A description of how long the job took ' TenantAcceptedStartDate: type: boolean JobberAgreedWithTenantStartDate: type: boolean LandlordApproval: $ref: '#/components/schemas/JobQuoteApproval' InsurerApproval: $ref: '#/components/schemas/JobQuoteApproval' Contractor: $ref: '#/components/schemas/Contractor' 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