NIP-97 ====== White-listed Events ------------------- `draft` `optional` An event containing an `"!"` tag means a white-listed event. Relays supporting white-listed events MUST serve these notes only to [NIP-98](98.md) AUTHed pubkeys presented in users' kind `10103` [NIP-51](51.md) list. Example of white-listed event: ```jsonc { "kind": 1, "tags": [ ["!"], ["relays", "wss://private-notes.example.com", "wss://secret-notes.example.com", /*...*/], ], "content": "You can't see it before i grant you this permission!", // other fields... } ``` Clients SHOULD publish white-listed events with a protected tag (`"-"`) to relays who implement and respect this spec. ### Private Follow Request A user can request to be added to a pubkey kind `10103` list using a kind `819` event containing the target pubkey in a `"p"` tag: ```jsonc { "kind": 819, "tags": [ ["relay", "wss://private-notes.example.com"], ["relay", "wss://bob-friends.example.com"], ["expiration", "1738988143"], ["p", "abc...def"] ], "content": "Please let me in.", // other fields... } ``` Clients MAY show `.content` to user as a request message. Clients MUST add a `"expiration"` tag to kind `819` since they won't be useful after being accepted or rejected. Its RECOMMENDED for relays to cleanup kind `819` after a reasonable amount of time since they won't be useful after being accepted or rejected. ### Clients Clients SHOULD keep sending reactions, comments and replies to this events to same relays with protected (`"-"`) and white-listed only (`"!"`) tags, keeping the rest of information private. #### Warning The events could be downloaded by private followers and saved locally.