# File format

> What a Mariner export looks like on disk, so you can commit it, diff it and review it like code.

## The `.mariner` package

**Export as Mariner…** (<kbd>⌘⇧X</kbd>) writes a folder — a macOS package — of small JSON files, one per request, so a change to one request is a one-file diff in git.

```text
Orders API.mariner/
  mariner.json                 manifest: name, description, ordered tree
  collection-auth.json         only when the collection sets its own auth
  environments/
    Orders API Variables.json
  requests/
    Auth/
      _folder.json             folder metadata, optional
      Login.json
    Orders/
      List orders.json
      Create order.json
```

- **`mariner.json`** carries the format `version` (currently 1), the collection name and description, and the `tree` — the exact order of folders and requests in the sidebar.
- **A request file** holds the name, method, URL, headers, query parameters, path variables, body (kind plus text or form rows), auth, request-local variables, capture rules, timeout and the response [contract](/docs/contracts) — the `contractSchema` key is written only when there is one. Saved body variants are not in the format yet; they stay on the Mac that authored them and travel through iCloud sync instead.
- **Secrets are never written.** A secret variable keeps its key and its `secret` flag with an empty value; auth credentials are not in the file at all. Whoever imports the package fills them in.
- Workspace environments are not part of a collection package — they belong to the workspace. Share them separately or recreate them; see [Set up environments](/docs/environments).

Import with **File → Import Mariner Collection…** and pick the folder. Packages written before the rename, with the `.nvapi` extension and an `nvapi.json` manifest, still import.

## Postman export

**Export as Postman…** writes `‹Name›.postman_collection.json`, Collection format v2.1: folders, requests, bodies, collection and folder auth — with every secret value and the OAuth client secret left blank.

## HAR

**Export HAR** in [History](/docs/system#history) writes a HAR 1.2 archive (`‹workspace›.har`) of the executions currently shown, including timings and bodies as stored (bodies over 1 MB are truncated and marked).

## Runner reports

The collection runner exports **JSON** — title, `generatedAt` in ISO 8601, totals, elapsed milliseconds, whether the run was cancelled, and one item per request — or **CSV** with the columns `name, method, url, status, durationMs, error, capturedKeys, contract`. Both are described in [Runner](/docs/runner).

---
Source: https://marinerhttp.dev/docs/file-format · Mariner docs
