Collections and Requests - amitsri/rostyman-releases GitHub Wiki
Collections & Requests
Collections
Collections organize your API requests into groups. Each collection can have:
- Folders and sub-folders
- Collection-level variables
- Collection-level auth (inherited by requests)
- Pre-request and post-response scripts
- An active environment
Creating a Collection
- Click the
+button in the sidebar - Or press
Ctrl+Shift+N
Collection Features
- Rename: Right-click > Rename, or kebab menu
- Duplicate: Right-click > Duplicate
- Delete: Moves to Trash (restorable)
- Favourite: Right-click > Favourite (starred collections sorted to top)
- Import: Supports Postman, Insomnia, Hoppscotch, Thunder Client, Bruno, OpenAPI, cURL, HAR formats
Folders
Folders organize requests within a collection. Click a folder name in the sidebar to open its settings tab.
Folder Settings Tab
- Overview — folder name, request count, subfolder count, breadcrumb navigation
- Authorization — set auth type for the folder (Bearer Token, Basic Auth, API Key, OAuth 2.0, Digest, AWS, NTLM, Hawk, or Inherit from Parent)
- Scripts — pre-request and post-response scripts with Snippets browser and Beautify
Auth Inheritance
Requests and folders can inherit auth from their parent:
- Request set to "Inherit from Parent" → looks at its folder
- Folder set to "Inherit from Parent" → looks at its parent folder
- Chain continues upward until a non-inherit auth is found, or falls back to the collection
Example: Collection (Bearer Token) → Folder A (Inherit) → Folder B (API Key) → Request (Inherit) → resolves to API Key from Folder B
When a request inherits auth, the Auth tab shows a preview of the resolved auth and a link to edit it at the source.
Script Execution Chain
Scripts execute in this order:
- Collection pre-request script
- Root folder pre-request script
- Sub-folder pre-request scripts (top → bottom)
- Request pre-request script
- ← Request is sent →
- Request post-response script
- Sub-folder post-response scripts (bottom → top)
- Root folder post-response script
- Collection post-response script
Variables set in earlier scripts are available in later ones.
Requests
HTTP Methods
GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS
Request Builder Tabs
- Params — URL query parameters
- Auth — Authentication (Bearer, Basic, API Key, OAuth 2.0, Digest, AWS)
- Headers — Custom headers with auto-complete
- Body — Raw (JSON, XML, HTML, JS, Text), Form Data, URL Encoded, GraphQL, Binary
- Scripts — Pre-request and Post-response scripts
- Cookies — Request cookies
- History — Per-request history
- Code — Code snippet generation (30+ languages)
- Examples — Saved response examples
- Settings — Per-request timeout, SSL, redirect settings
Response Viewer
- Body — Pretty (Monaco editor with folding), Raw, Preview, Table (for JSON arrays — sortable columns, type-colored cells)
- Headers — Response + request headers with info tooltips
- Tests — Test results from post-response scripts
- Code — Response code snippets
- Cookies — Response cookies
Response Status Bar
- Status code — hover for explanation (e.g., "401 — Authentication required")
- Response time — hover for timing waterfall (DNS, TCP, TLS, TTFB, Download breakdown with colored bars)
- Size — hover for breakdown (response headers + body, request headers + body)
History (per-request)
- View past responses for the current request
- Click an entry to see its response (does not change your current request)
- Run button opens a new tab with the full historical request + response
- Compare mode — select two entries to diff their response bodies
- Filter by status code (2xx/3xx/4xx/5xx/error)
- Sparklines — visual trends for status codes and response times
- Schema change detection — alerts when JSON structure changes between runs
- Pin important entries to the top
- Export as CSV
- Delete individual entries
Request Types
- HTTP — standard API requests
- GraphQL — query editor with schema introspection
- gRPC — proto file import, unary + streaming, auth, scripts, settings
- WebSocket — real-time bidirectional communication
- Socket.IO — event-driven real-time communication (details)
- MQTT — lightweight publish-subscribe messaging (details)
Sidebar Features
- Status dots — colored dot next to each request showing last response status (hover for details like "Last response: 200 OK")
- Bulk operations — right-click collection → "Select Multiple" → checkboxes appear, bulk delete or copy cURL
- Templates — right-click request → "Save as Template", then access from + menu → Saved Templates