HTTP Requests
Send REST API requests with any HTTP method, headers, and body types
HTTP requests are the foundation of REST APIs. Yaak supports all HTTP methods and body types, with features like syntax highlighting, formatting, and response inspection.
Creating an HTTP Request
Create a new request—HTTP is the default type. Enter your URL and select a method from the dropdown:
- GET - Retrieve data
- POST - Create resources
- PUT - Replace resources
- PATCH - Partially update resources
- DELETE - Remove resources
- HEAD - Get headers only
- OPTIONS - Check allowed methods
Click Send to execute. The response appears in the panel below with status code, timing, and size.
Request URL
Enter the full URL including protocol:
https://api.example.com/users/123
Use template variables for dynamic values:
${[env.API_URL]}/users/${[env.USER_ID]}
Query Parameters
Add query parameters in the Params tab. Each parameter has a name and value field. Toggle parameters on/off without deleting them.
Parameters appear in the URL automatically:
https://api.example.com/users?page=1&limit=10
You can also type parameters directly in the URL—Yaak parses them into the Params tab.
Headers
Add custom headers in the Headers tab. Common headers include:
| Header | Purpose |
|---|---|
Content-Type |
Body format (set automatically for most body types) |
Accept |
Expected response format |
Authorization |
Authentication (use Auth tab instead) |
X-Custom-Header |
API-specific headers |
Headers support template variables:
X-Request-ID: ${[uuid()]}
Request Body
Select a body type in the Body tab:
JSON
Write JSON with syntax highlighting and formatting. Press Cmd/Ctrl+Shift+F to format.
{
"name": "John Doe",
"email": "john@example.com"
}
Form URL-Encoded
Send key-value pairs as application/x-www-form-urlencoded:
| Name | Value |
|---|---|
| username | john |
| password | ${[env.PASSWORD]} |
Multipart Form
Upload files alongside form fields. Each part can be text or a file:
- Text fields - Regular form values
- File fields - Select files from your system
XML
Write XML with syntax highlighting:
<?xml version="1.0"?>
<user>
<name>John Doe</name>
<email>john@example.com</email>
</user>
Binary
Send raw binary data from a file. Useful for uploading images, documents, or other binary content.
Plain Text
Send raw text content with a custom Content-Type header.
Authentication
Configure authentication in the Auth tab. Yaak supports:
- Basic Auth
- Bearer Token
- API Key
- OAuth 2.0 / OAuth 1.0
- JWT
- AWS Signature
- NTLM
See the Authentication docs for details.
Response Panel
After sending, the response panel shows:
- Status code - HTTP status with description
- Time - Request duration
- Size - Response body size
Response Body
View the response with syntax highlighting. For JSON responses:
- Pretty - Formatted and syntax highlighted
- Raw - Original response text
Use the filter box to search within large responses.
Response Headers
View all response headers in the Headers tab. Click a header to copy its value.
Cookies
View cookies set by the response in the Cookies tab. Cookies are stored automatically for subsequent requests.
Tips
- Duplicate requests to create variations without starting from scratch
- Use folders to organize related requests
- Set up inheritance for common authentication across requests
- Save responses to compare between runs
- Use template variables to avoid hardcoding values
Was this page helpful?