Importing & exporting

Tiger can import collections from Postman, Insomnia, Bruno, OpenAPI 3 / Swagger 2, WSDL / SOAP, and pasted curl commands. It can also export a collection back to Postman v2.1 or OpenAPI 3.0, so you can share with teammates who use other tools.

Supported formats

Format Import Export Notes
Postman v2.0 / v2.1 .json Yes Yes (v2.1) {{variables}} carry over untouched
Insomnia v4 .json Yes No Folder hierarchy rebuilt from parent IDs
Bruno folder of .bru files Yes No Open the folder; each .bru file becomes a request
OpenAPI 3 / Swagger 2 .json / .yaml Yes Yes (OpenAPI 3.0) Operations grouped by first tag or path segment
WSDL / SOAP .wsdl / .xml Yes No New in 0.4.0 - each binding operation becomes a POST
curl command (paste) Yes Yes Export is single-request code generation, not a file

How to import

All importers share the same entry point. Open the Import dialog from the sidebar (the arrow-into-box icon next to "Collections") or from the welcome screen. Then choose one of the sources below.

Postman (v2.0 / v2.1)

Export your Postman collection as a JSON file (Collection → Export → Collection v2.1). In Tiger, choose Postman JSON, pick the file, and click Import. Tiger reads both the v2.0 and v2.1 schema variants.

What carries over:

You can also export the active environment alongside the collection: Tiger embeds the environment's variables as Postman collection variables, so a single exported file carries both requests and variable values.

Insomnia (v4)

In Insomnia, go to Application → Preferences → Data → Export Data → All and save the JSON file. Choose Insomnia v4 in Tiger and pick the file.

Insomnia stores all resources in a flat array keyed by internal IDs. Tiger resolves the parent chain of each request_group to reconstruct the original folder hierarchy. Body types supported: JSON, XML, plain text, GraphQL, and URL-encoded form. Insomnia's {{variables}} syntax differs slightly - review and remap them in Tiger's environment editor after importing.

Bruno

Bruno stores collections as folders of .bru files. Choose Bruno folder in the import dialog, then pick the root folder of the collection. Tiger walks the folder recursively; each .bru file becomes a request, and sub-folders become Tiger folders.

Bruno's block format is a close cousin of Tiger's .tiger format, so most fields map directly: method, URL, headers, query params, JSON / XML / form / GraphQL bodies, and the seq ordering field.

OpenAPI 3 / Swagger 2

Tiger accepts OpenAPI 3.x and Swagger 2.0 documents in both JSON and YAML. Choose OpenAPI / Swagger, pick the spec file, and click Import.

What Tiger does with the spec:

After importing an OpenAPI spec, create an environment with a baseUrl variable pointing at your server. All imported requests will pick it up via {{baseUrl}} interpolation.

curl (paste)

Copy a curl command from a terminal, browser DevTools, or API docs, then choose Paste curl in the import dialog and paste it in. Tiger parses common flags including:

If the body starts with { or [, or the Content-Type header contains json, Tiger sets the body type to JSON automatically. Otherwise the body is imported as plain text.

Multipart (-F) flags are recognized and skipped cleanly; their values will not pollute other fields. Line continuations (\ at end of line) are handled, so multi-line DevTools curl exports paste without modification.

i

Curl import creates a single request, not a collection. After importing you can drag it into any open collection folder from the sidebar.

WSDL / SOAP import New in 0.4.0

WSDL import converts a SOAP service description into a set of Tiger requests - one per binding operation - ready to fill in and send. Both SOAP 1.1 and SOAP 1.2 are supported.

How to import a WSDL file

  1. Open the Import dialog from the sidebar.
  2. Choose WSDL / SOAP.
  3. Pick your .wsdl or .xml file.
  4. Click Import. Tiger creates a collection named after the <service> element (or the definitions root name as a fallback). Each binding operation appears as a separate request inside it.

What each imported request looks like

For every <operation> inside a <binding>, Tiger generates a POST request with:

Example skeleton for a SOAP 1.1 GetWeather operation:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://www.webserviceX.NET">
  <soap:Body>
    <tns:GetWeather>
      <!-- fill in fields -->
    </tns:GetWeather>
  </soap:Body>
</soap:Envelope>

The matching headers generated for this request:

Content-Type: text/xml; charset=utf-8
SOAPAction: "http://www.webserviceX.NET/GetWeather"

Tiger detects whether a binding uses SOAP 1.2 by checking the namespace URI on the <soap:binding> child element. Namespaces are resolved per-binding, so a single WSDL that mixes SOAP 1.1 and 1.2 bindings will produce requests with the correct Content-Type for each.

i

Deep XSD-to-sample expansion is not performed. The envelope body is a skeleton showing the top-level request element; you fill in the child fields. Complex types, arrays, and optional elements are not pre-populated.

Exporting

Postman v2.1

Right-click any collection in the sidebar and choose Export → Postman v2.1. Tiger writes a .json file that:

The exported file is valid for direct import back into Tiger, Postman, or any tool that accepts the Postman v2.1 schema.

OpenAPI 3.0

Right-click a collection and choose Export → OpenAPI 3.0. Tiger produces an openapi.json file where:

OpenAPI export is a useful way to generate a machine-readable contract from a collection you built by hand. Import it into tools like Stoplight, Redocly, or your CI pipeline's schema linter.

curl and fetch (single request)

From any open request, click the Code tab to generate a curl command or a JavaScript fetch snippet for that single request. Variable references are interpolated using the active environment before the snippet is rendered.

After importing

Imported collections land in a folder on disk just like any collection you create from scratch. Once imported:

Related pages

The .tiger format
How Tiger stores requests as plain text you can read, diff, and commit.
Environments
Named variable sets with secret masking and {{variable}} interpolation.
Variables
Static, secret, dynamic, and captured variables across requests.
Scripts & chaining
Capture response values into variables and write post-request assertions.