KO
|
EN
gitlite — search
Search
#python
#java
#python3
#arduino
#golang
#machine-learning
#rust
#html
#flask
#javascript
#seismology
#nodejs
zapple-pay-backend
★ 17
Open GitHub ↗
No description available.
Download README (.md)
Explore Similar Repositories
rovit
:
RO-ViT CVPR 2023 "Region-Aware Pretraining for Open-Vocabulary Object Detection with Vision Transformers"
url-shortener
:
a url shortener.
bin-pack
:
3d bin packing
sqids-dart
:
Official Dart port of Sqids. Generate short unique IDs from numbers.
kNN-TL
:
[ACL 2023] kNN-TL: k-Nearest-Neighbor Transfer Learning for Low-Resource Neural Machine Translation
// repository documentation
Was this content helpful?
★ 0
(0 ratings)
Select Rating:
★
★
★
★
★
Submit Feedback
Recent Feedback
×
Download README
Do you want to download the
README.md
file for
zapple-pay-backend
?
Download (.md)
# Zapple Pay Zapple Pay lets you use nostr wallet connect to automatically zap notes based on a configured emoji or to subscribe to a user and zap them on a regular basis. ## Build If you are having trouble building you may need to install `libpq-dev`. ```bash sudo apt-get install libpq-dev ``` ## API ### Set User `POST /set-user` payload: the emoji and donations are optional only one of `nwc` or `auth_id` can be set. ```json { "npub": "user's npub", "amount_sats": 1000, "nwc": "user's nwc", "auth_id": "id from /wallet-auth", "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ``` returns: the user's current configs ```json { "zaps": [ { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ], "subscriptions": [] } ``` ### Create Subscription `POST /create-subscription` time_period can be `minute`, `hour`, `day`, `week`, `month`, or `year` only one of `nwc` or `auth_id` can be set. payload: ```json { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day", "nwc": "user's nwc", "auth_id": "id from /wallet-auth" } ``` returns: the user's current configs ```json { "zaps": [], "subscriptions": [ { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ] } ``` ### Get User `GET /get-user/:npub` returns: the user's current configs ```json { "zaps": [ { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ], "subscriptions": [ { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ] } ``` ### Get User Zap Config `GET /get-user/:npub/:emoji` returns: the user's current config ```json { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ``` ### Get User Subscription `GET /get-subscriptions/:npub/:to_npub` returns: the user's current subscription config for `to_npub` ```json { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ``` ### Delete User `GET /delete-user/:npub` deletes all the user's zap configs and subscriptions returns: the user's current configs ```json { "zaps": [ { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ], "subscriptions": [ { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ] } ``` ### Delete User `GET /delete-user/:npub/:emoji` returns: the user's current configs ```json { "zaps": [ { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ], "subscriptions": [ { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ] } ``` ### Delete User Subscription `GET /delete-subscription/:npub/:to_npub` returns: the user's current configs ```json { "zaps": [ { "npub": "user's npub", "amount_sats": 1000, "emoji": "⚡", "donations": [ { "amount_sats": 1000, "lnurl": "donation lnurl", "npub": "donation npub" } ] } ], "subscriptions": [ { "npub": "user's npub", "to_npub": "user to zap npub", "amount_sats": 1000, "time_period": "day" } ] } ``` ### Nostr Wallet Auth `GET /wallet-auth` query params: These query parameters are optional ways to modify the NWA uri given. If you are setting them `time_period` and `amount` but both be set `identity` is optional. - time_period: Time period for the budget. Can be one of `day`, `week`, `month`, or `year` - amount: Amount in satoshis for the budget. - identity: Hex encoded pubkey for which identity to be associated with this connection, if not given zapple pay's key will be used returns: Nostr Wallet Auth uri and id to reference in future api calls. ```json { "id": "hex encoded id", "uri": "nostr+walletauth://blahblah" } ``` ### Nostr Wallet Status `GET /check-wallet-auth` query params: - id: The `id` given in `/wallet-auth` returns: boolean for if we have successfully connected ```json true ``` ### Counts `GET /count` returns: metrics on zapple pay ```json { "users": 426, "zap_configs": 572, "subscription_configs": 2, "zap_count": 4909, "zap_total": 213485 } ```