nips/18.md
2024-10-31 10:09:43 -07:00

1.5 KiB

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.

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

Quote reposts are kind 1 events with an embedded q tag of the note being quote reposted. 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.

q tags should follow the same conventions as NIP 10 e tags, with the exception of the mark argument.

["q", <event-id>, <relay-url>, <pubkey>]

When quoting an event by address, q tags should follow conventions for a tags, as described in NIP 01.

["q", <event-address>, <relay-url>]

Quote reposts MUST include the NIP-21 nevent, note, or naddr of the event in the content.

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.