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

# List listings

> List listings on your host profile, with their availability and pricing.

Returns the listings on the host profile that owns the API key, with their current availability windows and pricing. Use it to find listing IDs to [update availability](https://docs.liveohana.ai/api-reference/listings/update-availability.md) or [update pricing](https://docs.liveohana.ai/api-reference/listings/update-pricing.md).

Results are sorted by `id`, so pages stay stable while listings change.

## Query parameters

**status** `string`

Only return listings with these statuses. Repeat the parameter or pass a comma-separated list, for example `status=published,unlisted`. One of `draft`, `unlisted`, `published`, or `archived`.

**limit** `integer` (default: 25)

Page size, from 1 to 100.

**cursor** `string`

The `next_cursor` from the previous page. See [Pagination](https://docs.liveohana.ai/pagination.md).

Unknown parameters return `400 invalid_request`.

## Response

**data** `Listing[]` *required*

Listings on this page.

**Listing**

**id** `string` *required*

Listing ID.

**title** `string | null`

Listing title.

**status** `string` *required*

`draft`, `unlisted`, `published`, or `archived`. Only `published` listings appear in search.

**url** `string` *required*

The public listing page.

**property\_id** `string` *required*

The property this listing belongs to. A property with several rooms has one listing per room.

**address** `string | null`

The property's street address.

**managed\_by\_partner\_feed** `boolean` *required*

`true` when a partner feed manages this listing. Feed-managed listings can't be updated through the API.

**availability** `object` *required*

**properties**

**synced\_from\_airbnb** `boolean` *required*

`true` when availability syncs from an Airbnb calendar. Availability updates are refused while this is on.

**synced\_from\_website** `boolean` *required*

`true` when Ohana syncs this listing's availability from your own website. Updates through the API are accepted, but the next scheduled website sync may replace them. Ask the Ohana team to turn off availability sync if the API should be the source of truth.

**minimum\_stay** `integer | null`

Shortest stay you accept, in days. `null` when there's no minimum.

**windows** `Window[]` *required*

Date ranges when the listing can be booked, earliest first.

**Window**

**start\_date** `string` *required*

Earliest move-in date, `YYYY-MM-DD`.

**end\_date** `string | null`

Latest move-out date, `YYYY-MM-DD`. `null` when the window is open-ended.

**pricing** `object` *required*

**properties**

**type** `string` *required*

`fixed` for one monthly rent all year, or `monthly` for a rent per calendar month.

**synced\_from\_website** `boolean` *required*

`true` when Ohana syncs this listing's rent from your own website. Updates through the API are accepted, but the next website sync may replace them with the website's price, as fixed pricing. Ask the Ohana team to turn off price sync if the API should be the source of truth.

**rent** `Money | null`

What you earn per month. For `monthly` pricing, this is the lowest month.

**guest\_rent** `Money | null`

What the guest pays per month, including Ohana's service fee.

**monthly\_rents** `Monthly rent[] | null`

One entry per calendar month when `type` is `monthly`, otherwise `null`.

**Monthly rent**

**month** `integer` *required*

Calendar month, from `1` (January) to `12` (December). The same prices repeat every year.

**rent** `Money | null`

What you earn for this month.

**guest\_rent** `Money | null`

What the guest pays for this month, including Ohana's service fee.

**updated\_at** `string` *required*

When the listing last changed. ISO 8601 timestamp.

**has\_more** `boolean` *required*

Whether there are more listings after this page.

**next\_cursor** `string | null` *required*

Pass as `cursor` to get the next page. `null` when `has_more` is `false`.

```bash cURL theme={null}
curl "https://liveohana.ai/api/v1/listings?status=published" \
  -H "Authorization: Bearer ohk_your_key_here"
```

```javascript Node.js theme={null}
const response = await fetch(
  "https://liveohana.ai/api/v1/listings?status=published",
  { headers: { Authorization: `Bearer ${process.env.OHANA_API_KEY}` } }
);
const { data: listings, next_cursor } = await response.json();
```

```python Python theme={null}
import os, requests

response = requests.get(
    "https://liveohana.ai/api/v1/listings",
    params={"status": "published"},
    headers={"Authorization": f"Bearer {os.environ['OHANA_API_KEY']}"},
)
listings = response.json()["data"]
```

```json 200 theme={null}
{
  "data": [
    {
      "id": "0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33",
      "title": "Sunny 1BR near Union Square",
      "status": "published",
      "url": "https://liveohana.ai/listing/sunny-1br-near-union-square",
      "property_id": "7d2e9c41-8a3b-4f6e-b1c0-5e4d3c2b1a09",
      "address": "450 Post St, Apt 5C, San Francisco, CA 94102",
      "managed_by_partner_feed": false,
      "availability": {
        "synced_from_airbnb": false,
        "synced_from_website": false,
        "minimum_stay": 30,
        "windows": [
          { "start_date": "2026-12-01", "end_date": "2027-05-31" },
          { "start_date": "2027-07-01", "end_date": null }
        ]
      },
      "pricing": {
        "type": "fixed",
        "synced_from_website": false,
        "rent": { "amount": "2450.00", "currency": "USD" },
        "guest_rent": { "amount": "2695.00", "currency": "USD" },
        "monthly_rents": null
      },
      "updated_at": "2026-10-20T09:15:42.000Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.