NIP-75 definieert een fondsenwervingsdoel-event waar gebruikers naartoe kunnen zappen. Een doel verklaart een target amount in millisatoshis en een lijst van relays waar zap receipts voor dat doel worden opgeteld. Elke NIP-57 zap die naar het goal-event verwijst telt mee voor de voortgang.

Hoe Het Werkt

Een zap goal is een kind:9041-event. De .content is een mensleesbare beschrijving. De verplichte tags zijn amount (target in millisats) en relays (de relaylijst die wordt gebruikt om zap receipts op te tellen). Optionele tags zijn onder meer closed_at om het tellen op een bepaalde timestamp te stoppen, image en summary. Het doel kan ook een r- of a-tag bevatten die naar een externe URL of een addressable event verwijst, en het kan meerdere beneficiary pubkeys dragen via zap-split-tags uit appendix G van NIP-57.

{
  "id": "<64-char hex>",
  "pubkey": "<64-char hex>",
  "created_at": 1776500000,
  "kind": 9041,
  "tags": [
    ["relays", "wss://alicerelay.example.com", "wss://bobrelay.example.com"],
    ["amount", "210000"],
    ["image", "<image url>"],
    ["summary", "Nostrasia travel expenses"]
  ],
  "content": "Nostrasia travel expenses",
  "sig": "<128-char hex>"
}

Clients koppelen een zap aan een doel door een e-tag op te nemen die naar het goal-event wijst binnen het zap request. Goal progress is de som van gematchte zap receipt-bedragen op de relays die het doel heeft opgegeven. Wanneer closed_at is ingesteld, tellen zap receipts die na die timestamp zijn gepubliceerd niet mee.

Implementaties

  • Amethyst rendert nu goal progress bars en one-tap zap buttons in live-stream headers via PR #2469, die NIP-75 in het NIP-53 Live Activities-scherm integreert.

Primaire bronnen:

Vermeld in:

Zie ook: