> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anysite.io/llms.txt
> Use this file to discover all available pages before exploring further.

# /midland/estates

> Get the full profile of one Hong Kong residential estate (屋苑) or estate phase by id (or estate URL). Returns the estate name in Chinese and English, type, address, generated description, developer, vendor, occupation dates per phase, land-lease term, block and storey breakdown, total units and blocks, live listing counts with price and rent ranges and averages per bedroom count, the saleable-area price index with month-on-month change and deal counts, the eight-level geography and coordinates, school nets with named primary and secondary schools, MTR lines and stations, walkable amenities, estate facilities and features such as pet policy, every phase with its buildings, photos, site plans, videos, the full floor plan library, nearby Midland branches, and the most recent sale and rental deals in the estate.

**Price:** 1 credit

**⚠️ Common errors:** 412: No estate or phase with this id.



## OpenAPI

````yaml /openapi/real-estate.json post /api/midland/estates
openapi: 3.1.0
info:
  title: Any Site API
  description: >+
    Any Site API provides programmatic access to data from LinkedIn, Instagram,
    Twitter, and other platforms.


    ## Authentication


    All API endpoints require an `access-token` header with a valid API token.
    Tokens can be created in the [dashboard](https://app.anysite.io/).


    ## Pricing


    Each endpoint has a credit cost listed in its description. Credits are
    deducted from your token balance per request.

  version: 0.0.1
servers: []
security:
  - AccessToken: []
paths:
  /api/midland/estates:
    post:
      tags:
        - /midland
      summary: /midland/estates
      description: >-
        Get the full profile of one Hong Kong residential estate (屋苑) or estate
        phase by id (or estate URL). Returns the estate name in Chinese and
        English, type, address, generated description, developer, vendor,
        occupation dates per phase, land-lease term, block and storey breakdown,
        total units and blocks, live listing counts with price and rent ranges
        and averages per bedroom count, the saleable-area price index with
        month-on-month change and deal counts, the eight-level geography and
        coordinates, school nets with named primary and secondary schools, MTR
        lines and stations, walkable amenities, estate facilities and features
        such as pet policy, every phase with its buildings, photos, site plans,
        videos, the full floor plan library, nearby Midland branches, and the
        most recent sale and rental deals in the estate.


        **Price:** 1 credit


        **⚠️ Common errors:** 412: No estate or phase with this id.
      operationId: __api_midland_estates_post
      parameters:
        - name: access-token
          in: header
          required: true
          schema:
            anyOf:
              - type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MidlandEstatesPayload'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MidlandEstate'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    MidlandEstatesPayload:
      properties:
        timeout:
          type: integer
          maximum: 1500
          minimum: 20
          default: 300
        lang:
          $ref: '#/components/schemas/MidlandLang'
          default: zh-hk
        unit:
          $ref: '#/components/schemas/MidlandUnit'
          default: feet
        currency:
          $ref: '#/components/schemas/MidlandCurrency'
          default: HKD
        estate:
          type: string
      type: object
      required:
        - estate
    MidlandEstate:
      properties:
        '@type':
          type: string
          default: MidlandEstate
        id:
          type: string
        name:
          anyOf:
            - type: string
            - type: 'null'
        name_en:
          anyOf:
            - type: string
            - type: 'null'
        url:
          anyOf:
            - type: string
            - type: 'null'
        url_zh_cn:
          anyOf:
            - type: string
            - type: 'null'
        url_en:
          anyOf:
            - type: string
            - type: 'null'
        estate_type:
          anyOf:
            - type: string
            - type: 'null'
        building_type:
          anyOf:
            - type: string
            - type: 'null'
        is_phase:
          anyOf:
            - type: boolean
            - type: 'null'
        is_hos:
          anyOf:
            - type: boolean
            - type: 'null'
        address:
          anyOf:
            - type: string
            - type: 'null'
        highlights:
          anyOf:
            - type: string
            - type: 'null'
        facilities_text:
          anyOf:
            - type: string
            - type: 'null'
        rating:
          anyOf:
            - type: integer
            - type: 'null'
        developer:
          anyOf:
            - type: string
            - type: 'null'
        vendor:
          anyOf:
            - type: string
            - type: 'null'
        management_company:
          anyOf:
            - type: string
            - type: 'null'
        op_date_text:
          anyOf:
            - type: string
            - type: 'null'
        first_op_at:
          anyOf:
            - type: integer
            - type: 'null'
        last_op_at:
          anyOf:
            - type: integer
            - type: 'null'
        land_lease_text:
          anyOf:
            - type: string
            - type: 'null'
        block_count_text:
          anyOf:
            - type: string
            - type: 'null'
        storey_text:
          anyOf:
            - type: string
            - type: 'null'
        total_flats_text:
          anyOf:
            - type: string
            - type: 'null'
        total_phase_text:
          anyOf:
            - type: string
            - type: 'null'
        sell_count:
          anyOf:
            - type: integer
            - type: 'null'
        rent_count:
          anyOf:
            - type: integer
            - type: 'null'
        min_price:
          anyOf:
            - type: number
            - type: 'null'
        max_price:
          anyOf:
            - type: number
            - type: 'null'
        min_rent:
          anyOf:
            - type: number
            - type: 'null'
        max_rent:
          anyOf:
            - type: number
            - type: 'null'
        avg_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        min_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        max_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        avg_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        min_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        max_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        market_stat:
          anyOf:
            - $ref: '#/components/schemas/MidlandMarketStat'
            - type: 'null'
        room_stats:
          items:
            $ref: '#/components/schemas/MidlandEstateRoomStat'
          type: array
          default: []
        room_market_stats:
          items:
            $ref: '#/components/schemas/MidlandEstateRoomMarketStat'
          type: array
          default: []
        census:
          anyOf:
            - $ref: '#/components/schemas/MidlandEstateCensus'
            - type: 'null'
        geo:
          anyOf:
            - $ref: '#/components/schemas/MidlandGeo'
            - type: 'null'
        location:
          anyOf:
            - $ref: '#/components/schemas/MidlandLocation'
            - type: 'null'
        school_net:
          anyOf:
            - $ref: '#/components/schemas/MidlandSchoolNet'
            - type: 'null'
        primary_schools:
          items:
            type: string
          type: array
          default: []
        secondary_schools:
          items:
            type: string
          type: array
          default: []
        mtr_lines:
          items:
            type: string
          type: array
          default: []
        mtr_stations:
          items:
            type: string
          type: array
          default: []
        amenities:
          items:
            $ref: '#/components/schemas/MidlandAmenity'
          type: array
          default: []
        facility_groups:
          items:
            $ref: '#/components/schemas/MidlandRef'
          type: array
          default: []
        features:
          items:
            $ref: '#/components/schemas/MidlandRef'
          type: array
          default: []
        top_estates:
          items:
            type: string
          type: array
          default: []
        phases:
          items:
            $ref: '#/components/schemas/MidlandEstatePhase'
          type: array
          default: []
        other_phases:
          items:
            $ref: '#/components/schemas/MidlandRef'
          type: array
          default: []
        photos:
          items:
            $ref: '#/components/schemas/MidlandEstatePhoto'
          type: array
          default: []
        site_plans:
          items:
            type: string
          type: array
          default: []
        videos:
          items:
            $ref: '#/components/schemas/MidlandPropertyVideo'
          type: array
          default: []
        floor_plans:
          items:
            $ref: '#/components/schemas/MidlandFloorPlan'
          type: array
          default: []
        branches:
          items:
            $ref: '#/components/schemas/MidlandBranchContact'
          type: array
          default: []
        recent_sale_transactions:
          items:
            $ref: '#/components/schemas/MidlandNearbyTransaction'
          type: array
          default: []
        recent_rent_transactions:
          items:
            $ref: '#/components/schemas/MidlandNearbyTransaction'
          type: array
          default: []
        sale_listings_url:
          anyOf:
            - type: string
            - type: 'null'
        rent_listings_url:
          anyOf:
            - type: string
            - type: 'null'
        transactions_url:
          anyOf:
            - type: string
            - type: 'null'
        transaction_history_url:
          anyOf:
            - type: string
            - type: 'null'
        news_url:
          anyOf:
            - type: string
            - type: 'null'
      type: object
      required:
        - id
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    MidlandLang:
      type: string
      enum:
        - zh-hk
        - zh-cn
        - en
    MidlandUnit:
      type: string
      enum:
        - feet
        - meter
    MidlandCurrency:
      type: string
      enum:
        - HKD
        - CNY
    MidlandMarketStat:
      properties:
        '@type':
          type: string
          default: MidlandMarketStat
        net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        previous_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        net_ft_price_change_percent:
          anyOf:
            - type: number
            - type: 'null'
        ft_price:
          anyOf:
            - type: number
            - type: 'null'
        previous_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        ft_price_change_percent:
          anyOf:
            - type: number
            - type: 'null'
        net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        transaction_count:
          anyOf:
            - type: integer
            - type: 'null'
        transaction_amount:
          anyOf:
            - type: number
            - type: 'null'
      type: object
    MidlandEstateRoomStat:
      properties:
        '@type':
          type: string
          default: MidlandEstateRoomStat
        bedroom_count:
          type: string
        sell_count:
          anyOf:
            - type: integer
            - type: 'null'
        rent_count:
          anyOf:
            - type: integer
            - type: 'null'
        min_price:
          anyOf:
            - type: number
            - type: 'null'
        max_price:
          anyOf:
            - type: number
            - type: 'null'
        avg_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        min_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        max_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        min_rent:
          anyOf:
            - type: number
            - type: 'null'
        max_rent:
          anyOf:
            - type: number
            - type: 'null'
        avg_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        min_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
        max_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
      type: object
      required:
        - bedroom_count
    MidlandEstateRoomMarketStat:
      properties:
        '@type':
          type: string
          default: MidlandEstateRoomMarketStat
        bedroom_count:
          type: string
        avg_net_ft_price:
          anyOf:
            - type: number
            - type: 'null'
        avg_net_ft_rent:
          anyOf:
            - type: number
            - type: 'null'
      type: object
      required:
        - bedroom_count
    MidlandEstateCensus:
      properties:
        '@type':
          type: string
          default: MidlandEstateCensus
        population:
          anyOf:
            - type: integer
            - type: 'null'
        median_age:
          anyOf:
            - type: number
            - type: 'null'
        age_0_14:
          anyOf:
            - type: integer
            - type: 'null'
        age_15_24:
          anyOf:
            - type: integer
            - type: 'null'
        age_25_44:
          anyOf:
            - type: integer
            - type: 'null'
        age_45_64:
          anyOf:
            - type: integer
            - type: 'null'
        age_65_plus:
          anyOf:
            - type: integer
            - type: 'null'
        education_primary_and_below:
          anyOf:
            - type: integer
            - type: 'null'
        education_secondary:
          anyOf:
            - type: integer
            - type: 'null'
        education_post_secondary:
          anyOf:
            - type: integer
            - type: 'null'
        household_count:
          anyOf:
            - type: integer
            - type: 'null'
        avg_household_size:
          anyOf:
            - type: number
            - type: 'null'
        median_household_income:
          anyOf:
            - type: number
            - type: 'null'
        median_active_household_income:
          anyOf:
            - type: number
            - type: 'null'
        median_mortgage_payment:
          anyOf:
            - type: number
            - type: 'null'
        mortgage_to_income_percent:
          anyOf:
            - type: number
            - type: 'null'
        median_rent:
          anyOf:
            - type: number
            - type: 'null'
        rent_to_income_percent:
          anyOf:
            - type: number
            - type: 'null'
        owner_with_mortgage_percent:
          anyOf:
            - type: number
            - type: 'null'
        owner_without_mortgage_percent:
          anyOf:
            - type: number
            - type: 'null'
        sole_tenant_percent:
          anyOf:
            - type: number
            - type: 'null'
        working_population:
          anyOf:
            - type: integer
            - type: 'null'
        managers_and_administrators:
          anyOf:
            - type: integer
            - type: 'null'
        professionals:
          anyOf:
            - type: integer
            - type: 'null'
        associate_professionals:
          anyOf:
            - type: integer
            - type: 'null'
        clerical_support_workers:
          anyOf:
            - type: integer
            - type: 'null'
        service_and_sales_workers:
          anyOf:
            - type: integer
            - type: 'null'
        other_occupations:
          anyOf:
            - type: integer
            - type: 'null'
      type: object
    MidlandGeo:
      properties:
        '@type':
          type: string
          default: MidlandGeo
        region:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        subregion:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        sm_district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        combined_district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        int_district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        int_sm_district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
        lux_district:
          anyOf:
            - $ref: '#/components/schemas/MidlandRef'
            - type: 'null'
      type: object
    MidlandLocation:
      properties:
        '@type':
          type: string
          default: MidlandLocation
        latitude:
          anyOf:
            - type: number
            - type: 'null'
        longitude:
          anyOf:
            - type: number
            - type: 'null'
      type: object
    MidlandSchoolNet:
      properties:
        '@type':
          type: string
          default: MidlandSchoolNet
        kindergarten_id:
          anyOf:
            - type: string
            - type: 'null'
        kindergarten_name:
          anyOf:
            - type: string
            - type: 'null'
        primary_id:
          anyOf:
            - type: string
            - type: 'null'
        primary_name:
          anyOf:
            - type: string
            - type: 'null'
        secondary_id:
          anyOf:
            - type: string
            - type: 'null'
        secondary_name:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandAmenity:
      properties:
        '@type':
          type: string
          default: MidlandAmenity
        type:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
        walking_minutes:
          anyOf:
            - type: integer
            - type: 'null'
      type: object
    MidlandRef:
      properties:
        '@type':
          type: string
          default: MidlandRef
        id:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandEstatePhase:
      properties:
        '@type':
          type: string
          default: MidlandEstatePhase
        id:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
        url:
          anyOf:
            - type: string
            - type: 'null'
        latitude:
          anyOf:
            - type: number
            - type: 'null'
        longitude:
          anyOf:
            - type: number
            - type: 'null'
        buildings:
          items:
            $ref: '#/components/schemas/MidlandEstateBuilding'
          type: array
          default: []
      type: object
    MidlandEstatePhoto:
      properties:
        '@type':
          type: string
          default: MidlandEstatePhoto
        url:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandPropertyVideo:
      properties:
        '@type':
          type: string
          default: MidlandPropertyVideo
        id:
          anyOf:
            - type: string
            - type: 'null'
        url:
          anyOf:
            - type: string
            - type: 'null'
        stream_url:
          anyOf:
            - type: string
            - type: 'null'
        thumbnail:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandFloorPlan:
      properties:
        '@type':
          type: string
          default: MidlandFloorPlan
        id:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
        url:
          anyOf:
            - type: string
            - type: 'null'
        source:
          anyOf:
            - type: string
            - type: 'null'
        phase_id:
          anyOf:
            - type: string
            - type: 'null'
        phase_name:
          anyOf:
            - type: string
            - type: 'null'
        building_id:
          anyOf:
            - type: string
            - type: 'null'
        building_name:
          anyOf:
            - type: string
            - type: 'null'
        floor_from:
          anyOf:
            - type: string
            - type: 'null'
        floor_to:
          anyOf:
            - type: string
            - type: 'null'
        floor_text:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandBranchContact:
      properties:
        '@type':
          type: string
          default: MidlandBranchContact
        name:
          anyOf:
            - type: string
            - type: 'null'
        phone:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    MidlandNearbyTransaction:
      properties:
        '@type':
          type: string
          default: MidlandNearbyTransaction
        price:
          anyOf:
            - type: number
            - type: 'null'
        net_area:
          anyOf:
            - type: number
            - type: 'null'
        bedroom_count:
          anyOf:
            - type: integer
            - type: 'null'
        estate_name:
          anyOf:
            - type: string
            - type: 'null'
        phase_name:
          anyOf:
            - type: string
            - type: 'null'
        building_name:
          anyOf:
            - type: string
            - type: 'null'
        floor:
          anyOf:
            - type: string
            - type: 'null'
        floor_name:
          anyOf:
            - type: string
            - type: 'null'
        flat:
          anyOf:
            - type: string
            - type: 'null'
        gain_percent:
          anyOf:
            - type: number
            - type: 'null'
        holding_period_years:
          anyOf:
            - type: number
            - type: 'null'
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
        msg:
          type: string
        type:
          type: string
        input: {}
        ctx:
          type: object
      type: object
      required:
        - loc
        - msg
        - type
    MidlandEstateBuilding:
      properties:
        '@type':
          type: string
          default: MidlandEstateBuilding
        id:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
        address:
          anyOf:
            - type: string
            - type: 'null'
        building_type:
          anyOf:
            - type: string
            - type: 'null'
        first_op_at:
          anyOf:
            - type: integer
            - type: 'null'
        latitude:
          anyOf:
            - type: number
            - type: 'null'
        longitude:
          anyOf:
            - type: number
            - type: 'null'
        has_floor_plan:
          anyOf:
            - type: boolean
            - type: 'null'
      type: object
  securitySchemes:
    AccessToken:
      type: apiKey
      in: header
      name: access-token
      description: API token from the dashboard

````