mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-12-22 08:25:53 -05:00
NIP-56: Reporting (#205)
Co-authored-by: Semisol <45574030+Semisol@users.noreply.github.com> Co-authored-by: Leo Wandersleb <leo@leowandersleb.de>
This commit is contained in:
parent
b99ca748c8
commit
f9e38ed00f
82
56.md
Normal file
82
56.md
Normal file
|
@ -0,0 +1,82 @@
|
|||
|
||||
NIP-56
|
||||
======
|
||||
|
||||
Reporting
|
||||
---------
|
||||
|
||||
`draft` `optional` `author:jb55`
|
||||
|
||||
A report is a `kind 1984` note that is used to report other notes for spam,
|
||||
illegal and explicit content.
|
||||
|
||||
The content MAY contain additional information submitted by the entity
|
||||
reporting the content.
|
||||
|
||||
Tags
|
||||
----
|
||||
|
||||
The report event MUST include a `p` tag referencing the pubkey of the user you
|
||||
are reporting.
|
||||
|
||||
If reporting a note, an `e` tag MUST also be included referencing the note id.
|
||||
|
||||
A `report type` string MUST be included as the 3rd entry to the `e` or `p` tag
|
||||
being reported, which consists of the following report types:
|
||||
|
||||
- `nudity` - depictions of nudity, porn, etc.
|
||||
- `profanity` - profanity, hateful speech, etc.
|
||||
- `illegal` - something which may be illegal in some jurisdiction
|
||||
- `spam` - spam
|
||||
- `impersonation` - someone pretending to be someone else
|
||||
|
||||
Some report tags only make sense for profile reports, such as `impersonation`
|
||||
|
||||
Example events
|
||||
--------------
|
||||
|
||||
```json
|
||||
{
|
||||
"kind": 1984,
|
||||
"tags": [
|
||||
[ "p", <pubkey>, "nudity"]
|
||||
],
|
||||
"content": "",
|
||||
...
|
||||
}
|
||||
|
||||
{
|
||||
"kind": 1984,
|
||||
"tags": [
|
||||
[ "e", <eventId>, "illegal"],
|
||||
[ "p", <pubkey>]
|
||||
],
|
||||
"content": "He's insulting the king!",
|
||||
...
|
||||
}
|
||||
|
||||
{
|
||||
"kind": 1984,
|
||||
"tags": [
|
||||
[ "p", <impersonator pubkey>, "impersonation"],
|
||||
[ "p", <victim pubkey>]
|
||||
],
|
||||
"content": "Profile is imitating #[1]",
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
Client behavior
|
||||
---------------
|
||||
|
||||
Clients can use reports from friends to make moderation decisions if they
|
||||
choose to. For instance, if 3+ of your friends report a profile as explicit,
|
||||
clients can have an option to automatically blur photos from said account.
|
||||
|
||||
|
||||
Relay behavior
|
||||
--------------
|
||||
|
||||
It is not recommended that relays perform automatic moderation using reports,
|
||||
as they can be easily gamed. Admins could use reports from trusted moderators to
|
||||
takedown illegal or explicit content if the relay does not allow such things.
|
|
@ -30,6 +30,7 @@ NIPs stand for **Nostr Implementation Possibilities**. They exist to document wh
|
|||
- [NIP-40: Expiration Timestamp](40.md)
|
||||
- [NIP-42: Authentication of clients to relays](42.md)
|
||||
- [NIP-50: Keywords filter](50.md)
|
||||
- [NIP-56: Reporting](56.md)
|
||||
- [NIP-65: Relay List Metadata](65.md)
|
||||
|
||||
## Event Kinds
|
||||
|
@ -49,6 +50,7 @@ NIPs stand for **Nostr Implementation Possibilities**. They exist to document wh
|
|||
| 43 | Channel Hide Message | [28](28.md) |
|
||||
| 44 | Channel Mute User | [28](28.md) |
|
||||
| 45-49 | Public Chat Reserved | [28](28.md) |
|
||||
| 1984 | Reporting | [56](56.md) |
|
||||
| 10002 | Relay List Metadata | [65](65.md) |
|
||||
| 22242 | Client Authentication | [42](42.md) |
|
||||
| 1000-9999 | Regular Events Reserved | [16](16.md) |
|
||||
|
|
Loading…
Reference in New Issue
Block a user