Listings
Listings Overview
Property types, statuses, and listing lifecycle
Listings are the main API resource. Through it you publish real estate on Rentix: apartments, houses, offices, parking spaces.
What You Can Do
| Action | Description |
|---|---|
| Create a listing | Add a new property |
| Update a listing | Change price, description, characteristics |
| Publish | Make a listing visible on the website |
| Hide | Temporarily remove from the website |
| Bulk operations | Process up to 100 listings per request |
Listing Types
Each listing has a transaction type and property type:
Transaction Type
| Value | Description |
|---|---|
rent | Rental (daily, monthly) |
sale | Sale |
Property Types
| Type | Subtypes | Examples |
|---|---|---|
residential | apartment, house, room, residential-land, other | Apartments, houses, rooms |
commercial | office, trade, warehouse, production, business, commercial-land, other | Offices, shops, warehouses |
parking | underground-parking, open-parking, garage, covered-parking, other | Garages, parking spots |
Listing Statuses
Status determines whether a listing is visible on the website and what you can do with it.
| Status | Description | Visibility | What to Do |
|---|---|---|---|
draft | Draft | Only you | Add photos, set active |
pending_active | Processing | Only you | Wait for completion |
active | Published | Everyone | Listing is on the website |
hidden | Hidden by you | Only you | Set active to restore |
expired | Expired | Only you | Set active to renew |
completed | Deal closed | Everyone | Can return to active or hidden |
publish_failed | Error | Only you | Fix and retry |
blocked | Blocked | Only you | Contact support |
Full validation of required fields is only performed for public statuses (
active, expired, completed). Drafts and hidden listings can be saved with incomplete data.Lifecycle
┌─────────────┐
│ draft │ ← Creation
└──────┬──────┘
│ announcementStatus: "active"
▼
┌─────────────┐
│pending_active│ ← Processing (photos, translation)
└──────┬──────┘
┌────────┴────────┐
▼ ▼
┌─────────────┐ ┌─────────────┐
│ active │ │publish_failed│
└──────┬──────┘ └─────────────┘
┌──────┬──────┼──────┐
▼ ▼ ▼ ▼
┌────────┐ ┌────────┐ ┌────────┐
│ hidden │ │completed│ │expired │ ← After 30 days
└────────┘ └────────┘ └────────┘
Typical Transitions
| From | To | How |
|---|---|---|
draft | pending_active | Set announcementStatus: "active" + minimum 3 photos |
pending_active | active | Automatically after processing |
active | hidden | Set announcementStatus: "hidden" |
hidden | active | Set announcementStatus: "active" |
active | expired | Automatically after 30 days |
expired | pending_active | Set announcementStatus: "active" |
active | completed | Set announcementStatus: "completed" |
completed | active | Set announcementStatus: "active" |
Lifespan
A listing stays active for 30 days from publication. After that:
- Status automatically changes to
expired - Listing disappears from the website
- Data is preserved — you can renew it
To renew a listing, set announcementStatus: "active" — the system will process it again and publish for another 30 days.
Limits
| Parameter | Value |
|---|---|
| Photos for publishing | 3–20 |
| Description length | 40–2000 characters |
| Bulk operations | Up to 100 listings per request |
API Endpoints
| Method | Path | Description |
|---|---|---|
PUT | /listings | Create or update |
POST | /listings/validate | Validate without saving |
POST | /listings/bulk | Bulk operations |
GET | /listings | List listings |
GET | /listings/:id | Get by ID |
GET | /listings/external/:externalId | Get by external ID |
POST | /listings/:id/link | Link external ID |
DELETE | /listings/:id/link | Unlink external ID |
Next Steps
- Create a listing — full example with all fields described
- Upload photos — media upload methods
- Bulk operations — sync multiple listings