upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--01.md10
-rw-r--r--11.md6
-rw-r--r--15.md22
-rw-r--r--45.md5
-rw-r--r--52.md4
-rw-r--r--58.md2
-rw-r--r--75.md76
-rw-r--r--94.md2
-rw-r--r--98.md14
-rw-r--r--README.md9
10 files changed, 132 insertions, 18 deletions
diff --git a/01.md b/01.md
index d6ccfbe..d822bfb 100644
--- a/01.md
+++ b/01.md
@@ -62,11 +62,13 @@ Each tag is an array of strings of arbitrary size, with some conventions around
62 62
63The first element of the tag array is referred to as the tag _name_ or _key_ and the second as the tag _value_. So we can safely say that the event above has an `e` tag set to `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"`, an `alt` tag set to `"reply"` and so on. All elements after the second do not have a conventional name. 63The first element of the tag array is referred to as the tag _name_ or _key_ and the second as the tag _value_. So we can safely say that the event above has an `e` tag set to `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"`, an `alt` tag set to `"reply"` and so on. All elements after the second do not have a conventional name.
64 64
65This NIP defines 3 standard tags that can be used accross all event kinds with the same meaning. They are as follows: 65This NIP defines 3 standard tags that can be used across all event kinds with the same meaning. They are as follows:
66 66
67- The `e` tag, used to refer to an event: `["e", <32-bytes lowercase hex of the id of another event>, <recommended relay URL, optional>]` 67- The `e` tag, used to refer to an event: `["e", <32-bytes lowercase hex of the id of another event>, <recommended relay URL, optional>]`
68- The `p` tag, used to refer to another user: `["p", <32-bytes lowercase hex of a pubkey>, <recommended relay URL, optional>]` 68- The `p` tag, used to refer to another user: `["p", <32-bytes lowercase hex of a pubkey>, <recommended relay URL, optional>]`
69- The `a` tag, used to refer to a parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:<d tag value>, <recommended relay URL, optional>]` 69- The `a` tag, used to refer to a (maybe parameterized) replaceable event
70 - for a parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:<d tag value>, <recommended relay URL, optional>]`
71 - for a non-parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:, <recommended relay URL, optional>]`
70 72
71As a convention, all single-letter (only english alphabet letters: a-z, A-Z) key tags are expected to be indexed by relays, such that it is possible, for example, to query or subscribe to events that reference the event `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"` by using the `{"#e": "5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"}` filter. 73As a convention, all single-letter (only english alphabet letters: a-z, A-Z) key tags are expected to be indexed by relays, such that it is possible, for example, to query or subscribe to events that reference the event `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"` by using the `{"#e": "5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"}` filter.
72 74
@@ -80,9 +82,9 @@ Kinds specify how clients should interpret the meaning of each event and the oth
80And also a convention for kind ranges that allow for easier experimentation and flexibility of relay implementation: 82And also a convention for kind ranges that allow for easier experimentation and flexibility of relay implementation:
81 83
82- for kind `n` such that `1000 <= n < 10000`, events are **regular**, which means they're all expected to be stored by relays. 84- for kind `n` such that `1000 <= n < 10000`, events are **regular**, which means they're all expected to be stored by relays.
83- for kind `n` such that `10000 <= n < 20000 || k == 0 || k == 3`, events are **replaceable**, which means that, for each combination of `pubkey` and `kind`, only the latest event is expected to (SHOULD) be stored by relays, older versions are expected to be discarded. 85- for kind `n` such that `10000 <= n < 20000 || n == 0 || n == 3`, events are **replaceable**, which means that, for each combination of `pubkey` and `kind`, only the latest event is expected to (SHOULD) be stored by relays, older versions are expected to be discarded.
84- for kind `n` such that `20000 <= n < 30000`, events are **ephemeral**, which means they are not expected to be stored by relays. 86- for kind `n` such that `20000 <= n < 30000`, events are **ephemeral**, which means they are not expected to be stored by relays.
85- for kind `n` such that `30000 <= n < 40000`, events are **parameterized replaceable**, which means that, for each combination of `pubkey`, `kind` and the `d` tag, only the latest event is expected to be stored by relays, older versions are expected to be discarded. 87- for kind `n` such that `30000 <= n < 40000`, events are **parameterized replaceable**, which means that, for each combination of `pubkey`, `kind` and the `d` tag's first value, only the latest event is expected to be stored by relays, older versions are expected to be discarded.
86 88
87In case of replaceable events with the same timestamp, the event with the lowest id (first in lexical order) should be retained, and the other discarded. 89In case of replaceable events with the same timestamp, the event with the lowest id (first in lexical order) should be retained, and the other discarded.
88 90
diff --git a/11.md b/11.md
index 083ae8f..deb6f19 100644
--- a/11.md
+++ b/11.md
@@ -80,6 +80,8 @@ are rejected or fail immediately.
80 "min_pow_difficulty": 30, 80 "min_pow_difficulty": 30,
81 "auth_required": true, 81 "auth_required": true,
82 "payment_required": true, 82 "payment_required": true,
83 "created_at_lower_limit":31536000,
84 "created_at_upper_limit":3,
83 } 85 }
84... 86...
85} 87}
@@ -123,6 +125,10 @@ Even if set to False, authentication may be required for specific actions.
123 125
124- `payment_required`: this relay requires payment before a new connection may perform any action. 126- `payment_required`: this relay requires payment before a new connection may perform any action.
125 127
128- `created_at_lower_limit`: 'created_at' lower limit as defined in [NIP-22](22.md)
129
130- `created_at_upper_limit`: 'created_at' upper limit as defined in [NIP-22](22.md)
131
126### Event Retention ### 132### Event Retention ###
127 133
128There may be a cost associated with storing data forever, so relays 134There may be a cost associated with storing data forever, so relays
diff --git a/15.md b/15.md
index 01ef05b..edece81 100644
--- a/15.md
+++ b/15.md
@@ -220,6 +220,28 @@ The below json goes in `content` of [NIP04](https://github.com/nostr-protocol/ni
220 "shipped": <Bool, true/false has been shipped>, 220 "shipped": <Bool, true/false has been shipped>,
221} 221}
222``` 222```
223## Customize Marketplace
224Create a customized user experience using the `naddr` from [NIP-19](https://github.com/nostr-protocol/nips/blob/master/19.md#shareable-identifiers-with-extra-metadata). The use of `naddr` enables easy sharing of marketplace events while incorporating a rich set of metadata. This metadata can include relays, merchant profiles, and more. Subsequently, it allows merchants to be grouped into a market, empowering the market creator to configure the marketplace's user interface and user experience, and share that marketplace. This customization can encompass elements such as market name, description, logo, banner, themes, and even color schemes, offering a tailored and unique marketplace experience.
225
226### Event `30019`: Create or update marketplace UI/UX
227
228**Event Content**:
229```json
230{
231 "name": <String (optional), market name>,
232 "about": <String (optional), market description>,
233 "ui": {
234 "picture": <String (optional), market logo image URL>,
235 "banner": <String (optional), market logo banner URL>,
236 "theme": <String (optional), market theme>,
237 "darkMode": <Bool, true/false>
238 },
239 "merchants": <[String] (optional), array of pubkeys>,
240 ...
241}
242```
243
244This event leverages naddr to enable comprehensive customization and sharing of marketplace configurations, fostering a unique and engaging marketplace environment.
223 245
224## Customer support events 246## Customer support events
225 247
diff --git a/45.md b/45.md
index a525391..7b11950 100644
--- a/45.md
+++ b/45.md
@@ -21,6 +21,7 @@ This NIP defines the verb `COUNT`, which accepts a subscription id and filters a
21``` 21```
22 22
23Counts are returned using a `COUNT` response in the form `{"count": <integer>}`. Relays may use probabilistic counts to reduce compute requirements. 23Counts are returned using a `COUNT` response in the form `{"count": <integer>}`. Relays may use probabilistic counts to reduce compute requirements.
24In case a relay uses probabilistic counts, it MAY indicate it in the response with `approximate` key i.e. `{"count": <integer>, "approximate": <true|false>}`.
24 25
25``` 26```
26["COUNT", <subscription_id>, {"count": <integer>}] 27["COUNT", <subscription_id>, {"count": <integer>}]
@@ -36,4 +37,8 @@ Examples:
36# Count posts and reactions 37# Count posts and reactions
37["COUNT", <subscription_id>, {"kinds": [1, 7], "authors": [<pubkey>]}] 38["COUNT", <subscription_id>, {"kinds": [1, 7], "authors": [<pubkey>]}]
38["COUNT", <subscription_id>, {"count": 5}] 39["COUNT", <subscription_id>, {"count": 5}]
40
41# Count posts approximately
42["COUNT", <subscription_id>, {"kinds": [1]}]
43["COUNT", <subscription_id>, {"count": 93412452, "approximate": true}]
39``` 44```
diff --git a/52.md b/52.md
index 846fbf4..f5bd0ad 100644
--- a/52.md
+++ b/52.md
@@ -30,7 +30,7 @@ The list of tags are as follows:
30* `start` (required) inclusive start date in ISO 8601 format (YYYY-MM-DD). Must be less than `end`, if it exists. 30* `start` (required) inclusive start date in ISO 8601 format (YYYY-MM-DD). Must be less than `end`, if it exists.
31* `end` (optional) exclusive end date in ISO 8601 format (YYYY-MM-DD). If omitted, the calendar event ends on the same date as `start`. 31* `end` (optional) exclusive end date in ISO 8601 format (YYYY-MM-DD). If omitted, the calendar event ends on the same date as `start`.
32* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call 32* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call
33* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location as suggested as an example by [NIP-12](12.md) 33* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location
34* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting 34* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting
35* `t` (optional, repeated) hashtag to categorize calendar event 35* `t` (optional, repeated) hashtag to categorize calendar event
36* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc. 36* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc.
@@ -88,7 +88,7 @@ The list of tags are as follows:
88* `start_tzid` (optional) time zone of the start timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica` 88* `start_tzid` (optional) time zone of the start timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`
89* `end_tzid` (optional) time zone of the end timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`. If omitted and `start_tzid` is provided, the time zone of the end timestamp is the same as the start timestamp. 89* `end_tzid` (optional) time zone of the end timestamp, as defined by the IANA Time Zone Database. e.g., `America/Costa_Rica`. If omitted and `start_tzid` is provided, the time zone of the end timestamp is the same as the start timestamp.
90* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call 90* `location` (optional) location of the calendar event. e.g. address, GPS coordinates, meeting room name, link to video call
91* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location as suggested as an example by [NIP-12](12.md) 91* `g` (optional) [geohash](https://en.wikipedia.org/wiki/Geohash) to associate calendar event with a searchable physical location
92* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting 92* `p` (optional, repeated) 32-bytes hex pubkey of a participant, optional recommended relay URL, and participant's role in the meeting
93* `t` (optional, repeated) hashtag to categorize calendar event 93* `t` (optional, repeated) hashtag to categorize calendar event
94* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc. 94* `r` (optional, repeated) references / links to web pages, documents, video calls, recorded videos, etc.
diff --git a/58.md b/58.md
index d6bb27d..ccabc7b 100644
--- a/58.md
+++ b/58.md
@@ -11,7 +11,7 @@ user profiles:
11 11
121. A "Badge Definition" event is defined as a parameterized replaceable event with kind `30009` having a `d` tag with a value that uniquely identifies the badge (e.g. `bravery`) published by the badge issuer. Badge definitions can be updated. 121. A "Badge Definition" event is defined as a parameterized replaceable event with kind `30009` having a `d` tag with a value that uniquely identifies the badge (e.g. `bravery`) published by the badge issuer. Badge definitions can be updated.
13 13
142. A "Badge Award" event is a kind `8` event with a single `a` tag referencing a "Define Badge" event and one or more `p` tags, one for each pubkey the badge issuer wishes to award. Awarded badges are immutable and non-transferrable. 142. A "Badge Award" event is a kind `8` event with a single `a` tag referencing a "Badge Definition" event and one or more `p` tags, one for each pubkey the badge issuer wishes to award. Awarded badges are immutable and non-transferrable.
15 15
163. A "Profile Badges" event is defined as a parameterized replaceable event 163. A "Profile Badges" event is defined as a parameterized replaceable event
17with kind `30008` with a `d` tag with the value `profile_badges`. 17with kind `30008` with a `d` tag with the value `profile_badges`.
diff --git a/75.md b/75.md
new file mode 100644
index 0000000..6c8cb7b
--- /dev/null
+++ b/75.md
@@ -0,0 +1,76 @@
1# NIP-75
2
3## Zap Goals
4
5`draft` `optional` `author:verbiricha`
6
7This NIP defines an event for creating fundraising goals. Users can contribute funds towards the goal by zapping the goal event.
8
9## Nostr Event
10
11A `kind:9041` event is used.
12
13The `.content` contains a human-readable description of the goal.
14
15The following tags are defined as REQUIRED.
16
17- `amount` - target amount in milisats.
18- `relays` - a list of relays the zaps to this goal will be sent to and tallied from.
19
20Example event:
21
22```json
23{
24 "kind": 9041,
25 "tags": [
26 ["relays", "wss://alicerelay.example.com", "wss://bobrelay.example.com", ...],
27 ["amount", "210000"],
28 ],
29 "content": "Nostrasia travel expenses",
30 ...other fields
31```
32
33The following tags are OPTIONAL.
34
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.
36
37```json
38{
39 "kind": 9041,
40 "tags": [
41 ["relays", "wss://alicerelay.example.com", "wss://bobrelay.example.com", ...],
42 ["amount", "210000"],
43 ["closed_at", "<unix timestamp in seconds>"],
44 ],
45 "content": "Nostrasia travel expenses",
46 ...other fields
47```
48
49The goal MAY include an `r` or `a` tag linking to a URL or parameterized replaceable event.
50
51The goal MAY include multiple beneficiary pubkeys by specifying [`zap` tags](57.md#appendix-g-zap-tag-on-other-events).
52
53Parameterized replaceable events can link to a goal by using a `goal` tag specifying the event id and an optional relay hint.
54
55```json
56{
57 "kind": 3XXXX,
58 "tags": [
59 ...
60 ["goal", "<event id>", "<Relay URL (optional)>"],
61 ],
62 ...other fields
63```
64
65## Client behavior
66
67Clients MAY display funding goals on user profiles.
68
69When zapping a goal event, clients MUST include the relays in the `relays` tag of the goal event in the zap request `relays` tag.
70
71When zapping a parameterized replaceable event with a `goal` tag, clients SHOULD tag the goal event id in the `e` tag of the zap request.
72
73## Use cases
74
75- Fundraising clients
76- Adding funding goals to events such as long form posts, badges or live streams
diff --git a/94.md b/94.md
index 24dd346..c1b322a 100644
--- a/94.md
+++ b/94.md
@@ -13,7 +13,7 @@ The purpose of this NIP is to allow an organization and classification of shared
13This NIP specifies the use of the `1063` event type, having in `content` a description of the file content, and a list of tags described below: 13This NIP specifies the use of the `1063` event type, having in `content` a description of the file content, and a list of tags described below:
14 14
15* `url` the url to download the file 15* `url` the url to download the file
16* `m` a string indicating the data type of the file. The MIME types format must be used (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types) 16* `m` a string indicating the data type of the file. The [MIME types](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types) format must be used, and they should be lowercase.
17* `"aes-256-gcm"` (optional) key and nonce for AES-GCM encryption with tagSize always 128bits 17* `"aes-256-gcm"` (optional) key and nonce for AES-GCM encryption with tagSize always 128bits
18* `x` containing the SHA-256 hexencoded string of the file. 18* `x` containing the SHA-256 hexencoded string of the file.
19* `size` (optional) size of file in bytes 19* `size` (optional) size of file in bytes
diff --git a/98.md b/98.md
index ecbebc0..c8cba0f 100644
--- a/98.md
+++ b/98.md
@@ -6,9 +6,9 @@ HTTP Auth
6 6
7`draft` `optional` `author:kieran` `author:melvincarvalho` 7`draft` `optional` `author:kieran` `author:melvincarvalho`
8 8
9This NIP defines an ephemerial event used to authorize requests to HTTP servers using nostr events. 9This NIP defines an ephemeral event used to authorize requests to HTTP servers using nostr events.
10 10
11This is useful for HTTP services which are build for Nostr and deal with Nostr user accounts. 11This is useful for HTTP services which are built for Nostr and deal with Nostr user accounts.
12 12
13## Nostr event 13## Nostr event
14 14
@@ -16,7 +16,7 @@ A `kind 27235` (In reference to [RFC 7235](https://www.rfc-editor.org/rfc/rfc723
16 16
17The `content` SHOULD be empty. 17The `content` SHOULD be empty.
18 18
19The following tags are defined as REQUIRED. 19The following tags MUST be included.
20 20
21* `u` - absolute URL 21* `u` - absolute URL
22* `method` - HTTP Request Method 22* `method` - HTTP Request Method
@@ -45,7 +45,7 @@ Example event:
45 45
46Servers MUST perform the following checks in order to validate the event: 46Servers MUST perform the following checks in order to validate the event:
471. The `kind` MUST be `27235`. 471. The `kind` MUST be `27235`.
482. The `created_at` MUST be within a reasonable time window (suggestion 60 seconds). 482. The `created_at` timestamp MUST be within a reasonable time window (suggestion 60 seconds).
493. The `u` tag MUST be exactly the same as the absolute request URL (including query parameters). 493. The `u` tag MUST be exactly the same as the absolute request URL (including query parameters).
504. The `method` tag MUST be the same HTTP method used for the requested resource. 504. The `method` tag MUST be the same HTTP method used for the requested resource.
51 51
@@ -53,11 +53,11 @@ When the request contains a body (as in POST/PUT/PATCH methods) clients SHOULD i
53 53
54If one of the checks was to fail the server SHOULD respond with a 401 Unauthorized response code. 54If one of the checks was to fail the server SHOULD respond with a 401 Unauthorized response code.
55 55
56All other checks which server MAY do are OPTIONAL, and implementation specific. 56Servers MAY perform additional implementation-specific validation checks.
57 57
58## Request Flow 58## Request Flow
59 59
60Using the `Authorization` header, the `kind 27235` event MUST be `base64` encoded and use the Authorization scheme `Nostr` 60Using the `Authorization` HTTP header, the `kind 27235` event MUST be `base64` encoded and use the Authorization scheme `Nostr`
61 61
62Example HTTP Authorization header: 62Example HTTP Authorization header:
63``` 63```
@@ -65,4 +65,4 @@ Authorization: Nostr eyJpZCI6ImZlOTY0ZTc1ODkwMzM2MGYyOGQ4NDI0ZDA5MmRhODQ5NGVkMjA
65``` 65```
66 66
67## Reference Implementations 67## Reference Implementations
68- C# ASP.NET `AuthenticationHandler` [NostrAuth.cs](https://gist.github.com/v0l/74346ae530896115bfe2504c8cd018d3) \ No newline at end of file 68- C# ASP.NET `AuthenticationHandler` [NostrAuth.cs](https://gist.github.com/v0l/74346ae530896115bfe2504c8cd018d3)
diff --git a/README.md b/README.md
index 7951339..98f6ddb 100644
--- a/README.md
+++ b/README.md
@@ -63,6 +63,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
63- [NIP-58: Badges](58.md) 63- [NIP-58: Badges](58.md)
64- [NIP-65: Relay List Metadata](65.md) 64- [NIP-65: Relay List Metadata](65.md)
65- [NIP-72: Moderated Communities](72.md) 65- [NIP-72: Moderated Communities](72.md)
66- [NIP-75: Zap Goals](75.md)
66- [NIP-78: Application-specific data](78.md) 67- [NIP-78: Application-specific data](78.md)
67- [NIP-89: Recommended Application Handlers](89.md) 68- [NIP-89: Recommended Application Handlers](89.md)
68- [NIP-94: File Metadata](94.md) 69- [NIP-94: File Metadata](94.md)
@@ -93,6 +94,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
93| `1984` | Reporting | [56](56.md) | 94| `1984` | Reporting | [56](56.md) |
94| `1985` | Label | [32](32.md) | 95| `1985` | Label | [32](32.md) |
95| `4550` | Community Post Approval | [72](72.md) | 96| `4550` | Community Post Approval | [72](72.md) |
97| `9041` | Zap Goal | [75](75.md) |
96| `9734` | Zap Request | [57](57.md) | 98| `9734` | Zap Request | [57](57.md) |
97| `9735` | Zap | [57](57.md) | 99| `9735` | Zap | [57](57.md) |
98| `10000` | Mute List | [51](51.md) | 100| `10000` | Mute List | [51](51.md) |
@@ -159,12 +161,13 @@ Please update these lists when proposing NIPs introducing new event kinds.
159| `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) | 161| `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) |
160| `a` | coordinates to an event | relay URL | [01](01.md) | 162| `a` | coordinates to an event | relay URL | [01](01.md) |
161| `d` | identifier | -- | [01](01.md) | 163| `d` | identifier | -- | [01](01.md) |
162| `alt` | Alt tag | -- | [31](31.md) | 164| `alt` | summary | -- | [31](31.md) |
163| `g` | geohash | -- | [52](52.md) | 165| `g` | geohash | -- | [52](52.md) |
164| `i` | identity | proof | [39](39.md) | 166| `i` | identity | proof | [39](39.md) |
165| `k` | kind number (string) | -- | [18](18.md), [72](72.md) | 167| `k` | kind number (string) | -- | [18](18.md), [72](72.md) |
166| `l` | label, label namespace | annotations | [32](32.md) | 168| `l` | label, label namespace | annotations | [32](32.md) |
167| `L` | label namespace | -- | [32](32.md) | 169| `L` | label namespace | -- | [32](32.md) |
170| `m` | MIME type | -- | [94](94.md) |
168| `r` | a reference (URL, etc) | petname | | 171| `r` | a reference (URL, etc) | petname | |
169| `r` | relay url | marker | [65](65.md) | 172| `r` | relay url | marker | [65](65.md) |
170| `t` | hashtag | -- | | 173| `t` | hashtag | -- | |
@@ -173,10 +176,10 @@ Please update these lists when proposing NIPs introducing new event kinds.
173| `challenge` | challenge string | -- | [42](42.md) | 176| `challenge` | challenge string | -- | [42](42.md) |
174| `content-warning` | reason | -- | [36](36.md) | 177| `content-warning` | reason | -- | [36](36.md) |
175| `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) | 178| `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) |
176| `description` | badge description | -- | [58](58.md) | 179| `description` | invoice/badge description | -- | [57](57.md), [58](58.md) |
177| `description` | invoice description | -- | [57](57.md) |
178| `emoji` | shortcode, image URL | -- | [30](30.md) | 180| `emoji` | shortcode, image URL | -- | [30](30.md) |
179| `expiration` | unix timestamp (string) | -- | [40](40.md) | 181| `expiration` | unix timestamp (string) | -- | [40](40.md) |
182| `goal` | event id (hex) | relay URL | [75](75.md) |
180| `image` | image URL | dimensions in pixels | [23](23.md), [58](58.md) | 183| `image` | image URL | dimensions in pixels | [23](23.md), [58](58.md) |
181| `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) | 184| `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) |
182| `location` | location string | -- | [52](52.md), [99](99.md) | 185| `location` | location string | -- | [52](52.md), [99](99.md) |