{
  "openapi": "3.1.0",
  "info": {
    "title": "AI Product Ops Toolkit API",
    "version": "2.0.0",
    "description": "API v2 for generation, batch orchestration, vault context, and outbound automation."
  },
  "servers": [
    {
      "url": "https://aiproductops.net"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  },
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "paths": {
    "/api/v2/modules": {
      "get": {
        "summary": "List supported workflow modules",
        "responses": {
          "200": {
            "description": "Workflow module list"
          }
        }
      }
    },
    "/api/v2/generate": {
      "post": {
        "summary": "Generate one workflow artifact",
        "requestBody": {
          "required": true
        },
        "responses": {
          "200": {
            "description": "Structured workflow response"
          }
        }
      }
    },
    "/api/v2/batch": {
      "post": {
        "summary": "Queue a durable batch job",
        "requestBody": {
          "required": true
        },
        "responses": {
          "200": {
            "description": "Queued batch job"
          }
        }
      }
    },
    "/api/v2/vault": {
      "get": {
        "summary": "List vaults"
      },
      "post": {
        "summary": "Create a vault"
      }
    },
    "/api/v2/vault/{id}": {
      "get": {
        "summary": "Get a vault by id"
      },
      "patch": {
        "summary": "Update a vault"
      },
      "delete": {
        "summary": "Delete a vault"
      }
    },
    "/api/v2/webhooks": {
      "get": {
        "summary": "List outbound webhook endpoints"
      },
      "post": {
        "summary": "Create an outbound webhook endpoint"
      }
    },
    "/api/v2/webhooks/{id}": {
      "get": {
        "summary": "Get a webhook endpoint"
      },
      "patch": {
        "summary": "Update a webhook endpoint"
      },
      "delete": {
        "summary": "Delete a webhook endpoint"
      }
    },
    "/api/v2/zapier/trigger/generation-complete": {
      "get": {
        "summary": "Poll recently completed generations for Zapier"
      }
    },
    "/api/v2/zapier/action/generate": {
      "post": {
        "summary": "Zapier action wrapper around API v2 generate"
      }
    },
    "/api/v2/make": {
      "get": {
        "summary": "List Make-compatible operations"
      },
      "post": {
        "summary": "Dispatch a Make operation"
      }
    }
  }
}
