Ваши жалобы
Жалобы, поданные через Rewio на отзывы ваших объектов. status выбирает группу:
pending – на рассмотрении (в том числе ещё отправляемые), accepted – отзыв удалён,
rejected – отзыв остался, failed – не поданы; можно несколько сразу:
status=rejected&status=failed. object_id и source_ids сужают выдачу.
Жалобы, поданные в кабинете площадки, здесь не показываются – они видны в форме и жалобах на отзыв у своего отзыва.
Параметры
statusсписок строкпо умолчанию ["pending"]pending – на рассмотрении, в том числе ещё отправляемые (status: null); accepted – отзыв удалён; rejected – отзыв остался; failed – не поданы. Можно несколько: status=rejected&status=failed.
source_idsсписок чиселпо умолчанию пустоФильтр по площадкам: id из GET /v3/sources.
limitчисло1–100по умолчанию 20Размер страницы (1–100).
offsetчислоне меньше 0по умолчанию 0Смещение.
object_idчислоИдентификатор объекта. Взаимоисключим с folder_id – в запросе может быть только один из двух.
Ответ
dataсписок объектовЖалобы, новые сверху.
data[].complaintобъектЖалоба – как в подаче.
data[].complaint.idчислоИдентификатор жалобы.
data[].complaint.review_idчислоОтзыв, на который она подана.
data[].complaint.statusстрокаpending / accepted / rejected / failedможет быть nullnull – отправляется на площадку; pending – на рассмотрении; accepted – отзыв удалён; rejected – отзыв остался (2ГИС отметил жалобу рассмотренной или молчит 14 дней, у Яндекса прошло 7 дней, у Google – 5); failed – не подана, причина в error.
data[].complaint.originстрокаrewio / platformrewio – подана через Rewio; platform – подана в кабинете площадки, мы нашли её там.
data[].complaint.categoryобъектможет быть nullКатегория, если площадка их спрашивает.
data[].complaint.category.codeстрокаКод, который передаётся в category.
data[].complaint.category.labelстрокаКак категорию называет площадка.
data[].complaint.category.descriptionстрокаможет быть nullЧто она значит.
data[].complaint.textстрокаТекст жалобы. Пустой там, где площадка текста не принимает (Google).
data[].complaint.authorстрокаможет быть nullКто подал, как его называет площадка (origin = platform).
data[].complaint.submitted_atдата и времяКогда подана (UTC, ISO 8601).
data[].complaint.resolved_atдата и времяможет быть nullКогда стал известен итог – accepted или rejected (UTC, ISO 8601).
data[].complaint.updated_atдата и времяКогда запись менялась в последний раз (UTC, ISO 8601).
data[].complaint.errorобъектможет быть nullПочему не подана (status = failed).
data[].complaint.error.codeстрокаМашинный код: complaint_already_filed – на отзыв уже подана жалоба (Яндекс принимает одну); complaint_requires_upgrade, complaint_trial_quota_exhausted – тариф; complaint_access_missing, complaint_access_revoked, complaint_card_not_yours – карточка не подключена; complaint_not_replyable – отзыв удалён или пришёл с другой площадки; complaint_target_unresolved – отзыв не нашли на площадке; complaint_not_supported – на площадке жалобы не подаются; complaint_source_paused – подача на площадке приостановлена; complaint_rejected_by_platform – площадка не приняла жалобу; complaint_session_expired, complaint_rate_limited, complaint_transport_failed – не удалось за сутки.
data[].complaint.error.messageстрокаПояснение для человека.
data[].reviewобъектОтзыв – как в получении отзывов. У принятой жалобы он уже удалён с площадки.
data[].review.idчислоИдентификатор отзыва в сервисе.
data[].review.link_idчислоИдентификатор ссылки (страницы объекта на площадке).
data[].review.source_idчислоИдентификатор площадки, с которой собран отзыв.
data[].review.source_slugстрокаможет быть nullСлаг площадки, с которой собран отзыв (2gis, google, yandex_maps). Отвечать можно, если он совпадает с provider отзыва.
data[].review.authorстрокаможет быть nullИмя автора; null, если анонимен.
data[].review.textстрокаможет быть nullТекст отзыва; null, если отзыв без текста.
data[].review.review_dateдата и времяможет быть nullДата и время публикации отзыва. Приводится к UTC везде, где это возможно; в противном случае – время, как его показывает площадка. ISO 8601 без таймзоны.
data[].review.rating_originalстрокаможет быть nullИсходная оценка в шкале площадки.
data[].review.ratingчисломожет быть nullОценка, приведённая к единой шкале 1–5. null, если оценки нет.
data[].review.review_urlстрокаможет быть nullПрямая ссылка на отзыв на площадке. null, если недоступна.
data[].review.reply_textстрокаможет быть nullТекст официального ответа организации. null, если ответа нет.
data[].review.reply_dateдата и времяможет быть nullДата и время ответа организации (ISO 8601). Приводится к UTC, где это возможно.
data[].review.providerстрокаможет быть nullПлощадка-источник самого отзыва внутри source (слаг в нижнем регистре). Многие площадки показывают в ленте отзывы других: 2ГИС – booking/tbank/flamp/…, Google – tripadvisor. У нативного отзыва совпадает со слагом площадки (2gis, google), и только на такой отзыв можно опубликовать ответ через эту площадку – на остальные вернётся 409 reply_not_replyable.
data[].review.is_replyableда/нетможет быть nullМожно ли ответить на отзыв через PUT /v3/reviews/{review_id}/reply. Приходит только на площадках, где Rewio публикует ответы (can_publish_reply в GET /v3/sources); на остальных ключа нет. true – ответы на ссылке подключены, и отзыв родной для площадки (provider пуст или равен source_slug). false – ответ вернёт ошибку: отзыв другой площадки (2ГИС показывает отзывы Netmonet, Booking, Т-Банка – 409 reply_not_replyable) или ответы на ссылке не подключены. Тариф флаг не учитывает.
data[].review.has_imagesда/нетПризнак наличия изображений в отзыве.
data[].review.imagesсписок объектовСписок изображений отзыва.
data[].review.images[].template_urlстрокаURL изображения на CDN площадки в исходном виде. У части площадок содержит шаблон размера ({size} или {width}/{height}) и потому не предназначен для прямой вставки – для показа берите preview или image.
data[].review.images[].previewстрокаможет быть nullГотовый URL уменьшенной версии (превью) для списков и сеток.
data[].review.images[].imageстрокаможет быть nullГотовый URL полноразмерной версии для просмотра.
data[].review.has_videosда/нетПризнак наличия видео в отзыве.
data[].review.videosсписок объектовСписок видеовложений отзыва.
data[].review.videos[].kindстрокаembed / file / hlsТип вложения: embed – встраиваемый плеер площадки (открывать в sandbox-iframe), file – прямая ссылка на видеофайл, hls – HLS-поток (.m3u8).
data[].review.videos[].video_urlстрокаможет быть nullURL видео или встраиваемого плеера в зависимости от kind.
data[].review.videos[].thumbnailстрокаможет быть nullURL кадра-заставки (превью) видео.
data[].review.videos[].widthчисломожет быть nullШирина видео в пикселях, если известна.
data[].review.videos[].heightчисломожет быть nullВысота видео в пикселях, если известна.
data[].review.videos[].duration_msчисломожет быть nullДлительность видео в миллисекундах, если известна.
data[].review.is_deletedда/нетОтзыв обнаружен удалённым на площадке (приходит только когда true).
data[].review.deleted_atдата и времяможет быть nullМомент обнаружения удаления (UTC, ISO 8601).
data[].review.is_hiddenда/нетОтзыв скрыт в рамках объекта (приходит только когда true).
data[].review.is_pinnedда/нетОтзыв закреплён в рамках объекта (приходит только когда true).
data[].review.pin_positionчисломожет быть nullПозиция закреплённого отзыва: меньше – выше.
data[].review.prosстрокаможет быть nullБлок «достоинства» (только при split_pros_cons=true).
data[].review.consстрокаможет быть nullБлок «недостатки» (только при split_pros_cons=true).
data[].review.our_replyобъектможет быть nullВаш ответ, отправленный через Rewio, и его состояние – то же, что в GET /v3/reviews/{review_id}/reply. null – ответа через Rewio нет или тариф без ответов. Ответ, поставленный не через Rewio, – в reply_text.
data[].review.our_reply.statusстрокаpending / published / failed / deletedможет быть nullЧто с вашим ответом на карточке: null – отправлен, площадке ещё не передан; pending – площадка приняла, на карточке ещё не видели (проверяем через 15 с, 30 с, 1 мин … 4 ч); published – ваш текст стоит на карточке; deleted – вашего ответа на карточке нет: вы его удалили или он пропал (причина – в error); failed – не опубликован (почему – в error).
data[].review.our_reply.textстрокаТекст, который должен стоять на площадке. Пусто – ответ снимается.
data[].review.our_reply.submitted_atдата и времяможет быть nullКогда вы отправили этот текст (UTC).
data[].review.our_reply.published_atдата и времяможет быть nullКогда мы увидели ваш текст на карточке (UTC).
data[].review.our_reply.updated_atдата и времяКогда ответ меняли в последний раз (UTC).
data[].review.our_reply.errorобъектможет быть nullПочему ответ не опубликован или пропал с карточки.
data[].review.is_skippedда/нетВы отметили отзыв «Пропустить» (PUT /v3/reviews/{review_id}/skip). На тарифе без ответов всегда false.
data[].review.complaintобъектможет быть nullПоследняя жалоба на отзыв. null – жалоб нет или тариф без жалоб.
data[].review.complaint.statusстрокаpending / accepted / rejected / failedможет быть nullnull – отправляется на площадку; pending – на рассмотрении; accepted – отзыв удалён; rejected – отзыв остался. Подробно – GET /v3/reviews/{review_id}/complaints.
data[].review.complaint.filed_atдата и времяможет быть nullКогда жалоба подана (UTC).
data[].review.complaint.is_oursда/нетtrue – подана через Rewio; false – найдена на площадке.
totalчислоОбщее число элементов, подходящих под фильтры (без учёта limit/offset).
limitчислоРазмер страницы, применённый к запросу.
offsetчислоСмещение от начала выборки, применённое к запросу.
has_nextда/нетЕсть ли ещё элементы за пределами текущей страницы.
curl -X GET "https://api.rewio.ru/v3/complaints"{ "data": [ { "complaint": { "id": 213, "review_id": 539486, "status": "pending", "origin": "rewio", "category": { "code": "no_client", "label": "Такого клиента у нас не было", "description": "2ГИС запросит у автора подтверждение визита или покупки. Без него отзыв перенесут в «Неподтверждённые», и он перестанет влиять на рейтинг." }, "text": "Гостя с таким именем в эти даты не было.", "author": null, "submitted_at": "2026-10-29T18:02:11", "resolved_at": null, "updated_at": "2026-10-29T18:02:11", "error": null }, "review": { "id": 539486, "object_id": 20, "link_id": 2001, "source_id": 3, "source_slug": "2gis", "author": "Олег", "rating": 2, "text": "Долго ждал, мастер грубил.", "review_date": "2026-09-28T10:00:00", "reply_text": null, "review_url": "https://2gis.ru/reviews/539486" } } ], "total": 1, "limit": 20, "offset": 0, "has_next": false}