Step 1 of 4
Embed the original
A kind 6 repost's content is the reposted note's full JSON, so readers can show it without fetching. It may be empty (required for NIP-70 protected events).
NIP-18
DraftEvents
Share someone else's event with your followers: kind 6 reposts a text note, kind 16 reposts anything else, and q tags turn a mention into a quote post.
Edit the form or the JSON: both stay in sync, the badge says whether the result is valid, and tapping any field explains it.
Not signed yet · Demo keys only. These personas' secret keys are public on purpose.
Select any field in the form or the JSON to see what it does.
Step 1 of 4
A kind 6 repost's content is the reposted note's full JSON, so readers can show it without fetching. It may be empty (required for NIP-70 protected events).
No course chapter covers this NIP yet. The editor above is the quickest way in.
Reposts reference NIP-01 events.
Quotes are nostr: URIs in the content.
Replies, as opposed to quotes, use e tags.
Protected events are reposted with empty content.
Specification text is quoted in English from the nostr-protocol/nips repository. Our explanations and the interface are translated. Source on GitHub at commit 0046368
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.
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>"]
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.