Not at all. Post a form submission, send back either the same form with errors displayed, or simply return out-of-band updates to error message divs. You can redirect from the response as well using htmx, so if the form submission is successful, you can redirect to a success page ... or simply update a div with a success message.
If you get a request asking for json, you just return a json with the same thing. Not much changes with API design if you were designing the API well in the first place.