Usage
1. Create a Domain by clicking "NEW DOMAIN"\
2. Fill the options for your DOMAIN
- select the wallet
- select the fiat currency the invoice will be denominated in
- select an amount in fiat to charge users for verification
- enter the domain (or subdomain) you want to provide verification for
3. You can then use share your signup link with your users to allow them to sign up *Note, you must own this domain and have access to a web server*

Installation
In order for this to work, you need to have ownership of a domain name, and access to a web server that this domain is pointed to. Then, you'll need to set up a proxy that points `https://{your_domain}/.well-known/nostr.json` to `https://{your_lnbits}/nostrnip5/api/v1/domain/{domain_id}/nostr.json`

Example nginx configuration
proxy_cache_path /tmp/nginx_cache keys_zone=nip5_cache:5m levels=1:2 inactive=300s max_size=100m use_temp_path=off;
location /.well-known/nostr.json {
    proxy_pass https://{your_lnbits}/nostrnip5/api/v1/domain/{domain_id}/nostr.json;
    proxy_set_header Host {your_lnbits};
    proxy_ssl_server_name on;

    expires 5m;
    add_header Cache-Control "public, no-transform";

    proxy_cache nip5_cache;
    proxy_cache_lock on;
    proxy_cache_valid 200 300s;
    proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
}

GET /nostrnip5/api/v1/domains
Headers
{"X-Api-Key": <invoice_key>}
Body (application/json)
Returns 200 OK (application/json)
[<domain_object>, ...]
Curl example
curl -X GET {{ request.base_url }}nostrnip5/api/v1/domains -H "X-Api-Key: <invoice_key>"
GET /nostrnip5/api/v1/addresses
Headers
{"X-Api-Key": <invoice_key>}
Body (application/json)
Returns 200 OK (application/json)
[<address_object>, ...]
Curl example
curl -X GET {{ request.base_url }}nostrnip5/api/v1/addresses -H "X-Api-Key: <invoice_key>"
GET /nostrnip5/api/v1/domain/{domain_id}
Headers
{"X-Api-Key": <invoice_key>}
Body (application/json)
Returns 200 OK (application/json)
{domain_object}
Curl example
curl -X GET {{ request.base_url }}nostrnip5/api/v1/domain/{domain_id} -H "X-Api-Key: <invoice_key>"
POST /nostrnip5/api/v1/domain
Headers
{"X-Api-Key": <invoice_key>}
Body (application/json)
Returns 200 OK (application/json)
{domain_object}
Curl example
curl -X POST {{ request.base_url }}nostrnip5/api/v1/domain -H "X-Api-Key: <invoice_key>"
POST /nostrnip5/api/v1/domain/{domain_id}/address
Headers
{"X-Api-Key": <invoice_key>}
Body (application/json)
Returns 200 OK (application/json)
{address_object}
Curl example
curl -X POST {{ request.base_url }}nostrnip5/api/v1/domain/{domain_id}/address -H "X-Api-Key: <invoice_key>"
POST /invoices/api/v1/invoice/{invoice_id}/payments
Headers
Body (application/json)
Returns 200 OK (application/json)
{payment_object}
Curl example
curl -X POST {{ request.base_url }}invoices/api/v1/invoice/{invoice_id}/payments -H "X-Api-Key: <invoice_key>"
GET /nostrnip5/api/v1/domain/{domain_id}/payments/{payment_hash}
Headers
Body (application/json)
Returns 200 OK (application/json)
Curl example
curl -X GET {{ request.base_url }}nostrnip5/api/v1/domain/{domain_id}/payments/{payment_hash} -H "X-Api-Key: <invoice_key>"