Shio
  • đź‘‹INTRODUCTION
    • Shio
    • Defi Integrations
    • Campaign
    • Join the Community
    • Brand Kit
  • 🎮SHIO PRODUCTS
    • Shio Endpoint
  • 🤖Searcher Guides
    • Getting Started as a Searcher
    • Connect to Shio Feed
      • auctionStarted Event
    • Submit Bid
      • Simulate Bid
    • Interact with Shio Contract
    • Inspect Historical Auction Events
    • Searcher FAQ
Powered by GitBook
On this page
  • đź’§Default Mode
  • ⚡Fast Mode
  • Why Choose Shio Endpoint?
  • How to Use Shio Endpoint?
  • 👨Users
  • 👨‍💻Developers
  • 📱Trading Bots/Apps
  • đź’±Market Makers
  • Pricing & Rate Limit
  • ⚡Fast Mode Integration Guide
  • Fast Mode SDK
  • JSON-RPC Methods
  • Limitations

Was this helpful?

  1. SHIO PRODUCTS

Shio Endpoint

A powerful and efficient way for users, traders, and dApps to send transactions while maximizing the value of their transactions.

PreviousBrand KitNextGetting Started as a Searcher

Last updated 3 months ago

Was this helpful?

đź’§Default Mode

A neutral and permissionless solution for users and developers to capture MEV value from their orderflow transactions. It enables orderflow originators (including wallets, dApps and others) to participate in the MEV supply chain. By integrating the Shio Endpoint, selective transaction details are shared with searchers, who compete to include these transactions in a soft bundle through an auction process.

RPC URL: https://rpc.getshio.com/boost

⚡Fast Mode

Designed for speed-critical scenarios, Fast Mode allows users to set a higher gas fee to land their transaction earlier. Fast mode maximizes the transaction landing speed and supports soft bundle submission.

Shio optimizes infrastructure and network quality and minimizes processing overhead to ensure your transaction reaches validators as quickly as possible. To prioritize speed, transaction submitted through Fast Mode will not be auctioned.

RPC URL: https://rpc.getshio.com/fast

Learn more:

[REDACTED] – Coming Soon

Why Choose Shio Endpoint?

The Shio Endpoint provides users and developers with powerful features and benefits:

Protect Against Frontrunning: Shio exclusively supports backruns, safeguarding users from harmful frontrunning attacks.

Low Latency: Shio Endpoint is engineered for ultra-low latency. Using advanced routing, multi-region deployment, and optimized networking techniques, we ensure that soft bundles or transactions reach validators as quickly as possible. Default Mode has an auction window of just 100ms.

Configurability: Tailored to support a variety of use cases.

Resilience: Built with fail-safe mechanisms, Shio ensures that transactions are always submitted, even during service downtimes, providing reliability under all conditions.

How to Use Shio Endpoint?

Shio Endpoint supports diverse use cases:

👨Users

For wallet users: Switch your default endpoint to the Shio Endpoint Default Mode URL. Using the Shio Endpoint ensures you’re protected during in-wallet swaps. Typically, you can find this option under Settings>Network>Custom or Setting>Custom RPC.

For apps that do not enable Shio by default, navigate to the app’s Settings > Network > Custom RPC Endpoint to manually update the endpoint. This ensures your trades are protected.

👨‍💻Developers

Earn MEV rebates for your app and its users effortlessly through Default Mode.

Advanced: Submit in-app bundles to enable more complex workflows. For instance, combine a user's add liquidity and swap transaction into a single bundle to prevent sniping. Note: this is only supported in Fast Mode.

📱Trading Bots/Apps

Use ⚡ Fast Mode to give your users an edge during peak demand. It helps avoid congestion controls on hot objects, enabling users to ape into trending tokens without delays. Earn MEV rebates and prevent MEV sandwich for normal transactions through Default Mode.

đź’±Market Makers

Use ⚡ Fast Mode to get your transactions land earlier. Set a higher gas fee to prioritize your transactions while the Shio SDK optimizes delivery for you.

Pricing & Rate Limit

Default Mode:

  • Free to use, and you get MEV Kickbacks

  • 10 TPS per IP/Sender

Fast Mode:

  • No base subscription fee, we charge 5% of Gas Budget for each submitted transaction or bundle

  • 20 TPS per IP/Sender

⚡Fast Mode Integration Guide

To use Fast Mode, a tip must be included, proportional to the transaction's gas budget (currently 5%). For Shio to accept the transaction, you MUST add a tip that is >=5% gas budget.

Fast Mode SDK

To use fast mode:

  • Add shio-fast-sdk@0.0.5to your npm/yarn project.

  • Set https://rpc.getshio.com/fastas your RPC endpoint.

A full example:

import { SuiClient } from '@mysten/sui/client';
import { EstimateFee, ExecuteTransactionBlock, ExecuteBundle, AppendCoinToTip, ShioFastRpcUrl } from "shio-fast-sdk";
import { Transaction } from '@mysten/sui/transactions';
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';

// Initialize SUI client with Fast Mode endpoint.
// Using other endpoints will result in failure.
const client = new SuiClient({ url: ShioFastRpcUrl });
const keypair = Ed25519Keypair.fromSecretKey(process.env.SUI_PRIVATE_KEY as string);
const address = keypair.getPublicKey().toSuiAddress();

const tx = new Transaction();
// Build your transaction as usual.
// ...
tx.setSender(address);

// You are encouraged to set a higher gasPrice if competitions are foreseen.
tx.setGasPrice(5000);

// Before finishing, call EstimateFee to determine a reasonable gas_budget.
// In order to use this, gasPrice MUST have already been set in the `tx`.
// This is optional - you can also manually set a gas budget then add a tip that is 5% of that budget.
let estimatedFee = await EstimateFee({
  transaction: tx,
  client: client,
});
tx.setGasBudget(estimatedFee.gasBudget);
console.log(estimatedFee);

// Add tip by using help function `AppendCoinToTip`.
// Alternatively, you can also use `AppendBalanceToTip`.
let tipCoins = tx.splitCoins(tx.gas, [estimatedFee.tipAmount]);
AppendCoinToTip(tx, tipCoins[0], estimatedFee.tipAmount);

// Build and sign the transaction.
// We current do not support the use of Executor.
let builtTx = await tx.build({
  client: client,
});
let signed = await keypair.signTransaction(builtTx);

// Execute the transaction with Fast Mode.
let result = await ExecuteTransactionBlock(client, signed, {
  showEffects: true,
});
console.log(result);

// Alternatively, you can submit a Soft Bundle.
// Any transaction may contain a tip call.
// The total tip amount must >= SUM(gas_budget)*0.05.
// The function returns nothing on success so there is no execution result returned.
await ExecuteBundle(client, [signed]);

JSON-RPC Methods

shio_tipPercentage

Returns the current tip percentage (in 0-100).

Limitations

  • Transactions must NOT conflict with each other when locking owned objects. Owned object locks are exclusive, this means if certain owned object (such as a gas object) is shared across more than one transactions, the bundle will be rejected.

  • All transactions must have not been already submitted or executed by any validator.

  • All transactions must have the same gas price.

  • All transactions must write to a shared object (use a shared object as input with mutable=true).

  • At most 5 transactions can be submitted in a bundle.

Earn MEV Rewards: Developers can start earning MEV kickbacks, with rewards credited to the specified address. By default, this is the sender's address unless otherwise specified (). Partner dashboard is coming soon. The designated address will also accumulate points in our point campaigns.

For dApps users: Switch your default endpoint to the Shio Endpoint Default Mode URL above. Most DeFi apps automatically enable Shio MEV protection for you, ensuring you’re covered. You can view the list of supported apps .

An example transaction can be seen .

When submitting more than one transactions with ExecuteBundle, we internally assembles a Soft Bundle then submit to validators. Certain limitations apply:

🎮
Contact Shio
here
here
SIP-19
Fast Mode Integration Guide