nips/97.md
2025-02-07 20:08:32 +00:00

57 lines
1.7 KiB
Markdown

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.