openapi: 3.2.0 info: version: '2.0' title: Fixflo Landlord 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: Landlord paths: /Landlord: parameters: [] get: summary: Landlord description: Gets a landlord object tags: - Landlord responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Landlord' operationId: get-landlord post: summary: Landlord description: Create/update landlord tags: - Landlord operationId: post-Landlord responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' - type: object properties: Entity: $ref: '#/components/schemas/Landlord' requestBody: content: application/json: schema: $ref: '#/components/schemas/Landlord' /Landlord/{id}/Brand: parameters: - schema: type: string name: id in: path required: true get: summary: Landlord / brand description: Gets the brand related to the landlord tags: - Landlord operationId: get-landlord-id-brand responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Brand' post: summary: Landlord / brand description: Updates the brand relating to the landlord tags: - Landlord operationId: landlord-brand-post responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' - type: object properties: Entity: $ref: '#/components/schemas/Brand' requestBody: content: application/json: schema: $ref: '#/components/schemas/Brand' /Landlords: parameters: [] get: summary: Landlords description: Finds the relevant landlords tags: - Landlord responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/PrevNextPager' - type: object properties: Items: type: array items: $ref: '#/components/schemas/Landlord' operationId: get-landlords parameters: - schema: type: string in: query name: Keyword - schema: type: string format: date-time in: query name: UpdatedSince description: string representing a date/time - schema: type: integer in: query name: pg /LandlordProperty: parameters: [] get: summary: Landlord property description: Gets a specific landlord property. The LandlordPropertyId OR LandlordId and PropertyId must be supplied tags: - Landlord responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/LandlordProperty' operationId: get-landlordproperty parameters: - schema: type: integer in: query name: LandlordPropertyId - schema: type: integer in: query name: LandlordId - schema: type: integer in: query name: PropertyId post: summary: Landlord property operationId: post-LandlordProperty responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' requestBody: content: application/json: schema: $ref: '#/components/schemas/LandlordProperty' tags: - Landlord description: Adds a LandlordProperty object. Meaning the explicit relationship bewtween the landlord and the property is added /LandlordPropertyJoin: parameters: [] get: summary: Landlord property external description: Gets a specific landlord property. The LandlordPropertyId or ExternalPropertyRef and ExtrernalLandlordref or LandlordId and PropertyId must be supplied tags: - Landlord responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/LandlordPropertyJoin' operationId: get-landlordpropertyJoin parameters: - schema: type: integer in: query name: LandlordPropertyId - schema: type: string in: query name: ExtrernalLandlordref - schema: type: integer in: query name: LandlordId - schema: type: string in: query name: ExternalPropertyRef - schema: type: integer in: query name: PropertyId post: summary: Landlord property external operationId: post-LandlordPropertyJoin responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' - type: object properties: Entity: $ref: '#/components/schemas/LandlordPropertyJoin' requestBody: content: application/json: schema: $ref: '#/components/schemas/LandlordPropertyJoin' tags: - Landlord description: Adds a LandlordProperty object. Meaning the explicit relationship bewtween the landlord and the property is added using external refs /Landlord/{LandlordId}/LandlordProperties: parameters: - schema: type: string name: LandlordId in: path required: true description: LandlordId get: summary: Landlord / landlord properties description: Lists all LandlordProperties for a given landlord tags: - Landlord responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/PrevNextPager' - type: object properties: Items: type: array items: $ref: '#/components/schemas/LandlordProperty' operationId: get-landlord-LandlordId-landlordproperties /LandlordProperty/Delete: parameters: [] post: summary: Landlord property / delete description: Deletes a LandlordProperty object. Meaning the explicit relationship bewtween the landlord and the property is removed tags: - Landlord operationId: post-LandlordProperty-Delete responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' - type: object properties: Entity: $ref: '#/components/schemas/LandlordProperty' requestBody: content: application/json: schema: $ref: '#/components/schemas/LandlordProperty' /LandlordPropertyJoin/Delete: parameters: [] post: summary: Landlord property external/ delete description: Deletes a LandlordProperty object. Meaning the explicit relationship bewtween the landlord and the property is removed tags: - Landlord operationId: post-LandlordPropertyJoin-Delete responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Envelope' - type: object properties: Entity: $ref: '#/components/schemas/LandlordPropertyJoin' requestBody: content: application/json: schema: $ref: '#/components/schemas/LandlordPropertyJoin' components: schemas: 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). LandlordPropertyJoin: title: LandlordPropertyJoin type: object properties: Id: type: integer description: 'Unique id of landlord property record ' ExternalLandlordRef: type: string description: 'The external landlord ref of the property ' ExternalPropertyRef: type: string description: "The external property ref of the property \n" IsPrimaryLandlord: type: boolean 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 ' Landlord: title: Landlord type: object description: ' ' properties: id: type: string description: Unique id of landlord ExternalRef: type: string description: 'This field is designed to be used to reference the landlord in other system. If set this value must be unique for landlords ' CompanyName: type: string description: 'Optional company name ' Title: type: string description: 'Title of landlord (eg Mr, Mrs etc) ' FirstName: type: string Surname: type: string EmailAddress: type: string description: 'EmailAddress is also used as a login if for the landlord. This value must be unique ' ContactNumber: type: string ContactNumberAlt: type: string DisplayName: type: string WorksAuthorisationLimit: type: string "EmailCC\t": type: string IsDeleted: type: boolean UpdateDate: type: string format: date-time description: Updated date/time (UTC). Brand: $ref: '#/components/schemas/Brand' AssignedAgent: $ref: '#/components/schemas/AssignedAgent' "Address\t": $ref: '#/components/schemas/Address' 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 LandlordProperty: title: LandlordProperty type: object properties: Id: type: integer description: 'Unique id of landlord property record ' LandlordId: type: string description: 'The LandlordId of the property ' PropertyId: type: integer description: 'The PropertyId of the property ' DateFrom: format: date-time type: string description: IGNORED DateTo: format: date-time type: string description: IGNORED IsPrimaryLandlord: type: boolean description: IGNORED Address: $ref: '#/components/schemas/Address' 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 securitySchemes: Bearer: type: http scheme: bearer description: '' x-internal: false