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-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 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.
When reposting a replaceable event, the repost SHOULD include
an "a" tag with the event coordinate
(kind:pubkey:d-tag) of the reposted event.
If the "a" tag is not present, it indicates that a
specific version of a replaceable event is being reposted, in
which case the content field must contain the full
JSON string of the reposted event.