TiefWise User Guide
Complete documentation for the TiefWise desktop API client.
Getting Started
TiefWise is a desktop API client for testing and managing REST API requests. The interface consists of:
- Left Sidebar: Collections, Environments, History, Favorites
- Center Panel: Request Builder (URL, params, headers, body, auth)
- Right Panel: Response Viewer
1. Collections
Collections help you organize related API requests together.
Creating a Collection
- In the sidebar, click the + button next to "Collections"
- Enter a Name (required) and Description (optional)
- Click Create Collection
Collection Quick Actions
Each collection row shows these buttons (hover to see):
- Play button (blue) - Run Collection immediately
- Star button - Add/Remove from Favorites
- Add file button - Add a new Request directly
- 3 dots menu (...) - Click for more options
Collection Menu (3 dots)
Click the ... button on a collection to see:
- Run Collection - Execute all requests in sequence
- Rename - Change collection name
- Collection Info - View details and description
- Export - Export as TiefWise JSON
- Share - Share collection
- Add Folder - Create new folder inside collection
- Add Request - Add new request to collection
- Delete - Remove collection permanently
Creating Folders in Collections
- Click the ... menu on a collection
- Select Add Folder
- A new folder named "New Folder" is created (auto-renamed if duplicate)
- Click the ... on the folder to rename it
Saving a Request to a Collection
- Build your request in the center panel
- Click the Save button in the URL bar
- Select a collection (and optionally a folder)
- Enter a name for the request
- Click Save
Running a Collection
Quick Method: Click the blue play button on the collection row
Menu Method: Click ... then select Run Collection
Configure the runner:
- Iterations: Number of times to run all requests
- Delay: Milliseconds between requests
- Click Run
- View results for each request with pass/fail status
Request/Folder Actions (3 dots menu)
Click ... on any request or folder:
- Edit/Rename - Change name
- Info - View details
- Duplicate - Create a copy
- Move/Copy - Move or copy to another collection/folder
- Export as cURL - Generate cURL command (requests only)
- Add to Favorites - Star the request
- Delete - Remove item
2. Making Requests
URL Bar
- Select HTTP method from dropdown:
GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS - Enter the full URL (e.g.,
https://api.example.com/users) - Click Send button or press Enter
Query Parameters (Params Tab)
- Click the Params tab below the URL bar
- Add key-value pairs using the input fields
- Enable/disable individual params with the checkbox
- Parameters are automatically appended to the URL
Headers (Headers Tab)
- Click the Headers tab
- Add custom headers as key-value pairs
- Enable/disable individual headers with checkbox
- Common headers like
Content-Typeare auto-added based on body type
Request Body (Body Tab)
Select body type from the dropdown:
- none - No body (typical for GET requests)
- raw - JSON, XML, or plain text with syntax highlighting
- form-data - Multipart form data with file upload support
- x-www-form-urlencoded - URL encoded form data
- binary - Binary file upload
- GraphQL - GraphQL queries with variables support
Authentication (Auth Tab)
- Click the Auth tab
- Select authentication type:
None - No authentication
Basic Auth - Two modes available:
- Credentials mode: Enter username and password
- Pre-encoded mode: Enter base64-encoded token directly
Bearer Token - Enter JWT or access token
API Key - Configure key name, value, and location (Header or Query Parameter)
Request Settings Tab
Configure per-request settings:
- Timeout - Request timeout in milliseconds (0 = no timeout)
- Follow Redirects - Automatically follow HTTP redirects
- Max Redirects - Maximum number of redirects to follow
- Auto-encode URL - Automatically encode URL characters
- Validate SSL - Verify SSL certificates
Import cURL
- Click the Import button (arrow icon) in the request panel
- Paste a cURL command
- Click Import
- Request is populated with URL, method, headers, and body from cURL
3. Environment Variables
Environments let you switch between different configurations (development, staging, production).
Creating an Environment
- Click Environments in the sidebar
- Click the + button to add new environment
- Enter environment name (e.g., "Development", "Production")
- Click Save
Adding Variables to an Environment
- Select an environment from the list
- Click Add Variable button
- Enter Key (e.g., baseUrl) and Value (e.g., https://dev.api.com)
- Click Save
Using Variables in Requests
Use double curly braces syntax anywhere: {{variableName}}
URL: {{baseUrl}}/users/{{userId}}
Header value: Bearer {{accessToken}}
Request body: {"api_key": "{{apiKey}}"}
Query param value: {{searchTerm}}
Activating an Environment
- Click the checkmark icon next to an environment to activate it
- Only one environment can be active at a time
- The active environment is highlighted
- All
{{variables}}in requests are replaced with values from the active environment
Unresolved Variables Warning
If you use a variable that doesn't exist in the active environment, you'll see an error message listing the unresolved variables. The request won't be sent until you define the missing variables.
Importing Environment Variables
- Click the upload icon on an environment
- Upload a
.envfile - Choose to merge with existing or overwrite all variables
- Variables are added to the environment
Exporting Environment Variables
- Click the download icon on an environment
- Download as
.envfile format
Environment Actions (3 dots menu)
- Edit - Rename environment
- Duplicate - Create a copy
- Delete - Remove environment
4. Request History
Every request you send is automatically saved to history.
Viewing History
- Click History in the sidebar
- See all past requests with:
- HTTP method badge (colored by method type)
- Status code (green for 2xx, red for 4xx/5xx)
- URL
- Timestamp (relative time like "2 minutes ago")
- Response time in milliseconds
Tabs in History
- All - All history entries
- Favorites - Starred entries only
Filtering History
- Method filter - Filter by GET, POST, PUT, etc.
- Status filter - Filter by 2xx, 4xx, 5xx
- Date range - Filter by date picker
- Tags - Filter by custom tags
- Search - Search by URL
Sorting History
- Click the sort icon to toggle ascending/descending order
- Default: newest first
History Entry Actions
Hover over an entry to see action buttons:
- Replay - Load request back into the editor
- Favorite - Star/unstar the entry
- Add Note - Add notes to the entry
- Compare - Compare with another response
- Delete - Remove from history
Viewing Entry Details
Click on a history entry to see full details:
- Complete request (URL, headers, body)
- Complete response (status, headers, body)
- Timing information
Comparing Responses
- Click Compare icon on a history entry
- Select another entry to compare against
- View side-by-side differences in status codes, response bodies, and headers
Bulk Actions
- Click Select to enter selection mode
- Check multiple entries
- Use Delete Selected to remove multiple entries
Clear History
- Click the trash icon in the History header
- Confirm to delete all history entries
- This action cannot be undone
5. Import & Export
Importing Collections
Supported Formats:
- Postman Collection v2.1
- OpenAPI 3.x (Swagger)
- cURL commands
- TiefWise native JSON
How to Import:
- Click Import button in the toolbar
- Choose import method: File Upload or URL
- Format is auto-detected
- If collection name already exists, choose Replace or Create Copy
- Collection appears in sidebar
Importing Environments
- In Import modal, click Environments tab
- Upload Postman environment JSON or
.envfile - Environment is added to your list
- Activate it to use its variables
Exporting Collections
- Click the ... menu on a collection
- Select Export
- Choose format: TiefWise JSON (recommended for backup)
- Save the file
Exporting Individual Requests as cURL
- Click the ... menu on a request
- Select Export as cURL
- Copy the generated cURL command
- Use in terminal or share with others
Workspace Import/Export
For complete backup including all collections and environments:
Export Workspace:
- Open Settings (gear icon)
- Go to Workspace tab
- Click Export Workspace
- Save the JSON file
Import Workspace:
- Open Settings (gear icon)
- Go to Workspace tab
- Click Import Workspace
- Select previously exported file
6. Response Viewer
After sending a request, the response appears in the right panel.
Response Header Bar
Shows at a glance:
- Status - Code and text (e.g., "200 OK", "404 Not Found")
- Time - Request duration in milliseconds
- Size - Response body size
Response Tabs
Body Tab
- View response content with syntax highlighting
- JSON responses show in tree view (expandable/collapsible)
- Toggle between Pretty (formatted) and Raw views
- Copy button to copy entire response
- Download button to save response as file
- Search within response content
Headers Tab
- View all response headers
- Key-value pairs in table format
- Copy individual header values
Cookies Tab
- View cookies set by the response
- See cookie name, value, domain, path, expiration
Response Status Colors
- Green (2xx) - Success
- Yellow (3xx) - Redirect
- Red (4xx) - Client error
- Red (5xx) - Server error
7. Favorites
Mark frequently used requests for quick access.
Adding to Favorites
From Collections:
- Click the star icon on a collection row
- Or click ... menu on a request and select Add to Favorites
From History:
- Click the star icon on a history entry
Accessing Favorites
- Click Favorites in the sidebar
- See all starred collections and requests
- Click any favorite to load it into the editor
Removing from Favorites
- Click the star icon again (now filled/yellow)
- Item is removed from favorites
8. Global Search
Search across all collections, requests, and environments.
Opening Search
- Press Cmd+K (Mac) or Ctrl+K (Windows)
- Or click the search icon in the toolbar
Using Search
- Type your search term
- Results show matching collection names, request names/URLs, folder names, environment names
- Click a result to navigate directly to it
- Press Escape to close search
9. Settings
Access settings via the gear icon in the toolbar.
Appearance Tab
- Theme: Light or Dark mode
- Sidebar Width: Adjust sidebar size (drag or use slider)
- Editor Font Size: Small, Medium, or Large
Request Defaults Tab
Set global defaults for all new requests:
- Timeout - Default timeout in milliseconds (0 = no timeout)
- Follow Redirects - Enable/disable by default
- Max Redirects - Default maximum redirects
- Auto-encode URL - Auto-encode special characters
- Validate SSL - Verify SSL certificates by default
- Reset to Defaults - Restore original settings
Cache Tab
Configure response body caching:
- Enable/Disable caching - Toggle response caching
- Max cached responses - Number of responses to keep
- Max cache size - Maximum cache size in MB
- Clear Cache - Remove all cached responses
- Shows current cache usage with progress bar
Workspace Tab
- Link to Folder - Sync workspace to a local folder for backup
- Unlink - Disconnect from sync folder
- Linked Path - Shows current sync location
- Statistics: Total collections, requests, and environments
10. Keyboard Shortcuts
| Action | Mac | Windows/Linux |
|---|---|---|
| Send Request | Cmd+Enter | Ctrl+Enter |
| Global Search | Cmd+K | Ctrl+K |
| Save Request | Cmd+S | Ctrl+S |
| New Request | Cmd+N | Ctrl+N |
Tips & Best Practices
- Use environments to avoid hardcoding URLs and tokens - switch between dev/staging/prod easily
- Organize with folders - Group related requests (e.g., "Authentication", "Users", "Orders")
- Name requests clearly - Use descriptive names like "Get User by ID" not just "GET request"
- Star frequently used requests - Quick access from Favorites panel
- Add notes to history - Document why certain requests were made
- Export collections regularly - Backup your work as TiefWise JSON
- Use cURL import - Quickly convert cURL commands from documentation
- Compare responses - Use history comparison to debug API changes