Export / Import
Move collections between machines, share with a Postman-using teammate, or bulk-import from curl.
Export
The Export ▾ dropdown (topbar) offers:
- Volley — downloads
volley-export.jsoncontaining all collections, folders, requests, and environments. This is the format Import expects for the full round-trip. History is excluded — it's local clutter, not something worth sharing. - Postman v2.1 — downloads one
.postman_collection.jsonfile per collection (one download per collection). Useful for sharing with teammates on Postman. - cURL commands — downloads
volley-export.sh, a bash-compatible text file with every request rendered as a namedcurlcommand.{{variable}}placeholders are preserved as-is. Requests are grouped by collection, with folder membership noted in the name (# Folder / Request). This file can be pasted straight back into Import ▾ → Import cURL. - Documentation (HTML) — downloads the same page served at
/docsas a standalone file. See API Documentation.
A single collection can also be exported on its own via its right-click menu, as either a Volley JSON file (Export JSON) or a Postman v2.1.0 collection (Export as Postman).
Import
The Import ▾ dropdown offers three ways to get data in:
- From file — pick a local
.jsonfile - From URL — enter a URL; Volley's server fetches it (so CORS and auth headers on the remote server are not an obstacle) and feeds the result into the same import pipeline
- Import cURL — paste curl commands directly; see below
From file and From URL accept:
- A Volley export (
{ "cols": [...], "envs": [...] }) — opens an import preview modal before anything is applied (see below) - A Postman v2.x collection — added as a new collection; any collection-level Postman variables are imported as an environment named after the collection
- A Postman environment export — merged into a matching (or newly created) environment by name; new vars are added and changed vars are updated
Volley import preview
When importing a Volley export, a preview modal lists every request that would change, grouped by collection, before anything is written:
- New — the request doesn't exist locally; will be added
- Changed — the request exists but differs from the imported version; will replace the local copy
- Identical — not shown; silently skipped
Every item is checked by default. Uncheck any you want to leave as-is, then click Import to apply. Cancel closes the modal with no changes made. The Overwrite all checkbox at the top checks every item at once. Environment variables in the export are always synced automatically regardless of which requests you check.
Import cURL
Import ▾ → Import cURL creates one or more requests from curl commands you paste in.
- Pick a collection from the dropdown — existing collections are listed; choose New collection… to create one.
- Paste curl commands into the textarea.
- Click Preview to see what will be imported.
- Click Import to add the requests.
Format — the importer accepts a raw paste with no special formatting required:
- Multiple curl commands can be separated by blank lines, placed back-to-back with no separator, or separated only by a
# comment— all three work. - A
# Namecomment immediately before a curl becomes that request's name. This is bash-compatible: pasting a real bash script with# commentlines before each curl works naturally. - Shebangs (
#!/bin/bash), variable assignments,echocalls, and other non-curl lines are silently skipped. - When no
# commentis present, the request is named from the URL: the path for non-root URLs, or the hostname withoutwww.for root URLs. - Duplicate names within the target collection are auto-suffixed (
(2),(3), …).
Merging — if the chosen collection already exists, the imported requests are added to it. If not, a new collection is created at the top of the sidebar.
Shell variables ($TOKEN, ${BASE_URL}) appear as literals in the imported request — they're not resolved. Replace them with Volley {{variables}} or literal values after import.
The Edit button on the cURL tab of any imported request lets you edit the curl directly and save it back to the request fields — so importing a curl is just the starting point, not a one-time migration.