mirror of
https://github.com/nostr-protocol/nips.git
synced 2025-02-23 13:49:00 +00:00
57 lines
1.7 KiB
Markdown
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.
|