- PostgreSQL metadata overlay layer on top of existing S3 storage - 3 new tables: folders, files, share_links - Folder CRUD: create, get with children, tree, rename, delete (cascade) - File operations: upload to folder, move between folders - Share links: create with optional password/expiry/download limit, public access - S3 compensation on PG write failure - Existing 14 endpoints untouched
14 lines
341 B
Go
14 lines
341 B
Go
package requests
|
|
|
|
type CreateShareRequest struct {
|
|
ResourceType string `json:"resource_type"`
|
|
ResourceID string `json:"resource_id"`
|
|
Password *string `json:"password"`
|
|
ExpiresAt *string `json:"expires_at"`
|
|
MaxDownloads *int `json:"max_downloads"`
|
|
}
|
|
|
|
type ShareDownloadRequest struct {
|
|
Password string `json:"password"`
|
|
}
|