Skip to content

Special ​

Port: REST :3090 · gRPC :5090

Handles file metadata and storage management (via MinIO) and time-dimensioned statistical counters.

Collections ​

CollectionPathPurpose
Files/special/filesFile metadata + MinIO object reference
Stats/special/statsTime-dimensioned counters and metrics

special/files ​

Stores file metadata — filename, MIME type, size, storage coordinates, and download URL. The binary content itself is stored in MinIO.

Use the upload endpoints for new binary files — not the raw CRUD create:

EndpointScopeDescription
POST /special/files/upload/privateupload:special:filesUpload a private file
POST /special/files/upload/publicupload:special:filesUpload a public file

Use raw create only when object-storage metadata already exists from a pre-signed or external upload flow.

Required Create Fields (raw create only) ​

FieldRequiredTypeDescription
original✅stringOriginal filename
mimetype✅stringMIME type
size✅numberFile size in bytes
bucket✅stringObject-storage bucket
key✅stringObject-storage key/path
acl✅stringStorage access level
location✅stringFile download URL

Optional Fields ​

FieldTypeDescription
titlestringDisplay title
fieldstringMultipart field name
content_typestringDownload content-type override
storage_classstringStorage class
etagstringStorage ETag
stateStateLifecycle state

Special Operations (platform REST only) ​

OperationHTTPScopeDescription
Share filePOST /special/files/:id/shareshare:special:filesGenerate a share link
Download fileGET /special/files/download/:id (/:id/download is the public share link)download:special:filesStream file contents

special/stats ​

Time-dimensioned counter and metric storage.

Required Create Fields ​

FieldRequiredTypeDescription
type✅StatTypeDAILY, MONTHLY, YEARLY
key✅StatKeyStat identifier

Optional Fields ​

FieldTypeDescription
objMongoIdRelated document
flagstringSecondary key
daynumberDay dimension
monthnumberMonth dimension
yearnumberYear dimension
hoursnumber[]Exactly 24 elements
daysnumber[]Exactly 31 elements
monthsnumber[]Exactly 12 elements

hours, days, and months must always be provided with the exact required element count. Partial arrays are rejected.

Special Operations (platform REST only) ​

OperationHTTPScopeDescription
CollectPOST /special/stats/collectcollect:special:statsUpsert-style stat increment
StackupPOST /special/stats/stackupcollect:special:statsAggregate / accumulate stats