harbinger 0.1.1

A Rust implementation that captures live API responses from Postman collections and automatically generates OpenAPI 3.0 specifications
Documentation
{
  "info": {
    "name": "Example API",
    "description": "Example collection to demonstrate the spec generator",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Get Users",
      "request": {
        "method": "GET",
        "url": {
          "raw": "{{baseUrl}}/users",
          "protocol": "https",
          "host": ["jsonplaceholder", "typicode", "com"],
          "path": ["users"]
        },
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ]
      }
    },
    {
      "name": "Get User by ID",
      "request": {
        "method": "GET",
        "url": {
          "raw": "{{baseUrl}}/users/1",
          "protocol": "https",
          "host": ["jsonplaceholder", "typicode", "com"],
          "path": ["users", "1"]
        },
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ]
      }
    },
    {
      "name": "Create User",
      "request": {
        "method": "POST",
        "url": {
          "raw": "{{baseUrl}}/users",
          "protocol": "https",
          "host": ["jsonplaceholder", "typicode", "com"],
          "path": ["users"]
        },
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          },
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"John Doe\",\n  \"email\": \"john@example.com\",\n  \"username\": \"johndoe\"\n}"
        }
      }
    },
    {
      "name": "Update User",
      "request": {
        "method": "PUT",
        "url": {
          "raw": "{{baseUrl}}/users/1",
          "protocol": "https",
          "host": ["jsonplaceholder", "typicode", "com"],
          "path": ["users", "1"]
        },
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"Jane Doe\",\n  \"email\": \"jane@example.com\"\n}"
        }
      }
    },
    {
      "name": "Delete User",
      "request": {
        "method": "DELETE",
        "url": {
          "raw": "{{baseUrl}}/users/1",
          "protocol": "https",
          "host": ["jsonplaceholder", "typicode", "com"],
          "path": ["users", "1"]
        }
      }
    }
  ],
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://jsonplaceholder.typicode.com",
      "type": "string"
    }
  ]
}