{"_id":"2gis-reviews","name":"2gis-reviews","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"2gis-reviews","version":"1.0.0","description":"Отзывы 2ГИС в терминале: читать и отвечать без браузера. Unofficial CLI for reading and replying to 2GIS business reviews.","keywords":["2gis","2гис","reviews","отзывы","cli","reputation"],"license":"MIT","bin":{"2gis-reviews":"2gis.js"},"scripts":{"start":"node 2gis.js","export":"node export.js","test":"node --test"},"dependencies":{},"engines":{"node":">=18"},"_id":"2gis-reviews@1.0.0","gitHead":"b1d08544c0e54f6f000a4440c29020fb8f9da713","_nodeVersion":"22.10.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-Q1JDh80FpEesFr9LkKyjJMIL2XkQWlV35i9qxC1fBKL6ejqgUMIPCG6yZ+l+j7yGr4b1vcM4X8E+5NyIND2ldQ==","shasum":"2e9b3754db925d864a966d44bbad00cd2bf5a01d","tarball":"https://registry.npmjs.org/2gis-reviews/-/2gis-reviews-1.0.0.tgz","fileCount":10,"unpackedSize":72360,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCIaNjVIdmZMBoY/091Shz07mGGlCFCOYvTRXfkqrPd3QIgN5TkQCj5D2nsLQSPB1sRLpljZLCn1llt9t3c/mg4A40="}]},"_npmUser":{"name":"danielmarkoff","email":"dannylamao@gmail.com"},"directories":{},"maintainers":[{"name":"danielmarkoff","email":"dannylamao@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/2gis-reviews_1.0.0_1785587235064_0.008091742426072024"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-01T12:27:14.835Z","1.0.0":"2026-08-01T12:27:15.194Z","modified":"2026-08-01T12:27:15.393Z"},"maintainers":[{"name":"danielmarkoff","email":"dannylamao@gmail.com"}],"description":"Отзывы 2ГИС в терминале: читать и отвечать без браузера. Unofficial CLI for reading and replying to 2GIS business reviews.","keywords":["2gis","2гис","reviews","отзывы","cli","reputation"],"license":"MIT","readme":"# Отзывы 2ГИС в терминале\n\nЛокальный инструмент: читать отзывы организации и отвечать на них из терминала,\nбез браузера. Ничего не устанавливает, работает на голом Node (18+).\n\n## Установка\n\nЧерез npm — не нужно ничего скачивать и распаковывать:\n\n```bash\nnpm install -g 2gis-reviews\n```\n\nДальше команда `2gis-reviews` доступна из любой папки. Зависимостей у пакета нет,\nнужен только Node.js 18 или новее.\n\nЛибо просто взять папку с исходниками и запускать `node 2gis.js` — работает так же.\n\n## Быстрый старт\n\n```bash\n2gis-reviews\n```\n\nПри первом запуске спросит логин и пароль от `account.2gis.com` (кабинет компании).\nПароль вводится скрыто, никуда не сохраняется и в вывод не попадает: он один раз\nменяется на временный токен, и дальше работает только токен. Токен лежит в\n`~/.2gis-reviews/session.json` при установке через npm (или `data/session.json`\nрядом с исходниками), права 0600, живёт около двух суток и продлевается сам.\n\nДальше — список отзывов. Вводишь номер, читаешь отзыв целиком вместе с перепиской,\nжмёшь `о` и пишешь ответ. Ответ уходит **только** после того, как ты увидел его\nцеликом и подтвердил.\n\n## Флаги\n\n| Флаг | Что делает |\n|---|---|\n| `--org=<id>` | сразу к нужной организации (иначе спросит, если их несколько) |\n| `--filter=unanswered\\|negative\\|answered\\|all` | что показывать (по умолчанию — без ответа) |\n| `--limit=<n>` | сколько отзывов тянуть за раз (по умолчанию 50) |\n| `--dry-run` | полный проход, но вместо отправки печатает, что ушло бы |\n| `--status` | чья сессия и до когда живёт |\n| `--logout` | стереть сессию |\n| `--help` | эта справка |\n\nЛогин и пароль можно передать через окружение (`GIS2_LOGIN`, `GIS2_PASSWORD`) —\nудобно, если не хочется вводить руками. В файл они не попадают всё равно.\n\n**Начни с `--dry-run`**: пройдёшь весь путь до отправки и увидишь, что именно\nушло бы, ничего не опубликовав. Он предупреждает об этом при запуске и в момент\nотправки — если ответ «не уходит», первым делом проверь, нет ли этого флага.\n\n**Пароль спрашивают только один раз.** Дальше живёт токен (около двух суток), и\nпри следующем запуске формы входа не будет — вместо неё строка «Вошли как …».\nВойти под другой учёткой: `--logout`, потом обычный запуск.\n\n## Что нужно знать до первого ответа\n\n- Ответ **публичный** и подписан именем компании — его увидят все.\n- Свой ответ можно **удалить, но нельзя отредактировать** (так решает 2ГИС).\n  Опечатка лечится только «удалить и написать заново».\n- Под отзывом бывает целая переписка: клиент отвечает на ответ компании.\n  «Отвечен» считается по официальному ответу, а не по числу комментариев.\n\n## Заодно: выгрузка всех отзывов\n\nЧитать отзывы можно вообще без входа — 2ГИС отдаёт их публично:\n\n```bash\nnode export.js --org=<id> --out=data/reviews.json --answers=10\n```\n\nПечатает сводку (рейтинг, разбивку по звёздам, сколько без ответа) и складывает\nвсе отзывы в JSON. Организацию тут надо указать явно — `--org=<id>` или `GIS2_ORG_ID`:\nвхода нет, значит и спросить не у кого. Id — число из адреса кабинета\n`account.2gis.com/orgs/<id>/reviews`; не знаешь свой — запусти `node 2gis.js`,\nон покажет организации твоей учётки.\n\n## Как поделиться с другим человеком\n\nПапка самодостаточная: внутри нет ни одной ссылки наружу и ни одного нашего\nидентификатора. Отдавать целиком — заархивировать и отправить.\n\n```\n2gis.js          интерактивный инструмент (главный вход)\nexport.js        выгрузка всех отзывов в JSON, без входа\nlogin.js         только вход/статус/выход, если нужен отдельно\ncheck.js         диагностика: что кабинет разрешает делать, ничего не публикуя\nlib/             три файла: доступ в кабинет, публичное чтение, чистая логика\ntest/            тесты, можно прогнать у себя: node --test\nREADME.md        этот файл\n```\n\n**Что нужно получателю:** только Node.js версии 18 или новее\n(`node -v` — проверить; если нет, поставить с nodejs.org) и своя учётка\n`account.2gis.com` с доступом к организации. Больше ничего: ни `npm install`,\nни сборки, ни ключей, ни настроек. Распаковал → `node 2gis.js` → вошёл под собой\n→ видит свои организации.\n\n⚠️ **Не отдавай папку ПОСЛЕ того, как сам в неё вошёл.** После входа в `data/`\nлежит твой токен доступа к кабинету — это как отдать ключи. Перед отправкой:\n`node 2gis.js --logout` (или просто удали папку `data/`).\n\n## Если что-то не так\n\n- `401` — сессия истекла: `--logout` и войти заново.\n- `400` — 2ГИС сама называет недостающее поле, текст ошибки печатается целиком.\n- Незнакомый ответ — инструмент печатает его скелет: имена полей и типы значений,\n  без содержимого. Токен и пароль в вывод не попадают никогда.\n\nПуть неофициальный: публичного API у 2ГИС нет, адреса взяты из кода самого кабинета.\nОни могут измениться в любой момент — это не повод для паники, но и не повод строить\nна этом что-то, что нельзя быстро починить.\n","readmeFilename":"README.md","_rev":"1-acb957b04d3e42e349eed81683fec96e"}