Purplebricks Properties API

The Properties API from Purplebricks — 2 operation(s) for properties.

Business capability
Showing & Open House Operations BC-4960.50

Operations 2

GET /v1/properties/{propertyId} Returns the basic details of a property for which a viewing appointment can be… #
GET /v1/creatio/properties/{propertyId}/viewings Get creatio properties by property id viewings #

Documentation

Specifications

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/purplebricks-properties-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

purplebricks-properties-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Purplebricks.Viewings.Api 1.0 - Customer Experience…
  description: '### Purplebricks Viewings API.

    ### Purplebricks.Viewings.Api Git Repository'
  version: '1.0'
servers:
- url: https://api.purplebricks.co.uk/viewings-api
security:
- Bearer: []
tags:
- name: Properties
paths:
  /v1/properties/{propertyId}:
    get:
      tags:
      - Properties
      summary: Returns the basic details of a property for which a viewing appointment can be…
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: The property was successfully retrieved.
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.PropertyViewModel'
            application/json:
              schema:
                $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.PropertyViewModel'
            text/json:
              schema:
                $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.PropertyViewModel'
        '404':
          description: The property could not be 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'
      operationId: getV1PropertiesByPropertyId
      x-operation-id-source: derived
  /v1/creatio/properties/{propertyId}/viewings:
    get:
      tags:
      - Properties
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Purplebricks.Viewings.Business.Models.ViewingDetail'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Purplebricks.Viewings.Business.Models.ViewingDetail'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Purplebricks.Viewings.Business.Models.ViewingDetail'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema:
                type: string
            text/json:
              schema:
                type: string
        '500':
          description: Server Error
      summary: Get creatio properties by property id viewings
      x-summary-source: derived
      operationId: getV1CreatioPropertiesByPropertyIdViewings
      x-operation-id-source: derived
components:
  schemas:
    Purplebricks.DatabaseModel.Enumerations.BookingProcess:
      enum:
      - SellerBookValuation
      - BuyerBookViewing
      - CallCentreBookValuation
      - CallCentreBookViewing
      - SellerRearrange
      - BuyerRearrange
      - LpeRearrange
      - LpeBookViewing
      - BuyingAgentBookViewing
      - RemortgageInstantValuation
      - AiVoiceAgent
      - AiWhatsAppAgent
      - AiSmsAgent
      type: string
    Purplebricks.Viewings.Business.ViewModels.BookViewingConfirmationViewModel:
      type: object
      properties:
        eventId:
          type:
          - integer
          - 'null'
          format: int32
        propertyId:
          type:
          - integer
          - 'null'
          format: int32
        listingId:
          type:
          - string
          - 'null'
        status:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.Models.BookingRequestStatus'
        bookingProcess:
          $ref: '#/components/schemas/Purplebricks.DatabaseModel.Enumerations.BookingProcess'
        start:
          type: string
          format: date-time
        end:
          type: string
          format: date-time
        propertyTimeZone:
          $ref: '#/components/schemas/Purplebricks.DatabaseModel.Enumerations.IanaTimeZone'
        street:
          type:
          - string
          - 'null'
        town:
          type:
          - string
          - 'null'
        county:
          type:
          - string
          - 'null'
        postcode:
          type:
          - string
          - 'null'
        isAccompaniedViewing:
          type: boolean
        hostName:
          type:
          - string
          - 'null'
        hostPhoneNumber:
          type:
          - string
          - 'null'
        expertPhoto:
          type:
          - string
          - 'null'
        trustPilotId:
          type:
          - string
          - 'null'
      additionalProperties: false
    Purplebricks.DatabaseModel.Enumerations.Offer.SaleProgressOption:
      enum:
      - NotOnTheMarket
      - OnTheMarket
      - SSTC
      - Pending
      type: string
    Purplebricks.Viewings.Business.ViewModels.EventUserDetailsViewModel:
      type: object
      properties:
        id:
          type: integer
          format: int32
        title:
          type:
          - string
          - 'null'
        forename:
          type:
          - string
          - 'null'
        surname:
          type:
          - string
          - 'null'
        email:
          type:
          - string
          - 'null'
        phone:
          type:
          - string
          - 'null'
      additionalProperties: false
    Purplebricks.Viewings.Business.ViewModels.TenancyChecksViewModel:
      type: object
      properties:
        dhsPermitted:
          type: boolean
        petsPermitted:
          type: boolean
        smokersPermitted:
          type: boolean
        dhsBlocked:
          type: boolean
        petsBlocked:
          type: boolean
        smokersBlocked:
          type: boolean
        studentLet:
          type: boolean
        shared:
          type: boolean
      additionalProperties: false
    Purplebricks.Viewings.Business.Models.BookingRequestStatus:
      enum:
      - SlotNotAvailable
      - Confirmed
      - AwaitingConfirmation
      - PropertySold
      - PropertyWithdrawn
      type: string
    Purplebricks.DatabaseModel.Enumerations.IanaTimeZone:
      enum:
      - NotSet
      - EuropeLondon
      - AustraliaPerth
      - AustraliaEucla
      - AustraliaAdelaide
      - AustraliaBrokenHill
      - AustraliaDarwin
      - AustraliaBrisbane
      - AustraliaCurrie
      - AustraliaHobart
      - AustraliaLindeman
      - AustraliaMelbourne
      - AustraliaSydney
      - AustraliaLordHowe
      - AntarcticaMacquarie
      - AmericaLosAngeles
      - AmericaNewYork
      - AmericaDetroit
      - AmericaKentuckyLouisville
      - AmericaKentuckyMonticello
      - AmericaIndianaIndianapolis
      - AmericaIndianaVincennes
      - AmericaIndianaWinamac
      - AmericaIndianaMarengo
      - AmericaIndianaPetersburg
      - AmericaIndianaVevay
      - AmericaChicago
      - AmericaIndianaTellCity
      - AmericaIndianaKnox
      - AmericaMenominee
      - AmericaNorthDakotaCenter
      - AmericaNorthDakotaNewSalem
      - AmericaNorthDakotaBeulah
      - AmericaBoise
      - AmericaPhoenix
      - AmericaAnchorage
      - AmericaJuneau
      - AmericaSitka
      - AmericaYakutat
      - AmericaNome
      - AmericaAdak
      - AmericaMetlakatla
      - PacificHonolulu
      - AmericaDenver
      - PacificAuckland
      type: string
    Purplebricks.Viewings.Business.Models.ViewingDetail:
      type: object
      properties:
        address:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.AddressViewModel'
        viewingDate:
          type: string
          format: date-time
        status:
          type:
          - string
          - 'null'
        isSales:
          type: boolean
        conductingAppointment:
          type:
          - string
          - 'null'
        viewingId:
          type: integer
          format: int32
        propertyId:
          type: integer
          format: int32
        viewer:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.EventUserDetailsViewModel'
        host:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.EventUserDetailsViewModel'
        seller:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.EventUserDetailsViewModel'
      additionalProperties: false
    Purplebricks.DatabaseModel.Enumerations.PortalType:
      enum:
      - Rightmove
      - Zoopla
      - Globrix
      - PrimeLocation
      - PropertyPal
      - PropertyNews
      - S1Homes
      - Domain
      - RealEstate
      - TradeMe
      type: string
    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.Viewings.Business.ViewModels.AddressViewModel:
      type: object
      properties:
        line1:
          type:
          - string
          - 'null'
        line2:
          type:
          - string
          - 'null'
        town:
          type:
          - string
          - 'null'
        county:
          type:
          - string
          - 'null'
        country:
          type:
          - string
          - 'null'
        postcode:
          type:
          - string
          - 'null'
      additionalProperties: false
    Purplebricks.DatabaseModel.Enumerations.WorkflowStepType:
      enum:
      - Create
      - BookValuation
      - Valuation
      - Instruct
      - CreateAdvert
      - RejectAdvert
      - AmendAdvert
      - ApproveAdvert
      - SchedulePendingRegCert
      - Schedule
      - PublishPendingRegCert
      - Publish
      - Withdraw
      - Suspend
      - SuspendByUser
      - SuspendAccount
      - UnderOffer
      - SoldSubjectToContract
      - DiyAdvertStarted
      - LetSubjectToContract
      - DeclineOffer
      - UpdateProperty
      - AcceptableOffer
      - ApplicationReceived
      - AcceptableOfferNotMarketed
      - WithdrawOffer
      - UpdateAdvert
      - DiyAdvertCreated
      - DiyAdvertRejected
      - ApprovePhoto
      - ContractsExchanged
      - Completion
      - DiyAdvertAmended
      - DiyAdvertRejectAmendments
      - SchedulePendingContract
      - PublishPendingContract
      - UpdatePropertyDiary
      - ContractsExchangedCoolingOffPeriod
      - ForceSold
      - ForceSoldSubjectToContract
      - ForceContractsExchanged
      - ForceCompletion
      - SoldSubjectToEscrow
      - PendingEscrow
      - Closing
      - ForceAcceptableOffer
      - ForceAcceptableOfferNotMarketed
      - ForceContractsExchangedCoolingOffPeriod
      - InstantValuation
      - FakeValuation
      - Cancelled
      type: string
    Purplebricks.Viewings.Business.ViewModels.PropertyViewModel:
      type: object
      properties:
        propertyId:
          type:
          - integer
          - 'null'
          format: int32
        listingId:
          type:
          - string
          - 'null'
        toLet:
          type: boolean
        street:
          type:
          - string
          - 'null'
        town:
          type:
          - string
          - 'null'
        county:
          type:
          - string
          - 'null'
        postcode:
          type:
          - string
          - 'null'
        fullAddress:
          type:
          - string
          - 'null'
        tenancyChecksViewModel:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.TenancyChecksViewModel'
        email:
          type:
          - string
          - 'null'
        loggedIn:
          type: boolean
        existingCustomer:
          type:
          - boolean
          - 'null'
        propertyToSell:
          type:
          - boolean
          - 'null'
        saleProgression:
          $ref: '#/components/schemas/Purplebricks.DatabaseModel.Enumerations.Offer.SaleProgressOption'
        portal:
          $ref: '#/components/schemas/Purplebricks.DatabaseModel.Enumerations.PortalType'
        lastActionCompleted:
          $ref: '#/components/schemas/Purplebricks.DatabaseModel.Enumerations.WorkflowStepType'
        confirmation:
          $ref: '#/components/schemas/Purplebricks.Viewings.Business.ViewModels.BookViewingConfirmationViewModel'
        mainImageUrl:
          type:
          - string
          - 'null'
        userId:
          type: integer
          format: int32
        closingDate:
          type:
          - string
          - 'null'
          format: date-time
        hasAccompaniedViewing:
          type: boolean
        accompaniedViewingExpertId:
          type:
          - integer
          - 'null'
          format: int32
        expertId:
          type: integer
          format: int32
      additionalProperties: false
  securitySchemes:
    Bearer:
      type: apiKey
      description: Authorization header using Bearer scheme
      name: Authorization
      in: header