Зачем нужны заголовки?
Заголовки передают метаданные запроса и ответа. Accept сообщает, какие форматы ответа подходят клиенту. Content-Type сообщает формат отправляемого тела. Это разные задачи: запрос JSON не превращает текстовое тело в JSON.
Выбор формата тела
Для JSON используйте application/json и проверяйте синтаксис до отправки. Для простой формы с парами ключ-значение подходит application/x-www-form-urlencoded. Текстовое тело применяйте, когда API ожидает обычный текст. Ориентируйтесь на документацию API.
Ограничения браузера
Веб-страница не может задавать все заголовки. Полями Host, Content-Length и Cookie управляет браузер. Пользовательские заголовки для другого домена могут вызвать предварительный CORS-запрос. GET и HEAD в этом инструменте отправляются без тела. Ограниченные заголовки из cURL удалите или выполните команду в терминале.