Blossom uses nostr public / private keys for identities. Users are expected to sign authorization events to prove their identity when interacting with servers
Blossom is a specification for a set of HTTP endpoints that allow users to store blobs of data on publicly accessible servers
Blobs are packs of binary data addressed by their sha256 hash
BUDs or Blossom Upgrade Documents are short documents that outline an additional feature that a blossom server may implement.
- BUD-00: Blossom Upgrade Documents
- BUD-01: Server requirements and blob retrieval
- BUD-02: Blob upload and management
- BUD-03: User Server List
- BUD-04: Mirroring blobs
- BUD-05: Media optimization
- BUD-06: Upload requirements
- BUD-07: Payment required
- BUD-08: Nostr File Metadata Tags
- BUD-09: Blob Report
Blossom Servers expose a few endpoints for managing blobs
GET /<sha256>
(optional file.ext
) BUD-01HEAD /<sha256>
(optional file.ext
) BUD-01PUT /upload
BUD-02Authentication
: Signed nostr event- Return a blob descriptor
HEAD /upload
BUD-06GET /list/<pubkey>
BUD-02- Returns an array of blob descriptors
Authentication
(optional): Signed nostr event
DELETE /<sha256>
BUD-02Authentication
: Signed nostr event
PUT /mirror
BUD-04Authentication
: Signed nostr event
HEAD /media
BUD-05PUT /media
BUD-05Authentication
: Signed nostr event
PUT /report
BUD-09
kind | description | BUD |
---|---|---|
24242 |
Authorization event | 01 |
10063 |
User Server List | 03 |
Public domain.