Skip to content

Manage emoji, stickers & uploads

Choose short unique names and use file types advertised by the server. Stickers should also have clear descriptions for accessibility and search. Only grant manage_emojis to people trusted to upload or replace server-wide assets.

Set a byte limit, MIME allowlist, per-user quota, rate, and expiry policy that match your storage budget. The default 100 MiB ceiling is generous; reduce it for small servers. Allow only media types clients actually support.

The current upload path applies free_tier_max_expiration_days to every upload and always stores permanent: false; permanent_tiers, permanent_expiration_days, and subscription_cache_ttl are not consulted. A per-user attachment limit of -1 is unlimited, 0 blocks uploads, and a positive value counts the user’s non-expired records.

Local storage is simple but couples uploads to the server disk and backup plan. S3-compatible storage scales separately and can use public or presigned URLs. Keep credentials in runtime environment values, verify bucket lifecycle rules, and back up attachment metadata together with objects.

Compression keys are currently reserved configuration only: the upload path does not resize or recompress image bytes.