{"openapi":"3.0.0","paths":{"/health":{"get":{"description":"Returns the health status of the Graphics Package Manager","operationId":"AppController_getHealth","parameters":[],"responses":{"200":{"description":"Service is healthy","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","example":"healthy"},"timestamp":{"type":"string","format":"date-time"},"service":{"type":"string","example":"graphics-package-manager-service"},"version":{"type":"string","example":"1.0.0"}}}}}}},"summary":"Health check endpoint","tags":["Health"]}},"/":{"get":{"description":"Returns basic information about the data Graphics Package Manager","operationId":"AppController_getServiceInfo","parameters":[],"responses":{"200":{"description":"Service information","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","example":"MXMZ Graphics Package Manager"},"version":{"type":"string","example":"1.0.0"},"description":{"type":"string","example":"Manager for MXMZ Graphics Packages"}}}}}}},"summary":"Service information","tags":["Health"]}},"/tenant/database-connection-test":{"get":{"description":"Checks whether the tenant-aware database can be reached using the workspace header.","operationId":"TenantAwareController_testDatabaseConnection","parameters":[],"responses":{"200":{"description":"Database connection succeeded","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"database":{"type":"string","example":"tenant-db"}}}}}}},"summary":"Validate tenant database connectivity","tags":["Tenant"]}},"/packages/workspace":{"get":{"operationId":"GraphicPackageController_getWorkspacePackages","parameters":[],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/source":{"get":{"operationId":"GraphicPackageController_getPackageSource","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/builds":{"get":{"operationId":"GraphicPackageController_getPackageBuilds","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/releases":{"get":{"operationId":"GraphicPackageController_getPackageReleases","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/release":{"post":{"operationId":"GraphicPackageController_setPackageRelease","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportGraphicPackageEditorBundleDTO"}}}},"responses":{"201":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/drafts":{"get":{"operationId":"GraphicPackageController_getPackageDrafts","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/draft":{"post":{"operationId":"GraphicPackageController_setPackageDraft","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportGraphicPackageEditorDraftDTO"}}}},"responses":{"201":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}/versions":{"get":{"operationId":"GraphicPackageController_getPackageVersions","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/packages/{id}":{"delete":{"operationId":"GraphicPackageController_deletePackage","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Graphic Package"]}},"/public/packages/{hash}/versions":{"get":{"description":"Decodes the hashed identifier and returns the package metadata along with every published version sorted chronologically.","operationId":"GraphicPackagePublicController_packageVersions","parameters":[{"name":"hash","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Package metadata with an array of available versions.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","example":"pkg_123"},"name":{"type":"string","example":"Broadcast Bug Package"},"description":{"type":"string","example":"Reusable broadcast graphics."},"versions":{"type":"array","items":{"type":"object","properties":{"version":{"type":"string","example":"1.4.0"},"cdnUrl":{"type":"string","example":"https://cdn.example.com/graphics/pkg_123/v1.4.0"}}}}}}}}},"404":{"description":"Returned when the hash cannot be resolved or no versions exist."}},"summary":"List all versions for a graphic package","tags":["Graphic Package Public"]}},"/released/packages":{"get":{"operationId":"GraphicPackageReleasedController_allLatestPackages","parameters":[],"responses":{"200":{"description":"List of packages with latest release per major version."}},"summary":"Get all released graphic packages (latest version per major per package)","tags":["Released Graphic Package"]}},"/released/packages/{id}/{version}":{"get":{"description":"Returns the latest release for the requested major version, or the latest release for the package when version is \"latest\".","operationId":"GraphicPackageReleasedController_packageVersion","parameters":[{"name":"id","required":true,"in":"path","description":"Graphic package UUID","schema":{"example":"17d22efb-4ddd-45e0-b6ee-9325c349b7d9","type":"string"}},{"name":"version","required":true,"in":"path","description":"Major version number or \"latest\"","schema":{"example":"1","type":"string"}}],"responses":{"200":{"description":"The selected released package version."},"404":{"description":"Returned when the package or selected major version does not exist."}},"summary":"Get a released graphic package version","tags":["Released Graphic Package"]}}},"info":{"title":"MXMZ Graphics Package Manager API","description":"API for managing MXMZ Graphics Packages","version":"1.0","contact":{}},"tags":[],"servers":[{"url":"https://package-manager-api.use2.mxmz.io"}],"components":{"securitySchemes":{"workspace-header":{"type":"apiKey","in":"header","name":"x-workspace-id","description":"Workspace ID required for authentication and token resolution"}},"schemas":{"ImportGraphicPackageEditorBundleDTO":{"type":"object","properties":{}},"ImportGraphicPackageEditorDraftDTO":{"type":"object","properties":{}}}}}