# Flux Decentralized Cloud API # Flux API Documentation Welcome to the comprehensive API reference for **Flux**, the world's leading decentralized Web3 cloud computing platform. This documentation covers all available API endpoints for interacting with the Flux network, nodes, and decentralized applications. ## About Flux **Flux** is a decentralized Web3 cloud infrastructure powered by globally distributed, user-operated nodes. Built for scalability and censorship resistance, Flux eliminates single points of failure while providing enterprise-grade computing resources for deploying and managing applications. ### Key Features - **🌐 Decentralized Infrastructure**: Over 15,000 nodes worldwide providing 111,500+ cores, 193TB+ RAM, and 6.7PB+ SSD storage - **⚡ High Performance**: Enterprise-grade computing with automatic load balancing and high availability - **🔐 Secure by Design**: Multiple authentication methods with advanced cryptographic security - **💰 Cost Effective**: Competitive pricing compared to traditional cloud providers - **🚀 Developer Friendly**: Docker-based deployments with comprehensive API support ## API Architecture The Flux API uses a **5-tier permission hierarchy** to ensure secure and controlled access: | Permission Level | Description | Authentication Required | |------------------|-------------|-------------------------| | **Public** | Open access endpoints | ❌ No | | **User** | User-level permissions | ✅ Yes | | **FluxTeam** | Flux Team member access | ✅ Yes | | **Admin** | Node administrator access | ✅ Yes | | **AdminAndFluxTeam** | Combined Admin & FluxTeam access | ✅ Yes | | **AppOwner** | Application owner permissions | ✅ Yes | | **AppOwnerAbove** | App Owner, FluxTeam, and Admin access | ✅ Yes | ### Request Methods - **GET**: Most endpoints support GET requests with parameters as query strings or path variables - **POST**: Used for endpoints requiring large payloads or sensitive data - **WebSocket**: Used for real-time communication and simplified authentication flows ## Supported Wallet Authentication Flux supports multiple modern authentication methods for maximum flexibility and security: ### 🛡️ SSP Wallet **Secure, Simple, Powerful** - The next-generation 2FA wallet with enterprise security: - **True 2-of-2 Multi-Signature**: Requires both browser extension and mobile app authorization - **Advanced Security**: BIP48 derivation, Account Abstraction (ERC-4337), Schnorr signatures - **Multi-Chain Support**: Bitcoin, Ethereum, Polygon, BSC, Avalanche, and 15+ blockchains - **WalletConnect v2**: Connect to thousands of dApps seamlessly - **Professional Audit**: Thoroughly audited by security experts in 2025 **Installation**: - Chrome Extension: [SSP Wallet - Chrome Web Store](https://chromewebstore.google.com/detail/ssp-wallet/mgfbabcnedcejkfibpafadgkhmkifhbd) - Mobile App: Available on iOS App Store and Google Play Store - Website: [sspwallet.io](https://sspwallet.io) ### 🔑 ZelCore Wallet **Multi-Asset Cryptocurrency Wallet** - The original Flux ecosystem wallet: - **Self-Custodial**: Full control over your private keys - **Decentralized 2FA (d2FA)**: Unique blockchain-based two-factor authentication - **Multi-Chain**: Support for 80+ blockchains and thousands of assets - **Hardware Integration**: Connect with hardware wallets for enhanced security - **Deep Linking**: Native `zel:` protocol support **Installation**: [zelcore.io](https://zelcore.io) ### 🦊 MetaMask Integration **Ethereum Ecosystem Wallet** - Popular browser extension wallet: - **Ethereum Native**: Full Ethereum and EVM chain support - **Sign-In with Ethereum (SIWE)**: ERC-4361 standard compliance - **Wide Adoption**: Most popular Web3 wallet with extensive dApp support - **Domain Binding**: Advanced phishing protection **Installation**: [metamask.io](https://metamask.io) ### 🔗 WalletConnect v2 **Universal Wallet Connection Protocol** - Connect any compatible wallet: - **700+ Wallets**: Support for hundreds of popular wallets - **Cross-Platform**: Mobile, desktop, and web wallet compatibility - **Secure Bridge**: Encrypted communication between wallet and dApp - **QR Code Connection**: Simple mobile wallet connection ### 📧 Traditional Authentication **Email-Based Login** - For users preferring traditional authentication: - **Firebase Integration**: Google Firebase authentication backend - **Email/Password**: Standard username/password login - **Google OAuth**: Sign in with Google account - **Account Recovery**: Standard password reset flows ## Getting Started Follow these steps to start using the Flux API: ### 1. Choose Your Authentication Method Select from the supported wallet options above based on your development needs and user preferences. All methods are supported by the FluxOS API. ### 2. Set Up Your Wallet Install and configure your chosen wallet: - Download from official sources only - Secure your seed phrase or recovery information - Enable two-factor authentication where available - Test with small amounts first ### 3. Obtain Authentication Credentials Follow the **Authentication** section in this API documentation to: - Generate login phrases - Sign authentication messages - Obtain session tokens - Set up API headers ### 4. Configure API Headers For authenticated requests, include these headers: ``` zelidauth: { "zelid": "your-wallet-address", "signature": "signed-message-signature", "loginPhrase": "temporary-login-phrase" } ``` **Note**: Signature values may need to be URL-encoded depending on your HTTP client. ### 5. Start Making API Calls Test your setup with public endpoints first, then proceed to authenticated endpoints once your credentials are properly configured. ## Support & Community - **Documentation**: [docs.runonflux.com](https://docs.runonflux.com) - **Discord Community**: [discord.io/runonflux](https://discord.io/runonflux) - **GitHub**: [github.com/RunOnFlux](https://github.com/RunOnFlux) - **Twitter/X**: [@RunOnFlux](https://x.com/runonflux) - **Website**: [runonflux.com](https://runonflux.com) **🚀 Ready to build on the decentralized web? Let's get started!** ## Important Notes - Login phrases expire after 15 minutes - Session tokens are valid for up to 14 days - Always use HTTPS in production environments - Signature values may need URL encoding depending on your HTTP client ## Authentication Workflows ### 🔐 Complete Authentication Flow **Step 1: Get Login Phrase** ```bash curl -X GET "https://api.runonflux.io/id/loginphrase" ``` **Step 2: Sign the Login Phrase** - **SSP Wallet**: Use browser extension + mobile app to sign the message - **ZelCore**: Use the wallet's message signing feature - **MetaMask**: Use `personal_sign` method - **Hardware Wallet**: Sign via hardware device integration **Step 3: Verify Login** ```bash curl -X POST "https://api.runonflux.io/id/verifylogin" \ -H "Content-Type: application/json" \ -d '{ "zelid": "your-wallet-address", "loginPhrase": "phrase-from-step-1", "signature": "your-signature-from-step-2" }' ``` **Step 4: Use Authentication Header** ```bash curl -X GET "https://api.runonflux.io/id/loggedsessions" \ -H "zelidauth: zelid=your-address&signature=your-signature&loginPhrase=your-phrase" ``` ### 📱 SSP Wallet Integration Guide **Browser Extension Setup:** 1. Install SSP Wallet Chrome Extension 2. Install SSP Key mobile app (iOS/Android) 3. Pair devices using QR code 4. Fund wallet with small amount for testing **Signing Messages with SSP:** ```javascript // Connect to SSP Wallet if (window.ssp) { const accounts = await window.ssp.request({ method: 'wallet_requestPermissions', params: [{ wallet_accounts: {} }] }); // Sign login phrase const signature = await window.ssp.request({ method: 'personal_sign', params: [loginPhrase, accounts[0]] }); } ``` ### 🦊 MetaMask Integration Guide **Connect and Sign:** ```javascript // Connect MetaMask const accounts = await ethereum.request({ method: 'eth_requestAccounts' }); // Sign login phrase const signature = await ethereum.request({ method: 'personal_sign', params: [loginPhrase, accounts[0]] }); // Use Ethereum address as zelid const zelid = accounts[0]; ``` ### 🔑 ZelCore Wallet Integration **Deep Link Integration:** ```javascript // Generate ZelCore deep link for signing const zelcoreUrl = `zel:?action=sign&message=${encodeURIComponent(loginPhrase)}&icon=https://yourapp.com/icon.png&callback=${encodeURIComponent('https://yourapp.com/auth/callback')}`; // Open ZelCore for signing window.location.href = zelcoreUrl; ``` **WebSocket Integration:** ```javascript // Listen for ZelCore signature via WebSocket const ws = new WebSocket(`wss://api.runonflux.io/ws/id/${loginPhrase}`); ws.onmessage = (event) => { const authData = JSON.parse(event.data); if (authData.status === 'success') { // Authentication successful console.log('Signed in with ZelID:', authData.data.zelid); } }; ``` ### 🔗 WalletConnect v2 Integration **Setup WalletConnect:** ```javascript import { SignClient } from '@walletconnect/sign-client'; const signClient = await SignClient.init({ projectId: 'your-walletconnect-project-id', metadata: { name: 'Your Flux App', description: 'Flux Network Integration', url: 'https://yourapp.com', icons: ['https://yourapp.com/logo.png'] } }); // Connect to wallet const { uri, approval } = await signClient.connect({ requiredNamespaces: { eip155: { methods: ['personal_sign'], chains: ['eip155:1'], events: ['chainChanged', 'accountsChanged'] } } }); // Sign message when connected const signature = await signClient.request({ topic: session.topic, chainId: 'eip155:1', request: { method: 'personal_sign', params: [loginPhrase, address] } }); ``` ### 📧 Traditional Email Authentication **Firebase Integration:** ```javascript import { getAuth, signInWithEmailAndPassword } from 'firebase/auth'; // Email/password login const auth = getAuth(); const userCredential = await signInWithEmailAndPassword(auth, email, password); // Get ID token for API authentication const idToken = await userCredential.user.getIdToken(); // Use token in API calls fetch('https://api.runonflux.io/protected-endpoint', { headers: { 'Authorization': `Bearer ${idToken}`, 'Content-Type': 'application/json' } }); ``` ### ⚠️ Common Integration Issues **Login Phrase Expiration:** ```javascript // Always check phrase timestamp const phraseTimestamp = parseInt(loginPhrase.substring(0, 13)); const now = Date.now(); const age = now - phraseTimestamp; if (age > 15 * 60 * 1000) { // 15 minutes throw new Error('Login phrase expired, get a new one'); } ``` **Signature URL Encoding:** ```javascript // Always URL encode signatures for headers const encodedSignature = encodeURIComponent(signature); const authHeader = `zelid=${zelid}&signature=${encodedSignature}&loginPhrase=${loginPhrase}`; ``` **Error Handling:** ```javascript try { const response = await fetch('/api/authenticated-endpoint', { headers: { 'zelidauth': authHeader } }); if (response.status === 401) { // Re-authenticate user redirectToLogin(); } } catch (error) { console.error('API call failed:', error); } ``` ## API Version Information **Current Version**: 6.6.1 **Version Notes**: - All endpoints documented in this specification are available in version 6.6.1 - This documentation reflects the current stable API implementation - For the latest changes and updates, refer to the [Flux GitHub repository](https://github.com/runonflux/flux) Version: 6.6.1 License: GNU AGPLv3 ## Servers Production API Gateway - Global load-balanced endpoint ``` https://api.runonflux.io ``` Backup Production API Gateway ``` https://api.runonflux.com ``` Testnet API Gateway - For development and testing ``` https://testnet-api.runonflux.io ``` Direct Flux Node Connection - Connect directly to specific node ``` https://{nodeip}:16127 ``` Variables: - `nodeip`: Flux node IP address or hostname Default: "localhost" Local Development Node - For local testing ``` http://localhost:16127 ``` Explorer API - Blockchain data and statistics ``` https://explorer.runonflux.io ``` Network Statistics API - Real-time network metrics ``` https://stats.runonflux.io ``` ## Security ### ZelID ZelID is an authentication system based on Bitcoin message signing and Ethereum personal sign. zelidauth header consist of stringified query of zelid, signature, loginPhrase Please refer to Authentication workflow section on how to obtain correct zelidauth header. An example of a header is `zelid=1CbErtneaX2QVyUfwU7JGB7VzvPgrgc3uC&signature=%2BZB3oSrsw6XkBxxlbwk33LEBJYvqtbMIm2kL9JzuoXMC6pSZd0lBHdnhJYzMTXv81zZQ7G%2FpkK1NvYN7cNF0GE%3D&loginPhrase=1574991374806spbcvsuwerl52tppx9dw5khuz8rew13mkq86gg8r2c` Type: apiKey In: header Name: zelidauth ## Download OpenAPI description [Flux Decentralized Cloud API](https://docs.runonflux.io/_spec/fluxapi.yaml) ## Authentication **Authentication & Authorization Endpoints** Essential API endpoints for secure authentication and authorization with the Flux network. These endpoints handle login phrase generation, message signing verification, and session management for all supported wallet types including SSP Wallet, ZelCore, MetaMask, and WalletConnect integrations. **Key Features:** - Multi-wallet authentication support - Secure login phrase generation - Cryptographic signature verification - Session token management - 5-tier permission system integration ### Obtain login phrase - [GET /id/loginphrase](https://docs.runonflux.io/fluxapi/authentication/loginphrase.md): Obtain valid Login Phrase for signing into Flux. Login Phrase is at least 40 characters, first 13 characters is server timestamp and is valid for 15 minutes. ### Login into Flux - [POST /id/verifylogin](https://docs.runonflux.io/fluxapi/authentication/verifylogin.md): Login into Flux by submitting correct ZelID, login phrase and signature. Note that to get the signature of the signed message you would need to do the signing on Zelcore or your BTC wallet or your ETH wallet. If success status response is returned, we can use the supplied data(zelid, loginPhrase, signature) as zelauth header as part of api calls that require a user to be logged in. Additionally it is possible to listen for a response on websocket. ws://{Flux_IP}:16127/ws/id/{loginPhrase}. ### Provide Signature - [POST /id/providesign](https://docs.runonflux.io/fluxapi/authentication/providesign.md): Provide requested signature from signed message to return data. ### Logs out a specific session - [POST /id/logoutspecificsession](https://docs.runonflux.io/fluxapi/authentication/logoutspecificsession.md): Logs out a specific session. Requires the knowledge of a session loginPhrase and so users level is sufficient and user cannot logout another user as he does not know the loginPhrase. Admin can logout any specific session. ### Obtain login phrase - [GET /id/loginphrase](https://docs.runonflux.io/fluxapi/id/loginphrase.md): Obtain valid Login Phrase for signing into Flux. Login Phrase is at least 40 characters, first 13 characters is server timestamp and is valid for 15 minutes. ### Login into Flux - [POST /id/verifylogin](https://docs.runonflux.io/fluxapi/id/verifylogin.md): Login into Flux by submitting correct ZelID, login phrase and signature. Note that to get the signature of the signed message you would need to do the signing on Zelcore or your BTC wallet or your ETH wallet. If success status response is returned, we can use the supplied data(zelid, loginPhrase, signature) as zelauth header as part of api calls that require a user to be logged in. Additionally it is possible to listen for a response on websocket. ws://{Flux_IP}:16127/ws/id/{loginPhrase}. ### Provide Signature - [POST /id/providesign](https://docs.runonflux.io/fluxapi/id/providesign.md): Provide requested signature from signed message to return data. ### Logs out a specific session - [POST /id/logoutspecificsession](https://docs.runonflux.io/fluxapi/id/logoutspecificsession.md): Logs out a specific session. Requires the knowledge of a session loginPhrase and so users level is sufficient and user cannot logout another user as he does not know the loginPhrase. Admin can logout any specific session. ## ID **Identity & User Management** Comprehensive identity management endpoints that handle user authentication, authorization levels, and identity verification across multiple blockchain addresses (Bitcoin P2PKH, Ethereum, ZelID). These endpoints manage user sessions, permissions, and access control throughout the Flux ecosystem. **Supported Address Types:** - Bitcoin P2PKH addresses - Ethereum addresses - ZelID addresses - Multi-signature addresses ### Obtain login phrase - [GET /id/loginphrase](https://docs.runonflux.io/fluxapi/authentication/loginphrase.md): Obtain valid Login Phrase for signing into Flux. Login Phrase is at least 40 characters, first 13 characters is server timestamp and is valid for 15 minutes. ### Login into Flux - [POST /id/verifylogin](https://docs.runonflux.io/fluxapi/authentication/verifylogin.md): Login into Flux by submitting correct ZelID, login phrase and signature. Note that to get the signature of the signed message you would need to do the signing on Zelcore or your BTC wallet or your ETH wallet. If success status response is returned, we can use the supplied data(zelid, loginPhrase, signature) as zelauth header as part of api calls that require a user to be logged in. Additionally it is possible to listen for a response on websocket. ws://{Flux_IP}:16127/ws/id/{loginPhrase}. ### Provide Signature - [POST /id/providesign](https://docs.runonflux.io/fluxapi/authentication/providesign.md): Provide requested signature from signed message to return data. ### Logs out a specific session - [POST /id/logoutspecificsession](https://docs.runonflux.io/fluxapi/authentication/logoutspecificsession.md): Logs out a specific session. Requires the knowledge of a session loginPhrase and so users level is sufficient and user cannot logout another user as he does not know the loginPhrase. Admin can logout any specific session. ### Obtain login phrase - [GET /id/loginphrase](https://docs.runonflux.io/fluxapi/id/loginphrase.md): Obtain valid Login Phrase for signing into Flux. Login Phrase is at least 40 characters, first 13 characters is server timestamp and is valid for 15 minutes. ### Obtain emergency login phrase - [GET /id/emergencyphrase](https://docs.runonflux.io/fluxapi/id/emergencyloginphrase.md): Obtain emergency Login Phrase for signing into Flux. ### Login into Flux - [POST /id/verifylogin](https://docs.runonflux.io/fluxapi/id/verifylogin.md): Login into Flux by submitting correct ZelID, login phrase and signature. Note that to get the signature of the signed message you would need to do the signing on Zelcore or your BTC wallet or your ETH wallet. If success status response is returned, we can use the supplied data(zelid, loginPhrase, signature) as zelauth header as part of api calls that require a user to be logged in. Additionally it is possible to listen for a response on websocket. ws://{Flux_IP}:16127/ws/id/{loginPhrase}. ### Provide Signature - [POST /id/providesign](https://docs.runonflux.io/fluxapi/id/providesign.md): Provide requested signature from signed message to return data. ### Obtain all logged sessions of ZelID. - [GET /id/loggedsessions](https://docs.runonflux.io/fluxapi/id/loggedsessions.md): Gets all currently active logged sessions in Flux tied to given ZelID. ### Logs out current session - [GET /id/logoutcurrentsession](https://docs.runonflux.io/fluxapi/id/logoutcurrentsession.md): This call logs out currently logged session which is determined by the supplied authentication header. ### Logs out all sessions - [GET /id/logoutallsessions](https://docs.runonflux.io/fluxapi/id/logoutallsession.md): This call logs out all logged sessions which are determined by the supplied authentication header. ### Gets information about logged users - [GET /id/loggedusers](https://docs.runonflux.io/fluxapi/id/loggedusers.md): This call gets basic infromation about currently logged sessions of all users. ### Lists active login phrases - [GET /id/activeloginphrases](https://docs.runonflux.io/fluxapi/id/activeloginphrases.md): This call gets a list of login phrases that are currently active (were generated less than 15 minutes ago) - phrases that have been used recently and phrases that can be used to log in.. ### Logs out all users - [GET /id/logoutallusers](https://docs.runonflux.io/fluxapi/id/logoutallusers.md): This call logs out all logged users (including fluxteam, admins). ### Logs out a specific session - [POST /id/logoutspecificsession](https://docs.runonflux.io/fluxapi/id/logoutspecificsession.md): Logs out a specific session. Requires the knowledge of a session loginPhrase and so users level is sufficient and user cannot logout another user as he does not know the loginPhrase. Admin can logout any specific session. ### Checks the privilege level of user - [POST /id/checkprivilege](https://docs.runonflux.io/fluxapi/id/checkloggeduser.md): Checks the privilege level of the user. The 5 levels are public, user, admin, flux team and app owner. ## Daemon **Flux Daemon Operations** Core blockchain daemon endpoints for interacting with the underlying Flux blockchain node. These endpoints provide access to blockchain data, wallet operations, mining information, network statistics, and node management functions. Essential for node operators and developers building blockchain-integrated applications. **Core Functions:** - Blockchain state queries - Transaction management - Wallet operations - Network information - Mining and staking operations ### RPC list - [GET /daemon/help](https://docs.runonflux.io/fluxapi/daemon/help.md): Gets list of RPC for the Flux daemon or if command query is used it will respond with the help info for that specified call. ### Flux daemon info - [GET /daemon/getinfo](https://docs.runonflux.io/fluxapi/daemon/getinfo.md): Returns an object containing various state info for the Flux daemon. ### Flux node status - [GET /daemon/getfluxnodestatus](https://docs.runonflux.io/fluxapi/daemon/getfluxnodestatus.md): Returns an object containing various state of the Flux node. ### Flux node list - [GET /daemon/listfluxnodes](https://docs.runonflux.io/fluxapi/daemon/listfluxnodes.md): Gets a ranked list of Flux nodes. ### Deterministic FluxNode list - [GET /daemon/viewdeterministicfluxnodelist](https://docs.runonflux.io/fluxapi/daemon/viewdeterministicfluxnodelist.md): View deterministic list of FluxNodes by rank. ### Flux node count - [GET /daemon/getfluxnodecount](https://docs.runonflux.io/fluxapi/daemon/getfluxnodecount.md): Returns a count of FluxNodes and enabled FluxNodes categorized by tiers. ### FluxNode DOS list - [GET /daemon/getdoslist](https://docs.runonflux.io/fluxapi/daemon/getdoslist.md): Get a list of all fluxnodes in the DOS list. ### FluxNode start list - [GET /daemon/getstartlist](https://docs.runonflux.io/fluxapi/daemon/getstartlist.md): Get a list of all Fluxnodes in the start list. ### Current list of winners - [GET /daemon/fluxnodecurrentwinner](https://docs.runonflux.io/fluxapi/daemon/fluxnodecurrentwinner.md): Gets a list of current FluxNode winners. ### Block hash of tip on longest chain - [GET /daemon/getbestblockhash](https://docs.runonflux.io/fluxapi/daemon/getbestblockhash.md): Returns the hash of the best (tip) block in the longest block chain. ### Get block data - [GET /daemon/getblock](https://docs.runonflux.io/fluxapi/daemon/getblock.md): Gets block data using block height or block hash you specify to get info for with verbosity option. ### Blockchain info - [GET /daemon/getblockchaininfo](https://docs.runonflux.io/fluxapi/daemon/getblockchaininfo.md): Returns an object containing various state info regarding block chain processing. Note that when the chain tip is at the last block before a network upgrade activation, consensus.chaintip != consensus.nextblock. ### Current block count - [GET /daemon/getblockcount](https://docs.runonflux.io/fluxapi/daemon/getblockcount.md): Returns the number of blocks in the best valid block chain. ### Get block deltas data - [GET /daemon/getblockdeltas](https://docs.runonflux.io/fluxapi/daemon/getblockdeltas.md): Returns data of block deltas. ### Get block's hash - [GET /daemon/getblockhash](https://docs.runonflux.io/fluxapi/daemon/getblockhash.md): Returns hash of block in best-block-chain at index provided. ### Block header info - [GET /daemon/getblockheader](https://docs.runonflux.io/fluxapi/daemon/getblockheader.md): Returns an Object with information about blockheader. ### List of known chain tips - [GET /daemon/getchaintips](https://docs.runonflux.io/fluxapi/daemon/getchaintips.md): Return information about all known tips in the block tree, including the main chain as well as orphaned branches. ### Proof of work difficulty - [GET /daemon/getdifficulty](https://docs.runonflux.io/fluxapi/daemon/getdifficulty.md): Returns the proof-of-work difficulty as a multiple of the minimum difficulty. ### Memory pool info - [GET /daemon/getmempoolinfo](https://docs.runonflux.io/fluxapi/daemon/getmempoolinfo.md): Returns details on the active state of the TX memory pool. ### Transaction ids in memory pool - [GET /daemon/getrawmempool](https://docs.runonflux.io/fluxapi/daemon/getrawmempool.md): Returns all transaction ids in memory pool as a json array of string. ### Transaction IDs in memory pool - [GET /daemon/gettxout](https://docs.runonflux.io/fluxapi/daemon/gettxout.md): Returns all transaction ids in memory pool as a json array of string. ### Hex-encoded proof of transaction - [GET /daemon/gettxoutproof](https://docs.runonflux.io/fluxapi/daemon/gettxoutproof.md): Returns a hex-encoded proof that "txid" was included in a block. ### Unspent transaction output set info - [GET /daemon/gettxoutsetinfo](https://docs.runonflux.io/fluxapi/daemon/gettxoutsetinfo.md): Returns statistics about the unspent transaction output set. ### Verifies a proof - [GET /daemon/verifytxoutproof](https://docs.runonflux.io/fluxapi/daemon/verifytxoutproof.md): Verifies that a proof points to a transaction in a block, returning the transaction it commits to and throwing an RPC error if the block is not in our best chain. ### Return spent info - [GET /daemon/getspentinfo](https://docs.runonflux.io/fluxapi/daemon/getspentinfo.md): Return spent info. Transaction ID and index required as parameters. ### Block reward - [GET /daemon/getblocksubsidy](https://docs.runonflux.io/fluxapi/daemon/getblocksubsidy.md): Returns block subsidy reward, taking into account the mining slow start of block at index provided. ### Data to construct a block - [GET /daemon/getblocktemplate](https://docs.runonflux.io/fluxapi/daemon/getblocktemplate.md): It returns data needed to construct a block to work on. ### Average solutions per second - [GET /daemon/getlocalsolps](https://docs.runonflux.io/fluxapi/daemon/getlocalsolps.md): Returns the average local solutions per second since this node was started. ### Mining related info - [GET /daemon/getmininginfo](https://docs.runonflux.io/fluxapi/daemon/getmininginfo.md): Returns a json object containing mining-related information. ### Estimated network solutions - [GET /daemon/getnetworkhashps](https://docs.runonflux.io/fluxapi/daemon/getnetworkhashps.md): Returns the estimated network solutions per second based on the last n blocks. ### Estimated network solutions - [GET /daemon/getnetworksolps](https://docs.runonflux.io/fluxapi/daemon/getnetworksolps.md): Returns the estimated network solutions per second based on the last n blocks. ### Connection count - [GET /daemon/getconnectioncount](https://docs.runonflux.io/fluxapi/daemon/getconnectioncount.md): The peer connection count. ### Deprecation info - [GET /daemon/getdeprecationinfo](https://docs.runonflux.io/fluxapi/daemon/getdeprecationinfo.md): Returns an object containing current version and deprecation block height. Applicable only on mainnet. ### Network traffic info - [GET /daemon/getnettotals](https://docs.runonflux.io/fluxapi/daemon/getnettotals.md): Returns information about network traffic, including bytes in, bytes out, and current time. ### Info regarding P2P network - [GET /daemon/getnetworkinfo](https://docs.runonflux.io/fluxapi/daemon/getnetworkinfo.md): Returns an object containing various state info regarding P2P networking. ### Peer info - [GET /daemon/getpeerinfo](https://docs.runonflux.io/fluxapi/daemon/getpeerinfo.md): Returns data about each connected network node as a json array of objects. ### Ban list - [GET /daemon/listbanned](https://docs.runonflux.io/fluxapi/daemon/listbanned.md): List all banned IPs/Subnets. ### Create raw transaction (GET) - [GET /daemon/createrawtransaction](https://docs.runonflux.io/fluxapi/daemon/createrawtransaction.md): Create a raw transaction using path parameters. ### Create hex-encoded raw transaction - [POST /daemon/createrawtransaction](https://docs.runonflux.io/fluxapi/daemon/createrawtransactionpost.md): Create a transaction spending the given inputs and sending to the given addresses. Returns hex-encoded raw transaction. Note that the transaction's inputs are not signed, and it is not stored in the wallet or transmitted to the network. ### Decoded info of the hex-encoded transaction - [POST /daemon/decoderawtransaction](https://docs.runonflux.io/fluxapi/daemon/decoderawtransactionpost.md): Return a JSON object representing the serialized, hex-encoded transaction. ### Decoded info of the hex-encoded transaction - [GET /daemon/decoderawtransaction](https://docs.runonflux.io/fluxapi/daemon/decoderawtransaction.md): Return a JSON object representing the serialized, hex-encoded transaction. ### Decode hex script - [POST /daemon/decodescript](https://docs.runonflux.io/fluxapi/daemon/decodescriptpost.md): Decode a hex-encoded script. ### Decode hex script - [GET /daemon/decodescript](https://docs.runonflux.io/fluxapi/daemon/decodescript.md): Decode a hex-encoded script. ### Get raw transaction data - [GET /daemon/getrawtransaction](https://docs.runonflux.io/fluxapi/daemon/getrawtransaction.md): Gets raw transaction data from the txid, if verbose=0 then only hex data of transaction is shown, if verbose=1 then it will return with object of info of txid. ### Add inputs to a transaction - [POST /daemon/fundrawtransaction](https://docs.runonflux.io/fluxapi/daemon/fundrawtransactionpost.md): Add inputs to a transaction until it has enough in value to meet its out value. This will not modify existing inputs, and will add one change output to the outputs. Note that inputs which were signed may need to be resigned after completion since in/outputs have been added. The inputs added will not be signed, use signrawtransaction for that. ### Add inputs to a transaction - [GET /daemon/fundrawtransaction](https://docs.runonflux.io/fluxapi/daemon/fundrawtransaction.md): Add inputs to a transaction until it has enough in value to meet its out value. This will not modify existing inputs, and will add one change output to the outputs. Note that inputs which were signed may need to be resigned after completion since in/outputs have been added. The inputs added will not be signed, use signrawtransaction for that. ### Send raw transaction - [POST /daemon/sendrawtransaction](https://docs.runonflux.io/fluxapi/daemon/sendrawtransactionpost.md): Submits raw transaction (serialized, hex-encoded) to local node and network. Also see createrawtransaction and signrawtransaction calls. ### Send raw transaction - [GET /daemon/sendrawtransaction](https://docs.runonflux.io/fluxapi/daemon/sendrawtransaction.md): Submits raw transaction (serialized, hex-encoded) to local node and network. Also see createrawtransaction and signrawtransaction calls. ### Create multi-sig address - [POST /daemon/createmultisig](https://docs.runonflux.io/fluxapi/daemon/createmultisigpost.md): Creates a multi-signature address with n signature of n keys required. ### Create multi-sig address - [GET /daemon/createmultisig](https://docs.runonflux.io/fluxapi/daemon/createmultisig.md): Creates a multi-signature address with n signature of n keys required. ### Estimate fee nblocks - [GET /daemon/estimatefee](https://docs.runonflux.io/fluxapi/daemon/estimatefee.md): Estimates the approximate fee per kilobyte needed for a transaction to begin confirmation within nblocks blocks. ### Estimate priority nblocks - [GET /daemon/estimatepriority](https://docs.runonflux.io/fluxapi/daemon/estimatepriority.md): Estimates the approximate priority a zero-fee transaction needs to begin confirmation within nblocks blocks. ### Info of the Flux address - [GET /daemon/validateaddress](https://docs.runonflux.io/fluxapi/daemon/validateaddress.md): Return information about the given Flux address. ### Verify a message - [POST /daemon/verifymessage](https://docs.runonflux.io/fluxapi/daemon/verifymessagepost.md): Verify a signed message. ### Verify a message - [GET /daemon/verifymessage](https://docs.runonflux.io/fluxapi/daemon/verifymessage.md): Verify a signed message. ### Information about in-wallet transaction - [GET /daemon/gettransaction](https://docs.runonflux.io/fluxapi/daemon/gettransaction.md): Get detailed information about in-wallet transaction. ### Information about given z address - [GET /daemon/zvalidateaddress](https://docs.runonflux.io/fluxapi/daemon/zvalidateaddress.md): Return information about the given z address. ### Benchmark results - [GET /daemon/getbenchmarks](https://docs.runonflux.io/fluxapi/daemon/getbenchmarks.md): Return most recent benchmark results. ### Bench status - [GET /daemon/getbenchstatus](https://docs.runonflux.io/fluxapi/daemon/getbenchstatus.md): This will return the status of the node, what fluxbenchd determined the tier the server could pass for, and if Flux backend is connected. If any one of these return a negative result the FluxNode will fail to confirm. ### Get block hashes - [GET /daemon/getblockhashes](https://docs.runonflux.io/fluxapi/daemon/getblockhashes.md): Returns array of block hashes for given height range. ### Get block hashes (POST) - [POST /daemon/getblockhashes](https://docs.runonflux.io/fluxapi/daemon/getblockhashespost.md): Returns array of block hashes for given height range. ### Get address transaction IDs - [GET /daemon/getaddresstxids](https://docs.runonflux.io/fluxapi/daemon/getsingleaddressstxids.md): Get all transaction IDs for a specific address. ### Get address transaction IDs (POST) - [POST /daemon/getaddresstxids](https://docs.runonflux.io/fluxapi/daemon/getaddresstxids.md): Get all transaction IDs for multiple addresses. ### Get address balance - [GET /daemon/getaddressbalance](https://docs.runonflux.io/fluxapi/daemon/getsingleaddressbalance.md): Get balance for a specific address. ### Get address balance (POST) - [POST /daemon/getaddressbalance](https://docs.runonflux.io/fluxapi/daemon/getaddressbalance.md): Get balance for multiple addresses. ### Get address deltas - [GET /daemon/getaddressdeltas](https://docs.runonflux.io/fluxapi/daemon/getsingleaddressdeltas.md): Get balance changes (deltas) for a specific address. ### Get address deltas (POST) - [POST /daemon/getaddressdeltas](https://docs.runonflux.io/fluxapi/daemon/getaddressdeltas.md): Get balance changes for multiple addresses. ### Get address UTXOs - [GET /daemon/getaddressutxos](https://docs.runonflux.io/fluxapi/daemon/getsingleaddressutxos.md): Get unspent transaction outputs for a specific address. ### Get address UTXOs (POST) - [POST /daemon/getaddressutxos](https://docs.runonflux.io/fluxapi/daemon/getaddressutxos.md): Get UTXOs for multiple addresses. ### Get address mempool transactions - [GET /daemon/getaddressmempool](https://docs.runonflux.io/fluxapi/daemon/getsingleaddressmempool.md): Get mempool transactions for a specific address. ### Get address mempool (POST) - [POST /daemon/getaddressmempool](https://docs.runonflux.io/fluxapi/daemon/getaddressmempool.md): Get mempool transactions for multiple addresses. ### Send from account - [GET /daemon/sendfrom](https://docs.runonflux.io/fluxapi/daemon/sendfrom.md): Send Flux from a specific account to an address. ### Send from account (POST) - [POST /daemon/sendfrom](https://docs.runonflux.io/fluxapi/daemon/sendfrompost.md): Send Flux from account using POST method. ### Submit block - [GET /daemon/submitblock](https://docs.runonflux.io/fluxapi/daemon/submitblock.md): Submit a block to the network. ### Submit block (POST) - [POST /daemon/submitblock](https://docs.runonflux.io/fluxapi/daemon/submitblockpost.md): Submit a block using POST method. ### ZCash raw joinsplit - [GET /daemon/zcrawjoinsplit](https://docs.runonflux.io/fluxapi/daemon/zcrawjoinsplit.md): Create a raw joinsplit transaction. ### ZCash raw joinsplit (POST) - [POST /daemon/zcrawjoinsplit](https://docs.runonflux.io/fluxapi/daemon/zcrawjoinsplitpost.md): Create raw joinsplit using POST method. ### ZCash raw receive - [GET /daemon/zcrawreceive](https://docs.runonflux.io/fluxapi/daemon/zcrawreceive.md): Decrypt and return information about a note. ### ZCash raw receive (POST) - [POST /daemon/zcrawreceive](https://docs.runonflux.io/fluxapi/daemon/zcrawreceivepost.md): Decrypt note using POST method. ### Priortise a transaction - [GET /daemon/prioritisetransaction](https://docs.runonflux.io/fluxapi/daemon/prioritisetransaction.md): Accepts the transaction into mined blocks at a higher (or lower) priority. ### Reindex Flux daemon - [GET /daemon/reindex](https://docs.runonflux.io/fluxapi/daemon/reindexflux.md): Tries to reindex Flux daemon running on the FluxNode the call is run against. Flux daemon is firstly stopped and then started with reindex flag. ### Stop Flux daemon - [GET /daemon/stop](https://docs.runonflux.io/fluxapi/daemon/stop.md): This will stop the Flux daemon from running. ### Create fluxnode private key - [GET /daemon/createfluxnodekey](https://docs.runonflux.io/fluxapi/daemon/createfluxnodekey.md): Create a new fluxnode private key. ### The fluxnode conf file - [GET /daemon/listfluxnodeconf](https://docs.runonflux.io/fluxapi/daemon/listfluxnodeconf.md): View fluxnode conf file in JSON format, this will return empty for most unless running a hot wallet. ### Fluxnode transaction outputs - [GET /daemon/getfluxnodeoutputs](https://docs.runonflux.io/fluxapi/daemon/getfluxnodeoutputs.md): Print all fluxnode transaction outputs. ### Start FluxNode commmand - [GET /daemon/startfluxnode](https://docs.runonflux.io/fluxapi/daemon/startfluxnode.md): Attempts to start one or more FluxNode. This call will only work if running a hot FluxNode which is highly not recommended. It is a control wallet function so basically your wallet containing the collateral funds. ### Start fluxnode command - [GET /daemon/startdeterministicfluxnode](https://docs.runonflux.io/fluxapi/daemon/startdeterministicfluxnode.md): Attempts to start one fluxnode. Same as the call this call will only work if running a hot FluxNode which is highly not recommended. It is a control wallet function so basically your wallet containing the collateral funds. ### Verify blockchain data - [GET /daemon/verifychain](https://docs.runonflux.io/fluxapi/daemon/verifychain.md): Verifies blockchain database. ### Add, remove, or try to connect a node - [GET /daemon/addnode](https://docs.runonflux.io/fluxapi/daemon/addnode.md): Attempts to add or remove a node from the addnode list. Or try a connection to a node once. ### Clear banned IP's - [GET /daemon/clearbanned](https://docs.runonflux.io/fluxapi/daemon/clearbanned.md): Clear all banned IP's. ### Disconnect a node - [GET /daemon/disconnectnode](https://docs.runonflux.io/fluxapi/daemon/disconnectnode.md): Immediately disconnects from the specified node. ### Info of added node/nodes - [GET /daemon/getaddednodeinfo](https://docs.runonflux.io/fluxapi/daemon/getaddednodeinfo.md): Returns information about the given added node, or all added nodes(note that onetry addnodes are not listed here). If dns is false, only a list of added nodes will be provided, otherwise connected information will also be available. ### Add or remove a IP from banned list - [GET /daemon/setban](https://docs.runonflux.io/fluxapi/daemon/setban.md): Attempts add or remove a IP/Subnet from the banned list. ### Sign raw transaction - [POST /daemon/signrawtransaction](https://docs.runonflux.io/fluxapi/daemon/signrawtransactionpost.md): Sign inputs for raw transaction (serialized, hex-encoded). The second optional argument (may be null) is an array of previous transaction outputs that this transaction depends on but may not yet be in the block chain. The third optional argument (may be null) is an array of base58-encoded private keys that, if given, will be the only keys used to sign the transaction. ### Sign raw transaction - [GET /daemon/signrawtransaction](https://docs.runonflux.io/fluxapi/daemon/signrawtransaction.md): Sign inputs for raw transaction (serialized, hex-encoded). The second optional argument (may be null) is an array of previous transaction outputs that this transaction depends on but may not yet be in the block chain. The third optional argument (may be null) is an array of base58-encoded private keys that, if given, will be the only keys used to sign the transaction. ### Add multisig address to the wallet - [POST /daemon/addmultisigaddress](https://docs.runonflux.io/fluxapi/daemon/addmultisigaddresspost.md): Add a nrequired-to-sign multisignature address to the wallet. Each key is a Flux address or hex-encoded public key. ### Add multisig address to the wallet - [GET /daemon/addmultisigaddress](https://docs.runonflux.io/fluxapi/daemon/addmultisigaddress.md): Add a nrequired-to-sign multisignature address to the wallet. Each key is a Flux address or hex-encoded public key. ### Backup wallet to destination file - [GET /daemon/backupwallet](https://docs.runonflux.io/fluxapi/daemon/backupwallet.md): Safely copies wallet.dat to destination filename. ### Get private key of a t-addr - [GET /daemon/dumpprivkey](https://docs.runonflux.io/fluxapi/daemon/dumpprivkey.md): Reveals the private key corresponding to t-addr. ### Total balance of wallet - [GET /daemon/getbalance](https://docs.runonflux.io/fluxapi/daemon/getbalance.md): Returns the server's total available balance. ### Get new address - [GET /daemon/getnewaddress](https://docs.runonflux.io/fluxapi/daemon/getnewaddress.md): Returns a new Flux address for receiving payments. ### Get new change address - [GET /daemon/getrawchangeaddress](https://docs.runonflux.io/fluxapi/daemon/getrawchangeaddress.md): Returns a new Flux address, for receiving change. This is for use with raw transactions, NOT normal use. ### Total received by the address - [GET /daemon/getreceivedbyaddress](https://docs.runonflux.io/fluxapi/daemon/getreceivedbyaddress.md): Returns the total amount received by the given Flux address in transactions with at least minconf confirmations. ### Get total unconfirmed balance - [GET /daemon/getunconfirmedbalance](https://docs.runonflux.io/fluxapi/daemon/getunconfirmedbalance.md): Returns the server's total unconfirmed balance. ### Get various info of the wallet - [GET /daemon/getwalletinfo](https://docs.runonflux.io/fluxapi/daemon/getwalletinfo.md): Returns an object containing various wallet state info. ### Import address to watch - [GET /daemon/importaddress](https://docs.runonflux.io/fluxapi/daemon/importaddress.md): Adds an address or script (in hex) that can be watched as if it were in your wallet but cannot be used to spend. ### Import private key to the wallet - [GET /daemon/importprivkey](https://docs.runonflux.io/fluxapi/daemon/importprivkey.md): Adds a private key (as returned by dumpprivkey) to your wallet. ### Import private keys from the dump file - [GET /daemon/importwallet](https://docs.runonflux.io/fluxapi/daemon/importwallet.md): Imports taddr keys from a wallet dump file. ### Refill keypool - [GET /daemon/keypoolrefill](https://docs.runonflux.io/fluxapi/daemon/keypoolrefill.md): Fills the keypool with more keys. Rarely used as not many will come close to using more than it comes with by default. ### A list of addresses that have been used and known to the public - [GET /daemon/listaddressgroupings](https://docs.runonflux.io/fluxapi/daemon/listaddressgroupings.md): Lists groups of addresses which have had their common ownership made public by common use as inputs or as the resulting change in past transactions. ### List of unspendable outputs - [GET /daemon/listlockunspent](https://docs.runonflux.io/fluxapi/daemon/listlockunspent.md): Returns list of temporarily unspendable outputs. ### List of balances - [GET /daemon/listreceivedbyaddress](https://docs.runonflux.io/fluxapi/daemon/listreceivedbyaddress.md): List balances by receiving address. ### List of transactions since block (blockhash) - [GET /daemon/listsinceblock](https://docs.runonflux.io/fluxapi/daemon/listsinceblock.md): Get all transactions in blocks since block [blockhash], or all transactions if omitted. ### List of recent transactions - [GET /daemon/listtransactions](https://docs.runonflux.io/fluxapi/daemon/listtransactions.md): Returns up to count most recent transactions skipping the first from transactions for account 'account'. ### Returns objects of unspent transactions - [GET /daemon/listunspent](https://docs.runonflux.io/fluxapi/daemon/listunspent.md): Returns array of unspent transaction outputs with between minconf and maxconf (inclusive) confirmations. Optionally filter to only include txouts paid to specified addresses. Results are an array of Objects, each of which has: (txid, vout, scriptPubKey, amount, confirmations). ### Updates list of temporarily unspendable outputs - [GET /daemon/lockunspent](https://docs.runonflux.io/fluxapi/daemon/lockunspent.md): Temporarily lock (unlock=false) or unlock (unlock=true) specified transaction outputs. A locked transaction output will not be chosen by automatic coin selection, when spending Flux. Locks are stored in memory only. Nodes start with zero locked outputs, and the locked output list is always cleared (by virtue of process exit) when a node stops or fails. ### Rescans blockchain for transactions - [GET /daemon/rescanblockchain](https://docs.runonflux.io/fluxapi/daemon/rescanblockchain.md): Rescans the blockchain looking for transactions that belong to this wallet. ### Send to many receivers at once - [POST /daemon/sendmany](https://docs.runonflux.io/fluxapi/daemon/sendmanypost.md): Send to many receivers. Amounts are decimal numbers with at most 8 digits of precision. ### Send to many receivers at once - [GET /daemon/sendmany](https://docs.runonflux.io/fluxapi/daemon/sendmany.md): Send to many receivers. Amounts are decimal numbers with at most 8 digits of precision. ### Send Flux to an address - [POST /daemon/sendtoaddress](https://docs.runonflux.io/fluxapi/daemon/sendtoaddresspost.md): Send an amount to a given address. ### Send Flux to an address - [GET /daemon/sendtoaddress](https://docs.runonflux.io/fluxapi/daemon/sendtoaddress.md): Send an amount to a given address. ### Set transaction fee - [GET /daemon/settxfee](https://docs.runonflux.io/fluxapi/daemon/settxfee.md): This will restart the Flux daemon. ### Sign a message - [POST /daemon/signmessage](https://docs.runonflux.io/fluxapi/daemon/signmessagepost.md): Sign a message with the private key of a t-addr. ### Sign a message - [GET /daemon/signmessage](https://docs.runonflux.io/fluxapi/daemon/signmessage.md): Sign a message with the private key of a t-addr. ### Reveal z-addr private key - [GET /daemon/zexportkey](https://docs.runonflux.io/fluxapi/daemon/zexportkey.md): Reveals the zkey corresponding to zaddr. ### Reveal z-addr viewing key - [GET /daemon/zexportviewingkey](https://docs.runonflux.io/fluxapi/daemon/zexportviewingkey.md): Reveals the viewing key corresponding to zaddr. Only works with sprout zaddr's. ### Returns the balance of a taddr or zaddr - [GET /daemon/zgetbalance](https://docs.runonflux.io/fluxapi/daemon/zgetbalance.md): Returns the balance of a taddr or zaddr belonging to the node's wallet. CAUTION If the wallet has only an incoming viewing key for this address, then spends cannot be detected, and so the returned balance may be larger than the actual balance. ### Returns status info of the sprout to sapling migration - [GET /daemon/zgetmigrationstatus](https://docs.runonflux.io/fluxapi/daemon/zgetmigrationstatus.md): Returns information about the status of the Sprout to Sapling migration. Note that a transaction is defined as finalized if it has at least ten confirmations. Also, it is possible that manually created transactions involving this wallet will be included in the result. ### Create new shielded address - [GET /daemon/zgetnewaddress](https://docs.runonflux.io/fluxapi/daemon/zgetnewaddress.md): Returns a new shielded address for receiving payments. ### Get operation result - [GET /daemon/zgetoperationresult](https://docs.runonflux.io/fluxapi/daemon/zgetoperationresult.md): Retrieve the result and status of an operation which has finished, and then remove the operation from memory. ### Get operation status - [GET /daemon/zgetoperationstatus](https://docs.runonflux.io/fluxapi/daemon/zgetoperationstatus.md): Get operation status and any associated result or error data. The operation will remain in memory. ### Get total balance of wallet - [GET /daemon/zgettotalbalance](https://docs.runonflux.io/fluxapi/daemon/zgettotalbalance.md): Return the total value of funds stored in the node's wallet. ### Import zaddress private key - [GET /daemon/zimportkey](https://docs.runonflux.io/fluxapi/daemon/zimportkey.md): Adds a zkey to your wallet. ### Import zaddress viewing key - [GET /daemon/zimportviewingkey](https://docs.runonflux.io/fluxapi/daemon/zimportviewingkey.md): Adds a viewing key to your wallet. ### Import wallet from export file - [GET /daemon/zimportwallet](https://docs.runonflux.io/fluxapi/daemon/zimportwallet.md): Imports taddr and zaddr keys from a wallet export file. ### Get list of all shielded addresses - [GET /daemon/zlistaddresses](https://docs.runonflux.io/fluxapi/daemon/zlistaddresses.md): Returns the list of Sprout and Sapling shielded addresses belonging to the wallet. ### Get list of operation ids - [GET /daemon/zlistoperationids](https://docs.runonflux.io/fluxapi/daemon/zlistoperationids.md): Returns the list of operation ids currently known to the wallet. ### List of amounts received by zaddr - [GET /daemon/zlistreceivedbyaddress](https://docs.runonflux.io/fluxapi/daemon/zlistreceivedbyaddress.md): Return a list of amounts received by a zaddr belonging to the node's wallet. ### List of unspent shielded notes - [GET /daemon/zlistunspent](https://docs.runonflux.io/fluxapi/daemon/zlistunspent.md): Returns array of unspent shielded notes with between minconf and maxconf (inclusive) confirmations. ### Send multiple transactions - [POST /daemon/zsendmany](https://docs.runonflux.io/fluxapi/daemon/zsendmanypost.md): Send multiple times. Amounts are decimal numbers with at most 8 digits of precision. Change generated from a taddr flows to a new taddr address, while change generated from a zaddr returns to itself. When sending coinbase UTXOs to a zaddr, change is not allowed. The entire value of the UTXO(s) must be consumed. Before Acadia (Sapling) activates, the maximum number of zaddr outputs is 54 due to transaction size limits. ### Send multiple transactions - [GET /daemon/zsendmany](https://docs.runonflux.io/fluxapi/daemon/zsendmany.md): Send multiple times. Amounts are decimal numbers with at most 8 digits of precision. Change generated from a taddr flows to a new taddr address, while change generated from a zaddr returns to itself. When sending coinbase UTXOs to a zaddr, change is not allowed. The entire value of the UTXO(s) must be consumed. Before Acadia (Sapling) activates, the maximum number of zaddr outputs is 54 due to transaction size limits. ### Migrate funds to a sapling adress - [GET /daemon/zsetmigration](https://docs.runonflux.io/fluxapi/daemon/zsetmigration.md): When enabled the Sprout to Sapling migration will attempt to migrate all funds from this wallet’s sprout addresses to either the address for sapling account 0 or the address specified by the parameter '-migrationdestaddress'. This migration is designed to minimize information leakage. As a result for wallets with a significant sprout balance, this process may take several weeks. The migration works by sending, up to 5, as many transactions as possible whenever the blockchain reaches a height equal to 499 modulo 500. The transaction amounts are picked according to the random distribution specified in ZIP 308. The migration will end once the wallet’s sprout balance is below 0.01 FLUX. ### Shield coinbase - [GET /daemon/zshieldcoinbase](https://docs.runonflux.io/fluxapi/daemon/zshieldcoinbase.md): Shield transparent coinbase funds by sending to a shielded zaddr. This is an asynchronous operation and utxos selected for shielding will be locked. If there is an error, they are unlocked. The RPC call listlockunspent can be used to return a list of locked utxos. The number of coinbase utxos selected for shielding can be limited by the caller. If the limit parameter is set to zero, and Overwinter is not yet active, the -mempooltxinputlimit option will determine the number of uxtos. Any limit is constrained by the consensus rule defining a maximum transaction size of 100000 bytes before Acadia (Sapling,) and 2000000 bytes once Acadia (Sapling) activates.. ### Start Flux daemon - [GET /daemon/start](https://docs.runonflux.io/fluxapi/daemon/startdaemonb.md): Tries to start Flux daemon running on the FluxNode the call is run against without any extra parameters. ### Restart Flux daemon - [GET /daemon/restart](https://docs.runonflux.io/fluxapi/daemon/restartdaemonb.md): Tries to restart Flux daemon running on the FluxNode the call is run against. Flux daemon is firstly stopped and then started without any extra parameters. ### Ping request to measure ping time - [GET /daemon/ping](https://docs.runonflux.io/fluxapi/daemon/ping.md): Requests that a ping be sent to all other nodes, to measure ping time. ### Run benchmark of selected type and samplecount times - [GET /daemon/zcbenchmark](https://docs.runonflux.io/fluxapi/daemon/zcbenchmark.md): Runs a benchmark of the selected type and samplecount times, returning the running times of each sample. ### Start Benchmark daemon - [GET /daemon/startbenchmark](https://docs.runonflux.io/fluxapi/daemon/daemonstartbenchmark.md): Start Benchmark daemon. ### Stop Benchmark daemon - [GET /daemon/stopbenchmark](https://docs.runonflux.io/fluxapi/daemon/stopbenchmark.md): Stop Benchmark daemon. ## Benchmark **Node Performance & Benchmarking** Endpoints for monitoring and managing Flux node performance benchmarks. These APIs provide access to hardware specifications, performance metrics, benchmark results, and node tier qualification status. Critical for node operators to ensure optimal performance and maintain network participation requirements. **Monitoring Capabilities:** - Hardware specification reporting - Performance benchmark execution - Node tier status verification - Resource utilization metrics - Network connectivity testing ### Fluxbench status - [GET /benchmark/getstatus](https://docs.runonflux.io/fluxapi/benchmark/getstatus.md): This will return the status of the node, what FluxBenchd determined the tier the server could pass for, and if Flux backend is connected. If any one of these return a negative result the FluxNode will fail to confirm. ### Fluxbench calls - [GET /benchmark/help](https://docs.runonflux.io/fluxapi/benchmark/benchmarkhelp.md): This will return with a list of calls for FluxBench. ### Benchmark results - [GET /benchmark/getbenchmarks](https://docs.runonflux.io/fluxapi/benchmark/getbenchmarksbenchmark.md): Return most recent benchmark results. ### Fluxbench status - [GET /benchmark/getinfo](https://docs.runonflux.io/fluxapi/benchmark/benchmarkgetinfo.md): This will return with the fluxbench status of the fluxnode. ### Restart FluxBench daemon - [GET /benchmark/restartnodebenchmarks](https://docs.runonflux.io/fluxapi/benchmark/restartnodebenchmarks.md): This will restart the FluxBench daemon and start bench process. ### Stop fluxbench daemon - [GET /benchmark/stop](https://docs.runonflux.io/fluxapi/benchmark/stopbenchmarkaemon.md): This will stop the fluxbench daemon. ### Sign FluxNode transaction - [POST /benchmark/signfluxnodetransaction](https://docs.runonflux.io/fluxapi/benchmark/signfluxnodetransactionpost.md): Command to get FluxBenchd to sign a FluxNode broadcast. ### Sign FluxNode transaction - [GET /benchmark/signfluxnodetransaction](https://docs.runonflux.io/fluxapi/benchmark/signfluxnodetransaction.md): Command to get FluxBenchd to sign a FluxNode broadcast. ## Flux **Flux Network Operations** Core network endpoints for interacting with the broader Flux decentralized network. These APIs provide access to network statistics, node information, consensus data, and network-wide operations that facilitate the decentralized cloud infrastructure. **Network Services:** - Node discovery and registry - Network consensus information - Global network statistics - Peer-to-peer communication - Distributed coordination ### Starts Flux daemon - [GET /flux/startdaemon](https://docs.runonflux.io/fluxapi/flux/startdaemon.md): Tries to start Flux daemon running on the Flux node the call is run against without any extra parameters. ### Restarts Flux daemon - [GET /flux/restartdaemon](https://docs.runonflux.io/fluxapi/flux/restartdaemon.md): Tries to restart Flux daemon running on the Flux node the call is run against. Flux daemon is firstly stopped and then started without any extra parameters. ### Switch to master branch of FluxOS - [GET /flux/entermaster](https://docs.runonflux.io/fluxapi/flux/fluxentermaster.md): Tries to switch to master branch of FluxOS. ### Switch to development branch of FluxOS - [GET /flux/enterdevelopment](https://docs.runonflux.io/fluxapi/flux/fluxenterdevelopment.md): Tries to switch to development branch of FluxOS. ### Reindexes Flux daemon - [GET /flux/reindexdaemon](https://docs.runonflux.io/fluxapi/flux/reindexfluxb.md): Tries to reindex Flux daemon running on the Flux node the call is run against. Flux daemon is firstly stopped and then started with reindex flag. ### Updates Flux to the latest version - [GET /flux/updateflux](https://docs.runonflux.io/fluxapi/flux/updateflux.md): Updates Flux to the latest version available according to github master branch. Flux will restart its services after the update. ### Perform hard update to the latest version - [GET /flux/hardupdateflux](https://docs.runonflux.io/fluxapi/flux/hardupdateflux.md): Hard updates to latest version by removing node_modules and package-lock.json before executing git reset --hard and git pull. This may resolve any issues that may arise from Flux not being able to update using the call. Flux will restart its services after the update. ### Rebuild UI - Home of Flux - [GET /flux/rebuildhome](https://docs.runonflux.io/fluxapi/flux/rebuildzelfront.md): Rebuilds Home part of Flux. May help resolving frontend issues. ### Updates Flux daemon - [GET /flux/updatedaemon](https://docs.runonflux.io/fluxapi/flux/updatedaemon.md): Updates the Flux daemon of Flux node to the latest available version according to official Flux APT repository. Flux daemon is restarted with no extra parameters during this update. ### Updates Benchmark daemon - [GET /flux/updatebenchmark](https://docs.runonflux.io/fluxapi/flux/updatebenchmark.md): Updates the Benchmark daemon of Flux node to the latest available version according to official Flux APT repository. Benchmark daemon is restarted with no extra parameters during this update. ### Returns with the Flux debug log - [GET /flux/daemondebug](https://docs.runonflux.io/fluxapi/flux/fluxdebug.md): Returns with the debug log located in Flux data directory. ### Returns with the Benchmark debug log - [GET /flux/benchmarkdebug](https://docs.runonflux.io/fluxapi/flux/benchmarkdebuf.md): Returns with the debug log located in fluxbenchmark directory. ### Returns last lines of Flux debug log - [GET /flux/taildaemondebug](https://docs.runonflux.io/fluxapi/flux/tailfluxdebug.md): Returns last 100 lines known in the Flux debug log. ### Returns last lines of Benchmark debug log - [GET /flux/tailbenchmarkdebug](https://docs.runonflux.io/fluxapi/flux/tailbenchmarkdebug.md): Returns last 100 lines known in the Benchmark debug log. ### Returns with the Flux error log - [GET /flux/errorlog](https://docs.runonflux.io/fluxapi/flux/fluxerrorlog.md): Returns with the error log located in flux directory. ### Returns last lines of Flux error log - [GET /flux/tailerrorlog](https://docs.runonflux.io/fluxapi/flux/tailfluxerrorlog.md): Returns last 100 lines known in the Flux error log. ### Node Tier - [GET /flux/nodetier](https://docs.runonflux.io/fluxapi/flux/getnodetier.md): This call will display the tier of the node. ### Combined info - [GET /flux/info](https://docs.runonflux.io/fluxapi/flux/getfluxinfo.md): Combined info of statuses. ### Flux timezone - [GET /flux/timezone](https://docs.runonflux.io/fluxapi/flux/getfluxtimezone.md): This will return with the timezone of the server. ### Gets version of Flux - [GET /flux/version](https://docs.runonflux.io/fluxapi/flux/getfluxversion.md): Gets version of Flux running on the Flux node the call is run against as it is in package.json. ### Flux IP - [GET /flux/ip](https://docs.runonflux.io/fluxapi/flux/getfluxip.md): This will return with the IP address of the server that Flux is on. ### Flux static IP status - [GET /flux/staticip](https://docs.runonflux.io/fluxapi/flux/getfluxstaticip.md): This will return if FluxNode is running under a known static ip ISP/Org. ### Geolocation info - [GET /flux/geolocation](https://docs.runonflux.io/fluxapi/flux/getfluxgeolocation.md): This will return geolocation info. ### Admin's ZelID - [GET /flux/id](https://docs.runonflux.io/fluxapi/flux/getfluxid.md): This will return with the admin's ZelID. ### PGP identity - [GET /flux/pgp](https://docs.runonflux.io/fluxapi/flux/getpgp.md): This will return node pgp public key. ### Kadena Info - [GET /flux/kadena](https://docs.runonflux.io/fluxapi/flux/getfluxkadena.md): This call will display the user's Kadena address and chain ID. ### Admin's CruxID - [GET /flux/cruxid](https://docs.runonflux.io/fluxapi/flux/getfluxcruxid.md): This will return with the admin's CruxID. ### DOS state - [GET /flux/dosstate](https://docs.runonflux.io/fluxapi/flux/getdosstate.md): This will return with the DOS state that Flux is in from 0 to infinity and if it reaches 10 it gets banned. ### Gets IP's of connected peers - [GET /flux/connectedpeers](https://docs.runonflux.io/fluxapi/flux/connectedpeers.md): Gets list of IP addresses of outgoing connected peers. ### Gets info of connected peers - [GET /flux/connectedpeersinfo](https://docs.runonflux.io/fluxapi/flux/connectedpeersinfo.md): Gets list of ip addresses and rtt of the outgoing connected peers. ### List of incoming connections - [GET /flux/incomingconnections](https://docs.runonflux.io/fluxapi/flux/incomingconnections.md): Gets list of IP addresses of incoming connected peers. ### Gets info of incoming connections - [GET /flux/incomingconnectionsinfo](https://docs.runonflux.io/fluxapi/flux/incomingconnectionsinfo.md): Gets list of ip addresses and rtt of incoming connections. ### Check availability of Flux - [GET /flux/checkfluxavailability](https://docs.runonflux.io/fluxapi/flux/checkfluxavailability.md): Check if Flux is reachable and available using IP of the Flux's server. ### Check incoming/outgoing peers - [GET /flux/checkcommunication](https://docs.runonflux.io/fluxapi/flux/iscommunicationestablished.md): Check if there is enough incoming/outgoing peers. ### FluxOS uptime - [GET /flux/uptime](https://docs.runonflux.io/fluxapi/flux/fluxuptime.md): Return FluxOS uptime in seconds. ### Broadcast message to peers - [POST /flux/broadcastmessage](https://docs.runonflux.io/fluxapi/flux/broadcastmessagefromuserpost.md): Broadcast data message to peers that are connected. ### Broadcast message to peers - [GET /flux/broadcastmessage](https://docs.runonflux.io/fluxapi/flux/broadcastmessagefromuser.md): Broadcast data message to peers that are connected. ### Broadcast message to outgoing peers - [POST /flux/broadcastmessagetooutgoing](https://docs.runonflux.io/fluxapi/flux/broadcastmessagetooutgoingfromuserpost.md): Broadcast data message to peers on outgoing connections. ### Broadcast message to outgoing peers - [GET /flux/broadcastmessagetooutgoing](https://docs.runonflux.io/fluxapi/flux/broadcastmessagetooutgoingfromuser.md): Broadcast data message to peers on outgoing connections. ### Broadcast message to incoming peers - [POST /flux/broadcastmessagetoincoming](https://docs.runonflux.io/fluxapi/flux/broadcastmessagetoincomingfromuserpost.md): Broadcast data message to peers on incoming connections. ### Broadcast message to incoming peers - [GET /flux/broadcastmessagetoincoming](https://docs.runonflux.io/fluxapi/flux/broadcastmessagetoincomingfromuser.md): Broadcast data message to peers on incoming connections. ### Add peer option - [GET /flux/addpeer](https://docs.runonflux.io/fluxapi/flux/addpeer.md): This call gives option to add peers to outgoing connections. ### Remove peer option - [GET /flux/removepeer](https://docs.runonflux.io/fluxapi/flux/removepeer.md): This call does exact opposite of add and removes/drops a outgoing connected peer. ### Remove incoming peer - [GET /flux/removeincomingpeer](https://docs.runonflux.io/fluxapi/flux/removeincomingpeer.md): Remove a incoming connected peer. ### Open port on server - [GET /flux/allowport](https://docs.runonflux.io/fluxapi/flux/allowportapi.md): This will open a port on the server and adding it to the firewall rules. ### Adjust CruxID - [GET /flux/adjustcruxid](https://docs.runonflux.io/fluxapi/flux/adjustcruxid.md): This will add/update your CruxID. ### Adjust Kadena Account - [GET /flux/adjustkadena](https://docs.runonflux.io/fluxapi/flux/adjustkadenaaccount.md): Essentially rebuilds flux - use with caution! ### Start Benchmark - [GET /flux/startbenchmark](https://docs.runonflux.io/fluxapi/flux/fluxstartbenchmark.md): This call will start the benchmark which tests the hardware specifications and performance. ### Restart Benchmark - [GET /flux/restartbenchmark](https://docs.runonflux.io/fluxapi/flux/fluxrestartbenchmark.md): This call will restart the benchmark which tests the hardware specifications and performance. ### Soft Update Flux - [GET /flux/softupdateflux](https://docs.runonflux.io/fluxapi/flux/softupdateflux.md): This call will perform a soft update of Flux. ### Install Flux - [GET /flux/softupdatefluxinstall](https://docs.runonflux.io/fluxapi/flux/softupdatefluxinstall.md): This call will install Flux. ### Warning Log - [GET /flux/warnlog](https://docs.runonflux.io/fluxapi/flux/fluxwarnlog.md): This call returns the Flux warning log. ### Debug Log - [GET /flux/debuglog](https://docs.runonflux.io/fluxapi/flux/fluxdebuglog.md): This call returns the Flux debug log. ### Info Log - [GET /flux/infolog](https://docs.runonflux.io/fluxapi/flux/fluxinfolog.md): This call returns the Flux info log. ### Tail Warn Log - [GET /flux/tailwarnlog](https://docs.runonflux.io/fluxapi/flux/tailfluxwarnlog.md): This call returns the Flux tail warn log. ### Tail Debug Log - [GET /flux/taildebuglog](https://docs.runonflux.io/fluxapi/flux/tailfluxdebuglog.md): This call returns the Flux tail debug log. ### Tail Info Log - [GET /flux/tailinfolog](https://docs.runonflux.io/fluxapi/flux/tailfluxinfolog.md): This call returns the Flux tail info log. ### Local Folder Location - [GET /flux/backendfolder](https://docs.runonflux.io/fluxapi/flux/fluxbackendfolder.md): This call returns the local folder location for Flux. ### Map a specified port (UPnP) - [GET /flux/mapport](https://docs.runonflux.io/fluxapi/flux/fluxmapport.md): This call map a specified port (UPnP). ### Unmap a specified port (UPnP) - [GET /flux/unmapport](https://docs.runonflux.io/fluxapi/flux/fluxunmapport.md): This call unmap a specified port (UPnP). ### Show list with mappings (UPnP) - [GET /flux/getmap](https://docs.runonflux.io/fluxapi/flux/fluxgetmap.md): This call show message with mappings (UPnP). ### Show public IP address (UPnP) - [GET /flux/getip](https://docs.runonflux.io/fluxapi/flux/fluxgetip.md): This call show public IP address (UPnP). ### Show gateway address (UPnP) - [GET /flux/getgateway](https://docs.runonflux.io/fluxapi/flux/fluxgetgateway.md): This call show a message with gateway address (UPnP). ### To show the current user's Router IP setup. - [GET /flux/routerip](https://docs.runonflux.io/fluxapi/flux/fluxrouterip.md): To show the current user's Router IP setup in configuration file that is being used with FluxO. ### Update the current routerIP. - [GET /flux/adjustrouterip](https://docs.runonflux.io/fluxapi/flux/fluxadjustrouterip.md): Update the current routerIP that is being used with FluxOS. ### Show the current user's blocked ports list. - [GET /flux/blockedports](https://docs.runonflux.io/fluxapi/flux/fluxblockedports.md): Show the current user's blocked ports list. ### Update blocked port list. - [POST /flux/adjustblockedports](https://docs.runonflux.io/fluxapi/flux/fluxadjustblockedports.md): Update the current blocked port list that is being used by FluxOS. ### Show the current user's blocked repositories list. - [GET /flux/blockedrepositories](https://docs.runonflux.io/fluxapi/flux/fluxblockedrepositories.md): Show the current user's blocked repositories list. ### Update blocked repositories list. - [POST /flux/adjustblockedrepositories](https://docs.runonflux.io/fluxapi/flux/fluxadjustblockedrepositories.md): Update the current blocked repositories list that is being used by FluxOS. ### Show the current user's Api Port setup in configuration file that is being used by FluxOS. - [GET /flux/apiport](https://docs.runonflux.io/fluxapi/flux/fluxapiport.md): Show the current user's Api Port. ### Update Api Port setup in configuration file that is being used by FluxOS. - [GET /flux/adjustapiport](https://docs.runonflux.io/fluxapi/flux/fluxadjustapiport.md): Update Api Port. ### Show marketplace URL. - [GET /flux/marketplaceurl](https://docs.runonflux.io/fluxapi/flux/fluxmarketplaceurl.md): Show marketplace URL based on current development flag setup in configuration file that is being used with FluxOS. ### Restart FluxOS. - [GET /flux/restart](https://docs.runonflux.io/fluxapi/flux/fluxrestart.md): Restart FluxOS. ### Show system uptime. - [GET /flux/systemuptime](https://docs.runonflux.io/fluxapi/flux/fluxsystemuptime.md): Show system uptime in ms. ### Show nodejs entire versions object. - [GET /flux/nodejsversions](https://docs.runonflux.io/fluxapi/flux/fluxnodejsversions.md): Show nodejs entire versions object. ### Get all Flux IDs - [GET /flux/fluxids](https://docs.runonflux.io/fluxapi/flux/getfluxids.md): Get list of all Flux IDs associated with this node. ### Check if running on ArcaneOS - [GET /flux/isarcaneos](https://docs.runonflux.io/fluxapi/flux/isarcaneos.md): Check if the node is running on ArcaneOS (specialized Flux operating system). ### Stream chain preparation - [GET /flux/streamchainpreparation](https://docs.runonflux.io/fluxapi/flux/streamchainpreparation.md): Prepare for blockchain streaming operation. ### Stream blockchain data - [POST /flux/streamchain](https://docs.runonflux.io/fluxapi/flux/streamchain.md): Stream blockchain data to another node. ### Check application availability - [POST /flux/checkappavailability](https://docs.runonflux.io/fluxapi/flux/checkappavailability.md): Check if a specific application is available and accessible. ### Keep UPnP ports open - [POST /flux/keepupnpportsopen](https://docs.runonflux.io/fluxapi/flux/keepupnpportsopen.md): Maintain UPnP port mappings to keep them open. ## Apps **Decentralized Application Management** Comprehensive endpoints for deploying, managing, and monitoring decentralized applications (dApps) on the Flux network. These APIs handle the complete application lifecycle from deployment to scaling, including Docker container management, resource allocation, and global distribution across the Flux node network. **Application Services:** - Docker-based app deployment - Application lifecycle management - Resource scaling and allocation - Multi-region distribution - Application marketplace integration - Performance monitoring and analytics ### list running apps - [GET /apps/listrunningapps](https://docs.runonflux.io/fluxapi/apps/listrunningapps.md): List and info of running apps. ### list all apps - [GET /apps/listallapps](https://docs.runonflux.io/fluxapi/apps/listallapps.md): List and info of all apps. ### List of images - [GET /apps/listappsimages](https://docs.runonflux.io/fluxapi/apps/listappsimages.md): List of apps images installed. ### installed apps - [GET /apps/installedapps](https://docs.runonflux.io/fluxapi/apps/installedapps.md): Info of installed apps. ### available apps - [GET /apps/availableapps](https://docs.runonflux.io/fluxapi/apps/availableapps.md): Info of available apps. ### Flux's usage - [GET /apps/fluxusage](https://docs.runonflux.io/fluxapi/apps/fluxusage.md): Will return amount of cpu resource flux is using. ### Flux's usage of resources - [GET /apps/appsresources](https://docs.runonflux.io/fluxapi/apps/appsresources.md): Will return data of resource flux is using. ### Registration Info - [GET /apps/registrationinformation](https://docs.runonflux.io/fluxapi/apps/registrationinformation.md): Apps registration info. ### Temporary registration info - [GET /apps/temporarymessages](https://docs.runonflux.io/fluxapi/apps/getappstemporarymessages.md): Temporary registration info that will expire after 1 hour. ### Permanent registration info - [GET /apps/permanentmessages](https://docs.runonflux.io/fluxapi/apps/getappspermanentmessages.md): Registration info of apps that have been stored to the database. ### Global app specs - [GET /apps/globalappsspecifications](https://docs.runonflux.io/fluxapi/apps/getglobalappsspecifications.md): List of global app specifications. ### Global app specs of app specified - [GET /apps/appspecifications](https://docs.runonflux.io/fluxapi/apps/getapplicationspecificationapi.md): This will return app specifications of the queried app. ### App owner's ZelID - [GET /apps/appowner](https://docs.runonflux.io/fluxapi/apps/getapplicationownerapi.md): This will return the ZelID of the owner of the app specified. ### Application Hash info - [GET /apps/hashes](https://docs.runonflux.io/fluxapi/apps/getapphashes.md): Get list of app hashes and related info. ### Info regarding app location - [GET /apps/location](https://docs.runonflux.io/fluxapi/apps/getappslocation.md): This will return data regarding the location of app specified. ### List of app locations - [GET /apps/locations](https://docs.runonflux.io/fluxapi/apps/getappslocations.md): This will return a list of known apps on the network and it's locations data. ### Calculate price of app - [POST /apps/calculatefiatandfluxprice](https://docs.runonflux.io/fluxapi/apps/getapppricenew.md): Calculate price by sending request with specs required for app you are registering. Note: If tiered value is set to true you will also need to add the following key/value pairs - , , , , , , , , ### Starts app - [GET /apps/appstart](https://docs.runonflux.io/fluxapi/apps/appstart.md): This will start the fluxapp. ### Stops app - [GET /apps/appstop](https://docs.runonflux.io/fluxapi/apps/appstop.md): This will stop the Flux application. ### Restarts app - [GET /apps/apprestart](https://docs.runonflux.io/fluxapi/apps/apprestart.md): This will restart the Flux application. ### Pause app - [GET /apps/apppause](https://docs.runonflux.io/fluxapi/apps/appsapppause.md): This will pause the fluxapp. ### Unpause app - [GET /apps/appunpause](https://docs.runonflux.io/fluxapi/apps/appunpause.md): This will unpause the Flux application. ### List of running processes - [GET /apps/apptop](https://docs.runonflux.io/fluxapi/apps/apptop.md): Display the running processes of a container. ### App's log - [GET /apps/applog](https://docs.runonflux.io/fluxapi/apps/applogs.md): This will fetch the logs of a fluxapp. ### Info of the app - [GET /apps/appinspect](https://docs.runonflux.io/fluxapi/apps/appinspect.md): Displays detailed info of the container. ### App stats based on resource usage - [GET /apps/appstats](https://docs.runonflux.io/fluxapi/apps/appstats.md): Returns containers resource usage. ### Container changes - [GET /apps/appchanges](https://docs.runonflux.io/fluxapi/apps/appchanges.md): Data of changes made to container. If no changes it will return a null response which is usually the case. Kind values: - - - ### Run a command in the container - [POST /apps/appexec](https://docs.runonflux.io/fluxapi/apps/appexec.md): Run new commands inside running containers. ### Uninstall application - [GET /apps/appremove](https://docs.runonflux.io/fluxapi/apps/appremove.md): This will stop, clean data, close port, and remove the container. ### Install local app - [GET /apps/installtemporarylocalapp](https://docs.runonflux.io/fluxapi/apps/installtemporarylocalapplication.md): Register, install, and run app specified in query param. _Note: Below example of response is last bit of a continuous stream of data_ ### Create flux network - [GET /apps/createfluxnetwork](https://docs.runonflux.io/fluxapi/apps/createfluxnetwork.md): This will create flux network if none is detected. ### Rescan and update global FluxApps info database - [GET /apps/rescanglobalappsinformation](https://docs.runonflux.io/fluxapi/apps/rescanglobalappsinformationapi.md): Rescans global apps permanent messages since selected blockheight and updates global apps information database. ### Reindex appsinformation collection and rebuild - [GET /apps/reindexglobalappsinformation](https://docs.runonflux.io/fluxapi/apps/reindexglobalappsinformationapi.md): This will drop appslocations collection, recreate indexes, and rebuild incoming messages. ### Reindex appslocations collection and rebuild - [GET /apps/reindexglobalappslocation](https://docs.runonflux.io/fluxapi/apps/reindexglobalappslocationapi.md): Function that drops information about running apps and rebuilds indexes. ### Checks Docker Hub for image - [POST /apps/checkdockerexistance](https://docs.runonflux.io/fluxapi/apps/checkdockeraccessibility.md): This will check Docker Hub and verify image is available. ### App registration - [POST /apps/appregister](https://docs.runonflux.io/fluxapi/apps/appregister.md): This call is to provide required info to register app on Flux. Note: Signature is following message signed in the format shown below - Example: - ### App update - [POST /apps/appupdate](https://docs.runonflux.io/fluxapi/apps/updateappglobalyapi.md): This call is to provide required info to update app on Flux. Note: Signature is following message signed in the format shown below - Example: - ### Deployment information - [GET /apps/deploymentinformation](https://docs.runonflux.io/fluxapi/apps/getdeploymentinformatio.md): This will return deployment information. ### List of enterprise nodes - [GET /apps/enterprisenodes](https://docs.runonflux.io/fluxapi/apps/getenterprisenodes.md): This will return a list of enterprise nodes. ### Request application message hash. - [GET /apps/requestmessage](https://docs.runonflux.io/fluxapi/apps/getrequestmessage.md): This will request application message hash. ### Request check for missing application message. - [GET /apps/checkhashes](https://docs.runonflux.io/fluxapi/apps/getcheckhashes.md): This will tigger check for misssing application messages. ### Get latest application specification version - [GET /apps/latestspecificationversion](https://docs.runonflux.io/fluxapi/apps/getlatestapplicationspecificationapi.md): Get the latest version of application specifications available. ### Update app to latest specifications - [GET /apps/updatetolatestspecs/{appname}](https://docs.runonflux.io/fluxapi/apps/updateapplicationspecificationapi.md): Update application to use latest specification format. ### Get application original owner - [GET /apps/apporiginalowner/{appname}](https://docs.runonflux.io/fluxapi/apps/getapplicationoriginalowner.md): Get the original owner of a specific application. ### Get app installing location - [GET /apps/installinglocation/{appname}](https://docs.runonflux.io/fluxapi/apps/getappinstallinglocation.md): Get the location where a specific app is currently being installed. ### Get all apps installing locations - [GET /apps/installinglocations](https://docs.runonflux.io/fluxapi/apps/getappsinstallinglocations.md): Get locations where all apps are currently being installed. ### Get app installation errors location - [GET /apps/installingerrorslocation/{appname}](https://docs.runonflux.io/fluxapi/apps/getappinstallingerrorslocation.md): Get the location where a specific app had installation errors. ### Get all apps installation errors locations - [GET /apps/installingerrorslocations](https://docs.runonflux.io/fluxapi/apps/getappsinstallingerrorslocations.md): Get locations where all apps had installation errors. ### Get whitelisted repositories - [GET /apps/whitelistedrepositories](https://docs.runonflux.io/fluxapi/apps/whitelistedrepositories.md): Get list of whitelisted Docker repositories for app deployment. ### Verify app registration specifications - [POST /apps/verifyappregistrationspecifications](https://docs.runonflux.io/fluxapi/apps/verifyappregistrationparameters.md): Verify and format application registration specifications. ### Verify app update specifications - [POST /apps/verifyappupdatespecifications](https://docs.runonflux.io/fluxapi/apps/verifyappupdateparameters.md): Verify and format application update specifications. ### Get application specifications USD price - [GET /apps/getappspecsusdprice](https://docs.runonflux.io/fluxapi/apps/getappspecsusdprice.md): Get the USD price for application specifications and resource usage. ### Poll application logs - [GET /apps/applogpolling/{appname}](https://docs.runonflux.io/fluxapi/apps/applogpolling.md): Poll application logs with real-time updates. ### Stream application monitoring data - [GET /apps/appmonitorstream/{appname}](https://docs.runonflux.io/fluxapi/apps/appmonitorstream.md): Get real-time streaming monitoring data for an application. ### Test application installation - [GET /apps/testappinstall/{appname}](https://docs.runonflux.io/fluxapi/apps/testappinstall.md): Test if an application can be installed without actually installing it. ### Install application locally - [GET /apps/installapplocally/{appname}](https://docs.runonflux.io/fluxapi/apps/installapplocally.md): Install a specific application locally on this node. ### Redeploy application - [GET /apps/redeploy/{appname}](https://docs.runonflux.io/fluxapi/apps/redeployapi.md): Redeploy an existing application. ### Reconstruct application message hashes - [GET /apps/reconstructhashes](https://docs.runonflux.io/fluxapi/apps/reconstructappmessageshashcollectionapi.md): Reconstruct the application message hash collection. ### Start application monitoring - [GET /apps/startmonitoring/{appname}](https://docs.runonflux.io/fluxapi/apps/startappmonitoringapi.md): Start monitoring for a specific application. ### Stop application monitoring - [GET /apps/stopmonitoring/{appname}](https://docs.runonflux.io/fluxapi/apps/stopappmonitoringapi.md): Stop monitoring for a specific application. ### Get public key for app operations - [POST /apps/getpublickey](https://docs.runonflux.io/fluxapi/apps/getpublickey.md): Get the public key used for application operations. ### Calculate price of app (deprecated) - [POST /apps/calculateprice](https://docs.runonflux.io/fluxapi/apps/getappprice.md): : To get app price. Should be used getAppFiatAndFluxPrice method instead. Calculate price by sending request with specs required for app you are registering. Note: If tiered value is set to true you will also need to add the following key/value pairs - , , , , , , , , ## Explorer **Blockchain Explorer Services** Blockchain exploration endpoints providing detailed access to on-chain data, transaction history, address information, and network analytics. These APIs power blockchain explorers and provide developers with comprehensive blockchain data access for building analytics and monitoring applications. **Explorer Features:** - Transaction history and details - Address balance and activity - Block information and statistics - Network-wide analytics - Search and filtering capabilities ### View FluxNode transactions - [GET /explorer/fluxtxs](https://docs.runonflux.io/fluxapi/explorer/getfilteredfluxnodetxs.md): View a filtered list of the FluxNode's transactions. ### View utxo history - [GET /explorer/utxo](https://docs.runonflux.io/fluxapi/explorer/explorergetaddressutxos.md): View unspent transaction outputs of selected address. ### View transaction history - [GET /explorer/transactions](https://docs.runonflux.io/fluxapi/explorer/getaddresstransactions.md): View transaction history of selected address. ### View balance - [GET /explorer/balance](https://docs.runonflux.io/fluxapi/explorer/explorergetaddressbalance.md): View balance of selected address. ### View scanned block height - [GET /explorer/scannedheight](https://docs.runonflux.io/fluxapi/explorer/getscannedheight.md): View scanned block height on the explorer that it has synced. ### Check if explorer is synced - [GET /explorer/issynced](https://docs.runonflux.io/fluxapi/explorer/isexplorersynced.md): Check if the explorer is fully synchronized with the blockchain. ### Reindex collection - [GET /explorer/reindex](https://docs.runonflux.io/fluxapi/explorer/reindexexplorer.md): Drop Flux collection and recreate it. ### Restart block processing - [GET /explorer/restart](https://docs.runonflux.io/fluxapi/explorer/restartblockprocessing.md): Restarts Flux collection. ### Stops block processing - [GET /explorer/stop](https://docs.runonflux.io/fluxapi/explorer/stopblockprocessing.md): Stops Flux collection. ### Rescan explorer - [GET /explorer/rescan](https://docs.runonflux.io/fluxapi/explorer/rescanexplorer.md): Rescan explorer from selected block height. ## Syncthing **Distributed File Synchronization** Endpoints for managing Syncthing-based distributed file synchronization services. These APIs enable secure, decentralized file sharing and synchronization across Flux nodes, providing reliable data distribution and backup capabilities for decentralized applications and user data. **Synchronization Services:** - Peer-to-peer file synchronization - Distributed storage management - Conflict resolution - Encryption and security - Bandwidth optimization ### Set an error message - [POST /syncthing/system/error](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemerrorpost.md): Post with an error message in the body (plain text) to register a new error. The new error will be displayed on any active GUI clients. ### List of error messages - [GET /syncthing/system/error](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemerrorget.md): Get list with error message. ### Remove all recent errors - [POST /syncthing/system/error/clear](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemerrorclear.md): Post with empty body to remove all recent errors. ### Syncthing version information - [GET /syncthing/system/version](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemversion.md): Returns the current Syncthing version information. ### Perform an upgrade - [POST /syncthing/system/upgrade](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingupgradepost.md): Perform an upgrade to the newest released version and restart. Does nothing if there is no newer version than currently running. ### Checks for a possible upgrade - [GET /syncthing/system/upgrade](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingupgradeget.md): Checks for a possible upgrade and returns an object describing the newest version and upgrade possibility. ### Returns a list of directories - [GET /syncthing/system/browse](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytembrowse.md): Returns a list of directories matching the path given by the optional parameter . The path can use patterns as described in Go’s filepath package. A ‘current* is not given, filesystem root paths are returned. ### Pause the given device or all devices - [GET /syncthing/system/pause](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytempause.md): Pause the given device or all devices. Takes the optional parameter device (device ID). When omitted, pauses all devices. Returns status 200 and no content upon success, or status 500 and a plain text error on failure. ### Resume the given device or all devices - [GET /syncthing/system/resume](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemresume.md): Resume the given device or all devices. Takes the optional parameter device (device ID). When omitted, pauses all devices. Returns status 200 and no content upon success, or status 500 and a plain text error on failure. ### Restart Syncthing - [GET /syncthing/system/restart](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemrestart.md): Immediately restart Syncthing. ### Shutdown Syncthing - [GET /syncthing/system/shutdown](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemshutdown.md): Immediately shutdown Syncthing. ### Erase the current index database and restart Syncthing - [GET /syncthing/system/reset](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemreset.md): Erase the current index database and restart Syncthing. With no query parameters, the entire database is erased from disk. By specifying the folder parameter with a valid folder ID, only information for that folder will be erased. ### Status of Syncthing - [GET /syncthing/system/status](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsystemstatus.md): Returns information about current system status and resource usage. The CPU percent value has been deprecated from the API and will always report 0. ### Returns the path locations - [GET /syncthing/system/paths](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytempath.md): Returns the path locations used internally for storing configuration, database, and others. ### Returns the list of configured devices and some metadata associated with them - [GET /syncthing/system/connections](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemconnections.md): Returns the list of configured devices and some metadata associated with them. The list also contains the local device itself as not connected. The connection types are TCP (Client), TCP (Server), Relay (Client) and Relay (Server). ### Returns/Add local discovery cache - [GET /syncthing/system/discovery](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemdiscovery.md): Returns the contents of the local discovery cache. ### Returns the set of debug facilities. - [GET /syncthing/system/debug](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemdebug.md): Returns the set of debug facilities and which of them are currently enabled. Enables or disables debugging for specified facilities. Give one or both of enable and disable query parameters, with comma separated facility names. To disable debugging of the beacon and discovery packages, and enable it for config and db. ### Returns the list of recent log entries - [GET /syncthing/system/log](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemlog.md): Returns the list of recent log entries. The optional parameter limits the results to message newer than the given timestamp in * format. ### Returns the list of recent log entries as text - [GET /syncthing/system/logtxt](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemlogtxt.md): Returns the list of recent log entries as text. The optional parameter limits the results to message newer than the given timestamp in * format. ### Ping pong tester call - [GET /syncthing/system/ping](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsysytemping.md): Return object. ### Returns config - [GET /syncthing/config](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfig.md): Returns the entire config. ### Returns device config section - [GET /syncthing/config/devices](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigdevices.md): Returns all devices as an array. Returns the device for the given ID. ### Returns folder config section - [GET /syncthing/config/folders](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigfoldersget.md): Returns all folders as an array. Returns the folders for the given ID. ### Replace folder config section - [POST /syncthing/config/folders](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigfolderspost.md): Replace folder config section. ### Returns a template folder configuration - [GET /syncthing/config/defaults/folder](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigdefaultsfolder.md): Returns a template folder configuration object with all default values, which only needs a unique ID to be applied. ### Returns a template device configuration - [GET /syncthing/config/defaults/device](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigdefaultsdevice.md): Returns a template device configuration object with all default values, which only needs a unique ID to be applied. ### Returns an object with a single lines attribute - [GET /syncthing/config/defaults/ignores](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigignores.md): Returns an object with a single lines attribute listing ignore patterns to be used by default on folders, as an array of single-line strings. ### Returns the respective object - [GET /syncthing/config/options](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigoptions.md): GET returns the respective object, PUT replaces the entire object and PATCH replaces only the given child objects. ### Returns the respective object of gui config - [GET /syncthing/config/gui](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigguiget.md): GET returns the respective object, PUT replaces the entire object and PATCH replaces only the given child objects. ### Replaces the entire gui object in config - [POST /syncthing/config/gui](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigguipost.md): Replaces the entire gui object in config. ### Returns the respective object - [GET /syncthing/config/ldap](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigldapget.md): GET returns the respective object, PUT replaces the entire object and PATCH replaces only the given child objects. ### Replaces the entire ldap config object - [POST /syncthing/config/ldap](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigldappost.md): Replaces the entire ldap config object. ### Status of restart required - [GET /syncthing/config/restart-required](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingconfigrestartrequired.md): GET returns whether a restart of Syncthing is required for the current config to take effect. ### Returns general statistics about devices - [GET /syncthing/stats/device](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingstatsdevice.md): Returns general statistics about devices. Currently, only contains the time the device was last seen and the last connection duration. ### Returns general statistics about folder - [GET /syncthing/stats/folder](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingstatsfolder.md): Returns general statistics about folders. Currently contains the last scan time and the last synced file. ### Lists remote devices which have tried to connect - [GET /syncthing/cluster/pending/devices](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingpendingdevice.md): Lists remote devices which have tried to connect, but are not yet configured in our instance. ### Remove records about a pending remote device which tried to connect - [POST /syncthing/cluster/pending/devices](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingpendingdevicespost.md): Remove records about a pending remote device which tried to connect. Valid values for the device parameter are those from the corresponding GET /rest/cluster/pending/devices endpoint. ### Lists folders which remote devices have offered to us, but are not yet shared from our instance to them - [GET /syncthing/cluster/pending/folders](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingpendingfolders.md): Lists folders which remote devices have offered to us, but are not yet shared from our instance to them. Takes the optional parameter to only return folders offered by a specific remote device. Other offering devices are also omitted from the result. ### Remove records about a pending folder announced from a remote device - [POST /syncthing/cluster/pending/folders](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingpendingfolderspost.md): Remove records about a pending folder announced from a remote device. Valid values for the folde parameters are those from the corresponding GET /rest/cluster/pending/folders endpoint. ### Returns the list of errors encountered during scanning or pulling - [GET /syncthing/folder/errors](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingfolderserror.md): Takes one mandatory parameter, , and returns the list of errors encountered during scanning or pulling. ### Returns the list of archived files that could be recovered - [GET /syncthing/folder/versions](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingfolderversions.md): Takes one mandatory parameter, folder, and returns the list of archived files that could be recovered. How many versions are available depends on the File Versioning configuration. Each entry specifies when the file version was archived as the versionTime, the modTime when it was last modified before being archived, and the size in bytes. ### Returns the directory tree of the global model - [GET /syncthing/db/browse](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbbrowse.md): Returns the directory tree of the global model. takes one mandatory parameter and two optional parameters and . ### Returns the completion percentage and byte / item counts - [GET /syncthing/db/completion](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbcompletion.md): Returns the completion percentage (0 to 100) and byte / item counts. Takes optional and parameters. ### Returns the content of the .stignore as the ignore field - [GET /syncthing/db/ignores](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbignores.md): Takes one parameter, , and returns the content of the .stignore as the ignore field. A second field, expanded, provides a list of strings which represent globbing patterns described by gobwas/glob (based on standard wildcards) that match the patterns in .stignore and all the includes. If appropriate these globs are prepended by the following modifiers ! to negate the glob, (?i) to do case insensitive matching and (?d) to enable removing of ignored files in an otherwise empty directory. ### Updates the content of the .stignore - [POST /syncthing/db/ignores](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbignorespost.md): Expects a format similar to the output of GET /rest/db/ignores call, but only containing the ignore field (expanded field should be omitted). It takes one parameter, folder, and either updates the content of the .stignore echoing it back as a response, or returns an error. ### Returns the list of files which were changed locally in a receive-only folder - [GET /syncthing/db/localchanged](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdblocalchanged.md): Takes one mandatory parameter, , and returns the list of files which were changed locally in a receive-only folder. Thus they differ from the global state and could be reverted by pulling from remote devices again. ### Returns lists of files which are needed by this device in order for it to become in sync - [GET /syncthing/db/need](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbneed.md): Takes one mandatory parameter, folder, and returns lists of files which are needed by this device in order for it to become in sync. ### Returns the list of files which are needed by that remote device in order for it to become in sync with the shared folder - [GET /syncthing/db/remoteneed](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbremoteneed.md): Takes the mandatory parameters and , and returns the list of files which are needed by that remote device in order for it to become in sync with the shared folder. ### Returns information about the current status of a folder - [GET /syncthing/db/status](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbstatus.md): Returns information about the current status of a folder. Parameters , the ID of a folder. ### Request immediate scan - [POST /syncthing/db/scan](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbscan.md): Request immediate scan. Takes the optional parameters (folder ID). ### Request revert of a receive only folder - [POST /syncthing/db/revert](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbrevert.md): Request revert of a receive only folder. Reverting a folder means to undo all local changes. ### Moves the file to the top of the download queue - [POST /syncthing/db/prio](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdbprio.md): Moves the file to the top of the download queue and params are mandatory. ### Request override of a send only folder - [POST /syncthing/db/override](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdboverride.md): Request override of a send only folder. Override means to make the local version latest, overriding changes made on other devices. This API call does nothing if the folder is not a send only folder. Takes the mandatory parameter (folder ID). ### Returns events - [GET /syncthing/events](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingevents.md): To filter the event list, in effect creating a specific subscription for only the desired event types, add a parameter events=EventTypeA,EventTypeB,... where the event types are any of the Event Types. If no filter is specified, all events except LocalChangeDetected and RemoteChangeDetected are included. The optional parameter since= sets the ID of the last event you've already seen. Syncthing returns a JSON encoded array of event objects, starting at the event just after the one with this last seen ID. The default value is 0, which returns all events. There is a limit to the number of events buffered, so if the rate of events is high or the time between polling calls is long some events might be missed. This can be detected by noting a discontinuity in the event IDs. If no new events are produced since , the HTTP call blocks and waits for new events to happen before returning. By default it times out after 60 seconds returning an empty array. The time out duration can be customized with the optional parameter timeout=. To receive only a limited number of events, add the limit= parameter with a suitable value for n and only the last n events will be returned. This can be used to catch up with the latest event ID after a disconnection. ### Returns events - [GET /syncthing/events/disk](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingeventsdisk.md): To filter the event list, in effect creating a specific subscription for only the desired event types, add a parameter events=EventTypeA,EventTypeB,... where the event types are any of the Event Types. If no filter is specified, all events except LocalChangeDetected and RemoteChangeDetected are included. The optional parameter since= sets the ID of the last event you've already seen. Syncthing returns a JSON encoded array of event objects, starting at the event just after the one with this last seen ID. The default value is 0, which returns all events. There is a limit to the number of events buffered, so if the rate of events is high or the time between polling calls is long some events might be missed. This can be detected by noting a discontinuity in the event IDs. If no new events are produced since , the HTTP call blocks and waits for new events to happen before returning. By default it times out after 60 seconds returning an empty array. The time out duration can be customized with the optional parameter timeout=. To receive only a limited number of events, add the limit= parameter with a suitable value for n and only the last n events will be returned. This can be used to catch up with the latest event ID after a disconnection. ### Returns the data sent in the anonymous usage report - [GET /syncthing/svc/report](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsvcreport.md): Returns the data sent in the anonymous usage report. ### Returns a strong random generated string - [GET /syncthing/svc/random/string](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsvcrandom.md): Returns a strong random generated string (alphanumeric) of the specified length. Takes the `` parameter. ### Verifies and formats a device ID. - [GET /syncthing/svc](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingsvc.md): Verifies and formats a device ID. Accepts all currently valid formats (52 or 56 characters with or without separators, upper or lower case, with trivial substitutions). Takes one parameter, id, and returns either a valid device ID in modern format, or an error. ### Returns statistics about each served REST API endpoint - [GET /syncthing/debug/httpmetrics](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebughttpmetrics.md): Returns statistics about each served REST API endpoint, to diagnose how much time was spent generating the responses. ### Summarizes the completion percentage for each remote device - [GET /syncthing/debug/peercompletion](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebugpeercompletion.md): Summarizes the completion percentage for each remote device. Returns an object with device IDs as keys and an integer percentage as values. ### Used to capture a profile of what Syncthing is doing on the CPU - [GET /syncthing/debug/cpuprof](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebugcpuprof.md): The profiling starts when the page is requested and takes 30 seconds. During this time it will seem like nothing is happening and the browser is just waiting, hung, or “spinning”. Don’t worry - leave it be and have patience. Once done the profiling will result in a download called something like syncthing-cpu-windows-amd64-v0.14.4-112233.pprof. This is the file to keep and send in, without modifying the file name as it tells us information necessary to interpret it. ### Used to capture a profile of what Syncthing is doing with the heap memory - [GET /syncthing/debug/heapprof](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebugheapprof.md): The profiling will result in a download called something like syncthing-heap-windows-amd64-v0.14.4-112233.pprof. This is the file to keep and send in, without modifying the file name as it tells us information necessary to interpret it. ### Collects information about the running instance for troubleshooting purposes - [GET /syncthing/debug/support](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebugsupport.md): Returns a “support bundle” as a zipped archive, which should be sent to the developers after verifying it contains no sensitive personal information. Credentials for the web GUI and the API key are automatically redacted already. ### Shows diagnostics about a certain file in a shared folder - [GET /syncthing/debug/file](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdebugfile.md): Shows diagnostics about a certain file in a shared folder. Takes the folder (folder ID) and file (folder relative path) parameters. ### Display deviceid - [GET /syncthing/deviceid](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingdeviceid.md): Returns deviceid. ### Display metadata information - [GET /syncthing/meta](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthingmeta.md): Returns metadata variable. ### Check health status - [GET /syncthing/health](https://docs.runonflux.io/fluxapi/syncthing/fluxsyncthinghealth.md): Returns health status object. ## Fluxshare **Decentralized File Sharing** Advanced file sharing and storage endpoints built on the Flux decentralized network. FluxShare provides secure, distributed file storage with redundancy, encryption, and global accessibility. Ideal for building decentralized storage applications and content distribution networks. **Storage Features:** - Distributed file storage - Redundancy and fault tolerance - End-to-end encryption - Global content distribution - Access control and sharing permissions ### Share files - [GET /apps/fluxshare/getfile](https://docs.runonflux.io/fluxapi/fluxshare/fluxsharefile.md): Call to retrieve share file. ### FluxShare - Get folder content - [GET /apps/fluxshare/getfolder](https://docs.runonflux.io/fluxapi/fluxshare/getfolder.md): Call to get content of folder in fluxshare. ### FluxShare - Create folder - [GET /apps/fluxshare/createfolder](https://docs.runonflux.io/fluxapi/fluxshare/createfolder.md): Call to create folder in fluxshare. ### FluxShare - Remove file - [GET /apps/fluxshare/removefile](https://docs.runonflux.io/fluxapi/fluxshare/removefile.md): Call to remove file from fluxshare. ### FluxShare - Remove folder - [GET /apps/fluxshare/removefolder](https://docs.runonflux.io/fluxapi/fluxshare/removefolder.md): Call to remove folder from fluxshare. ### FluxShare - File exists - [GET /apps/fluxshare/fileexists](https://docs.runonflux.io/fluxapi/fluxshare/fileexists.md): Call to check if file exist. ### FluxShare - Stats - [GET /apps/fluxshare/stats](https://docs.runonflux.io/fluxapi/fluxshare/stats.md): Call to check stats of fluxshare. ### FluxShare - Share file - [GET /apps/fluxshare/sharefile](https://docs.runonflux.io/fluxapi/fluxshare/sharefile.md): Call to share file in fluxshare. ### FluxShare - Unshare file - [GET /apps/fluxshare/unsharefile](https://docs.runonflux.io/fluxapi/fluxshare/unsharefile.md): Call to unshare file in fluxshare. ### FluxShare - Shared files - [GET /apps/fluxshare/sharedfiles](https://docs.runonflux.io/fluxapi/fluxshare/sharedfiles.md): Call to display shared files. ### FluxShare - Rename file - [GET /apps/fluxshare/rename](https://docs.runonflux.io/fluxapi/fluxshare/renamefile.md): Call to rename file in fluxshare. ### FluxShare - Download folder - [GET /apps/fluxshare/downloadfolder](https://docs.runonflux.io/fluxapi/fluxshare/fluxdownloadfolder.md): Call to download content of folder in fluxshare. ### Fluxshare - Upload file - [POST /apps/fluxshare/upload](https://docs.runonflux.io/fluxapi/fluxshare/fileuploadfluxshare.md): Uploads a file. ## Backup/Restore **Application Backup & Recovery** Comprehensive backup and disaster recovery endpoints for Flux applications and data. These APIs provide automated backup creation, version management, and restoration capabilities to ensure data integrity and business continuity for decentralized applications running on the Flux network. **Backup Services:** - Automated backup scheduling - Version control and history - Cross-region replication - Point-in-time recovery - Disaster recovery orchestration ### Get volume data of a component - [GET /backup/getvolumedataofcomponent](https://docs.runonflux.io/fluxapi/backuprestore/fluxgetvolumedataofcomponent.md): Get volume data of a component. ### Get size of a remote file. - [GET /backup/getremotefilesize](https://docs.runonflux.io/fluxapi/backuprestore/fluxgetremotefilesize.md): Get size of a remote file. ### Get the list of local backups based on the provided appname - [GET /backup/getlocalbackuplist](https://docs.runonflux.io/fluxapi/backuprestore/fluxgetlocalbackuplist.md): Get the list of local backups based on the provided appname. ### Remove a backup file. - [GET /backup/removebackupfile](https://docs.runonflux.io/fluxapi/backuprestore/fluxremovebackupfile.md): Remove a backup file. ### Download a local backup file - [GET /backup/downloadlocalfile](https://docs.runonflux.io/fluxapi/backuprestore/fluxdownloadlocalfile.md): Download a local backup file. ### Append backup task to an application - [POST /apps/appendbackuptask](https://docs.runonflux.io/fluxapi/backuprestore/fluxappendbackuptask.md): Append backup task to an application. ### Append restore task to an application - [POST /apps/appendrestoretask](https://docs.runonflux.io/fluxapi/backuprestore/fluxappendrestoretask.md): Append restore task to an application. ## Volume Browser **Persistent Storage Management** Advanced volume and persistent storage management endpoints for containerized applications. These APIs provide comprehensive file system operations, storage allocation, and data management capabilities for applications requiring persistent data storage across the distributed Flux network. **Storage Management:** - Volume provisioning and management - File system operations - Storage quota enforcement - Data migration and replication - Performance optimization ### Get a list of files with their details for all files. - [GET /apps/getfolderinfo](https://docs.runonflux.io/fluxapi/volume-browser/fluxgetfolderinfo.md): Get a list of files with their details for all files. ### Create folder. - [GET /apps/createfolder](https://docs.runonflux.io/fluxapi/volume-browser/fluxcreatefolder.md): Create folder inside app volume. ### Rename file/folder - [GET /apps/renameobject](https://docs.runonflux.io/fluxapi/volume-browser/fluxrenameobject.md): Rename file/folder. ### Remove file/folder - [GET /apps/removeobject](https://docs.runonflux.io/fluxapi/volume-browser/fluxremoveobject.md): Remove file/folder. ### Download file - [GET /apps/downloadfile](https://docs.runonflux.io/fluxapi/volume-browser/fluxdownloadfile.md): Download file. ### Download folder as gzip file - [GET /apps/downloadfolder](https://docs.runonflux.io/fluxapi/volume-browser/fluxdownloadfolder.md): Download folder as gzip file. ## IOUtils **File System Operations & Utilities** Low-level file system operation endpoints providing essential I/O utilities for application development and system administration. These APIs offer direct file manipulation, directory management, and system utilities required for advanced application deployment and management on Flux nodes. **I/O Operations:** - File and directory management - Permission and ownership control - Data transfer utilities - System resource monitoring - Batch operation support ### Upload file - [POST /ioutils/fileupload](https://docs.runonflux.io/fluxapi/ioutils/fileupload.md): Uploads a file to the specified location.