/v1/deals/{id}/offersThe offer panel of a rental deal
Every version newest first (with what changed), the live and the accepted offer, asked vs offered vs the owner’s floor, the approval state of the live offer, the owner’s links and the agreement hand-off.
Access: API key with deals:read, or a member session. Permission deals.view.
Parameters
idpathrequired- Id
Opaque record id.
Response · 200
datarequired- RentalOfferPanel
metarequired- object
curl -X GET 'https://api.propzolo.com/v1/deals/{id}/offers' \
-H 'Authorization: Bearer pz_live_…'{
"data": {
"deal": {
"id": "cmusrceel0000q7kaafxqi1om",
"ref": "string",
"stage": "string",
"type": "string"
},
"live": {
"id": "cmusrceel0000q7kaafxqi1om",
"version": 0,
"side": "tenant",
"status": "open",
"monthly_rent": 850000000,
"maintenance_included": true,
"maintenance_amount": 850000000,
"deposit_months": "string",
"deposit_amount": 850000000,
"escalation_pct": "string",
"lock_in_months": 0,
"notice_months": 0,
"agreement_months": 0,
"move_in_date": "2026-10-06",
"inclusions": [
"string"
],
"special_conditions": "string",
"tenant_profile": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"breaches": [
"rent"
],
"owner_approval": {
"at": "2026-10-06T05:30:00.000Z",
"via": "link"
},
"counter_of_id": "cmusrceel0000q7kaafxqi1om",
"created_via": "member",
"created_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"created_at": "2026-10-06T05:30:00.000Z",
"decided_at": "2026-10-06T05:30:00.000Z",
"decided_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"decision_note": "string",
"changes": [
{
"field": "string",
"label": "string",
"from": "string",
"to": "string"
}
]
},
"accepted": {
"id": "cmusrceel0000q7kaafxqi1om",
"version": 0,
"side": "tenant",
"status": "open",
"monthly_rent": 850000000,
"maintenance_included": true,
"maintenance_amount": 850000000,
"deposit_months": "string",
"deposit_amount": 850000000,
"escalation_pct": "string",
"lock_in_months": 0,
"notice_months": 0,
"agreement_months": 0,
"move_in_date": "2026-10-06",
"inclusions": [
"string"
],
"special_conditions": "string",
"tenant_profile": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"breaches": [
"rent"
],
"owner_approval": {
"at": "2026-10-06T05:30:00.000Z",
"via": "link"
},
"counter_of_id": "cmusrceel0000q7kaafxqi1om",
"created_via": "member",
"created_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"created_at": "2026-10-06T05:30:00.000Z",
"decided_at": "2026-10-06T05:30:00.000Z",
"decided_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"decision_note": "string",
"changes": [
{
"field": "string",
"label": "string",
"from": "string",
"to": "string"
}
]
},
"offers": [
{
"id": "cmusrceel0000q7kaafxqi1om",
"version": 0,
"side": "tenant",
"status": "open",
"monthly_rent": 850000000,
"maintenance_included": true,
"maintenance_amount": 850000000,
"deposit_months": "string",
"deposit_amount": 850000000,
"escalation_pct": "string",
"lock_in_months": 0,
"notice_months": 0,
"agreement_months": 0,
"move_in_date": "2026-10-06",
"inclusions": [
"string"
],
"special_conditions": "string",
"tenant_profile": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"breaches": [
"rent"
],
"owner_approval": {
"at": "2026-10-06T05:30:00.000Z",
"via": "link"
},
"counter_of_id": "cmusrceel0000q7kaafxqi1om",
"created_via": "member",
"created_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"created_at": "2026-10-06T05:30:00.000Z",
"decided_at": "2026-10-06T05:30:00.000Z",
"decided_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"decision_note": "string",
"changes": [
{
"field": "string",
"label": "string",
"from": "string",
"to": "string"
}
]
}
],
"listing": {
"id": "cmusrceel0000q7kaafxqi1om",
"ref_code": "string",
"title": "string",
"rent_amount": 850000000,
"deposit_amount": 850000000,
"deposit_months": "string",
"lock_in_months": 0,
"notice_months": 0,
"agreement_months": 0,
"maintenance_included": true,
"maintenance_amount": 850000000,
"rent_floor": 850000000,
"rent_floor_source": "rent_floor",
"deposit_floor": 850000000,
"lock_in_max_months": 0
},
"comparison": [
{
"key": "rent",
"label": "string",
"asked": "string",
"offered": "string",
"floor": "string",
"short_of_floor": true,
"vs_asked": "string"
}
],
"approval": {
"mode": "owner",
"owner_needed": true,
"chain_needed": true,
"chain": {
"id": "cmusrceel0000q7kaafxqi1om",
"status": "string"
},
"link": {
"id": "cmusrceel0000q7kaafxqi1om",
"offer_id": "cmusrceel0000q7kaafxqi1om",
"status": "pending",
"channel": "string",
"blocked_reason": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"sent_at": "2026-10-06T05:30:00.000Z",
"opened_at": "2026-10-06T05:30:00.000Z",
"used_at": "2026-10-06T05:30:00.000Z",
"decision": "accept",
"decision_note": "string",
"created_at": "2026-10-06T05:30:00.000Z"
}
},
"owner_links": [
{
"id": "cmusrceel0000q7kaafxqi1om",
"offer_id": "cmusrceel0000q7kaafxqi1om",
"status": "pending",
"channel": "string",
"blocked_reason": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"sent_at": "2026-10-06T05:30:00.000Z",
"opened_at": "2026-10-06T05:30:00.000Z",
"used_at": "2026-10-06T05:30:00.000Z",
"decision": "accept",
"decision_note": "string",
"created_at": "2026-10-06T05:30:00.000Z"
}
],
"landlord": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"handoff": {
"agreement_id": "cmusrceel0000q7kaafxqi1om",
"start_date": "2026-10-06",
"end_date": "2026-10-06",
"renewal_reminders": [
"2026-10-06"
]
},
"defaults": {
"agreement_months": 0,
"notice_months": 0,
"offer_validity_hours": 0
},
"capabilities": {
"edit": true,
"record_owner_consent": true
}
},
"meta": {}
}Errors
401No valid session or API key (missing, expired or revoked).403The caller lacks the permission, API-key scope or support grant this operation needs.404Not found — records of another company are reported the same way.422Invalid input; `error.fields` maps field paths to messages.429Too many requests; retry after the Retry-After header.500Unexpected error; quote `error.request_id` to support.

