App Catalog Relay List
NIP-AC
App Catalog Relay List
draft optional
Defines replaceable kind 10067. See NIP-01. There is no d tag.
A user lists the app catalog relays they prefer. Tag order is preference order.
Relays
Public relays are r tags. Each tag is ["r", "<relay url>"]. Further elements are ignored. content is an empty string when every relay is public.
{
"kind": 10067,
"tags": [
["r", "wss://relay.zapstore.dev"],
["r", "wss://relay.example.com"]
],
"content": ""
}The user's list is the public URLs in tag order, followed by the private URLs. An event with no usable URL is an empty list.
Private relays
Private relay URLs MAY be stored in content, encrypted with NIP-44. The shared key is computed using the author's public and private key, as in NIP-51.
The plaintext is a JSON array of relay URL strings. Array order is preference order among the private relays.
["wss://private-relay.example.com"]{
"kind": 10067,
"tags": [
["r", "wss://relay.zapstore.dev"]
],
"content": "<NIP-44 encrypted JSON array>"
}Only the author can decrypt content. Every other client ignores it and uses the public r tags.
Empty content means there are no private relays. If decryption fails, or the plaintext is not a JSON array, the author ignores content and uses the public r tags. An array element that is not a string is skipped.