Skip to content

OpenCollection

OpenCollection is an open specification for API collections — designed for portability between tools, version control, and CI. Restura uses it as its native format for export.

Postman’s format is locked. Insomnia’s is locked. Bruno’s is its own. Switching tools means a lossy migration every time. OpenCollection exists to be the format you can move into and out of without losing fidelity.

  • Request-shaped protocols: HTTP, GraphQL, gRPC, WebSocket, Socket.IO, SSE, and MCP (Socket.IO / SSE / MCP ride along as x-restura-* extensions). The connection-based protocols (Kafka, MQTT) have no per-request shape, so they aren’t stored in a collection.
  • Nested folders with inherited auth, headers, and variables.
  • Environments with scoped variables.
  • Scripts (pre-request and test) — sandbox-portable JavaScript.
  • Workflows — separately stored OWS orchestration artifacts that reference saved HTTP requests. The currently executable profile is deliberately bounded; see the workflow guide.
  • Auth schemes — every scheme in the auth guide, with secrets stored as references (SecretRef).
  • Vendor extensions via the extensions field — so tools can persist proprietary data while staying spec-compliant.
  • Bundled YAML — a single .yml / .yaml file. Easy to drop into another tool.
  • Directory layout — one file per request, in a folder structure that mirrors your collection tree. Friendly for git.

Restura exports the bundled YAML everywhere and the directory layout on desktop (via Save to Files / Sync to Disk); import auto-detects either.

Importing a Restura-exported OpenCollection back into Restura is lossless. Importing a Postman v2.1 collection into Restura and exporting as OpenCollection retains every Postman-supported field; round-tripping back to Postman is best-effort (some Restura-specific features may not have Postman equivalents).