{
  "openapi": "3.0.3",
  "info": {
    "title": "macrocontent Store API",
    "version": "1.0.0",
    "description": "Public catalog + authenticated library/checkout under `/store` and `/store/me`.\n\nGenerated from route inventory (37 operations). Request/response schemas are summarized — use Try it out with Authorize. Excluded: Stripe webhook, internal screenshot capture."
  },
  "servers": [
    {
      "url": "https://api.macrocontent.dev",
      "description": "Production"
    },
    {
      "url": "http://localhost:3000",
      "description": "Local development"
    }
  ],
  "tags": [
    {
      "name": "Bundles"
    },
    {
      "name": "Fx-quote"
    },
    {
      "name": "Library / me"
    },
    {
      "name": "Listings"
    },
    {
      "name": "Packages"
    },
    {
      "name": "Publishers"
    }
  ],
  "components": {
    "securitySchemes": {
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "description": "Platform access JWT from `/auth/login` (or refresh). Used by dashboard, account, store/me, publisher/me."
      }
    }
  },
  "paths": {
    "/store/bundles/{listingId}/{version}/runtime": {
      "get": {
        "tags": [
          "Bundles"
        ],
        "summary": "Get listingId version runtime",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "listingId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "version",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/bundles/entitlement/{entitlementId}/{version}/runtime": {
      "get": {
        "tags": [
          "Bundles"
        ],
        "summary": "Get entitlementId version runtime",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "version",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/fx-quote": {
      "get": {
        "tags": [
          "Fx-quote"
        ],
        "summary": "Get store fx quote",
        "description": "Auth: public",
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/listings": {
      "get": {
        "tags": [
          "Listings"
        ],
        "summary": "Get store listings",
        "description": "Auth: public",
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/listings/{slug}": {
      "get": {
        "tags": [
          "Listings"
        ],
        "summary": "Get store listings slug",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/listings/{slug}/preview-bundle": {
      "get": {
        "tags": [
          "Listings"
        ],
        "summary": "Get listings slug preview bundle",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/listings/{slug}/reviews": {
      "get": {
        "tags": [
          "Listings"
        ],
        "summary": "Get listings slug reviews",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/packages/{slug}": {
      "get": {
        "tags": [
          "Packages"
        ],
        "summary": "Get store packages slug",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/publishers/{slug}": {
      "get": {
        "tags": [
          "Publishers"
        ],
        "summary": "Get store publishers slug",
        "description": "Auth: public",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/checkout": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "checkout",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/checkout/confirm": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "confirm",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/install": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "install",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/install-package": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "install package",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get store me library",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/{entitlementId}": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get me library entitlementId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      },
      "patch": {
        "tags": [
          "Library / me"
        ],
        "summary": "Update library entitlementId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/{entitlementId}/adopt-update": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "adopt update",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/{entitlementId}/labels": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "Create entitlementId labels",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/{entitlementId}/labels/{labelId}": {
      "delete": {
        "tags": [
          "Library / me"
        ],
        "summary": "Delete labels labelId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "labelId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/{entitlementId}/preview-bundle": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get library entitlementId preview bundle",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "entitlementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/assign": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "assign",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/available": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get me library available",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/claim": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "claim",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/labels": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get me library labels",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      },
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "Create library labels",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/labels/{labelId}": {
      "delete": {
        "tags": [
          "Library / me"
        ],
        "summary": "Delete labels labelId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "labelId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      },
      "patch": {
        "tags": [
          "Library / me"
        ],
        "summary": "Update labels labelId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "labelId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/library/units/{unitId}/return-to-purchaser": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "return to purchaser",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "unitId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/listings/{id}": {
      "patch": {
        "tags": [
          "Library / me"
        ],
        "summary": "Update listings id",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/my-listings": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get store me my listings",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/publish": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "publish",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/reviews": {
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "Create me reviews",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/reviews/{listingId}": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get me reviews listingId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "listingId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/wishlist": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get store me wishlist",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      },
      "post": {
        "tags": [
          "Library / me"
        ],
        "summary": "Create me wishlist",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/wishlist/{listingId}": {
      "delete": {
        "tags": [
          "Library / me"
        ],
        "summary": "Delete wishlist listingId",
        "description": "Auth: JWT",
        "parameters": [
          {
            "name": "listingId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/store/me/wishlist/ids": {
      "get": {
        "tags": [
          "Library / me"
        ],
        "summary": "Get me wishlist ids",
        "description": "Auth: JWT",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    }
  },
  "x-macro-stats": {
    "included": 37,
    "excluded": 0,
    "sourceRows": 37
  }
}
