diff options
Diffstat (limited to '75.md')
| -rw-r--r-- | 75.md | 23 |
1 files changed, 16 insertions, 7 deletions
| @@ -1,8 +1,10 @@ | |||
| 1 | # NIP-75 | 1 | NIP-75 |
| 2 | ====== | ||
| 2 | 3 | ||
| 3 | ## Zap Goals | 4 | Zap Goals |
| 5 | --------- | ||
| 4 | 6 | ||
| 5 | `draft` `optional` `author:verbiricha` | 7 | `draft` `optional` |
| 6 | 8 | ||
| 7 | This NIP defines an event for creating fundraising goals. Users can contribute funds towards the goal by zapping the goal event. | 9 | This NIP defines an event for creating fundraising goals. Users can contribute funds towards the goal by zapping the goal event. |
| 8 | 10 | ||
| @@ -27,12 +29,14 @@ Example event: | |||
| 27 | ["amount", "210000"], | 29 | ["amount", "210000"], |
| 28 | ], | 30 | ], |
| 29 | "content": "Nostrasia travel expenses", | 31 | "content": "Nostrasia travel expenses", |
| 30 | ...other fields | 32 | ... |
| 31 | ``` | 33 | ``` |
| 32 | 34 | ||
| 33 | The following tags are OPTIONAL. | 35 | The following tags are OPTIONAL. |
| 34 | 36 | ||
| 35 | - `closed_at` - timestamp for determining which zaps are included in the tally. Zap receipts published after the `closed_at` timestamp SHOULD NOT count towards the goal progress. | 37 | - `closed_at` - timestamp for determining which zaps are included in the tally. Zap receipts published after the `closed_at` timestamp SHOULD NOT count towards the goal progress. |
| 38 | - `image` - an image for the goal | ||
| 39 | - `summary` - a brief description | ||
| 36 | 40 | ||
| 37 | ```json | 41 | ```json |
| 38 | { | 42 | { |
| @@ -41,9 +45,12 @@ The following tags are OPTIONAL. | |||
| 41 | ["relays", "wss://alicerelay.example.com", "wss://bobrelay.example.com", ...], | 45 | ["relays", "wss://alicerelay.example.com", "wss://bobrelay.example.com", ...], |
| 42 | ["amount", "210000"], | 46 | ["amount", "210000"], |
| 43 | ["closed_at", "<unix timestamp in seconds>"], | 47 | ["closed_at", "<unix timestamp in seconds>"], |
| 48 | ["image", "<image URL>"], | ||
| 49 | ["summary", "<description of the goal>"], | ||
| 44 | ], | 50 | ], |
| 45 | "content": "Nostrasia travel expenses", | 51 | "content": "Nostrasia travel expenses", |
| 46 | ...other fields | 52 | ... |
| 53 | } | ||
| 47 | ``` | 54 | ``` |
| 48 | 55 | ||
| 49 | The goal MAY include an `r` or `a` tag linking to a URL or parameterized replaceable event. | 56 | The goal MAY include an `r` or `a` tag linking to a URL or parameterized replaceable event. |
| @@ -54,12 +61,14 @@ Parameterized replaceable events can link to a goal by using a `goal` tag specif | |||
| 54 | 61 | ||
| 55 | ```json | 62 | ```json |
| 56 | { | 63 | { |
| 57 | "kind": 3XXXX, | 64 | ... |
| 65 | "kind": 3xxxx, | ||
| 58 | "tags": [ | 66 | "tags": [ |
| 59 | ... | 67 | ... |
| 60 | ["goal", "<event id>", "<Relay URL (optional)>"], | 68 | ["goal", "<event id>", "<Relay URL (optional)>"], |
| 61 | ], | 69 | ], |
| 62 | ...other fields | 70 | ... |
| 71 | } | ||
| 63 | ``` | 72 | ``` |
| 64 | 73 | ||
| 65 | ## Client behavior | 74 | ## Client behavior |