Arthur Online Properties API

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

Operations 4

GET /properties List Properties #
POST /properties Add Property #
GET /properties/{property_id} View Property #
PUT /properties/{property_id} Update Property #

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/arthur-online-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

arthur-online-properties-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Arthur Properties API
  version: 2.0.0
  description: Arthur Properties API - the properties surface of the Arthur API v2, the UK property management platform from Arthur Online (an Aareon company). Derived operation-for-operation from the provider's public Postman Documenter collection at https://developer.arthuronline.co.uk/. Every request is scoped to an Arthur entity via the mandatory X-EntityID header and authorised with an OAuth 2.0 Authorization Code access token.
  contact:
    name: Arthur Online API Support
    url: https://support.arthuronline.co.uk/
  termsOfService: https://www.arthuronline.co.uk/terms-and-conditions/
  x-derived-from: collections/arthur-online.postman_collection.json
  x-derived-by: API Evangelist enrichment pipeline
  x-derived-date: '2026-07-26'
servers:
- url: https://api.arthuronline.co.uk/v2
  description: Arthur API v2 production
security:
- arthurOAuth: []
tags:
- name: Properties
paths:
  /properties:
    get:
      operationId: listProperties
      summary: List Properties
      tags:
      - Properties
      parameters:
      - $ref: '#/components/parameters/EntityId'
      - name: full_address
        in: query
        required: false
        schema:
          type: string
        description: Filter by the full address of the property
      - name: address_1
        in: query
        required: false
        schema:
          type: string
        description: Filter by the address 1 field of the property
      - name: address_2
        in: query
        required: false
        schema:
          type: string
        description: Filter by the address 2 field of the property
      - name: city
        in: query
        required: false
        schema:
          type: string
        description: Filter by the city of the property
      - name: county
        in: query
        required: false
        schema:
          type: string
        description: Filter by the county of the property
      - name: area_id
        in: query
        required: false
        schema:
          type: string
        description: Filter by the area ID of the property
      - name: postcode
        in: query
        required: false
        schema:
          type: string
        description: Filter by the postcode of the property
      - name: property_type
        in: query
        required: false
        schema:
          type: string
        description: Use this parameter to filter by the type of property
      - name: rentable_units
        in: query
        required: false
        schema:
          type: string
        description: Filter based on the number of units available for rent
      - name: unit_status
        in: query
        required: false
        schema:
          type: string
        description: Filter based on the current status of units, including Available To Let, Under Offer, Let, and Unavailable to Let
      - name: tags
        in: query
        required: false
        schema:
          type: string
        description: Filter by tags associated with the property, which should be provided as a comma-separated list
      - name: i_manage_this
        in: query
        required: false
        schema:
          type: string
        description: Filter based on the management status of the property (boolean)
      - name: letting_agent_id
        in: query
        required: false
        schema:
          type: string
        description: Filter by the ID of the letting agent associated with the property
      - name: property_owner_id
        in: query
        required: false
        schema:
          type: string
        description: Filter by the ID of the owner of the property
      - name: _q
        in: query
        required: false
        schema:
          type: string
        description: Filter by keyword
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Direction'
      description: 'This retrieves a list of properties.


        See available filters below to customize the list of properties returned.'
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: array
                    items:
                      type: object
                  pagination:
                    $ref: '#/components/schemas/Pagination'
              example:
                status: 200
                data:
                - id: 121619
                  property_type: Residential Block
                  property_description: multi
                  ref: reference
                  full_address: full address
                  address_line_1: address line 1
                  address_line_2: address line 2
                  city: city
                  county: ''
                  country: country
                  area: ''
                  postcode: postcode
                  total_units: 3
                  rentable_units: 0
                  letting_agent_id: null
                  property_owner_id: 123
                  property_owner_full_name: New Company
                  max_occupancy: N/A
                  bathrooms: N/A
                  floors: ''
                  bedrooms: N/A
                  receptions: N/A
                  smart_meters: ''
                  council_tax_band: N/A
                  council_account_no: ''
                  council_id: null
                  portal_market_rent: 0
                  portal_market_rent_frequency: ''
                  main_image_url: null
                  epc_urls: []
                  floor_plan_urls: []
                  thumbnail_urls: []
                  image_urls: []
                  features: []
                  property_features: []
                  additional_features: []
                  tags: []
                  notes: []
                  i_manage_this: true
                  latitude: null
                  longitude: null
                  custom_fields: []
                  modified: '2021-01-19T11:35:10+00:00'
                  created: '2021-01-19T11:35:10+00:00'
                pagination:
                  page: 1
                  current: 1
                  count: 1
                  pageCount: 1
                  limit: 20
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      operationId: addProperty
      summary: Add Property
      tags:
      - Properties
      parameters:
      - $ref: '#/components/parameters/EntityId'
      - name: strict
        in: query
        required: false
        schema:
          type: string
        description: Any simple fields that cannot be found will return a validation error, instead of creating a new value. E.g. source
        example: 'true'
      description: "Use this endpoint to create a new property. The API will return the saved data and a unique Property ID.\n\nSupported Fields \n The following fields are supported for the request body\n\nField \n Example \n Type \n Required? \n\nproperty_type \n Residential \n String \n No \n\nref \n My big property \n String \n Yes \n\naddress_line_1 \n Arthur House \n String \n Yes \n\naddress_line_2 \n 123 Property Street \n String \n No \n\ncity \n Stevenage \n String \n No \n\ncounty \n Hertfordshire \n String \n No \n\ncountry \n United Kingdom \n String \n No \n\narea \n South East \n Simple \n No \n\npostcode \n AB1 2CD \n String \n No \n\nletting_agent_id \n 4567 \n Integer \n No \n\nproperty_owner_id \n 5678 \n Integer \n Yes \n\nmax_occupancy \n 4 \n String \n No \n\nbathrooms \n 2 \n String \n No \n\nfloors \n 2 \n String \n No \n\nbedrooms \n 3 \n String \n No \n\nreceptions \n 1 \n String \n No \n\nsmart_meters \n 1 \n String \n No \n\ncouncil_tax_band \n B \n String \n No \n\ncouncil_account_no \n ABC123 \n String \n No \n\ncouncil_id \n 6789 \n Integer \n No \n\nportal_market_rent \n 850.00 \n Float \n No \n\nportal_market_rent_frequency \n Weekly \n String \n No \n\nfeatures \n [ \"Internet\", \"Fireplace\", \"Smart home integration\" ] \n Array (String) \n No \n\ntags \n [ \"Cheap Rent\" ] \n Array (String) \n No \n\ni_manage_this \n true \n Boolean \n No"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                property_type:
                  type: string
                  example: Residential
                ref:
                  type: string
                  example: My big property
                address_line_1:
                  type: string
                  example: Arthur House
                address_line_2:
                  type: string
                  example: 123 Property Street
                city:
                  type: string
                  example: Stevenage
                county:
                  type: string
                  example: Hertfordshire
                country:
                  type: string
                  example: United Kingdom
                area:
                  type: string
                  example: South East
                postcode:
                  type: string
                  example: AB1 2CD
                letting_agent_id:
                  type: integer
                  example: 4567
                property_owner_id:
                  type: integer
                  example: 5678
                max_occupancy:
                  type: string
                  example: '4'
                bathrooms:
                  type: string
                  example: '2'
                floors:
                  type: string
                  example: '2'
                bedrooms:
                  type: string
                  example: '3'
                receptions:
                  type: string
                  example: '1'
                smart_meters:
                  type: string
                  example: '1'
                council_tax_band:
                  type: string
                  example: B
                council_account_no:
                  type: string
                  example: ABC123
                council_id:
                  type: integer
                  example: 6789
                portal_market_rent:
                  type: number
                  example: 850.0
                portal_market_rent_frequency:
                  type: string
                  example: Weekly
                features:
                  type: array
                  items:
                    type: string
                  example: '[ "Internet", "Fireplace", "Smart home integration" ]'
                tags:
                  type: array
                  items:
                    type: string
                  example: '[ "Cheap Rent" ]'
                i_manage_this:
                  type: boolean
                  example: true
              required:
              - ref
              - address_line_1
              - property_owner_id
            example:
              property_type: Residential
              ref: My big property
              address_line_1: Arthur House
              address_line_2: 123 Property Street
              city: Stevenage
              county: Hertfordshire
              country: United Kingdom
              area: South East
              postcode: AB1 2CD
              letting_agent_id: 49470
              property_owner_id: 265389
              max_occupancy: '4'
              bathrooms: '2'
              floors: '2'
              bedrooms: '3'
              receptions: '1'
              smart_meters: '0'
              council_tax_band: B
              council_account_no: ABC123
              council_id: 33624
              portal_market_rent: 850.0
              portal_market_rent_frequency: Weekly
              features:
              - Internet
              - Fireplace
              - Smart home integration
              tags:
              - Cheap Rent
              i_manage_this: true
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: object
              example:
                status: 200
                data:
                  id: 282789
                  property_type: Residential
                  property_description: single
                  ref: My big property
                  full_address: My big property, Arthur House, 123 Property Street, Stevenage, Hertfordshire, AB1 2CD, United Kingdom (South East)
                  address_line_1: Arthur House
                  address_line_2: 123 Property Street
                  city: Stevenage
                  county: Hertfordshire
                  country: United Kingdom
                  area: South East
                  postcode: AB1 2CD
                  lat: 51.903761
                  lng: -0.196612
                  total_units: 1
                  rentable_units: 1
                  letting_agent_id: 49470
                  property_owner_id: 265389
                  property_owner_full_name: 2nd PM Account
                  max_occupancy: '4'
                  bathrooms: '2'
                  floors: '2'
                  bedrooms: '3'
                  receptions: '1'
                  smart_meters: 'No'
                  council_tax_band: B
                  council_account_no: ABC123
                  council_id: 33624
                  portal_market_rent: 850
                  portal_market_rent_frequency: Weekly
                  main_image_url: null
                  epc_urls: []
                  floor_plan_urls: []
                  thumbnail_urls: []
                  image_urls: []
                  features:
                  - Fireplace
                  - Internet
                  - Smart home integration
                  property_features:
                  - Fireplace
                  - Internet
                  additional_features:
                  - Smart home integration
                  tags: []
                  notes: []
                  i_manage_this: true
                  latitude: 51.903761
                  longitude: -0.196612
                  custom_fields: []
                  modified: '2023-02-28T13:05:57'
                  created: '2023-02-28T13:05:57'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /properties/{property_id}:
    get:
      operationId: viewProperty
      summary: View Property
      tags:
      - Properties
      parameters:
      - name: property_id
        in: path
        required: true
        description: Arthur property id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      description: 'This API endpoint retrieves the details of a single property, identified by its unique property_id .


        Use this endpoint to view the specific details of a property.'
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: object
              example:
                status: 200
                data:
                  id: 121619
                  property_type: Residential Block
                  property_description: multi
                  ref: reference
                  full_address: full address
                  address_line_1: address line 1
                  address_line_2: address line 2
                  city: city
                  county: ''
                  country: country
                  area: ''
                  postcode: postcode
                  total_units: 3
                  rentable_units: 0
                  letting_agent_id: null
                  property_owner_id: 123
                  property_owner_full_name: New Company
                  max_occupancy: N/A
                  bathrooms: N/A
                  floors: ''
                  bedrooms: N/A
                  receptions: N/A
                  smart_meters: ''
                  council_tax_band: N/A
                  council_account_no: ''
                  council_id: null
                  portal_market_rent: 0
                  portal_market_rent_frequency: ''
                  main_image_url: null
                  epc_urls: []
                  floor_plan_urls: []
                  thumbnail_urls: []
                  image_urls: []
                  features: []
                  property_features: []
                  additional_features: []
                  tags: []
                  notes: []
                  i_manage_this: true
                  latitude: null
                  longitude: null
                  custom_fields: []
                  modified: '2021-01-19T11:35:10+00:00'
                  created: '2021-01-19T11:35:10+00:00'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateProperty
      summary: Update Property
      tags:
      - Properties
      parameters:
      - name: property_id
        in: path
        required: true
        description: Arthur property id.
        schema:
          type: integer
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/Strict'
      description: "This endpoint updates an existing property using the same fields as the 'Add Property' endpoint. Any fields that are not provided will not be changed. The API will return the updated data for the property in the response.\n\nSupported Fields \n The following fields are supported for the request body\n\nField \n Example \n Type \n\nproperty_type \n Residential \n String \n\nref \n My big property \n String \n\naddress_line_1 \n Arthur House \n String \n\naddress_line_2 \n 123 Property Street \n String \n\ncity \n Stevenage \n String \n\ncounty \n Hertfordshire \n String \n\ncountry \n United Kingdom \n String \n\narea \n South East \n Simple \n\npostcode \n AB1 2CD \n String \n\nletting_agent_id \n 4567 \n Integer \n\nproperty_owner_id \n 5678 \n Integer \n\nmax_occupancy \n 4 \n String \n\nbathrooms \n 2 \n String \n\nfloors \n 2 \n String \n\nbedrooms \n 3 \n String \n\nreceptions \n 1 \n String \n\nsmart_meters \n 1 \n String \n\ncouncil_tax_band \n B \n String \n\ncouncil_account_no \n ABC123 \n String \n\ncouncil_id \n 6789 \n Integer \n\nportal_market_rent \n 850.00 \n Float \n\nportal_market_rent_frequency \n Weekly \n String \n\nfeatures \n [ \"Internet\", \"Fireplace\", \"Smart home integration\" ] \n Array (String) \n\ntags \n [ \"Cheap Rent\" ] \n Array (String) \n\ni_manage_this \n true \n Boolean"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                property_type:
                  type: string
                  example: Residential
                ref:
                  type: string
                  example: My big property
                address_line_1:
                  type: string
                  example: Arthur House
                address_line_2:
                  type: string
                  example: 123 Property Street
                city:
                  type: string
                  example: Stevenage
                county:
                  type: string
                  example: Hertfordshire
                country:
                  type: string
                  example: United Kingdom
                area:
                  type: string
                  example: South East
                postcode:
                  type: string
                  example: AB1 2CD
                letting_agent_id:
                  type: integer
                  example: 4567
                property_owner_id:
                  type: integer
                  example: 5678
                max_occupancy:
                  type: string
                  example: '4'
                bathrooms:
                  type: string
                  example: '2'
                floors:
                  type: string
                  example: '2'
                bedrooms:
                  type: string
                  example: '3'
                receptions:
                  type: string
                  example: '1'
                smart_meters:
                  type: string
                  example: '1'
                council_tax_band:
                  type: string
                  example: B
                council_account_no:
                  type: string
                  example: ABC123
                council_id:
                  type: integer
                  example: 6789
                portal_market_rent:
                  type: number
                  example: 850.0
                portal_market_rent_frequency:
                  type: string
                  example: Weekly
                features:
                  type: array
                  items:
                    type: string
                  example: '[ "Internet", "Fireplace", "Smart home integration" ]'
                tags:
                  type: array
                  items:
                    type: string
                  example: '[ "Cheap Rent" ]'
                i_manage_this:
                  type: boolean
                  example: true
            example:
              property_type: Residential
              ref: My big property
              address_line_1: Arthur House
              address_line_2: 123 Property Street
              city: Stevenage
              county: Hertfordshire
              country: United Kingdom
              area: South East
              postcode: AB1 2CD
              letting_agent_id: 49470
              property_owner_id: 265389
              max_occupancy: '4'
              bathrooms: '2'
              floors: '2'
              bedrooms: '3'
              receptions: '1'
              smart_meters: '0'
              council_tax_band: B
              council_account_no: ABC123
              council_id: 33624
              portal_market_rent: 850.0
              portal_market_rent_frequency: Weekly
              features:
              - Internet
              - Fireplace
              - Smart home integration
              tags:
              - Cheap Rent
              i_manage_this: true
      responses:
        '200':
          description: The request was completed successfully without errors.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: object
              example:
                status: 200
                data:
                  id: 282789
                  property_type: Residential
                  property_description: single
                  ref: My big property
                  full_address: My big property, Arthur House, 123 Property Street, Stevenage, Hertfordshire, AB1 2CD, United Kingdom (South East)
                  address_line_1: Arthur House
                  address_line_2: 123 Property Street
                  city: Stevenage
                  county: Hertfordshire
                  country: United Kingdom
                  area: South East
                  postcode: AB1 2CD
                  lat: 51.903761
                  lng: -0.196612
                  total_units: 1
                  rentable_units: 1
                  letting_agent_id: 49470
                  property_owner_id: 265389
                  property_owner_full_name: 2nd PM Account
                  max_occupancy: '4'
                  bathrooms: '2'
                  floors: '2'
                  bedrooms: '3'
                  receptions: '1'
                  smart_meters: 'No'
                  council_tax_band: B
                  council_account_no: ABC123
                  council_id: 33624
                  portal_market_rent: 850
                  portal_market_rent_frequency: Weekly
                  main_image_url: null
                  epc_urls: []
                  floor_plan_urls: []
                  thumbnail_urls: []
                  image_urls: []
                  features:
                  - Fireplace
                  - Internet
                  - Smart home integration
                  property_features:
                  - Fireplace
                  - Internet
                  additional_features:
                  - Smart home integration
                  tags: []
                  notes: []
                  i_manage_this: true
                  latitude: 51.903761
                  longitude: -0.196612
                  custom_fields: []
                  modified: '2023-02-28T13:05:57'
                  created: '2023-02-28T13:05:57'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    Direction:
      name: direction
      in: query
      required: false
      description: Sort direction.
      schema:
        type: string
        enum:
        - ASC
        - DESC
    Sort:
      name: sort
      in: query
      required: false
      description: Field to sort the collection by.
      schema:
        type: string
    Strict:
      name: strict
      in: query
      required: false
      description: When true, abort the request instead of auto-creating an unknown Simple type. POST and PUT only.
      schema:
        type: boolean
    EntityId:
      name: X-EntityID
      in: header
      required: true
      description: The Arthur entity (account) the request is scoped to. Mandatory on every API call.
      schema:
        type: string
    Page:
      name: page
      in: query
      required: false
      description: Page number, between 1 and the total number of pages.
      schema:
        type: integer
        minimum: 1
    Limit:
      name: limit
      in: query
      required: false
      description: Items per page, between 1 and 100.
      schema:
        type: integer
        minimum: 1
        maximum: 100
  responses:
    BadRequest:
      description: The request was invalid or malformed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The request was sent to a location that does not exist in the API.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing, invalid or expired access token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: expired_token
            message: This token has expired.
  schemas:
    Pagination:
      type: object
      description: Pagination block returned on every list response.
      properties:
        page:
          type: integer
        current:
          type: integer
        count:
          type: integer
        pageCount:
          type: integer
        limit:
          type: integer
    Error:
      type: object
      description: Arthur error envelope.
      properties:
        status:
          type: integer
        error:
          type: string
          description: Machine-readable error code, e.g. expired_token.
        message:
          type: string
  securitySchemes:
    arthurOAuth:
      type: oauth2
      description: OAuth 2.0 Authorization Code flow. Access tokens are valid for 14 days; refresh tokens for 21 days. Register an application in Arthur Settings > OAuth Applications to obtain a client_id and client_secret.
      flows:
        authorizationCode:
          authorizationUrl: https://auth.arthuronline.co.uk/oauth/authorize
          tokenUrl: https://auth.arthuronline.co.uk/oauth/token
          refreshUrl: https://auth.arthuronline.co.uk/oauth/token
          scopes: {}