curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{ "type": "fixed", "rent": "2450.00" }'
curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"type": "monthly",
"monthly_rents": [
{ "month": 1, "rent": "2200.00" },
{ "month": 2, "rent": "2200.00" },
{ "month": 3, "rent": "2300.00" },
{ "month": 4, "rent": "2400.00" },
{ "month": 5, "rent": "2600.00" },
{ "month": 6, "rent": "2800.00" },
{ "month": 7, "rent": "2800.00" },
{ "month": 8, "rent": "2800.00" },
{ "month": 9, "rent": "2600.00" },
{ "month": 10, "rent": "2400.00" },
{ "month": 11, "rent": "2300.00" },
{ "month": 12, "rent": "2300.00" }
]
}'
const response = await fetch(
`https://liveohana.ai/api/v1/listings/${listingId}/pricing`,
{
method: "PUT",
headers: {
Authorization: `Bearer ${process.env.OHANA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ type: "fixed", rent: "2450.00" }),
}
);
const { data: listing } = await response.json();
import os, requests
response = requests.put(
f"https://liveohana.ai/api/v1/listings/{listing_id}/pricing",
headers={"Authorization": f"Bearer {os.environ['OHANA_API_KEY']}"},
json={"type": "fixed", "rent": "2450.00"},
)
listing = response.json()["data"]
{
"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" }]
},
"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-28T18:04:10.000Z"
}
}
{
"error": {
"code": "validation_failed",
"message": "Enter monthly rent for every month."
}
}
Listings
Update pricing
Set a listing’s rent: one price all year, or a price per calendar month.
PUT
/
api
/
v1
/
listings
/
{id}
/
pricing
curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{ "type": "fixed", "rent": "2450.00" }'
curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"type": "monthly",
"monthly_rents": [
{ "month": 1, "rent": "2200.00" },
{ "month": 2, "rent": "2200.00" },
{ "month": 3, "rent": "2300.00" },
{ "month": 4, "rent": "2400.00" },
{ "month": 5, "rent": "2600.00" },
{ "month": 6, "rent": "2800.00" },
{ "month": 7, "rent": "2800.00" },
{ "month": 8, "rent": "2800.00" },
{ "month": 9, "rent": "2600.00" },
{ "month": 10, "rent": "2400.00" },
{ "month": 11, "rent": "2300.00" },
{ "month": 12, "rent": "2300.00" }
]
}'
const response = await fetch(
`https://liveohana.ai/api/v1/listings/${listingId}/pricing`,
{
method: "PUT",
headers: {
Authorization: `Bearer ${process.env.OHANA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ type: "fixed", rent: "2450.00" }),
}
);
const { data: listing } = await response.json();
import os, requests
response = requests.put(
f"https://liveohana.ai/api/v1/listings/{listing_id}/pricing",
headers={"Authorization": f"Bearer {os.environ['OHANA_API_KEY']}"},
json={"type": "fixed", "rent": "2450.00"},
)
listing = response.json()["data"]
{
"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" }]
},
"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-28T18:04:10.000Z"
}
}
{
"error": {
"code": "validation_failed",
"message": "Enter monthly rent for every month."
}
}
Sets what you earn per month for the listing. Ohana adds its service fee to get the price guests see, returned as
guest_rent.
Pricing is one of two types:
fixed: one monthlyrentall year.monthly: a rent for each of the 12 calendar months. The same prices repeat every year, somonth: 1applies to every January. The listing’s headline price is the lowest month.
fixed pricing on a listing with monthly prices removes the monthly prices. Bookings already made keep the price they were booked at.
The listing in the URL is the only one updated. On a property with several rooms, update each room’s listing separately. Pricing can be updated on listings that sync availability from Airbnb.
If
pricing.synced_from_website is true, Ohana also syncs this listing’s rent from your website, and the next sync may replace what you send here.Path parameters
string
required
The listing
id.Body
Send JSON withContent-Type: application/json. Amounts are in the listing’s currency, as decimal strings such as "2450.00". Numbers are also accepted.
string
required
fixed or monthly.string
Required when
type is fixed. What you earn per month, from more than 0 up to 1,000,000.Monthly rent[]
Response
Errors
| Status | Code | When |
|---|---|---|
| 400 | invalid_request | The body isn’t JSON, has an unknown field, or an amount isn’t a decimal with up to 2 places. |
| 404 | not_found | The listing doesn’t exist or isn’t on your host profile. |
| 409 | conflict | The listing is managed by a partner feed, or is archived. |
| 422 | validation_failed | A rent is 0 or over the maximum, or monthly_rents doesn’t have each month exactly once. |
curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{ "type": "fixed", "rent": "2450.00" }'
curl -X PUT https://liveohana.ai/api/v1/listings/0b9f1a52-2d6e-4c7b-9a0e-6f2d4c1b8a33/pricing \
-H "Authorization: Bearer ohk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"type": "monthly",
"monthly_rents": [
{ "month": 1, "rent": "2200.00" },
{ "month": 2, "rent": "2200.00" },
{ "month": 3, "rent": "2300.00" },
{ "month": 4, "rent": "2400.00" },
{ "month": 5, "rent": "2600.00" },
{ "month": 6, "rent": "2800.00" },
{ "month": 7, "rent": "2800.00" },
{ "month": 8, "rent": "2800.00" },
{ "month": 9, "rent": "2600.00" },
{ "month": 10, "rent": "2400.00" },
{ "month": 11, "rent": "2300.00" },
{ "month": 12, "rent": "2300.00" }
]
}'
const response = await fetch(
`https://liveohana.ai/api/v1/listings/${listingId}/pricing`,
{
method: "PUT",
headers: {
Authorization: `Bearer ${process.env.OHANA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ type: "fixed", rent: "2450.00" }),
}
);
const { data: listing } = await response.json();
import os, requests
response = requests.put(
f"https://liveohana.ai/api/v1/listings/{listing_id}/pricing",
headers={"Authorization": f"Bearer {os.environ['OHANA_API_KEY']}"},
json={"type": "fixed", "rent": "2450.00"},
)
listing = response.json()["data"]
{
"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" }]
},
"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-28T18:04:10.000Z"
}
}
{
"error": {
"code": "validation_failed",
"message": "Enter monthly rent for every month."
}
}

