Конвертируйте JSON в URL параметры
Коротко об инструменте
На входе объект с парами ключ-значение, на выходе — строка вида page=2&sort=price, которую остаётся дописать к адресу после знака вопроса. Разбор и сборка идут скриптом прямо на странице, текст из поля JSON Input никуда не уходит. Так удобно повторить запрос из документации API вручную, собрать ссылку с UTM-метками для рассылки или перенести фильтры из тела POST в обычный GET-адрес, который можно отправить коллеге в тикете. Смотрите также: разобрать параметры URL обратно в JSON, проверить JSON на ошибки перед сборкой ссылки, закодировать значение в percent-encoding.
Каждое значение прогоняется через encodeURIComponent, поэтому кириллица превращается в последовательность вида %D0%9C%D0%BE, пробел — в %20, а знаки & и = внутри значения экранируются и не ломают структуру строки. Это правильное поведение: сервер вернёт исходный текст после декодирования. Если нужна читаемая ссылка для письма, вставьте её в адресную строку браузера — он покажет буквы обратно.
Плоские объекты переносятся один в один. Для вложенных структур единого стандарта в query string нет: одни бэкенды ждут filter[color]=red, другие — filter.color=red, третьи — сериализованный JSON внутри одного параметра. Инструмент не угадывает соглашение вашего API, поэтому вложенность надёжнее разложить в плоские ключи вручную и сверить формат с документацией сервиса.
Нет, поле «Строка запроса» отдаёт только сами параметры. Знак «?» ставится один раз между путём и параметрами: /api/v1/orders?page=3&per_page=50. Если в адресе параметры уже есть, добавляйте свою строку через «&», а не через второй вопросительный знак — иначе всё после него сервер посчитает частью значения последнего параметра.
Разбор JSON и сборку строки выполняет небольшой скрипт внутри самой страницы, сетевых запросов с вашим текстом он не делает. Уже открытая вкладка продолжает работать даже после обрыва связи. При этом query string по своей природе попадает в логи, историю браузера и заголовок Referer, поэтому токены и пароли в параметрах передавать не стоит независимо от того, чем вы их собрали.
Почти всегда дело в невалидном JSON: пропущена закрывающая скобка, ключ записан без кавычек, в конце списка осталась лишняя запятая или фрагмент скопирован из кода JavaScript с одинарными кавычками. Прогоните текст через JSON Formatter + Validator, исправьте место ошибки и вернитесь. Пустой объект тоже даст пустую строку — это ожидаемый результат, а не сбой.
Для обратной задачи есть отдельная страница «Query string в JSON»: она разбирает хвост адреса в объект и раскрывает процентную запись. Полный круг не всегда даёт побайтово исходный JSON — в адресе всё хранится текстом, поэтому число 30 вернётся строкой "30", а true — строкой "true". Типы после обратного разбора приводите сами.
До: {"page": 3, "per_page": 50, "sort": "-created_at"} После: page=3&per_page=50&sort=-created_at
До: {"utm_source": "email", "utm_medium": "newsletter", "utm_campaign": "osen 2026"} После: utm_source=email&utm_medium=newsletter&utm_campaign=osen%202026
Оценка и фидбек помогают понять, что улучшать дальше.