Endpoints
All endpoints require workspace-scoped access via
resolveWorkspaceContext. Use products:read for GET and products:write for POST/PATCH/DELETE. Media creation relies on mediaCreateSchema, which enforces either a direct url or a assetId reference to a Gallery file.Key concepts
- Media items support optional
assetIdreferences to Gallery; the service resolves public URLs when possible. - Ordering uses integer
sortvalues; lower numbers appear first.PATCH /media/orderaccepts arrays of(mediaId|assetId, sort)objects. - Delete operations accept one identifier (
mediaId,assetId, orurl) via request body or query parameters. - Validation errors throw structured responses (
MediaValidationError,MediaNotFoundError,ProductOwnershipError) surfaced as HTTP 400/404.