Supported Format
Xolo reads Postman Collection v2 JSON (exported from Postman as “Collection v2.1”). The root JSON object must contain:info.name— used as the collection name in Xolo (falls back to"Imported Postman Collection"if absent)item— the top-level array of requests and folders
ImportManager.detectFormat() method identifies a Postman file automatically by checking for info._postman_id or a top-level item key, so you can also leave the format picker on Auto-detect.
Import Steps
1
Export from Postman
In Postman, open the collection, click the ⋯ menu, choose Export, and select Collection v2.1 (recommended). Save the
.json file to your device.2
Open the Import dialog in Xolo
Tap the sidebar menu → Import → Collection. The
ImportCollectionDialog opens with source tabs for URL and File, and a format dropdown defaulting to Auto-detect.3
Select the JSON file
Switch the source toggle to File and tap Select file. The system file picker opens filtered to
.json files. Choose the Postman export you saved in step 1.4
Choose a destination
Leave the destination blank to import into the root workspace, or pass
targetCollectionId to nest the collection inside an existing parent. The dialog forwards this value directly to PostmanService.importFromJson().5
Confirm the import
Tap Import Now. Xolo parses the file, creates the folder hierarchy and requests, and shows a success snackbar. The new collection appears immediately in the sidebar.
What Gets Imported
PostmanService._parseItems() walks the item array recursively. Each element is treated as either a folder (has a nested item array) or a request (has a request object):
If a collection or request with the same name already exists under the same parent, Xolo upserts it — updating the existing record rather than creating a duplicate.
Assertion Mapping
PostmanAssertionMapper.fromPostmanEvents() scans every event block where listen == "test" and converts the script lines it recognises into AssertionRuleEntity values stored in the request’s assertionsJson column.
The mapper handles both the
pm.expect(json.<field>).to.exist and pm.expect(<obj>.<field>).to.exist regex variants. Mapped rules are encoded as JSON and saved to the request automatically during import.
PostmanService.importFromJson() Reference
When
targetCollectionId is provided, the info.name from the Postman file is ignored for the root-level collection — all items are imported as children of the specified collection.
cURL Import
For one-off requests, Xolo also supports importing a singlecurl command without creating a new collection.
1
Open the cURL dialog
Tap Import → cURL from the top toolbar (or within any open request tab). The
ImportCurlDialog opens with a monospace text area.2
Paste the curl command
Paste a complete
curl command. The command must start with curl; otherwise the parser returns null and displays a validation error.3
Confirm
Tap Import.
CurlParser.parse() extracts the method (-X/--request), URL, headers (-H/--header), and body (-d/--data/--data-raw), then applies them directly to the currently active request tab.-d) but no explicit -X flag, CurlParser automatically infers POST as the method.
Postman environment variables (e.g.
{{base_url}}, {{token}}) are not imported — Postman environment JSON files are a separate export artifact and are not part of the collection file. After import, recreate your variables in Xolo’s Environments screen and reference them with the same {{variable}} syntax.