IT Market
Инструменты/Код/Документы/JSON в query string онлайн — конвертер URL
JSON → QUERY

Конвертируйте JSON в URL параметры

Коротко об инструменте

JSON в query string онлайн — конвертер URL

На входе объект с парами ключ-значение, на выходе — строка вида page=2&sort=price, которую остаётся дописать к адресу после знака вопроса. Разбор и сборка идут скриптом прямо на странице, текст из поля JSON Input никуда не уходит. Так удобно повторить запрос из документации API вручную, собрать ссылку с UTM-метками для рассылки или перенести фильтры из тела POST в обычный GET-адрес, который можно отправить коллеге в тикете. Смотрите также: разобрать параметры URL обратно в JSON, проверить JSON на ошибки перед сборкой ссылки, закодировать значение в percent-encoding.

Как пользоваться

  1. Вставьте данные в поле «JSON на входе» — верхний уровень должен быть объектом в фигурных скобках, массив на входе смысла не имеет.
  2. Проверьте кавычки: разбор принимает только двойные, одинарные кавычки и лишняя запятая в конце списка обрывают его.
  3. Нажмите «Конвертировать» — собранная строка появится в нижнем поле «Строка запроса» без ведущего знака вопроса.
  4. Заберите результат кнопкой «Копировать» и подставьте его в адрес после знака «?» — параметры уже склеены амперсандами.
  5. Чтобы поменять один параметр, поправьте его в JSON и нажмите «Конвертировать» ещё раз: поле вывода перезаписывается целиком.

Вопросы и ответы

Что происходит с русскими буквами и пробелами в значениях?

Каждое значение прогоняется через encodeURIComponent, поэтому кириллица превращается в последовательность вида %D0%9C%D0%BE, пробел — в %20, а знаки & и = внутри значения экранируются и не ломают структуру строки. Это правильное поведение: сервер вернёт исходный текст после декодирования. Если нужна читаемая ссылка для письма, вставьте её в адресную строку браузера — он покажет буквы обратно.

Можно ли передать вложенный объект или массив?

Плоские объекты переносятся один в один. Для вложенных структур единого стандарта в query string нет: одни бэкенды ждут filter[color]=red, другие — filter.color=red, третьи — сериализованный JSON внутри одного параметра. Инструмент не угадывает соглашение вашего API, поэтому вложенность надёжнее разложить в плоские ключи вручную и сверить формат с документацией сервиса.

Нужно ли ставить знак вопроса в начале результата?

Нет, поле «Строка запроса» отдаёт только сами параметры. Знак «?» ставится один раз между путём и параметрами: /api/v1/orders?page=3&per_page=50. Если в адресе параметры уже есть, добавляйте свою строку через «&», а не через второй вопросительный знак — иначе всё после него сервер посчитает частью значения последнего параметра.

Уходит ли содержимое поля ввода на сервер it-market.pro?

Разбор JSON и сборку строки выполняет небольшой скрипт внутри самой страницы, сетевых запросов с вашим текстом он не делает. Уже открытая вкладка продолжает работать даже после обрыва связи. При этом query string по своей природе попадает в логи, историю браузера и заголовок Referer, поэтому токены и пароли в параметрах передавать не стоит независимо от того, чем вы их собрали.

Почему конвертер ничего не выводит?

Почти всегда дело в невалидном JSON: пропущена закрывающая скобка, ключ записан без кавычек, в конце списка осталась лишняя запятая или фрагмент скопирован из кода JavaScript с одинарными кавычками. Прогоните текст через JSON Formatter + Validator, исправьте место ошибки и вернитесь. Пустой объект тоже даст пустую строку — это ожидаемый результат, а не сбой.

Как получить обратно объект из готовой ссылки?

Для обратной задачи есть отдельная страница «Query string в JSON»: она разбирает хвост адреса в объект и раскрывает процентную запись. Полный круг не всегда даёт побайтово исходный JSON — в адресе всё хранится текстом, поэтому число 30 вернётся строкой "30", а true — строкой "true". Типы после обратного разбора приводите сами.

Примеры

Пагинация и сортировка в запросе к API
До: {"page": 3, "per_page": 50, "sort": "-created_at"}
После: page=3&per_page=50&sort=-created_at
Ссылка с UTM-метками для рассылки
До: {"utm_source": "email", "utm_medium": "newsletter", "utm_campaign": "osen 2026"}
После: utm_source=email&utm_medium=newsletter&utm_campaign=osen%202026