{"name":"SUPRX Mobile Wallet API","version":1,"notes":["Mobile wallets should derive addresses locally and only send public addresses or signed transactions to this API.","Private keys, xprvs, mnemonics, and descriptors must never be sent to the backend.","Use xprv or descriptor restore in-app. Then scan derived receive and change addresses through the scan endpoint."],"routes":{"health":{"method":"GET","path":"/api/mobile/health","purpose":"Current chain tip, peer count, and fee surface."},"config":{"method":"GET","path":"/api/mobile/config","purpose":"Network rules the app needs to derive and validate SUPRX-native wallets."},"docs":{"method":"GET","path":"/api/mobile/docs","purpose":"Self-describing API reference for mobile integration."},"fees":{"method":"GET","path":"/api/mobile/fees","purpose":"Relay and estimated fee data for send flow."},"validateAddress":{"method":"POST","path":"/api/mobile/validate-address","purpose":"Validate a native SUPRX destination address before send.","body":{"address":"sx1..."}},"scan":{"method":"POST","path":"/api/mobile/scan","purpose":"Scan a batch of derived addresses for live UTXOs and totals.","body":{"addresses":["sx1...","sx1..."]}},"scanDescriptors":{"method":"POST","path":"/api/mobile/scan-descriptors","purpose":"Derive public descriptors into addresses, then scan live UTXOs for those addresses.","body":{"descriptorSets":[{"receiveDescriptor":"wpkh(xpub.../0/*)","changeDescriptor":"wpkh(xpub.../1/*)","rangeStart":0,"rangeEnd":99}]}},"history":{"method":"POST","path":"/api/mobile/history","purpose":"Return native SUPRX transaction history for a batch of addresses.","body":{"addresses":["sx1...","sx1..."],"startHeight":0,"limit":100}},"txDetail":{"method":"GET","path":"/api/mobile/tx/:txid","purpose":"Return a native SUPRX transaction detail object."},"blocks":{"method":"GET","path":"/api/mobile/blocks?limit=100","purpose":"Return the latest native SUPRX blocks for mobile live-block views."},"blockDetail":{"method":"GET","path":"/api/mobile/block/:heightOrHash","purpose":"Return one native SUPRX block with transaction summaries."},"restoreCreate":{"method":"POST","path":"/api/mobile/restore-jobs","purpose":"Start a restore scan job for public descriptors or a derived address set."},"restoreStatus":{"method":"GET","path":"/api/mobile/restore-jobs/:id","purpose":"Check restore scan status and result summary."},"broadcast":{"method":"POST","path":"/api/mobile/broadcast","purpose":"Broadcast a fully signed native SUPRX raw transaction.","body":{"txHex":"hex-encoded raw transaction"}}}}