Before Integration
Reach out to our team for :
Getting your authorization token and api keys
Configuring your fee wallet addresses
Raydium
Base Url (Devnet) : https://api.dev.mintlp.io/v1
Base Url (Mainnet) : https://api.mintlp.io/v1
Authorization : request your bearer tokens from the helio team
1. Raydium Swap Price
Endpoint : POST /raydium-swap/price
Authentication : Required
Description : Retrieves the current price for a swap transaction based on the specified pool and token amounts.
Request Body :
poolId (string)
: Liquidity pool ID of the token pair being swapped
mintFrom (string)
: Contract Address of the token that the sender has
mintTo (string)
: Contract Address of the token being swapped to
amountIn (BigInt as string)
: Amount of mintFrom tokens to be swapped in minimal units
Response : (string) Indicates the estimated price, such as the expected amount of mintTo tokens
Sample Request
Copy {
"poolId" : "Ho89H2VPgESL3NB5rQWQZJJwhuDa3xSjNj44w2aCajZi" ,
"mintFrom" : "11111111111111111111111111111111" ,
"mintTo" : "8hroC4CCzUw8gfDXPzdYPKGrJxZb1wW3zv8VxKYwatJK" ,
"amountIn" : "1000000000000000000"
}
Sample Response
2. Prepare Raydium Swap
Endpoint : POST /raydium-swap/prepare
Description : Prepares a swap transaction by setting up necessary details and validations before submission.
sender (string)
: Wallet address(public key) of the sender
poolId (string)
: Liquidity pool ID of the token pair being swapped
mintFrom (string)
: Contract Address of the token that the sender has
mintTo (string)
: Contract Address of the token being swapped to
amountIn (string)
: The amount of mintFrom tokens to be swapped in minimal units
amountOut (string)
: The desired amount of mintTo tokens to receive in minimal units
feeAmount (string)
: The total fee amount in feeMintAddress tokens.
feeMintAddress (string)
: The mint address for the token in which the fee will be charged.
swapType (string, optional)
: Select the swap strategy;
EXACT_IN
: fix the amount of mintFrom tokens so that the amount of mintTo tokens adjusts based on slippage
EXACT_OUT.
: fix the amount of mintTo tokens so that the amount of mintFrom tokens adjusts based on slippage
priorityFee (number, optional)
: Priority fee for the transaction in micro lamports (10^-6). We recommend that you set the default prio fee to 2M for the optimal performance and enable a UI for users to change it. This priorityFee is sent to the Solana
priority(Optional)
: Object to set priority-related parameters.
priorityTipAmount (string)
: Tip amount to prioritize the transaction (in lamports). This amount is optimally sent to jito pools by our services to efficiently increase the rate of landing transactions
frontRunningProtection (optional, boolean)
: Enable front-running protection.
fastBestEffort (Optional, boolean)
: Attempt to process the transaction as quickly as possible.
useStakedRPCs (Optional, boolean)
: Utilize staked RPC nodes for better performance
Response :
serializedTx (string)
: A serialized transaction prepared for submission.
Sample Request
Copy {
"sender" : "FdzNYdgdWPKDWmwFwdjRNh48sEh6RkE7RPXvrbjMJszm" ,
"poolId" : "ErrW8R3JdY8AjQ4ZdAR26CoBb5J2xwPmJFpSo7vEZqP2" ,
"mintFrom" : "BQPWPkjfXMz9jKdqXEnmTFwNVEtsaqDQm74FidPVUZUy" ,
"mintTo" : "So11111111111111111111111111111111111111112" ,
"amountIn" : "33550000000000" ,
"amountOut" : "15718" ,
"feeAmount" : "0" ,
"feeMintAddress" : "So11111111111111111111111111111111111111112" ,
"swapType" : "EXACT_IN" ,
"priority" : {
"priorityTipAmount" : "10000000" ,
"frontRunningProtection" : false
}
}
Sample Response
Copy {
"serializedTx": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAJGNl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGf3X+8M4RNKtyiatL6HSofzb2d8ERd9RDNjzB2QT1vJzN7Vysi7EOAwwIlsvdJdQKAc3ViM8BO8CYlXCGJYVsLZLNS0xS71XM1X/iRxeYsbxvmmxs2oEBMYLKAlJe8k4QSdF7gyflVcDsPbxLOn4mGqiKPxaFvvDVNymflq3+mqe7ZBsJpLZiiRnV2O/rwDzaiNRlJsTlfXHRfcZIUhcaJQJH2CNbufp6h3p556Noj/zyYltdRwZLudptLZORAJUVOANXld9rx4ORa6SSj/17QAg+fv89DsMC+VCPl6ZnaPuAMjzNXkuHQJHCxkHlBDrVpSBlLXiVU/KGPYK4dVxVl0sqkuGAKOr6ix51gNPLWZLwWlg0Z8uj7qhyb+dtfwrp9CCpf5wLL9prx2lIsAYp8xGozicy3XXtSSpEf1XNjotqvGXtwwI+LWP0D5tID3x+e3xqNBSymrKvEZMfI1mpr6qTR7zNSetHqhXkpcOhlQqFon9PUiXFt3UUQXm8H9rZvjisOBasKNttoBmn8g1gSs6DNRNXxBMGIi0iQzODsnFDFS6IDnNkEF+ogj2FAmodFC4IfIODZmHudWJ1BhZemwMGRm/lIRcy/+ytunLDm+e8jOW7xfcSayxDmzpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG3fbh12Whk9nL4UbO63msHLSF7V9bN5E6jPWFfv8AqQabiFf+q4GE+2h/Y0YYwDXaxDncGus7VZig8AAAAAABBqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAAD1aCsG/MvbprQNI0oUsffenYteEeRacryqkmI/Pmd6G7sc8KMrGdy+1jlvLpZxbQX1Ed7AHQ9l/XWG3WREqk2PzQ68HZv63dbJLeBSkdUvezmSmJTQDe90QbaDTbM3vkT5ead9khDLymmwgAAZDqlcxwpWbz1NG1L1RgsxtJ726+WZKh4z6RoxMM8KyuMHskpzngeIdVxxkztQxeajQCEhBg8ACQPQBwAAAAAAABACAAF8AwAAANl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGIAAAAAAAAAAzN0hDRHBIeXphZEVZV1B3VlF4WjdNckRuWmNlUnprRvAdHwAAAAAApQAAAAAAAAAG3fbh12Whk9nL4UbO63msHLSF7V9bN5E6jPWFfv8AqREEARIAEwEBFBIRAhUDBAUGFgcICQoLDBcNAQARCQAM1XeDHgAAZj0AAAAAAAARAwEAAAEJEAIADgwCAAAAgJaYAAAAAAAA",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJ5VjVKYnlvNWljTGNqUm12S05LakVySllBaXc9Iiwic2Vzc2lvbkhhc2giOiJlamN0VDlMVUFuQ0wwd3l4QzVXaSIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiIwIiwicGFydG5lckZlZSI6IjAiLCJmZWVNaW50QWRkcmVzcyI6IlNvMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTIiLCJzdWJtaXRQcmlvcml0eSI6eyJ0aXAiOjEwMDAwMDAwLCJmcm9udFJ1bm5pbmdQcm90ZWN0aW9uIjpmYWxzZSwiaml0b1RpcCI6MTAwMDAwMCwicm91dGVyIjoiTU9PTkJPT1NUIn0sInVuaXhUaW1lc3RhbXAiOjE3MzE1MDg0MDg3NDEsImlhdCI6MTczMTUwODQwOCwiZXhwIjoxNzMxNTA5NjA4fQ.-PsEGOfrBOwWEslU9vhwUCybfll7YcJQbVivRanNBdk"
}
3. Submit Raydium Swap
Endpoint : POST /raydium-swap/submit
Description : Submits a swap transaction to the blockchain using the provided signed transaction data.
Request Body :
signedTransaction (string)
: The signed transaction data returned from prepare endpoint and which is required to execute the swap
token (string)
: received from the prepare endpoint
Sample Request
Copy {
"signedTransaction": "AWAAhcO+U3q9kFkJiwW20SYk3h/gUiJ6GoFcPQLpKEDzHpZdZygfIl8YL12n9SOJhGS50e2hHgfrkM3SdhdKrwuAAQAJGdl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGkHQHoMQj8A+T/eOkT/7FJTOTRiTgpimTUppc328cpkbN7Vysi7EOAwwIlsvdJdQKAc3ViM8BO8CYlXCGJYVsLZLNS0xS71XM1X/iRxeYsbxvmmxs2oEBMYLKAlJe8k4QSdF7gyflVcDsPbxLOn4mGqiKPxaFvvDVNymflq3+mqe7ZBsJpLZiiRnV2O/rwDzaiNRlJsTlfXHRfcZIUhcaJQJH2CNbufp6h3p556Noj/zyYltdRwZLudptLZORAJUVOANXld9rx4ORa6SSj/17QAg+fv89DsMC+VCPl6ZnaPuAMjzNXkuHQJHCxkHlBDrVpSBlLXiVU/KGPYK4dVxVl0sqkuGAKOr6ix51gNPLWZLwWlg0Z8uj7qhyb+dtfwrp9CCpf5wLL9prx2lIsAYp8xGozicy3XXtSSpEf1XNjotqvGXtwwI+LWP0D5tID3x+e3xqNBSymrKvEZMfI1mpr6qTR7zNSetHqhXkpcOhlQqFon9PUiXFt3UUQXm8H9rZvjisOBasKNttoBmn8g1gSs6DNRNXxBMGIi0iQzODsnFDFS6IDnNkEF+ogj2FAmodFC4IfIODZmHudWJ1BhZem40LjqD0Gt3mbJMzEG/zDcP8bx9dfKhx37dvGh20ofDGAwZGb+UhFzL/7K26csOb57yM5bvF9xJrLEObOkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbd9uHXZaGT2cvhRs7reawctIXtX1s3kTqM9YV+/wCpBpuIV/6rgYT7aH9jRhjANdrEOdwa6ztVmKDwAAAAAAEGp9UXGSxcUSGMyUw9SvF/WNruCJuh/UTj29mKAAAAAPVoKwb8y9umtA0jShSx996di14R5FpyvKqSYj8+Z3obuxzwoysZ3L7WOW8ulnFtBfUR3sAdD2X9dYbdZESqTY/NDrwdm/rd1skt4FKR1S97OZKYlNAN73RBtoNNsze+RPl5p32SEMvKabCAABkOqVzHClZvPU0bUvVGCzG0nvbrhbz8kbUrB8UsK0CM0vKAnhfl1dh8fKKorEnzifUE5G8IEAAJA9AHAAAAAAAAEQIAAXwDAAAA2X1lbxIk0huYyCcI7UgSoYjSSOeX/+eySR99iEcp/EYgAAAAAAAAAENtSldvNGN5RjZZSGdSZVdZZUZnWXFZMzR6ZHk1UWZ2cLS3AAAAAAClAAAAAAAAAAbd9uHXZaGT2cvhRs7reawctIXtX1s3kTqM9YV+/wCpEgQBEwAUAQEVEhICFgMEBQYXBwgJCgsMGAENABEJgJaYAAAAAAD2FQAAAAAAABIDAQAAAQkRAgAODAIAAABAQg8AAAAAABECABkMAgAAAEANAwAAAAAAEQIADwwCAAAAADUMAAAAAAABPdt9alXB0EBEC4v3yYopqe1Qz8Q4sM3AImFcqd7hZ9IBBQA=",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJNRG1sb09wd2V3aWRiR0UvQUVIWlZxakl1Mnc9Iiwic2Vzc2lvbkhhc2giOiIybnFkTGwzWDBySzVnQVh0ZEdhSSIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiIyMDAwMDAiLCJwYXJ0bmVyRmVlIjoiODAwMDAwIiwiZmVlTWludEFkZHJlc3MiOiJTbzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEyIiwic3VibWl0UHJpb3JpdHkiOnsidGlwIjoxMDAwMDAwLCJmcm9udFJ1bm5pbmdQcm90ZWN0aW9uIjpmYWxzZSwiaml0b1RpcCI6MTAwMDAwLCJyb3V0ZXIiOiJNT09OQk9PU1QifSwidW5peFRpbWVzdGFtcCI6MTczMTUwOTY5MDYwNiwiaWF0IjoxNzMxNTA5NjkwLCJleHAiOjE3MzE1MTA4OTB9.wZvkvX2Wl8DmYpdLDgOEKOvMSxVIdh-PT1HUVmajkRY"
}
Sample Response
Copy {
"status" : "SUCCESS" ,
"transactionSignature" : "2vKpgviD1GjBGTuNPVhbxshFNyEvn5eCkrrhLFj4aKs8WqFLVwqMNjrPmtz475yC3JahdLAQoS5advLjiQwr6vk2"
}
Meteora
Base Url (Devnet) : https://api.dev.mintlp.io/v1
Base Url (Mainnet) : https://api.mintlp.io/v1
Authorization : request your bearer token from the helio team
1. Meteora Swap Price
Endpoint : POST /meteora-swap/price
Description : Retrieves the current price for a swap transaction based on the specified pool and token amounts.
poolId (string)
: Liquidity pool ID of the token pair being swapped
mintFrom (string)
: Contract Address of the token that the sender has
mintTo (string)
: Contract Address of the token being swapped to
amountIn (BigInt as string)
: Amount of mintFrom tokens to be swapped in minimal units
slippageBps(Number)
: slippage BPS (10000 is 100%)
Response : (string) Indicates the estimated price, such as the expected amount of mintTo tokens
Sample Request
Copy {
"amountIn" : "1000000000" ,
"mintFrom" : "So11111111111111111111111111111111111111112" ,
"mintTo" : "DZNvxMVM9xNRSAZMAv2xAPsrVkertM4mS6XTRTogvs1T" ,
"poolId" : "FGHLncnajeazn5mjJHvpefLthEnuXhQzgtSwq36oRBre" ,
"slippageBps" : 100
}
Sample Response
2. Prepare Meteora Swap
Endpoint : POST /meteora-swap/prepare
Description : Prepares a swap transaction by setting up necessary details and validations before submission.
sender (string)
: Wallet address(public key) of the sender
poolId (string)
: Liquidity pool ID of the token pair being swapped
mintFrom (string)
: Contract Address of the token that the sender has
mintTo (string)
: Contract Address of the token being swapped to
amountIn (string)
: The amount of mintFrom tokens to be swapped in minimal units
amountOut (string)
: The desired amount of mintTo tokens to receive in minimal units
feeAmount (string)
: The total fee amount in feeMintAddress tokens.
feeMintAddress (string)
: The mint address for the token in which the fee will be charged.
priorityFee (number, optional)
: Priority fee for the transaction in micro lamports (10^-6). We recommend that you set the default prio fee to 2M for the optimal performance and enable a UI for users to change it. This priorityFee is sent to the Solana
priority(Optional):
Object to set priority-related parameters.
priorityTipAmount (string)
: Tip amount to prioritize the transaction (in lamports). This amount is optimally sent to jito pools by our services to efficiently increase the rate of landing transactions
frontRunningProtection (optional, boolean)
: Enable front-running protection.
fastBestEffort (Optional, boolean)
: Attempt to process the transaction as quickly as possible.
useStakedRPCs (Optional, boolean)
: Utilize staked RPC nodes for better performance
Response :
serializedTx (string)
: A serialized transaction prepared for submission.
Sample Request
Copy {
"sender" : "FdzNYdgdWPKDWmwFwdjRNh48sEh6RkE7RPXvrbjMJszm" ,
"poolId" : "FGHLncnajeazn5mjJHvpefLthEnuXhQzgtSwq36oRBre" ,
"mintFrom" : "So11111111111111111111111111111111111111112" ,
"mintTo" : "DZNvxMVM9xNRSAZMAv2xAPsrVkertM4mS6XTRTogvs1T" ,
"amountIn" : "1000000000" ,
"feeAmount" : "0" ,
"feeMintAddress" : "So11111111111111111111111111111111111111112" ,
"priorityFee" : 0.01 ,
"amountOut" : "100" ,
"priority" : {
"priorityTipAmount" : "10000000" ,
"frontRunningProtection" : false
}
}
Sample Response
Copy {
"serializedTx": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAEEtl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGoPkjYjZWG9iBx8OtU2fpptWAi0ypz7OyDafqyIypEg7T7c5cdngPg2OR+hkMblMU8Cf7OtWRJLFdGrSvAMz/5+X9B8+OcDyxHnIZIks3I4PQedTJql/39VQbUhR5gfkz03QhdricXhTJa3SJmEIfOBAeCeXFkzGxaLYlzScVuyZ/N2RAy1UmK3Uv8BOM0g7mPEYHfxpsJ7J2yZOdGVxnpvYXzUUQr3DHYZIEmfj+l9WyMRpp4ZoXaDyiqqSL7Jp95QNIRsv5pXVOj18cBCdhSMso/OipyXxbX6bNNr9GV78CzKKq7OGUV/Hz0fc/G4b0fXoXg4sLmtSgAyCmgp4w/qlw1xZZ0hhatrXFAfBoDK2Bp83O0tH4riN211+YysnFcUXDBBLNzx22qeCCM2E+6h1OsO0CcDR/8oDtNHPbSCTg67tHhb0QrwjKGIzyTlTIqBcFZhArpP9s/tZebEmMF/PxiILojbxGsZLd3Lwl2t5bS5X7X38PHPBf5IEjhPh3QxUuiA5zZBBfqII9hQJqHRQuCHyDg2Zh7nVidQYWXpsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbd9uHXZaGT2cvhRs7reawctIXtX1s3kTqM9YV+/wCpzPgC1MzMhNf7IbX3O0nYGhbFtMiO4yOU4ckdNYjMQIAPv+iEbWhcvcYsyn4Ex+j2jcwxOrMSd+LgESouwOBS5ULDd2GW59YIjPIvXzJ6dY4CxMkmrx9LmV0vuuivBU1PBA4CAAEMAgAAAADKmjsAAAAADwEBAREQDwIBAwQFBgcICQoLDAARDxj4xp6R4XWHyADKmjsAAAAAZAAAAAAAAAAOAgANDAIAAACAlpgAAAAAAAA=",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJiWENEUEdtVDhuTFNlYUpKaDJPaFVGVks5ZFk9Iiwic2Vzc2lvbkhhc2giOiJSS3pIdXpEWVZqS0w2UmFXMUVKNiIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiIwIiwicGFydG5lckZlZSI6IjAiLCJmZWVNaW50QWRkcmVzcyI6IlNvMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTIiLCJzdWJtaXRQcmlvcml0eSI6eyJ0aXAiOjEwMDAwMDAwLCJmcm9udFJ1bm5pbmdQcm90ZWN0aW9uIjpmYWxzZSwiaml0b1RpcCI6MTAwMDAwMCwicm91dGVyIjoiTU9PTkJPT1NUIn0sInVuaXhUaW1lc3RhbXAiOjE3MzE1MTMzNjUyNTIsImlhdCI6MTczMTUxMzM2NSwiZXhwIjoxNzMxNTE0NTY1fQ.lnxlt1MvI3cap46gwMUEIa03AiWyWPay3HRkMSypGdc"
}
3. Submit Meteora Swap
Endpoint : POST /meteora-swap/submit
Description : Submits a swap transaction to the blockchain using the provided signed transaction data.
Request Body :
signedTransaction (string)
: The signed transaction data required to execute the swap.
token (string)
: token from the prepare endpoint response
Sample Request
Copy {
"signedTransaction": "Aasxnje/6xu1MZe6dVPWAowopDiqlCjWTamZGYfY2vFvueoUeakdcaudqazbEpTQ+UnVqq1hvKR/VWnOWIckPA2AAQAFEtl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGoPkjYjZWG9iBx8OtU2fpptWAi0ypz7OyDafqyIypEg7T7c5cdngPg2OR+hkMblMU8Cf7OtWRJLFdGrSvAMz/5+X9B8+OcDyxHnIZIks3I4PQedTJql/39VQbUhR5gfkz03QhdricXhTJa3SJmEIfOBAeCeXFkzGxaLYlzScVuyZ/N2RAy1UmK3Uv8BOM0g7mPEYHfxpsJ7J2yZOdGVxnpvYXzUUQr3DHYZIEmfj+l9WyMRpp4ZoXaDyiqqSL7Jp95QNIRsv5pXVOj18cBCdhSMso/OipyXxbX6bNNr9GV78CzKKq7OGUV/Hz0fc/G4b0fXoXg4sLmtSgAyCmgp4w/qlw1xZZ0hhatrXFAfBoDK2Bp83O0tH4riN211+YysnFcUXDBBLNzx22qeCCM2E+6h1OsO0CcDR/8oDtNHPbSCTg67tHhb0QrwjKGIzyTlTIqBcFZhArpP9s/tZebEmMF/PxiILojbxGsZLd3Lwl2t5bS5X7X38PHPBf5IEjhPh3AwZGb+UhFzL/7K26csOb57yM5bvF9xJrLEObOkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbd9uHXZaGT2cvhRs7reawctIXtX1s3kTqM9YV+/wCpzPgC1MzMhNf7IbX3O0nYGhbFtMiO4yOU4ckdNYjMQIAPv+iEbWhcvcYsyn4Ex+j2jcwxOrMSd+LgESouwOBS5VfgtbDZbE/NUAbAGK3K+FLIEdIVnvPBFW1EUf7ifDEdBQ0ACQMhoQcAAAAAAA0ABQJADQMADgIAAQwCAAAAAMqaOwAAAAAPAQEBERAPAgEDBAUGBwgJCgsMABEPGPjGnpHhdYfIAMqaOwAAAABkAAAAAAAAAAA=",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJwWStSVmQ5WWl5cm9qQjU3c2kxVnBDUVg3ZjA9Iiwic2Vzc2lvbkhhc2giOiJXUHRQczZZMnBpejB1RmszcGg0SyIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiIwIiwicGFydG5lckZlZSI6IjAiLCJmZWVNaW50QWRkcmVzcyI6IlNvMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTIiLCJ1bml4VGltZXN0YW1wIjoxNzMxNTEzNjMzOTQ5LCJpYXQiOjE3MzE1MTM2MzMsImV4cCI6MTczMTUxNDgzM30.na0buflISm2JiYZgoyBu_WIqCzUzv6ds4KKAebAGp0I"
}
Sample Response
Copy {
"status" : "SUCCESS" ,
"transactionSignature" : "4RX1LgaNKXtJwmnzG7NrXyuf9cKb2XZYbmi9vxbf9zFNfJZT9BBWp7j25DJsCFKcX4yidzU1V4cDyLUhaykUcNaQ"
}
Fees collected
We support fees to be collected in SOL (so feeMintAddress in prepare endpoint needs to be So11111111111111111111111111111111111111112). We can customise the fees you'd like to charge your customers and agree the fee split.
Base
Base Url (Devnet) : https://api.dev.mintlp.io/v1
Base Url (Mainnet) : https://api.mintlp.io/v1
Authorization : request your bearer token from the helio team
1. Get Uniswap Price
Endpoint: GET /uniswap/price/base
Description: Retrieves the price information for a token swap on Uniswap.
Request Body:
mintFrom
(string) : Contract address of the token to swap from
mintTo
(string) : Contract address of the token to swap to
amount
(string): The amount of mintFrom tokens to be swapped
poolId
(string, optional) : Specific Uniswap pool ID to use for the swap
Sample Request
Copy
Copy {
"amount" : "99999999999999991611392" ,
"mintFrom" : "0x14FD6842cc82744473AF1e20bF367900a5a4c41c" ,
"mintTo" : "0x0000000000000000000000000000000000000000" ,
"poolId" : "0xF0Aad6553E80dfda0582E201a6b9f36D469423Dc" ,
"swapType" : "EXACT_IN"
}
Sample Response
Copy
2. Prepare Uniswap Swap
Endpoint: POST /uniswap/prepare/base
Description: Prepares a swap transaction by setting up necessary details and validations before submission.
sender
(string) : Wallet address of the sender
poolId
(string) : Liquidity pool ID for the token pair
mintFrom
(string) : Contract address of the token to swap from
mintTo
(string) : Contract address of the token to swap to
amountIn
(string) : The amount of mintFrom tokens to be swapped
amountOut
(string) : The expected amount of mintTo tokens to receive
feeAmount
(string) : The total fee amount in feeMintAddress tokens
feeMintAddress
(string) : Contract address of the token in which fees will be charged
swapType
(string, optional) : Type of swap to perform
EXACT_IN
: fix the amount of mintFrom tokens so that the amount of mintTo tokens adjusts based on slippage
EXACT_OUT
. : fix the amount of mintTo tokens so that the amount of mintFrom tokens adjusts based on slippage
Response :
serializedTx (string)
: A serialized transaction prepared for submission.
contractAddress (string) : contract which will execute trades and is required on sell to approve funds
Sample Request
Copy
Copy {
"sender" : "0x94c456dc9F6FB7D72F6344DF2694bCcB943A76B2" ,
"poolId" : "0xF0Aad6553E80dfda0582E201a6b9f36D469423Dc" ,
"mintFrom" : "0x14FD6842cc82744473AF1e20bF367900a5a4c41c" ,
"mintTo" : "0x0000000000000000000000000000000000000000" ,
"amountIn" : "99999999999999991611392" ,
"amountOut" : "240818555497164" ,
"feeAmount" : "100000000000000" ,
"feeMintAddress" : "0x0000000000000000000000000000000000000000" ,
"swapType" : "EXACT_IN"
}
Sample Response
Copy
Copy {
"serializedTx" : "0x01f88a83014a3480830f43b7837a120094370f357a1d15cef1a070c1c5951b76a3436e199780b864c038847a00000000000000000000000014fd6842cc82744473af1e20bf367900a5a4c41c00000000000000000000000000000000000000000000152d02c7e14af60000000000000000000000000000000000000000000000000000000000db05f074aaccc0" ,
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJZcXBRZjlDR3lpa1VENUtvbG9BTTlLN0w2RjA9Iiwic2Vzc2lvbkhhc2giOiJHTDdkM1NJRVExa251Umd2S1JjQiIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiI1MDAwMDAwMDAwMDAwIiwicGFydG5lckZlZSI6Ijk1MDAwMDAwMDAwMDAwIiwiZmVlTWludEFkZHJlc3MiOiIweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCIsInVuaXhUaW1lc3RhbXAiOjE3MzQ2MjM2NDI1MDcsImlhdCI6MTczNDYyMzY0MiwiZXhwIjoxNzM0NjIzODIyfQ.MUchwt7THuSmR9nXP_PKlhOX-28YMTbCkFWDjMsQrO0",
"contractAddress" : "0x370F357a1d15CEF1A070C1C5951B76a3436E1997"
}
3. Confirm Uniswap Swap
Endpoint: POST /uniswap/confirm/base
Description: Confirms and submits the prepared swap transaction to the network.
signedTransaction
(string) : The signed transaction data ready for submission
token
(string) : Authentication token received from the prepare endpoint
Response
transactionSignature
(string):
Sample Request
Copy
Copy {
"signedTransaction": "{\"_type\":\"TransactionResponse\",\"accessList\":null,\"blockNumber\":null,\"blockHash\":null,\"blobVersionedHashes\":null,\"chainId\":null,\"data\":\"0xc038847a00000000000000000000000014fd6842cc82744473af1e20bf367900a5a4c41c00000000000000000000000000000000000000000000d3c21bcecceda000000000000000000000000000000000000000000000000000000000087f7244dc11c6\",\"from\":\"0x94c456dc9F6FB7D72F6344DF2694bCcB943A76B2\",\"gasLimit\":\"8000000\",\"gasPrice\":\"1000370\",\"hash\":\"0x016e3ba0284a2db9729e9862ff68776c927ec9a4941d4280c8fff313c7837dfe\",\"maxFeePerGas\":\"1000370\",\"maxPriorityFeePerGas\":\"1000370\",\"maxFeePerBlobGas\":null,\"nonce\":268,\"signature\":{\"_type\":\"signature\",\"networkV\":null,\"r\":\"0x97765e03d15a0dc178998f3cc04a11ed6a3982607bad6c6e527ecd6a263e06c2\",\"s\":\"0x1b0ac8aac3ac741cb815dc04c5078493709f5ce18da18700a1ad93d1fdf29f23\",\"v\":28},\"to\":\"0x370F357a1d15CEF1A070C1C5951B76a3436E1997\",\"type\":2,\"value\":\"0\"}",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJ6NkJiTmlSclNmb0xwUVlickJNYnN3UGRyRXc9Iiwic2Vzc2lvbkhhc2giOiJueUhoR2FPenozY0R4MlVBQ3QyWiIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiI1MDAwMDAwMDAwMDAwMCIsInBhcnRuZXJGZWUiOiI5NTAwMDAwMDAwMDAwMDAiLCJmZWVNaW50QWRkcmVzcyI6IjB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIiwidW5peFRpbWVzdGFtcCI6MTczNDYyNTU1NzA0MywiaWF0IjoxNzM0NjI1NTU3LCJleHAiOjE3MzQ2MjU3Mzd9.24XJalZvPW-98jba7FLpDaPjhEUd7n0gOLd4QqGkrkk"
}
Sample Response
Copy
Copy {
"status" : "SUCCESS" ,
"transactionSignature" : "0x016e3ba0284a2db9729e9862ff68776c927ec9a4941d4280c8fff313c7837dfe"
}
Ethereum
All structures are same as that of Base. Only the name of the endpoints are different
Base Url (Devnet) : https://api.dev.mintlp.io/v1
Base Url (Mainnet) : https://api.mintlp.io/v1
1. Get Uniswap Price
Endpoint: GET /uniswap/price/eth
2. Prepare Uniswap Price
Endpoint: POST /uniswap/prepare/eth
3. Confirm Uniswap Swap
Endpoint: POST /uniswap/confirm/eth
Pump.fun
Base Url (Devnet) : https://api.dev.mintlp.io/v1
Base Url (Mainnet) : https://api.mintlp.io/v1
1. Get Price Quote
Endpoint: POST /pumpfun-swap/price
Description: Retrieves a price quote for a token swap.
Request Body:
mintFrom (string) : Token mint address to swap from
mintTo (string) : Token mint address to swap to
minimalUnitsTokenAmount (string) : Amount of mintFrom tokens in minimal units to get quote for
Response:
Returns a string representing the quoted amount in minimal units (e.g., "123456790")
Sample Request
Copy {
"minimalUnitsTokenAmount" : "1000000" ,
"mintTo" : "Du6YvPqGNqj2DbwVKvvFeda4SSA2qheipCvCTitJpump" ,
"mintFrom" : "So11111111111111111111111111111111111111112"
}
Sample Response
Copy {
"price" : "35743205475"
}
2. Prepare Swap Transaction
Endpoint: POST /pumpfun-swap/prepare
Description: Prepares a swap transaction for signing.
sender (string) : Address of the transaction sender
mintFrom (string) : Token mint address to swap from
mintTo (string) : Token mint address to swap to
amountIn (string) : Amount of input token in minimal units
amountOut (string) : Expected output amount in minimal units
feeAmount (string) : Fee amount in minimal units
feeMintAddress (string) : Address of the fee token mint
priorityFee (number, optional) : Priority fee that goes to the blockchain
priority (object, optional) : Transaction priority settings
priorityTipAmount (string) : Tip amount to prioritize the transaction landing through Jito
frontRunningProtection (optional, boolean) : Enable front-running protection.
Response:
serializedTx (string) : Serialized transaction ready for signing
token (string, optional) : Token for transaction tracking
Sample Request
Copy {
"sender" : "FdzNYdgdWPKDWmwFwdjRNh48sEh6RkE7RPXvrbjMJszm" ,
"mintFrom" : "So11111111111111111111111111111111111111112" ,
"mintTo" : "3aak6CseacNGwLoTPpu9cLAJoNsLNzYXaZrfYjCjpump" ,
"amountIn" : "1000000" ,
"amountOut" : "35741180765" ,
"slippageBps" : 100 ,
"feeAmount" : "10000" ,
"feeMintAddress" : "So11111111111111111111111111111111111111112" ,
"priority" : {
"priorityTipAmount" : "20000" ,
"frontRunningProtection" : true
}
}
Sample Response
Copy {
"serializedTx": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAIENl9ZW8SJNIbmMgnCO1IEqGI0kjnl//nskkffYhHKfxGrRHmpPwpRKT6glG++BVCbhv7KMa2ZGZ3YHxq2fVmpkY/hY4hFm5e+V2wyTXayhOLvTAmwH1g6eY3PorLJuHWDghdL3WO7EwSlgWD4q5BNjhXPKFqOa0u8VK/AB7fTH1VqDISzK7FEcaJno7fQqvTLFGQKHMbI1i/+CytIAfDBjBz2n87UEOz/l1MGeorkymTxfNSWruKPS1Jx5DSUBcH1EAQNdNau1MSXZHpswA8uLi/RlZlvwFF6wuZ+IPR0MAZjQuOoPQa3eZskzMQb/MNw/xvH118qHHft28aHbSh8MYDBkZv5SEXMv/srbpyw5vnvIzlu8X3EmssQ5s6QAAAAAFW4PaTZlrPRNsVaL8XW6pRicuX9dL/O2VdK7b9bRiwOoZeae4PVIDKvPZjV+TcLxjVjUXB6nSJ+zcj2Xk8cqYmUbGc7db6+gsmBzAhxMo7vrTqU9509KpJu3mCEv8pTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt324ddloZPZy+FGzut5rBy0he1fWzeROoz1hX7/AKkGp9UXGSxcUSGMyUw9SvF/WNruCJuh/UTj29mKAAAAAKzxNusB/BxOiD0jyLWESrWaN/Zq3VfF6aw7U+BZ01xkSUXsNoWxy2D+YU89MeZZbsW6PCAfAp4p0sOZoYvx6rEFCAAFAuCTBAAJDAoBCwIDBAAMDQ4PCRhmBj0SAdrr6l0jV1IIAAAAUWkPAAAAAAAMAgAFDAIAAAAgTgAAAAAAAAwCAAYMAgAAAPQBAAAAAAAADAIABwwCAAAAHCUAAAAAAAAA",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eEhhc2giOiJoNlh3M0tBbzhSV0xxajdmQVl4MUViSjlkTEk9Iiwic2Vzc2lvbkhhc2giOiJrQUFjSEhoSDI4a1FlWHV3ZDRqcCIsInR4SWQiOiJhZGQtbGF0ZXIiLCJ0eFR5cGUiOiJTV0FQIiwiaGVsaW9GZWUiOiI1MDAiLCJwYXJ0bmVyRmVlIjoiOTUwMCIsImZlZU1pbnRBZGRyZXNzIjoiU28xMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMiIsInN1Ym1pdFByaW9yaXR5Ijp7InRpcCI6MjAwMDAsImZyb250UnVubmluZ1Byb3RlY3Rpb24iOnRydWUsImppdG9UaXAiOjEyNTAwMDAsInJvdXRlciI6Ik1PT05CT09TVCJ9LCJ1bml4VGltZXN0YW1wIjoxNzM2MjU4MjM1NzczLCJpYXQiOjE3MzYyNTgyMzUsImV4cCI6MTczNjI1ODQxNX0.TQCFLSOv6jNTpm3FvVEidOUVgB_pUHBVCqQQ1yK8Eks"
}
3. Submit Swap Transaction
Endpoint: POST /pumpfun-swap/submit
Description: Submits a signed swap transaction to the network.
Request Body:
signedTransaction (string) : The signed transaction data
token (string) : Transaction tracking token from prepare step
Response:
transactionSignature (string) : Signature of the submitted transaction
status (string) : Transaction status