Integration
Last updated
Last updated
During the initial development of Blink, searchers will need to be onboarded for access. Searchers should reach out to or @YNBlink / @ciaranmcveigh on telegram or discord for access.
The V1 WebSocket is designed for ease of integration. It auto subscribes and streams base64 serialized transactions. The signatures on the transactions have been altered (hashed) to prevent the use of the transaction outside of the auction.
You can connect to Blink's WebSocket via wss://sol.blinklabs.xyz/api/v1/ws/{$API_KEY}
.
As soon as you connect to the WebSocket transactions will sent over that connection.
Ab+cAUlq2vEnbTnFZi670f8x5toICHnZjK3WyIgGanQGv5wBSWra8SdtOcVmLrvR/zHm2ggIedmMrdbIiAZqdAaAAQAHCztk/sV9Y2IfCczP0IUOcGfeaYIexr0Prv9nXZGWLGLsNeVXE8D7G87m7RKkh3bp9nE94KT4mBQ/f84Oo3ZC2tl/75g+sQ4ECjjMHLTxbAWgg/IEOdDJZaG4JTKl6MX/9FQFvCnwfXGlORA/Qr/dGwRBBFB870mhJMsOUMBd/LFyAwZGb+UhFzL/7K26csOb57yM5bvF9xJrLEObOkAAAACMlyWPTiSJ8bs9ECkUjg2DC1oTmdr/EIQEjnvY2+n4WQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt324ddloZPZy+FGzut5rBy0he1fWzeROoz1hX7/AKkEedVb8jHAbu50xW7OaBUH/bGy3qP0jlECsc2iVrwTjy+YLCGdWB4j9BDzIO5ZpUPa3anXkl1plaiJguteY/OftD/6J/XX9kp0wJsfKVh53ksJqzbfyd1RSzIap7OM5egXlD6fOwT5X44dRCOrmV0ykvlViyoizjkTFSMXPXWjaQcEAAkDwNQBAAAAAAAEAAUCwFwVAAUGAAEADgYHAQEGAgABDAIAAABAS0wAAAAAAAcBAQERCBsHAAECCAkDCggPBwsQCwwNCwsLCwsLCwsBAgAj5RfLl3rjrSoBAAAAB2QAAUBLTAAAAAAAcRkyAAAAAABkAFEHAwEAAAEJAcdYyZdfmfDp57MLefbtHsunsL12DtrY/SDx/1rC+8VMA65trANGBQc=
This is the same format as what is sent in the params of the .
For rust users please note you need to decode into a VersionedTransaction. See "" for a code example.
Bids are submitted to Blink via https://sol.blinklabs.xyz/api/v1/bundles/{$API_KEY} as a bundle.
The sendBundle endpoint operates the same way as Jito bundles. Blink enforces the User transaction to be the first in the array. This ensures no malicious MEV on the User's transaction. Bundles that do not put the users transaction first will be rejected. When the bundle is sent to Blink the signatures will be reinserted on the user transaction.
A sample "Post Body" below.
The endpoint will return a bundle hash, this is the SHA-256 hash of the bundle's transaction signatures. This will be the same as the expected Jito bundle hash. (Note: you can't compute these yourself as you don't have the real signatures)
Bundles are submitted using the RPC call along with an array of Base58 Serialized transactions. For the user transaction just take the Base64 that has been exposed on the websocket and convert to Base58.
The endpoint allows you to get the real signature after some delay, 30 seconds. This enables you to see the real transaction and work out why your bundle didn't land.