Restyx Documentation
Restyx is a free, open-source REST API client. It lets you test APIs, organize requests in collections, manage environments and variables — all from your browser.
Your first request
-
Enter the endpoint URL in the URL field (e.g.,
https://jsonplaceholder.typicode.com/users) - Select the HTTP method (GET, POST, etc.)
- Click Send or press Ctrl + Enter
- The response will appear in the right panel
Interface
The interface is divided into three main panels:
- Left sidebar: Collections, folders, and history
- Center panel: Request editor (URL, headers, body, auth)
- Right panel: Server response (JSON, headers, HTML)
Collections
Collections allow you to save and organize your requests so you can reuse them.
Save a request
- Configure your request (URL, method, headers, etc.)
- Click the save button or press Ctrl + S
- Enter a descriptive name
- Optionally, select a folder
Create folders
Use folders to group related requests (by project, module, etc.):
- Click the button in the sidebar
- Enter the folder name
- Drag and drop requests into the folder
Environments
Environments let you define variables that are automatically replaced in your requests.
Use environments to easily switch between development, staging, and production without modifying your requests.
Create an environment
- Click the environment selector in the top bar
- Click Manage environments
- Click New environment
- Add your variables (key/value)
Use variables
Use the {{nombre_variable}} syntax in any field:
- URL:
{{base_url}}/users - Headers:
Authorization: Bearer {{token}} - Body:
{"api_key": "{{api_key}}"}
Tabs
Work with multiple requests at the same time using tabs:
- Alt + T - New tab
- Alt + W - Close tab
- Alt + ← / → - Navigate between tabs
History
All sent requests are automatically saved in history:
- Access it from the “History” tab in the sidebar
- Filter by HTTP method or status code
- Search by URL
- Click any entry to load it
Code generation
Export any request to different languages:
- cURL - For terminal/bash
- JavaScript - Using the fetch API
- Python - Using requests
- PHP - Using cURL
Click the button to open the generator.
Authentication: Basic Auth
For APIs that use HTTP Basic Authentication:
- Go to the Auth tab
- Select Basic Auth
- Enter username and password
Authentication: Bearer Token
For APIs that use JWT tokens or other access tokens:
- Go to the Auth tab
- Select Bearer Token
- Enter your token
Authentication: OAuth 2.0
Restyx supports the most common OAuth 2.0 flows:
Authorization Code
For web applications that require user login:
- Configure Client ID and Client Secret
- Enter the Authorization URL and Token URL
- Copy the Callback URL and configure it in your OAuth provider
- Click “Get Token”
- Complete login in the pop-up window
Client Credentials
For server-to-server communication:
- Select “Client Credentials” as the Grant Type
- Enter Client ID and Client Secret
- Enter the Token URL
- Click “Get Token”
Password Grant
For your own (legacy) applications:
- Select “Password Credentials” as the Grant Type
- Enter Client ID and Token URL
- Enter the user’s Username and Password
- Click “Get Token”
Environment variables
Environment variables are defined manually and persist between sessions:
| Example | Usage |
|---|---|
base_url |
{{base_url}}/api/users |
api_key |
X-API-Key: {{api_key}} |
token |
Authorization: Bearer {{token}} |
Dynamic variables
Dynamic variables generate values automatically on each request. They start with $:
Timestamps
| Variable | Description | Example |
|---|---|---|
{{$timestamp}} |
Unix timestamp in milliseconds | 1702345678123 |
{{$isoTimestamp}} |
ISO 8601 date/time | 2024-12-11T15:30:00.000Z |
{{$date}} |
Current date (YYYY-MM-DD) | 2024-12-11 |
{{$time}} |
Current time (HH:MM:SS) | 15:30:45 |
Random values
| Variable | Description | Example |
|---|---|---|
{{$uuid}} |
Random UUID v4 | 550e8400-e29b-41d4-a716-446655440000 |
{{$randomInt}} |
Random integer (0-999999) | 847291 |
{{$randomBoolean}} |
Random true or false | true |
{{$randomString}} |
Alphabetic string (16 chars) | aBcDeFgHiJkLmNoP |
Personal data (fake)
| Variable | Description | Example |
|---|---|---|
{{$randomEmail}} |
Random email | [email protected] |
{{$randomUsername}} |
Random username | user_a1b2c3d4 |
{{$randomFullName}} |
Random full name | John Smith |
{{$randomPhone}} |
Random phone number | +11234567890 |
Internet
| Variable | Description | Example |
|---|---|---|
{{$randomIP}} |
IPv4 address | 192.168.1.100 |
{{$randomUrl}} |
Random URL | https://example.com/path |
{{$randomColor}} |
Hex color | #a1b2c3 |
Business
| Variable | Description | Example |
|---|---|---|
{{$randomCompanyName}} |
Company name | Tech Solutions |
{{$randomJobTitle}} |
Job title | Senior Developer |
{{$randomPrice}} |
Random price | 123.45 |
Tools
Restyx includes advanced tools to improve your workflow.
Request Notes
Document each request with custom notes. Notes are saved with the request and are ideal for:
- Describing the endpoint purpose
- Documenting expected parameters
- Adding usage examples
- Notes about required authentication
How to use notes
- Open a request or create a new one
- Go to the Notes tab
- Write your documentation
- Notes are saved automatically as you type
Notes are saved automatically 1 second after you stop typing.
Response Diff
Compare responses from the same request to detect changes. This feature is useful for:
- Detecting API changes between versions
- Verifying an endpoint returns expected data
- Debugging inconsistent responses
- Manual regression testing
How to use Diff
- Execute a request
- In the JSON tab, click "Save as baseline"
- Execute the request again
- Go to the Diff tab to see the differences
Interpreting the Diff
| Color | Meaning |
|---|---|
| + Green | Added lines (new content) |
| - Red | Removed lines |
| No color | Unchanged lines |
Generate Documentation
Automatically generate documentation for all your collections in Markdown or HTML format.
How to generate documentation
- Click the button in the top bar
- Configure the title and description
- Select what to include (headers, params, body, auth, notes)
- Choose the format: Markdown or HTML
- Preview and download
Available formats
| Format | Extension | Ideal for |
|---|---|---|
| Markdown | .md |
GitHub, GitLab, technical documentation |
| HTML | .html |
Direct sharing, standalone pages |
Backup & Reminders
Restyx includes a reminder system so you don't lose your collections.
Backup indicator
Next to the export button, you'll see a visual indicator:
| Indicator | Meaning |
|---|---|
| Yellow | More than 7 days without backup |
| Red | More than 14 days (urgent) |
| No indicator | Recent backup or no changes |
Data is saved in the browser's localStorage. If you clear browser data, you'll lose your collections. Export regularly as backup.
Keyboard Shortcuts
General
| Shortcut | Action |
|---|---|
| ? | Show keyboard shortcuts |
| Ctrl + K | Search collections |
| Ctrl + B | Show/hide sidebar |
| Esc | Close menus / clear search |
Requests
| Shortcut | Action |
|---|---|
| Ctrl + Enter | Send request |
| Ctrl + S | Save request |
| Ctrl + U | Focus URL field |
Tabs
| Shortcut | Action |
|---|---|
| Alt + T | New tab |
| Alt + W | Close current tab |
| Alt + → | Next tab |
| Alt + ← | Previous tab |
Import / Export
Export
Export all your collections and environments to a JSON file:
- Click the button in the top bar
- A file named
restyx-export.jsonwill be downloaded
Import
Import collections and environments from a JSON file:
- Click the button in the top bar
- Select the JSON file
- Collections will be merged with existing ones
Data is stored in the browser’s local storage. If you clear browser data, you'll lose your collections. Use export to create backups.