htmx: Request headers

Join the AI Workshop to learn more about AI and how it can be applied to web development. Next cohort February 1st, 2026

The AI-first Web Development BOOTCAMP cohort starts February 24th, 2026. 10 weeks of intensive training and hands-on projects.


It’s important to note that in any request sent using htmx we have access, server-side, to a number of HTTP headers we can use.

We’ve got quite a few useful ones:

  • XH-Current-URL the URL the request comes from
  • XH-Target the id of the target element
  • XH-Trigger the id of the triggered element
  • XH-Trigger-Name the name of the triggered element

Remember, target = the element we’ll print the response to. trigger = the element that triggered the request.

We’ve talked about HX-Prompt already, if you have a prompt in the tag, you get what the user wrote in the prompt in this header.

See the full list of request headers: https://htmx.org/docs/#request-headers

Lessons in this unit:

0: Introduction
1: Why htmx
2: The core idea of htmx
3: Installing htmx
4: Doing a GET request
5: Swap
6: POST request
7: Targets
8: Loading indicator
9: Confirming actions, and prompts
10: Triggers
11: ▶︎ Request headers
12: Response headers
13: Events
14: Redirect after request
15: Send files using htmx.ajax()
16: Perform something on page load
17: Conditionally hide HTML elements based on HTMX request status
18: htmx + Alpine template tag
19: htmx, include hidden input fields outside of a form
20: htmx trigger request via JS event