### Install Sphinx and Dependencies Source: https://github.com/jito-labs/jito-docs/blob/main/README.md Installs the Sphinx documentation generator and project-specific requirements. ```bash pip install sphinx pip install -r ./docs/requirements.txt ``` -------------------------------- ### Jito Tip Floor API Response Example Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md An example response from the Jito tip floor REST API, showing landed tip percentiles over time. ```default [ { "time": "2024-09-01T12:58:00Z", "landed_tips_25th_percentile": 6.001000000000001e-06, "landed_tips_50th_percentile": 1e-05, "landed_tips_75th_percentile": 3.6196500000000005e-05, "landed_tips_95th_percentile": 0.0014479055000000002, "landed_tips_99th_percentile": 0.010007999, "ema_landed_tips_50th_percentile": 9.836078125000002e-06 } ] ``` -------------------------------- ### Send Bundle Response Example Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Example of a successful response after submitting a bundle. The result field contains the bundle ID. ```json { "jsonrpc": "2.0", "result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb", "id": 1 } ``` -------------------------------- ### JSON Response Example for Tip Accounts Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This is an example of a JSON response when retrieving tip accounts. The result is a list of strings, where each string is a tip account address. ```json { "jsonrpc": "2.0", "result": [ "96gYZGLnJYVFmbjzopPSU6QiEV5fGqZNyN9nmNhvrZU5", "HFqU5x63VTqvQss8hp11i4wVV8bD44PvwucfZ2bU7gRe", "Cw8CFyM9FkoMi7K7Crf6HNQqf4uEMzpKw6QNghXLvLkY", "ADaUMid9yfUytqMBgopwjb2DTLSokTSzL1zt6iGPaS49", "DfXygSm4jCyNCybVYYK6DwvWqjKee8pbDmJGcLWNDXjh", "ADuUkR4vqLUMWXxW9gh6D6L8pMSawimctcNZ5pGwDcEt", "DttWaMuVvTiduZRnguLF7jNxTgiMBZ1hyAumKUiL2KRL", "3AVi9Tg9Uo68tJfuvoKvqKNWKkC5wPdSSdeBnizKZ6jT" ], "id": 1 } ``` -------------------------------- ### cURL Request Example for getTipAccounts Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This cURL command demonstrates how to request tip accounts from the Jito network. Ensure you are using the correct endpoint and method. ```bash curl https://mainnet.block-engine.jito.wtf/api/v1/getTipAccounts -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0", "id": 1, "method": "getTipAccounts", "params": [] } ' ``` -------------------------------- ### Get Bundle Statuses Request Example Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Requests the status of one or more submitted bundles using their IDs. The `getBundleStatuses` method is used for this purpose. ```bash curl https://mainnet.block-engine.jito.wtf/api/v1/getBundleStatuses -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0", "id": 1, "method": "getBundleStatuses", "params": [ [ "892b79ed49138bfb3aa5441f0df6e06ef34f9ee8f3976c15b323605bae0cf51d" ] ] }' ``` -------------------------------- ### JSON Response Example for Bundle Status Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This is an example of a JSON response when querying for the status of a bundle. It includes details like bundle ID, transactions, slot, confirmation status, and error information. ```json { "jsonrpc": "2.0", "result": { "context": { "slot": 242806119 }, "value": [ { "bundle_id": "892b79ed49138bfb3aa5441f0df6e06ef34f9ee8f3976c15b323605bae0cf51d", "transactions": [ "3bC2M9fiACSjkTXZDgeNAuQ4ScTsdKGwR42ytFdhUvikqTmBheUxfsR1fDVsM5ADCMMspuwGkdm1uKbU246x5aE3", "8t9hKYEYNbLvNqiSzP96S13XF1C2f1ro271Kdf7bkZ6EpjPLuDff1ywRy4gfaGSTubsM2FeYGDoT64ZwPm1cQUt" ], "slot": 242804011, "confirmation_status": "finalized", "err": { "Ok": null } } ] }, "id": 1 } ``` -------------------------------- ### Send Transaction Tip Calculation Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md When using `sendTransaction`, allocate a portion of the total fee as a priority fee and the remainder as a Jito tip. This example shows a recommended 70/30 split. ```default Priority Fee (70%): 0.7 SOL + Jito Tip (30%): 0.3 SOL =========================== Total Fee: 1.0 SOL ``` -------------------------------- ### Send Transaction Response Example Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Example of a successful response when sending a transaction. The 'result' field contains the transaction signature. If sending as a bundle was successful, the 'x-bundle-id' HTTP header will contain the bundle ID. ```json { "jsonrpc": "2.0", "result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb", "id": 1 } ``` -------------------------------- ### cURL Request Example for getInflightBundleStatuses Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This cURL command shows how to query the status of multiple inflight bundles using their IDs. The request includes an array of up to five bundle IDs. ```bash curl https://mainnet.block-engine.jito.wtf/api/v1/getInflightBundleStatuses -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0", "id": 1, "method": "getInflightBundleStatuses", "params": [ [ "b31e5fae4923f345218403ac1ab242b46a72d4f2a38d131f474255ae88f1ec9a", "e3c4d7933cf3210489b17307a14afbab2e4ae3c67c9e7157156f191f047aa6e8", "a7abecabd9a165bc73fd92c809da4dc25474e1227e61339f02b35ce91c9965e2", "e3934d2f81edbc161c2b8bb352523cc5f74d49e8d4db81b222c553de60a66514", "2cd515429ae99487dfac24b170248f6929e4fd849aa7957cccc1daf75f666b54" ] ] } ' ``` -------------------------------- ### Get Tip Information via REST API Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This command retrieves the most recent tip amounts from the Jito bundles API. The response provides various percentile values for landed tips. ```default curl https://bundles.jito.wtf/api/v1/bundles/tip_floor ``` -------------------------------- ### Send Transaction (Base64 Encoded) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Example of sending a transaction using base64 encoding. This method forwards transactions directly to the validator with MEV protection enabled. Ensure the transaction is properly signed and encoded. ```bash curl https://mainnet.block-engine.jito.wtf/api/v1/transactions -X POST -H "Content-Type: application/json" -d ' { "id": 1, "jsonrpc": "2.0", "method": "sendTransaction", "params": [ "AVXo5X7UNzpuOmYzkZ+fqHDGiRLTSMlWlUCcZKzEV5CIKlrdvZa3/2GrJJfPrXgZqJbYDaGiOnP99tI/sRJfiwwBAAEDRQ/n5E5CLbMbHanUG3+iVvBAWZu0WFM6NoB5xfybQ7kNwwgfIhv6odn2qTUu/gOisDtaeCW1qlwW/gx3ccr/4wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvsInicc+E3IZzLqeA+iM5cn9kSaeFzOuClz1Z2kZQy0BAgIAAQwCAAAAAPIFKgEAAAA=", { "encoding": "base64" } ] }' ``` -------------------------------- ### Build Documentation with Sphinx Source: https://github.com/jito-labs/jito-docs/blob/main/README.md Navigates to the docs directory, cleans previous builds, generates HTML documentation, and opens it in Firefox. ```bash cd ./jito-docs/docs make clean make html firefox build/html/index.html ``` -------------------------------- ### Run Shredstream Proxy with Docker (Host Networking) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnfeed.md Run the shredstream proxy using Docker with host networking for direct port access. Mount your keypair file to the container. ```bash docker run -d \ --name jito-shredstream-proxy \ --rm \ --env RUST_LOG=info \ --env BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ --env AUTH_KEYPAIR=my_keypair.json \ --env DESIRED_REGIONS=amsterdam,ny \ --env DEST_IP_PORTS=127.0.0.1:8001,10.0.0.1:8001 \ --network host \ -v $(pwd)/my_keypair.json:/app/my_keypair.json \ jitolabs/jito-shredstream-proxy shredstream ``` -------------------------------- ### Run Shredstream Proxy Natively Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnfeed.md Clone the repository and run the shredstream proxy using Cargo. Ensure RUST_LOG is set to 'info' for logging. ```bash git clone https://github.com/jito-labs/shredstream-proxy.git --recurse-submodules RUST_LOG=info cargo run --release --bin jito-shredstream-proxy -- shredstream \ --block-engine-url https://mainnet.block-engine.jito.wtf \ --auth-keypair my_keypair.json \ --desired-regions amsterdam,ny \ --dest-ip-ports 127.0.0.1:8001,10.0.0.1:8001 ``` -------------------------------- ### Send Bundle Request (Base64) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Submits a bundle of signed transactions to the cluster. Transactions are processed atomically. Ensure a tip is included for selection. Use `getBundleStatuses` to check the bundle's on-chain status. ```bash curl https://mainnet.block-engine.jito.wtf:443/api/v1/bundles -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0", "id": 1, "method": "sendBundle", "params": [ [ "AT2AqtlokikUWgGNnSX5xrmdvBjSaiIPxvFz6zc5Abn5Z0CPFW5GO+Y3rXceLnqLgQFnGw0yTk3NtJdFNsbrwwQBAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAwOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AS6fOZuGDsmyYdd+RC0fiFUgNe1BYTOYT+1hkRXHAeroC8R60h3g34EPF5Ys8sGzVBMP9MDSTVgy1/SSTqpCtA4BAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAxOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AZBed/TbhHt8WTUbfdT9Ibi8vr9ZpPCPtav8HIUrlDaqqKOLuJldEPpb899WvnfrCm4Qtq7i/MNLDTde1sHVYwEBAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAyOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AbS0zOISjAjVgUqs+bBh8x93oNOBzVcBnwicjyXhKLJ6E0/EPi+HbLcBN1u/87Kf4nNS+PoK3lLmhHtLjTyyDw0BAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAzOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AVfm3snz2ZU2xJlj4tBYLNKfuNUC57NgV+ci/2eL4vUJt+NfstiUY+m1kriNMtDXhiBf28wR6WKVuoLkuiegNQABAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSA0OiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==" ], { "encoding": "base64" } ] }' ``` -------------------------------- ### Send Transaction Tip Allocation Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md This illustrates how to allocate the calculated priority fee and Jito tip amounts when using the `sendTransaction` method. ```none You would allocate 0.7 SOL as the priority fee. And 0.3 SOL as the Jito tip. ``` -------------------------------- ### Find TVU Port (Local Machine) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnfeed.md Use this script to find the TVU port on a machine with a Solana RPC. Ensure the LEDGER_DIR environment variable is set. ```bash export LEDGER_DIR=MY_LEDGER_DIR; bash -c "$(curl -fsSL https://raw.githubusercontent.com/jito-labs/shredstream-proxy/master/scripts/get_tvu_port.sh)" ``` -------------------------------- ### Send Transaction (Base58 Encoded - Deprecated) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Example of sending a transaction using base58 encoding. Note that base58 encoding is deprecated and slower than base64. This method forwards transactions directly to the validator with MEV protection enabled. ```bash curl https://mainnet.block-engine.jito.wtf/api/v1/transactions -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0", "id": 1, "method": "sendTransaction", "params": [ "4hXTCkRzt9WyecNzV1XPgCDfGAZzQKNxLXgynz5QDuWWPSAZBZSHptvWRL3BjCvzUXRdKvHL2b7yGrRQcWyaqsaBCncVG7BFggS8w9snUts67BSh3EqKpXLUm5UMHfD7ZBe9GhARjbNQMLJ1QD3Spr6oMTBU6EhdB4RD8CP2xUxr2u3d6fos36PD98XS6oX8TQjLpsMwncs5DAMiD4nNnR8NBfyghGCWvCVifVwvA8B8TJxE1aiyiv2L429BCWfyzAme5sZW8rDb14NeCQHhZbtNqfXhcp2tAnaAT", { "encoding": "base58" } ] }' ``` -------------------------------- ### Run Shredstream Proxy with Docker (Bridge Networking) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnfeed.md Use bridge networking for Docker when host networking is unavailable. Manually expose the SRC_BIND_PORT and map it to the host. Confirm Docker's bridge IP if needed. ```bash docker run -d \ --name jito-shredstream-proxy \ --rm \ --env RUST_LOG=info \ --env BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ --env AUTH_KEYPAIR=my_keypair.json \ --env DESIRED_REGIONS=amsterdam,ny \ --env SRC_BIND_PORT=20000 \ --env DEST_IP_PORTS=172.17.0.1:8001,10.0.0.1:8001 \ --network bridge \ -p 20000:20000/udp \ -v $(pwd)/my_keypair.json:/app/my_keypair.json \ jitolabs/jito-shredstream-proxy shredstream ``` -------------------------------- ### Subscribe to Tip Amounts via WebSocket Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Connect to this WebSocket endpoint to receive real-time updates on tip amounts. ```default wscat -c wss://bundles.jito.wtf/api/v1/bundles/tip_stream ``` -------------------------------- ### sendBundle Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Submits a bundled list of signed transactions to the cluster for processing. Transactions are atomically processed, and the entire bundle is rejected if any transaction fails. A tip is required for the bundle to be considered. ```APIDOC ## sendBundle ### Description Submits a bundled list of signed transactions to the cluster for processing. The transactions are atomically processed in order, meaning if any transaction fails, the entire bundle is rejected (all or nothing). This method relays the bundle created by clients to the leader without any modifications. If the bundle is set to expire after the next Jito-Solana leader, this method immediately returns a success response with a `bundle_id`, indicating the bundle has been received. This does not guarantee the bundle will be processed or land on-chain. To check the bundle status, use `getBundleStatuses` with the `bundle_id`. A tip is necessary for the bundle to be considered. The tip can be any instruction, top-level or CPI, that transfers SOL to one of the 8 tip accounts. Clients should ensure they have sufficient balance and state assertions allowing the tip to go through conditionally, especially if tipping as a separate transaction. If the tip is too low, the bundle might not be selected during the auction. Use `getTipAccounts` to retrieve the tip accounts. Ideally, select one of the accounts at random to reduce contention. ### Method POST ### Endpoint /api/v1/bundles ### Parameters #### Request Body - **params** (array[string]) - REQUIRED - Fully-signed transactions, as base64 (**recommended**) or base58 (slow, DEPRECATED) encoded strings. Maximum of 5 transactions. - **encoding** (string) - OPTIONAL - Encoding used for the transaction data. Values: `base64` (**recommended**) or `base58` (slow, DEPRECATED). Default: `base58` ### Request Example base64 ```bash curl https://mainnet.block-engine.jito.wtf:443/api/v1/bundles -X POST -H "Content-Type: application/json" -d \ { "jsonrpc": "2.0", "id": 1, "method": "sendBundle", "params": [ [ "AT2AqtlokikUWgGNnSX5xrmdvBjSaiIPxvFz6zc5Abn5Z0CPFW5GO+Y3rXceLnqLgQFnGw0yTk3NtJdFNsbrwwQBAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAwOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AS6fOZuGDsmyYdd+RC0fiFUgNe1BYTOYT+1hkRXHAeroC8R60h3g34EPF5Ys8sGzVBMP9MDSTVgy1/SSTqpCtA4BAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAxOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AZBed/TbhHt8WTUbfdT9Ibi8vr9ZpPCPtav8HIUrlDaqqKOLuJldEPpb899WvnfrCm4Qtq7i/MNLDTde1sHVYwEBAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAyOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AbS0zOISjAjVgUqs+bBh8x93oNOBzVcBnwicjyXhKLJ6E0/EPi+HbLcBN1u/87Kf4nNS+PoK3lLmhHtLjTyyDw0BAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSAzOiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==", "AVfm3snz2ZU2xJlj4tBYLNKfuNUC57NgV+ci/2eL4vUJt+NfstiUY+m1kriNMtDXhiBf28wR6WKVuoLkuiegNQABAAIEsXPDJ9cMVbpFQYClVM7PGLh8JOfCD6E2vz5VNmBCF+p4Uhyxec67hYm1VqLV7JTSSYaC/fm7KvWtZOSRzEFT2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUpTWpkpIQZNJOhxYNo4fHw1td28kruB5B+oQEEFRI1i3Wzl2VfewCI8oYXParnP78725sKFzYheTEn8v865YQIDABhqaXRvIGJ1bmRsZSA0OiBqaXRvIHRlc3QCAgABDAIAAACghgEAAAAAAA==" ], { "encoding": "base64" } ] }' ``` ``` -------------------------------- ### Find TVU Port (Remote Machine) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnfeed.md Use this script to find the TVU port on a remote machine. Set the HOST environment variable to the RPC endpoint. ```bash export HOST=http://1.2.3.4:8899; bash -c "$(curl -fsSL https://raw.githubusercontent.com/jito-labs/shredstream-proxy/master/scripts/get_tvu_port.sh)" ``` -------------------------------- ### Send Bundle Request (Base58 Encoded) Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Submits a bundle of transactions to the Jito Block Engine. The transactions are encoded in base58. Note that base58 encoding is deprecated. ```bash curl https://mainnet.block-engine.jito.wtf:443/api/v1/bundles -X POST -H "Content-Type: application/json" -d '{ "id": 1, "jsonrpc": "2.0", "method": "sendBundle", "params": [ [ "cJYHEz2xsUFC9VmqzCRwyxkrDCC5Nqhvah9JsE8DgMCgv6ni962uUZXUtTXFFztZn84VL6fjzNgUi7TKVurCnRqsSUguapRZx1sA31s1WeZi6P5mPmXfWjcfsuznP7RgGvR9XZupBFiDkXsGDYzXPQAa2eFp3jeDKsoPv1xaoytYc4RbvGYBT5QL51hnEzMATM5p8iyPRoMdCQ3cevp3fJCMEjgCx2S8FqJK7kPYTnNQdcDtws1DUNbtopAqizWCEHsz3PjEPu2RpdjZ7YC54notbnYtKJPopxxxrVBQLWY5qvH2aC7RX7GFoA8VXLBphiNGvd1MajN4ZmEiqeAJ4qtuBgSF57E5U1jRzWFwXBCdEh3yexLby", "aeaPo2r9aVrAQkPNeirT8q4FztexTVdUmHFahkKVfHhskk2KktPQ8WSX11qHQY33RNNRf1bjLX8BinduWGwRLwYtiLyUmNKREhmnvaoWa9L4EAZTBJYX2kLAW2MUfzLKMY37XNGPTLep9MAQd6nhDYcCzWgjVdkNqsnWDTHwMJ6wwMAvKAk9PtqFFNzNgyYZfH1uXpmjhn2QdH6XLXkEjyQJRrzXczAqKt1ExCL1vbreoV4AbBnZ2A7iuLD1W885SzU4X1QbSj3jkFpufx4LooNPaiCbMYB2KgAkrvAMefGU3DjbiXPQoQ3ndaU4aZsg5nGGjn4fQEyhpcqxpDRjqpXJ4bgBHpjrdWR24rfxMU1AFLy6v6mPV", "mWwGZR3dp1HEXpaJV5JbGXtfG7nXVEvRNxWiEgMd87TM39WCG5EECUS8ziZSbUMQ1xj3sgA2En4eQybkNm5cvU2cW3uoZQis4CdgbiAsCCVsY9CVmJMbUZXR1xqLCYzxfbWVUDzdThAA2FuNTYc9w77HMb5hDJJe5oFvJhZUc6o9FCWEn8eeWqLePkXu8oQ6L1K2D5meSAwWQPebTBQ7MSugreyZ2aHzzdj89JDc9BgnEMRFkkAGc9cEphUTPnJ72HtHnrqEUpL9KF45ucKb5VpC6vSnKSzjtJS3dMP9jH7737zv5bu3eZuT9hBRfxrnamuChFrC52guv3dMZzi2mUd5jG86DZYzNcdWu8Kziv1zdgfUkb3So", "qZGgsJFUiVj8mdLBw9NPqsKvzmxGbZ4EP4dLx63hdL8bCWZ7sWQgtLKCYqzBsz4YUos2cxFVvMP2ApzgNzu5vHnJnovpoP4iv8CoehP7teJyfrZ9nfNALyx2aQwoSA7dwLtdSviAsTWhHpEd1gHw7XHPVAuRAdtZjNuJn1C2Ep3Fe5X6DWaa1wEwd83xFjJAkJZYFDZpeqv7k2c6Un3uxzbrBD4bJRyeU1J5Hja5DovpNR1bq8gcK7YEgP7Sub1mU8yfDuC7wYVS1zt9T3Z1uTHLt3zhMuobJ4Z1YMWfwGHwJPRvAUksMxpTYKq62JpRkyLB6ZmCRXToTuXTAPAQ5FHgEfMB9E7ZFFhCdU6Rm6tmdFZ7nAdE7", "fEnXrjSsBwCFkGZQbiZXMpY5pCKkdJocEU7iYtF6tkoHxi8Eeq9wi1qLxj6KiYPwR7HW8Wymx26i7Fz96M7Ss32T5HtuK4JqEzdCXsSrmWDUMaCmyKEdCVV5AvuixZpsAYARQp6ok2sGkdhKPPaLUQnvhsuCM3cbXsCACxy79V9eF3KzT6dPanjanr9N2K6z8AeAAC7q3jMRMqAr8z9spkcoqAhGYAKNBqTWQXPMGnmae5Jvc3KN6Wrdjw68bNzfhKAV5wR7SMGScdn8d4XQf9rWMXPA2W5dcQNCXgkk7jCDYdrjGMgx7f82fAifkfnWT3AtSmVf6KCP9CWCtMPvY2BRadctWBJ8rJV9qyMsUkxKQRZaRJBkK" ], { "encoding": "base58" } ] }' ``` -------------------------------- ### getTipAccounts Source: https://github.com/jito-labs/jito-docs/blob/main/docs/source/lowlatencytxnsend.md Retrieves the tip accounts designated for tip payments for bundles. These accounts are constant and can also be found at a provided link. ```APIDOC ## POST /api/v1/getTipAccounts ### Description Retrieves the tip accounts designated for tip payments for bundles. The tip accounts have remained constant and can also be found [here](). ### Method POST ### Endpoint /api/v1/getTipAccounts ### Parameters #### Request Body - **jsonrpc** (string) - Required - Specifies the JSON-RPC version. - **id** (integer) - Required - The ID of the request. - **method** (string) - Required - The name of the method to call, which is "getTipAccounts". - **params** (array) - Required - An empty array, as no parameters are needed for this method. ### Request Example ```json { "jsonrpc": "2.0", "id": 1, "method": "getTipAccounts", "params": [] } ``` ### Response #### Success Response (200) - **jsonrpc** (string) - The JSON-RPC version. - **result** (array[string]) - Tip accounts as a list of strings. - **id** (integer) - The ID of the request. #### Response Example ```json { "jsonrpc": "2.0", "result": [ "96gYZGLnJYVFmbjzopPSU6QiEV5fGqZNyN9nmNhvrZU5", "HFqU5x63VTqvQss8hp11i4wVV8bD44PvwucfZ2bU7gRe", "Cw8CFyM9FkoMi7K7Crf6HNQqf4uEMzpKw6QNghXLvLkY", "ADaUMid9yfUytqMBgopwjb2DTLSokTSzL1zt6iGPaS49", "DfXygSm4jCyNCybVYYK6DwvWqjKee8pbDmJGcLWNDXjh", "ADuUkR4vqLUMWXxW9gh6D6L8pMSawimctcNZ5pGwDcEt", "DttWaMuVvTiduZRnguLF7jNxTgiMBZ1hyAumKUiL2KRL", "3AVi9Tg9Uo68tJfuvoKvqKNWKkC5wPdSSdeBnizKZ6jT" ], "id": 1 } ``` ```