openapi: 3.2.0 info: title: Purplebricks Property API 1.0 - Platform Tracked Properties API description: '### All Ex Uber Property related controllers are here. ### [Purplebricks Property API Git Repository](https://dev.azure.com/purplebricks/BackEnd/_git/property-api)' version: '1.0' servers: - url: https://api.purplebricks.co.uk/property-api security: - Bearer: [] tags: - name: TrackedProperties paths: /v1/trackedproperties: get: tags: - TrackedProperties parameters: - name: trackType in: query schema: $ref: '#/components/schemas/Purplebricks.Property.Domain.Enums.PropertyTrackType' - name: limit in: query schema: type: integer format: int32 default: 50 - name: cursor in: query schema: type: string - name: page in: query schema: $ref: '#/components/schemas/Purplebricks.Property.Domain.Enums.CursorPaginationType' responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/Purplebricks.Property.Domain.Models.TrackedPropertiesListModel' application/json: schema: $ref: '#/components/schemas/Purplebricks.Property.Domain.Models.TrackedPropertiesListModel' text/json: schema: $ref: '#/components/schemas/Purplebricks.Property.Domain.Models.TrackedPropertiesListModel' '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v1/trackedproperties/{propertyId}: post: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '409': description: Conflict content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' delete: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '409': description: Conflict content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v1/trackedproperties/{propertyId}/tracked: get: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success content: text/plain: schema: type: boolean application/json: schema: type: boolean text/json: schema: type: boolean '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v1/trackedproperties/{propertyId}/note-of-interest: post: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '409': description: Conflict content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' delete: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '409': description: Conflict content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' get: tags: - TrackedProperties parameters: - name: propertyId in: path required: true schema: type: integer format: int32 responses: '200': description: Success content: text/plain: schema: type: boolean application/json: schema: type: boolean text/json: schema: type: boolean '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' components: schemas: Purplebricks.Property.Domain.Models.PropertyTrackedModel: type: object properties: id: type: integer format: int32 userId: type: integer format: int32 propertyId: type: integer format: int32 notificationOfInterest: type: boolean dateTracked: type: string format: date-time dateOfInterest: type: - string - 'null' format: date-time closingDate: type: - string - 'null' format: date-time cursor: type: - string - 'null' additionalProperties: false Purplebricks.Property.Domain.Models.TrackedPropertiesListModel: type: object properties: trackedProperties: type: - array - 'null' items: $ref: '#/components/schemas/Purplebricks.Property.Domain.Models.PropertyTrackedModel' pageInfo: $ref: '#/components/schemas/Purplebricks.Property.Domain.Models.PageInfoResponseModel' additionalProperties: false Purplebricks.Property.Domain.Models.PageInfoResponseModel: type: object properties: requestedPageSize: type: integer format: int32 totalItemCount: type: integer format: int32 hasNextPage: type: boolean hasPreviousPage: type: boolean additionalProperties: false Microsoft.AspNetCore.Mvc.ProblemDetails: type: object properties: type: type: - string - 'null' title: type: - string - 'null' status: type: - integer - 'null' format: int32 detail: type: - string - 'null' instance: type: - string - 'null' additionalProperties: {} Purplebricks.Property.Domain.Enums.CursorPaginationType: enum: - Previous - Next type: string Purplebricks.Property.Domain.Enums.PropertyTrackType: enum: - Tracked - NoteOfInterest type: string securitySchemes: Bearer: type: apiKey description: Authorization header using Bearer scheme name: Authorization in: header