Getting Started
Getting Started
Installation
- Download the appropriate installer for your platform from the Download section
- Install Resonance:
- Linux: Make the AppImage executable (
chmod +x Resonance*.AppImage) and run it, or extract the ZIP file - macOS: Open the DMG file and drag Resonance to your Applications folder
- Windows: Run the installer or use the portable version
- Linux: Make the AppImage executable (
- Launch Resonance from your applications menu
Making Your First Request
- Create a collection:
- Right-click in the empty collections area and select New Collection
- Enter a collection name and click Create
- Add a request to your collection:
- Right-click the collection and select New Request
- Or right-click in the empty collections area and select New Request
- Configure your request:
- Select the HTTP method (GET, POST, PUT, DELETE, etc.)
- Enter the API URL (e.g.,
https://api.example.com/users) - Add headers, query parameters, or body data as needed in the tabs below
- Click Send Request to execute the request
- View the response in the tabbed interface (Body, Headers, Cookies, Performance)
Importing Collections
Resonance supports importing from OpenAPI and Postman:
Import OpenAPI/Swagger Spec
- Click the Import button in the collections sidebar header
- Select OpenAPI Collection from the menu
- Choose your OpenAPI 3.0 YAML or JSON file
- Resonance will automatically:
- Parse all endpoints from the specification
- Generate example request bodies from schemas
- Organize endpoints by path structure
- Extract authentication requirements
Import Postman Collection
- Click the Import button in the collections sidebar header
- Select Postman Collection from the menu
- Choose your Postman Collection v2.0 or v2.1 JSON file
- All request examples and authentication settings will be preserved
Import Postman Environment
- Click the Import button in the collections sidebar header
- Select Postman Environment from the menu
- Choose your Postman Environment JSON file
- All variables will be imported into a new environment
Using Environments and Variables
Environments help you manage different API configurations (development, staging, production):
Creating and Managing Environments
- Click the environment selector dropdown in the collections sidebar
- Click Manage Environments... at the bottom of the dropdown
- In the Environment Manager dialog:
- Click Add Environment to create a new environment
- Give it a name (e.g., "Development", "Staging", "Production")
- Add variables with key-value pairs:
baseUrl→https://api-dev.example.comapiKey→your-api-key
- Save the environment
Switching Environments
- Click the environment selector dropdown in the collections sidebar
- Select the environment you want to use from the list
- The active environment is marked with a checkmark
Using Variables in Requests
Once you have an active environment, use variables with double curly braces:
- In URLs:
{{baseUrl}}/users - In headers:
X-API-Key: {{apiKey}} - In request bodies:
{"token": "{{authToken}}"} - Variables are substituted automatically when sending requests
Setting Up Authentication
Resonance supports multiple authentication methods:
- Open the Authorization tab in the request configuration panel
- Select your authentication type:
- Bearer Token: Enter your JWT or access token
- Basic Auth: Provide username and password
- API Key: Configure header/query parameter name and value
- OAuth 2.0: Configure authorization flow parameters
- Digest Auth: Provide username and password for digest authentication
- Use environment variables for sensitive credentials:
{{token}} - Authentication settings are saved per endpoint
Using Workspace Tabs
Work on multiple requests simultaneously:
- Click the + button in the workspace tab bar to open a new tab
- Each tab maintains independent state (URL, method, headers, body, etc.)
- Switch between tabs using keyboard shortcuts (
Ctrl/Cmd+1throughCtrl/Cmd+9) - Close tabs with the x button or middle-click
- Tab state persists across application restarts
Working with Scripts
Automate workflows with pre-request and test scripts:
- Open the Scripts tab in the request panel
- Choose between Pre-request and Test sub-tabs
- Write JavaScript code to:
- Pre-request: Modify headers, calculate signatures, set timestamps
- Test: Validate responses, extract data, save to environment
- Example pre-request script:
// Set current timestamp environment.set('timestamp', Date.now()); // Add custom header request.headers['X-Request-Time'] = new Date().toISOString(); - Example test script:
// Validate status code expect(response.status).toBe(200); // Extract token from response const data = JSON.parse(response.body); environment.set('authToken', data.token); // Log result console.log('Token saved:', data.token); - View script output in the Scripts tab of the response panel
Using the Mock Server
Test API clients without a backend:
- Import an OpenAPI specification to enable mock responses
- Click the Mock Server icon in the toolbar
- Configure the mock server:
- Set the port (default: 3000)
- Enable collections you want to mock
- Add custom response delays per endpoint
- Override default responses with custom JSON
- Click Start Server
- Point your API client to
http://localhost:3000 - View incoming requests in the request log
Keyboard Shortcuts
Speed up your workflow with keyboard shortcuts:
- Press
Ctrl/Cmd+/to view all available shortcuts - Common shortcuts:
Ctrl/Cmd+Enter- Send requestCtrl/Cmd+S- Save current endpointCtrl/Cmd+1-9- Switch workspace tabsCtrl/Cmd+T- New workspace tabCtrl/Cmd+W- Close current tabCtrl/Cmd+,- Open settings
Exporting Code
Generate code in your preferred language:
- Configure your request (URL, method, headers, body)
- Right-click on the endpoint or use the export button
- Select Export Code
- Choose from 9 languages:
- cURL
- Python (requests)
- JavaScript (Fetch)
- Node.js (fetch)
- Go (net/http)
- PHP (cURL)
- Ruby (net/http)
- Java (HttpClient)
- Copy the generated code to your clipboard
Next Steps
- Explore the Features section for advanced capabilities
- Read the Using Scripts guide for detailed script documentation
- Check out Screenshots to see the interface in action
- Join the community on GitHub
- Report issues or request features in the issue tracker