---
title: "LandSearch API: JSON data, 8 endpoints, 1 credit per call"
description: "LandSearch API for US land for sale, lease or auction, listings, location pages, agent and lender profiles as JSON. 1 credit per successful call."
url: https://perceptlayer.com/apis/landsearch
---

[APIs](https://perceptlayer.com/apis) / [Real estate](https://perceptlayer.com/verticals/real-estate) / LandSearch

1 credit per call 8 endpoints 17 datapoints

# LandSearch API

LandSearch API for US land for sale, lease or auction, listings, location pages, agent and lender profiles as JSON. 1 credit per successful call.

[Get a free API key](https://perceptlayer.com/signup) Run it below

LandSearch

GET /v1/landsearch/search?location=texas&format=sale&price\_max=100000&size\_min=5 

```
{
  "success": true,
  "data": {
    "applied_filters": {
      "location": "texas",
      "format": "sale",
      "price_max": "100000",
      "size_min": "5"
    },
    "pagination": {
      "page": 1,
      "limit": 50,
      "returned": 50,
      "total": 1514,
      "total_pages": 31,
      "has_next": true
    },
    "items": [
      {
        "id": 5679558,
        "url": "https://www.landsearch.com/properties/dumas-tx-79029/5679558",
        "title": "10 Acres of Land for Sale in Dumas, Texas",
        "format": "sale",
        "status": "active",
        "price": 65000,
        "size_acres": 10,
        "listed_at": "2026-11-12T09:04:32Z",
        "promoted": false,
        "location": {
          "locality": "Dumas",
          "locality_slug": "dumas-tx",
          "county": "Moore",
          "county_slug": "moore-county-tx",
          "state": "Texas",
          "state_code": "TX",
          "state_slug": "texas",
          "postal_code": "79029"
        },
        "geo": {
          "longitude": -101.977492,
          "latitude": 35.850987,
          "precision": "high"
        },
        "structure": {
          "has_building": false
        },
        "image_url": "https://cdn.landsearch.com/listings/4XNnt/small/dumas-tx-183752767.jpg",
        "image_url_large": "https://cdn.landsearch.com/listings/4XNnt/large/dumas-tx-183752767.jpg",
        "total_images": 1,
        "total_videos": 0,
        "source": "listhub"
      },
      {
        "id": 5679432,
        "url": "https://www.landsearch.com/properties/572-highway-155-avinger-tx-75630/5679432",
        "title": "7.62 Acres of Residential Land for Sale in Avinger, Texas",
        "format": "sale",
        "status": "active",
        "price": 99900,
        "size_acres": 7.616,
        "listed_at": "2026-11-11T00:00:00Z",
        "promoted": false,
        "location": {
          "locality": "Avinger",
          "locality_slug": "avinger-tx",
          "county": "Marion",
          "county_slug": "marion-county-tx",
          "state": "Texas",
          "state_code": "TX",
          "state_slug": "texas",
          "postal_code": "75630"
        },
        "geo": {
          "longitude": -94.615413,
          "latitude": 32.876813,
          "precision": "high"
        },
        "structure": {
          "has_building": false
        },
        "image_url": "https://cdn.landsearch.com/listings/4XNjR/small/avinger-tx-183747382.jpg",
        "image_url_large": "https://cdn.landsearch.com/listings/4XNjR/large/avinger-tx-183747382.jpg",
        "total_images": 13,
        "total_videos": 0,
        "source": "listhub"
      },
      {
        "id": 5678469,
        "url": "https://www.landsearch.com/properties/shady-grove-rd-jefferson-tx-75657/5678469",
        "title": "6 Acres of Land for Sale in Jefferson, Texas",
        "format": "sale",
        "status": "active",
        "price": 35000,
        "size_acres": 6,
        "listed_at": "2026-11-11T00:00:00Z",
        "promoted": false,
        "location": {
          "locality": "Jefferson",
          "locality_slug": "jefferson-tx",
          "county": "Marion",
          "county_slug": "marion-county-tx",
          "state": "Texas",
          "state_code": "TX",
          "state_slug": "texas",
          "postal_code": "75657"
        },
        "geo": {
          "longitude": -94.482436,
          "latitude": 32.83538,
          "precision": "medium"
        },
        "structure": {
          "has_building": false
        },
        "image_url": "https://cdn.landsearch.com/listings/4XMTN/small/jefferson-tx-183715411.jpg",
        "image_url_large": "https://cdn.landsearch.com/listings/4XMTN/large/jefferson-tx-183715411.jpg",
        "total_images": 2,
        "total_videos": 0,
        "source": "listhub"
      }
    ]
  },
  "meta": {
    "endpoint_family": "search",
    "request_id": "req_45f8508f53b74e1b97f072be773aed17",
    "credits_charged": 1,
    "credits_remaining": 1851
  }
}
```

200 OK JSON X-Credits-Used: 1

Recorded from our API and shortened.

Sample data

## What one call returns

A recorded run of `search`: the fields and shapes you will get, shortened to 3 items.

| # | id integer | url url | title string | format string | status string | price integer | size\_acres number | listed\_at string | promoted boolean | location object | geo object | structure object | image\_url url | image\_url\_large url | total\_images integer | total\_videos integer | source string |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 1 | 5679558 | https://www.landsearch.com/properties/dumas-tx-79029/5679558 | 10 Acres of Land for Sale in Dumas, Texas | sale | active | 65000 | 10 | 2026-11-12T09:04:32Z | false | {8 fields} | {3 fields} | {1 fields} | https://cdn.landsearch.com/listings/4XNnt/small/dumas-tx-183752767.jpg | https://cdn.landsearch.com/listings/4XNnt/large/dumas-tx-183752767.jpg | 1 | 0 | listhub |
| 2 | 5679432 | https://www.landsearch.com/properties/572-highway-155-avinger-tx-75630/5679432 | 7.62 Acres of Residential Land for Sale in Avinger, Texas | sale | active | 99900 | 7.616 | 2026-11-11T00:00:00Z | false | {8 fields} | {3 fields} | {1 fields} | https://cdn.landsearch.com/listings/4XNjR/small/avinger-tx-183747382.jpg | https://cdn.landsearch.com/listings/4XNjR/large/avinger-tx-183747382.jpg | 13 | 0 | listhub |
| 3 | 5678469 | https://www.landsearch.com/properties/shady-grove-rd-jefferson-tx-75657/5678469 | 6 Acres of Land for Sale in Jefferson, Texas | sale | active | 35000 | 6 | 2026-11-11T00:00:00Z | false | {8 fields} | {3 fields} | {1 fields} | https://cdn.landsearch.com/listings/4XMTN/small/jefferson-tx-183715411.jpg | https://cdn.landsearch.com/listings/4XMTN/large/jefferson-tx-183715411.jpg | 2 | 0 | listhub |

Recorded from our API · 3 items shown · 17 datapoints per item GET /v1/landsearch/search?location=texas&format=sale&price\_max=100000&size\_min=5

17 datapoints

### Identity

-   id integer
-   title string
-   status string

### Contact

-   url url
-   image\_url url
-   image\_url\_large url

### Location

-   location object

### Reputation

-   total\_images integer

### Price

-   price integer

### Other

-   format string
-   size\_acres number
-   listed\_at string
-   promoted boolean
-   geo object
-   structure object
-   total\_videos integer
-   source string

Playground

## Run this API

cURL shell 

```
curl "https://api.perceptlayer.com/v1/landsearch/search?location=texas&format=sale&price_max=100000&size_min=5" \
  -H "X-API-Key: $API_KEY"
```

LandSearch · 8 endpoints

## Endpoints

Every endpoint takes the same key. Open one for its parameters and an example request.

| Endpoint | Required parameters | Cost |
| --- | --- | --- |
| [GET `/v1/landsearch/autocomplete`](https://perceptlayer.com/apis/landsearch/autocomplete) | `q` +2 optional | 1 credit |
| [GET `/v1/landsearch/listing`](https://perceptlayer.com/apis/landsearch/listing) | `listing_id` | 1 credit |
| [GET `/v1/landsearch/location`](https://perceptlayer.com/apis/landsearch/location) | `slug` | 1 credit |
| [GET `/v1/landsearch/profile`](https://perceptlayer.com/apis/landsearch/profile) | `profile_id` | 1 credit |
| [GET `/v1/landsearch/profile-listings`](https://perceptlayer.com/apis/landsearch/profile-listings) | `profile_id` +3 optional | 1 credit |
| [GET `/v1/landsearch/profile-members`](https://perceptlayer.com/apis/landsearch/profile-members) | `profile_id` +3 optional | 1 credit |
| [GET `/v1/landsearch/profiles`](https://perceptlayer.com/apis/landsearch/profiles) | none +6 optional | 1 credit |
| [GET `/v1/landsearch/search`](https://perceptlayer.com/apis/landsearch/search) | none +21 optional | 1 credit |

Overview

## About the LandSearch API

## What you can get

The LandSearch API returns LandSearch land data as JSON through 8 endpoints.

-   **Search:** `search` takes a `location`, with `format` (sale, lease or auction), `type` (residential, commercial, agricultural or recreational), `tag` (waterfront, off-grid, ranch, timberland, cabin, hunting, owner-financing and more), `status` (pending), `keywords`, `structure`, `price_min`, `price_max`, `size_min`, `size_max`, `ppa_min`, `ppa_max`, `bedrooms_min`, `bedrooms_max`, `bathrooms_min`, `space_min`, `space_max`, `sort` (-promoted, -newest, -price, price, -size, size or -updated), `page` and `limit`.
-   **Listings:** `listing` takes a `listing_id`.
-   **Locations:** `location` takes a `slug`; `autocomplete` takes `q`, with `type` (locality, subterritory, postal\_code or territory) and `limit`.
-   **Profiles:** `profiles` takes a `type` (agent, lender or service), `location` and `keywords`, with `sort`, `page` and `limit`; `profile` takes a `profile_id`; `profile-listings` and `profile-members` take a `profile_id`, with `sort`, `page` and `limit`.

The recorded `search` for Texas (for sale, at least 5 acres, up to 100,000) returns a `total` of 1,514, with `total_pages` and `has_next`. Each item carries `id`, `url`, `title`, `format`, `status`, `price`, `size_acres`, `listed_at`, `promoted`, `location`, `geo`, `structure`, `image_url`, `total_images` and `total_videos`.

## How a call works

Search a state: `GET /v1/landsearch/search?location=texas&format=sale&price_max=100000&size_min=5` with your key in the `X-API-Key` header. Each item's `id` is the `listing_id` that `listing` takes, and its `location.locality_slug` is the kind of `slug` `location` takes. Every successful call costs 1 credit; failed calls cost nothing.

Real estate JSON REST MCP

### More real estate APIs

[28Hse](https://perceptlayer.com/apis/28hse) [4zida](https://perceptlayer.com/apis/4zida) [591](https://perceptlayer.com/apis/591-house) [99.co](https://perceptlayer.com/apis/99co) [99acres](https://perceptlayer.com/apis/99acres) [Adondevivir](https://perceptlayer.com/apis/adondevivir) [Apartment List](https://perceptlayer.com/apis/apartment-list) [Apartments.com](https://perceptlayer.com/apis/apartments-com) [Aqar](https://perceptlayer.com/apis/aqar) [Aqarmap](https://perceptlayer.com/apis/aqarmap) [Argenprop](https://perceptlayer.com/apis/argenprop) [athome](https://perceptlayer.com/apis/athome)

Use cases

### Track land prices per acre with \`ppa\_min\` and \`ppa\_max\`

`` Use the LandSearch API to track land prices per acre with `ppa_min` and `ppa_max` `` 

### Find rural, waterfront or off-grid parcels by \`tag\`

`` Use the LandSearch API to find rural, waterfront or off-grid parcels by `tag` `` 

### Watch land auctions with \`format=auction\`

`` Use the LandSearch API to watch land auctions with `format=auction` `` 

### Find land with owner financing with \`tag=owner-financing\`

`` Use the LandSearch API to find land with owner financing with `tag=owner-financing` `` 

FAQ

## Questions

**How much does the LandSearch API cost?**

Each successful call costs one credit. New accounts get free credits to start, and credit packs bring the price down as you scale.

**What format are responses in?**

Every endpoint returns JSON, with no HTML parsing on your side.

**Do I need a LandSearch account?**

No. You call this LandSearch API with your Perceptlayer key in the \`X-API-Key\` header, with no LandSearch login.

**Can I filter by acreage?**

Yes. Pass \`size\_min\` and \`size\_max\` to \`search\`; each item returns its \`size\_acres\`.

**Should I build a LandSearch scraper instead?**

You can, but a LandSearch scraper is code you maintain: page changes break it, requests get blocked, and LandSearch's terms govern how you collect data. The LandSearch API gives you 8 endpoints of named JSON fields for 1 credit per successful call, and failed calls cost nothing. A scraper makes sense only for data these endpoints don't return, so check the response in the playground on this page first.

## Try the LandSearch API with 100 free credits

No credit card. Failed calls are never billed.

[Get a free API key](https://perceptlayer.com/signup) [Read the docs](https://docs.perceptlayer.com)
