spacebarchat / spacebarchat/server
Admin API Route: /policies/attachments
Open
Nobody has claimed this yet.
Enhancement
Module: Admin API
Module: API
Route
- Dominant language
- TypeScript
- Stars
- 2.2k
- Forks
- 323
- Avg merge
- 14h 48m
- Merged PRs (30d)
- 4
Description
This policy will control the size and file types of attachments.
id: policy ID, previous revisions retrievable byGET /policies/attachments/:idallowed_types: map of allowed MIME types (globbing is allowed) to maximum sizes in octets, if a key has anullsize, it follows the general maximum sizedenied_types: list of denied MIME types (globbing is allowed)whitelist: if true, everything exceptallowed_typesare denied, anddenied_typesare subtracted fromallowed_types; else, everything exceptdenied_typesare allowed, andallowed_typesare subtracted fromdenied_typescdn_endpoint: fully qualified domain name plus path to the CDN endpointsize: maximum size in octets
Sub-tasks:
- Retrieve single: GET /policies/attachments/:id
- Retrieve all: GET /policies/attachments
- Create: POST /policies/attachments/:id
- Update single: PATCH /policies/attachments/:id
- Atomic swap: TRANSPOSE /policies/attachment/:id /policies/attachment/:id
- Remove single: DELETE /policies/attachments/:id
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the listed admin API routes and the attachment policy fields in this issue, including the revision, filtering, and atomic-swap requirements. Done means implementing and verifying retrieval, creation, update, swap, and deletion for the attachment policy endpoints, with the documented path and field behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100