Пользователям предоставляется возможность просматривать отзывы/рецензии на книги, авторов и на серии, пользовательские полки.
См. также [w_add_item_review] Оставить отзыв на объект.

ID функции

r_browse_item_reviews

Кто может вызывать

Любой пользователь.
Авторизованное приложение.

Принимаемые параметры

item_id* – идентификатор объекта, отзывы на который необходимо получить;
entity* – тип объекта, на который оставлены отзывы. Возможные значения:

  • person – отзывы на автора;
  • sequence – отзывы на серию;
  • art – отзывы на книгу;
  • review – ответы на отзывы (для раскрытия ветки ответов на первый отзыв);
  • recense − отзыв на рецензию;
  • folder − отзыв на пользовательскую полку.

sort – порядок, в котором следует сортировать отзывы. Возможные значения:

  • best – в начале отдавать лучшие отзывы;
  • new – в начале отдавать самые новые отзывы;
  • default – на усмотрение сервера (по-умолчанию).

limit – ограничение на количество возвращаемых отзывов. Работает аналогично инструкции limit в MySQL и в запросе представлен одним числом либо массивом из двух чисел N,M. Если limit указан, возвращается M отзывов, начиная с отзыва N (у первого – номер 0). Если limit не задан – значение по умолчанию «0, 20».

Возвращаемые значения

cnt*общее количество отзывов на объект;
reviews* – массив, содержащий информацию о всех найденных отзывах на объект. Для каждого найденного отзыва возвращаются следующие атрибуты:

  • id* – идентификатор отзыва;
  • added* – дата написания отзыва в ISO 8601 формате даты-времени с UTC, например, «2013-10-07T16:00:00+03:00»;
  • nickname* – имя (или псевдоним) автора отзыва;
  • author – метка, информирующая о том, что автор отзыва является автором данной книги, серии или собственно персоной, на которую оставлен отзыв;
  • user_id* – идентификатор пользователя, являющегося автором отзыва;
  • review_html* – текст отзыва (фрагмент XHTML);
  • pro* – число «положительных» оценок на эту рецензию;
  • contra* – число «отрицательных» оценок на эту рецензию;
  • is_good – признак, что отзыв был оценен текущим пользователем. Принимает значение «1» в случае положительной оценки и «0» в случае отрицательной. В случае, если отзыв не был оценен, атрибут отсутствует в ответе;
  • user_mark – оценка арта автором рецензии;
  • review_src – исходный текст отзыва (BBCode). Присутствует у отзывов, написанных текущим пользователем;
  • replies_n – количество ответов на отзыв первого уровня;
  • top_replies – массив из трех наиболее популярных ответов на отзыв первого уровня:
    • id* – идентификатор отзыва;
    • added* – дата написания отзыва в ISO 8601 формате даты-времени с UTC, например «2013-10-07T16:00:00+03:00»;
    • nickname* – имя (или псевдоним) автора отзыва;
    • author – метка, информирующая о том, что автор отзыва является автором данного арта, серии или собственно персоной, на которую оставлен отзыв.
    • user_id* – идентификатор пользователя, являющегося автором отзыва;
    • review_html* – текст отзыва (фрагмент XHTML);
    • pro* – число «положительных» оценок на эту рецензию;
    • contra* – число «отрицательных» оценок на эту рецензию;
    • is_good – признак, что отзыв был оценен текущим пользователем. Принимает значение «1» в случае положительной оценки и «0» в случае отрицательной. В случае, если отзыв не был оценен, атрибут отсутствует в ответе;
    • review_src – исходный текст отзыва (BBCode). Присутствует у отзывов, написанных текущим пользователем.

Если у объекта отсутствуют отзывы, то массив reviews будет пустым.

Возможные ошибки

Кроме указанных ошибок могут быть также стандартные ошибки.

error_code

error_message

Описание

101071

invalid limit param (must be [N,M] and 0 <= N < 100 000 000 and 0 < M < 1000)

Передано некорректное значение параметра limit. Значение должно быть передано в виде массива из двух чисел [N,M] в следующих  диапазонах:

  • 0<=N<100 000 000;
  • 0<M<1000.

Пример запроса на сервер

{
   "requests" : [
      {
         "func" : "r_browse_item_reviews",
         "param" : {
            "item_id" : "178477",
            "entity" : "art"
         },
         "id" : "browse_item_reviews"
      }
   ],
   "time" : "2019-07-11T11:51:17+03:00",
   "sid" : "5dbyd25f080d8b7jc71j6eey05b32450",
   "sha" : "2a422d1bb8318cc32b1e0c199dfc4450c70b9138966fca6d34df4192b9f45fd1",
   "app" : 1
}

Пример ответа сервера

{
   "browse_item_reviews" : {
      "cnt" : "5",
      "reviews" : [
         {
            "added" : "2019-07-08T11:40:52+03:00",
            "contra" : 0,
            "id" : "32",
            "nickname" : "Test",
            "pro" : 0,
            "replies_n" : 4,
            "review_html" : "<p>Отзыв на art 1.</p><p>Тест</p>",
            "top_replies" : [
               {
                  "added" : "2019-07-08T11:52:21+03:00",
                  "contra" : 0,
                  "id" : 44,
                  "nickname" : "Test",
                  "pro" : 1,
                  "review_html" : "<p>Отзыв на отзыв на art 1.</p><p>Тест</p>",
                  "user_id" : 331364693
               },
               {
                  "added" : "2019-07-08T11:53:10+03:00",
                  "contra" : 0,
                  "id" : 47,
                  "nickname" : "Test",
                  "pro" : 0,
                  "review_html" : "<p>Отзыв на отзыв на art 4.</p><p>Тест</p>",
                  "user_id" : 331364693
               },
               {
                  "added" : "2019-07-08T11:52:54+03:00",
                  "contra" : 0,
                  "id" : 46,
                  "nickname" : "Test",
                  "pro" : 0,
                  "review_html" : "<p>Отзыв на отзыв на art 3.</p><p>Тест</p>",
                  "user_id" : 331364693
               }
            ],
            "user_id" : 331364693,
            "user_mark" : 4
         },
         {
            "added" : "2019-07-08T11:41:14+03:00",
            "contra" : 0,
            "id" : "33",
            "nickname" : "Test",
            "pro" : 0,
            "replies_n" : 0,
            "review_html" : "<p>Отзыв на art 2.</p><p>Тест</p>",
            "user_id" : 331364693,
            "user_mark" : 4
         },
         {
            "added" : "2019-07-08T11:41:26+03:00",
            "contra" : 0,
            "id" : "34",
            "nickname" : "Test",
            "pro" : 0,
            "replies_n" : 0,
            "review_html" : "<p>Отзыв на art 3.</p><p>Тест</p>",
            "user_id" : 331364693,
            "user_mark" : 4
         },
         {
            "added" : "2019-07-08T11:41:42+03:00",
            "contra" : 0,
            "id" : "35",
            "nickname" : "Test",
            "pro" : 0,
            "replies_n" : 4,
            "review_html" : "<p>Отзыв на art 4.</p><p>Тест</p>",
            "top_replies" : [
               {
                  "added" : "2019-07-08T11:54:23+03:00",
                  "contra" : 0,
                  "id" : 51,
                  "nickname" : "Test",
                  "pro" : 0,
                  "review_html" : "<p>Отзыв на отзыв на art 8.</p><p>Тест</p>",
                  "user_id" : 331364693
               },
               {
                  "added" : "2019-07-08T11:54:14+03:00",
                  "contra" : 0,
                  "id" : 50,
                  "nickname" : "Test",
                  "pro" : 0,
                  "review_html" : "<p>Отзыв на отзыв на art 7.</p><p>Тест</p>",
                  "user_id" : 331364693
               },
               {
                  "added" : "2019-07-08T11:54:05+03:00",
                  "contra" : 0,
                  "id" : 49,
                  "nickname" : "Test",
                  "pro" : 0,
                  "review_html" : "<p>Отзыв на отзыв на art 6.</p><p>Тест</p>",
                  "user_id" : 331364693
               }
            ],
            "user_id" : 331364693,
            "user_mark" : 4
         },
         {
            "added" : "2019-07-11T11:41:26+03:00",
            "author" : 1,
            "contra" : 0,
            "id" : "72",
            "nickname" : "libdan",
            "pro" : 0,
            "replies_n" : 1,
            "review_html" : "<p>типо <b>привет</b> и все такое</p>",
            "review_src" : "типо [b]привет[/b] и все такое",
            "top_replies" : [
               {
                  "added" : "2019-07-11T11:43:46+03:00",
                  "author" : 1,
                  "contra" : 0,
                  "id" : 73,
                  "nickname" : "libdan",
                  "pro" : 0,
                  "review_html" : "<p>типо <b>привет</b> и все такое</p>",
                  "review_src" : "типо [b]привет[/b] и все такое",
                  "user_id" : 504629448
               }
            ],
            "user_id" : 504629448,
            "user_mark" : 2
         }
      ],
      "success" : true
   },
   "success" : true,
   "time" : "2019-07-11T11:51:22+03:00"
}