4 Фото объекта
Загрузите фото интерьера и экстерьера вашего объекта для создания визуальной галереи.
Зачем добавлять фото?
Фотографии объекта необходимы для документирования состояния вашей арендной недвижимости. Они являются визуальными записями как для арендодателей, так и для арендаторов.
Преимущества
- Документирование состояния объекта до и после заселения/выселения
- Визуальная галерея для потенциальных арендаторов
- Безопасное облачное хранилище ваших фото
- Отдельные категории для фото интерьера и экстерьера
Как добавить фото
Вы можете загружать фото через веб-интерфейс или через API. Веб-интерфейс поддерживает загрузку файлов перетаскиванием.
В веб-интерфейсе: откройте страницу объекта, затем нажмите "Фото / Видео" в меню объекта, чтобы открыть медиа-галерею.
Смотрите полную документацию в Библиотеке: Фото и видео объектов.
Типы медиа
Каждое фото или видео принадлежит к одному из пяти типов медиа. Используйте соответствующий тип для правильной организации.
Требования к загрузке
Для разработчиков: REST API
Вы можете управлять медиа объекта через REST API. Фото загружаются как контент в кодировке base64.
POST Загрузить фото
▶Загрузите фото, отправив содержимое файла как строку в кодировке base64. Укажите тип документа для категоризации фото.
POST /api/v1/properties/{id}/documents
Заголовки:
Authorization: Bearer {token}
Content-Type: application/json
Обязательные поля:
Необязательные поля:
Тело запроса:
{
"document_type_id": 6,
"file_content": "base64-encoded-file-content...",
"file_name": "living-room.webp",
"mime_type": "image/webp",
"comment": "Living room photo"
}
Ответ (201 Created):
{
"message": "Document uploaded successfully",
"data": {
"id": 45,
"property_id": "019a1b2c-3d4e-7f5a-8b9c-0123456789ab",
"document_type": {
"id": 6,
"code": "PHOTO_INTERIOR",
"name_key": "document_type.photo_interior"
},
"file_url": "https://landlordkeeper.com/file/cG1mOjQ1OjA6...",
"original_name": "living-room.webp",
"file_size": 125000,
"file_size_formatted": "122.07 KB",
"mime_type": "image/webp",
"extension": "webp",
"is_image": true,
"is_video": false,
"is_pdf": false,
"comment": "Living room photo",
"created_at": "2026-02-20T12:00:00+00:00"
}
}
GET Список медиа объекта
▶Получить все документы объекта. Используйте фильтр type_id для показа только определённых типов медиа.
GET /api/v1/properties/{id}/documents
Параметры запроса:
Ответ (200 OK):
{
"data": [
{
"id": 45,
"property_id": "019a1b2c-3d4e-7f5a-8b9c-0123456789ab",
"document_type": {"id": 6, "code": "PHOTO_INTERIOR"},
"file_url": "https://landlordkeeper.com/file/cG1mOjQ1OjA6...",
"original_name": "living-room.webp",
"file_size": 125000,
"is_image": true,
"comment": "Living room photo",
"created_at": "2026-02-20T12:00:00+00:00"
}
],
"total": 3,
"stats": {
"total_count": 3,
"total_size": 375000,
"total_size_formatted": "366.21 KB"
}
}
GET Получить типы документов
▶Получить список всех доступных типов документов с их ID, разрешёнными расширениями и ограничениями размера.
GET /api/v1/document-types
Ответ (200 OK):
{
"data": [
{"id": 6, "code": "PHOTO_INTERIOR", "allowed_extensions": "jpg,jpeg,png,webp", "max_size_mb": 10},
{"id": 7, "code": "PHOTO_EXTERIOR", "allowed_extensions": "jpg,jpeg,png,webp", "max_size_mb": 10},
{"id": 8, "code": "VIDEO_INTERIOR", "allowed_extensions": "mp4,webm", "max_size_mb": 50},
{"id": 9, "code": "VIDEO_EXTERIOR", "allowed_extensions": "mp4,webm", "max_size_mb": 50},
{"id": 10, "code": "PHOTO_OTHER", "allowed_extensions": "jpg,jpeg,png,webp", "max_size_mb": 10}
]
}
Примеры cURL:
curl https://landlordkeeper.com/api/v1/document-types
DELETE Удалить фото
▶Удалить документ по его ID. Файл и запись в базе данных окончательно удаляются.
DELETE /api/v1/documents/{documentId}
Ответ (200 OK):
{"message": "Document deleted successfully"}
Примеры cURL
▶1. Загрузить фото
curl -X POST https://landlordkeeper.com/api/v1/properties/019a1b2c-3d4e-7f5a-8b9c-0123456789ab/documents \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN_HERE" \
-d '{
"document_type_id": 6,
"file_content": "'$(base64 -w 0 photo.webp)'",
"file_name": "living-room.webp",
"mime_type": "image/webp",
"comment": "Living room"
}'
2. Список медиа объекта
curl https://landlordkeeper.com/api/v1/properties/019a1b2c-3d4e-7f5a-8b9c-0123456789ab/documents?type_id=6 \
-H "Authorization: Bearer YOUR_TOKEN_HERE"
3. Удалить фото
curl -X DELETE https://landlordkeeper.com/api/v1/documents/45 \
-H "Authorization: Bearer YOUR_TOKEN_HERE"