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 spec 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
Blossom Servers expose four 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
PUT /media
BUD-05Authentication
: Signed nostr event
BUDs stand for Blossom Upgrade Documents.
See the BUDs folder and specifically BUD-01 and BUD-02 for a detailed explanation of the endpoints
- 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-08: Nostr File Metadata Tags
kind | description | BUD |
---|---|---|
24242 |
Authorization event | 01 |
10063 |
User Server List | 03 |
Public domain.