upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/18.md
blob: 7967a59cd0e20491327b0e462325c3240583fbac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
NIP-18
======

Reposts
-------

`draft` `optional`

A repost is a `kind 6` event that is used to signal to followers
that a `kind 1` text note is worth reading.

The `content` of a repost event is _the stringified JSON of the reposted note_. It MAY also be empty, but that is not recommended.
Reposts of [NIP-70](70.md)-protected events SHOULD always have an empty `content`.

The repost event MUST include an `e` tag with the `id` of the note that is
being reposted. That tag MUST include a relay URL as its third entry
to indicate where it can be fetched.

The repost SHOULD include a `p` tag with the `pubkey` of the event being
reposted.

## Quote Reposts

Mentions to [NIP-21](21.md) entities like `nevent`, `note` and `naddr` on any 
event must be converted into `q` tags. The `q` tag ensures quote reposts are 
not pulled and included as replies in threads. It also allows you to easily 
pull and count all of the quotes for a post. The syntax follows

`["q", "<event-id> or <event-address>", "<relay-url>", "<pubkey-if-a-regular-event>"]`

## Generic Reposts

Since `kind 6` reposts are reserved for `kind 1` contents, we use `kind 16`
as a "generic repost", that can include any kind of event inside other than
`kind 1`.

`kind 16` reposts SHOULD contain a `"k"` tag with the stringified kind number
of the reposted event as its value.