Meteora Dev Updates
700 subscribers
1 photo
1 video
45 links
Important updates for anyone building with Meteora.

Docs: https://docs.meteora.ag/
Download Telegram
Today, we're unveiling our most powerful product yet - the Dynamic Bonding Curve (DBC)

One SDK, all of Meteora’s features and power, with full customizability.

The promise is simple: DBC helps you iterate faster. With DBC, launchpads and other integrators can easily enjoy Meteora’s entire suite of features and products. And every new product idea is integrated into Jupiter and all platforms.

The Result? Find PMF faster. Innovate on distribution and your product, knowing that the tech always has your back.

See what you can do at https://launch.meteora.ag/

In addition, we’ve worked with Jupiter, GMGN, Photon and more to build discovery for tokens launching from DBC. We also innovated a new discovery platform with Jupiter Pro, allowing all of Meteora’s partners to get the recognition they deserve.

Meteora is here to supply the technology, and empower our partners. We’re here to help our partners win.

Check out our DBC launch partners: Dialect, Dealr, and many more expected to launch and announce support for DBC over the next few weeks.

All these are part of Meteora’s ultimate 3LP goal – empowering all launchpads, and creating more opportunities for the LP Army.

Let’s ship.

https://x.com/MeteoraAG/status/1915460846140207442
🦄32
Meteora Dynamic Bonding Curve (DBC) SDK just got an update!
(@meteora-ag/dynamic-bonding-curve-sdk)


We have just updated our DBC Typescript SDK (@meteora-ag/dynamic-bonding-curve-sdk) to v1.1.2.


Updating your library to the latest version (v1.1.2.) will consist of the following breaking changes:
- createConfig, buildCurveAndCreateConfig and buildCurveAndCreateConfigByMarketCap will now require an additional creatorTradingFeePercentage parameter where you can indicate how much the creator of the pool can earn when the pool is pre-graduation. Here is a reference to the updated interface. Reference: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md#parameters


- Calling state functions such as getPool or getPoolConfig will be called in this manner:

client.state.getPoolConfig



- Changed function name of claimTradingFee to claimPartnerTradingFee


- New helper functions to get DBC or DAMMV1 or DAMMV2 pool addresses. Reference: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/docs.md#derivedbcpooladdress


We also implemented additional updates to the SDK:


- createPoolAndBuy function that allows you to create a pool and be the first buyer


- creatorWithdrawSurplus and claimCreatorTradingFee functions for pool creators


- Updated doc.md with all the functionalities of the SDK. Reference: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/docs.md


Check out the full change log here: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md


If anyone is facing any blockers or issues or have areas of improvement that they would like to share, feel free to reach out to me @dannweeeee on telegram.


Thanks everyone for your support and Happy Building! 🙏🏻
2🦄2
https://x.com/MeteoraAG/status/1925538484971769972

Heads up — DAMM V2 is live on Dexscreener, if you use DBC, consider migrating to DAMM V2 going forward!
2🔥2🦄1
❗️Heads up for DBC Builders

The latest version of the SDK is live now

@meteora-ag/dynamic-bonding-curve-sdk@1.1.6


Breaking changes to note:
- If you are using any of the buildCurveAndCreateConfig or buildCurveByMarketCapAndCreateConfig functions, those are deprecated now. The new flow would be as such:
--> 1. Call any of the build curve functions (`buildCurve`, buildCurveWithMarketCap, buildCurveWithLiquidityWeights, buildCurveWithCreatorFirstBuy, `buildCurveWithTwoSegments`)
--> 2. Then call client.partner.createConfig to create the config
--> Full Flow:

const curveConfig = buildCurveWithMarketCap({
...
)}

const transaction = await client.partner.createConfig({
config: new PublicKey('1234567890abcdefghijklmnopqrstuvwxyz'),
feeClaimer: new PublicKey('boss1234567890abcdefghijklmnopqrstuvwxyz'),
leftoverReceiver: new PublicKey('boss1234567890abcdefghijklmnopqrstuvwxyz'),
payer: new PublicKey('boss1234567890abcdefghijklmnopqrstuvwxyz'),
quoteMint: new PublicKey('So11111111111111111111111111111111111111112'),
...buildCurveResponse,
})


Changelog: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md

Documentation: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/docs.md

Happy building! Feel free to reach out to me @dannweeeee if you have any questions / bugs / feedback on any of our SDKs.
3💯1
❗️Program Update for DBC Builders

The latest version of the DBC Program and Typescript SDK is live now:

DBC Program Update:
- Added the functionality to transfer pool creator to a new creator
- Added the functionality to collect a migration fee from migration quote threshold (this can be fee shared to pool creator)
- Added the functionality to indicate whether token update authority is mutable or immutable

This will mean that there are 2 additional parameters when you create your config key:

tokenUpdateAuthority: number // 0 - Mutable, 1 - Immutable,
migrationFee: {
// Optional migration fee (set as 0 for feePercentage and creatorFeePercentage for no migration fee)
feePercentage: number // The percentage of fee taken from migration quote threshold (0-50)
creatorFeePercentage: number // The fee share percentage for the creator from the migration fee (0-100)
}


Additional functions:
- client.creator.transferPoolCreator - to transfer poolCreator to a new wallet address
- client.creator.withdrawMigrationFee - creator to withdraw migration fee
- client.partner.withdrawMigrationFee - partner to withdraw migration fee

For Typescript SDK users, please check the CHANGELOG.md to see if this change affects you.

CHANGELOG.md: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md

docs.md: https://github.com/MeteoraAg/ts-sdk/blob/main/packages/dynamic-bonding-curve/docs.md

Happy building! Feel free to reach out to me @dannweeeee if you have any questions / bugs / feedback on any of our SDKs.
3💯1
Important for integrators / indexers / trading platforms & bots:
New endpoint for DAMM v2 pool creation
! initialize_pool_with_dynamic_config

- Using this new endpoint, partners have more flexibility; they can use the same private config key to create multiple pools with different params (e.g. for fee scheduler, fee collection token), instead of requiring multiple config keys.
- Also, with this new endpoint, only the pool creator authority is allowed to create a pool and this authority is set in a private config key. As such, even if the token is leaked, the pool creator authority can still create the pool normally.
- Another use case is to allow partners to use their own private config key to seed or migrate to a DAMM v2 pool which has a specific price range.
- More details here: https://github.com/MeteoraAg/cp-amm-sdk/blob/main/docs.md#createcustompoolwithdynamicconfig

Please help to support this new endpoint, as well as the previous 2 endpoints for DAMM v2:
- initialize_pool : Create a new pool from a config key
- initialize_customizable_pool : Create a new pool with customizable parameters. When using this endpoint, there's no config key. The pool address is unique to each token mint pair. So it should only be used by the token deployer and the token can't be leaked. If the token is leaked and someone created a pool for it, another new pool can't be created using this endpoint.

Thank you!
💯21
❗️ DBC Program Update: Rate Limiter & Breaking Changes
We’re rolling out a major update to the Dynamic Bonding Curve (DBC) program, including a Rate Limiter feature and 99% max fee.

📆 ETA: Thursday, 12th June 2025, 5pm UTC+8 (in ~1 week)
Ideally, you should deploy your update a short period before our program deployment (e.g. by 12th June, ~10am UTC+8)
We’ll notify if the timeline shifts and when the program is deployed.

[1] Changelogs
Changelogs for Program release [0.1.3] can be found [here](https://jupiterexchange.notion.site/Changelog-Rate-Limiter-and-99-Fee-20a9650318e9818f97bdc6084183a9d6?pvs=143)

[1] Breaking Change:
- Maximum cliff_fee_numerator has been bumped up from 50% (5000 bps / 500_000_000) to 99% (9900 bps / 990_000_000)
- If is_rate_limiter_applied, then swap instruction will need to submit instruction_sysvar_account in remaining_accounts, otherwise transaction will fail.
- swap_quote function will need to account for the rate limiter math calculation and 99% max fee.
- Important: This means that your swap quotes will show slight inaccuracy if you update now, if fees are >50%.

[2] Changes:
- base_fee parameters in pool_config has been updated to first_factor, second_factor, third_factor
- Updated fee_scheduler_mode to base_fee_mode to account for rate limiter base fee mode
- 0 = Fee Scheduler - Linear
- 1 = Fee Scheduler - Exponential
- 2 = Rate Limiter

- Old `base_fee` Parameters:
base_fee = {
cliff_fee_numerator: BN
number_of_period: number
period_frequency: BN
reduction_factor: BN
fee_scheduler_mode: FeeSchedulerMode // 0 or 1
}


- New `base_fee` Parameters:
base_fee = {
cliff_fee_numerator: BN
first_factor: number // feeScheduler: numberOfPeriod, rateLimiter: feeIncrementBps
second_factor: BN // feeScheduler: periodFrequency, rateLimiter: maxLimiterDuration
third_factor: BN // feeScheduler: reductionFactor, rateLimiter: referenceAmount
base_fee_mode: BaseFeeMode // 0, 1, or 2
}


Note:
- Base Fee can still be derived from cliff_fee_numerator if there is no fee_scheduler or rate_limiter
- Math formulas can be found in [here](https://jupiterexchange.notion.site/dbc-integrators-handbook).
- Program is live on DEVNET where you can test with.
- The Rate Limiter & Fee Scheduler may apply additional taxes based on size or time, we are happy to discuss how best to implement a smooth UX in your products

Program PR can be found here:
https://github.com/MeteoraAg/dynamic-bonding-curve/pull/89

Typescript SDK PR can be found here:
https://github.com/MeteoraAg/ts-sdk/pull/47
7💯1
Meteora Dev Updates
❗️ DBC Program Update: Rate Limiter & Breaking Changes We’re rolling out a major update to the Dynamic Bonding Curve (DBC) program, including a Rate Limiter feature and 99% max fee. 📆 ETA: Thursday, 12th June 2025, 5pm UTC+8 (in ~1 week) Ideally, you should…
👆Reminder: Upcoming DBC program update
🕔 ~
Thur, 12 June, 5pm UTC+8. Details here:
https://t.me/meteora_dev/14

For partners using our TS SDK, 99% max fee & Rate Limiter features are available in Typescript SDK v1.2.4 (beta)
https://www.npmjs.com/package/@meteora-ag/dynamic-bonding-curve-sdk/v/1.2.4
Program update is already live on devnet to test with!

Note:
If you update now, there’ll be a breaking change. If fees are >50% at any point, the current program will cap the fee at 50%, which will lead to an inaccurate swapQuote value. So ideally, you should only support the program update a short period (e.g. a few hours) before our deployment at 5pm UTC+8.
🫡1
IMPORTANT: The Rate Limiter & 99% Fee Scheduler PR will be deployed at 10 AM SGT, on Thursday instead.

Prepare your updated Swap Integrations and deploy a few hours before. Feel free to test on Devnet.

More Info: https://t.me/meteora_dev/14
🫡1
REMINDER: Our Rate Limiter and 99% Max Fee update will be tomorrow (Thursday, 12th June, 10am SGT)

Things to note for Trading Terminals:
Base Fee (Fee Scheduler & Rate Limiter)
- Max fee is bumped up to 99% instead of the max cap 50%.

Rate Limiter
- In swap instruction, if rate limiter is enabled, user need to submit `instruction_sysvar_account` in remaining account, otherwise transaction will be failed.
- Swap quote function will need to be updated to the latest include MAX_FEE and Rate Limiter fee.
- Crucial for all trading terminals to timely update their services by Thursday, 12th June, 10am SGT onwards.

How you can display rate limiter on your UI
`tax: For [duration], [base_fee]% for <= [Reference Amount], >=[base_fee]% for > [Reference Amount]`

Latest change logs, https://jupiterexchange.notion.site/Changelog-Rate-Limiter-and-99-Fee-20a9650318e9818f97bdc6084183a9d6

Happy to answer any question y’all might have around these set of changes
You can refer to the graphics for reference around how you can best display this on your UI
New API endpoints for DAMM v1 and DAMM v2

We will continue to maintain the old endpoints as well for approximately ~2 weeks to facilitate this transition. But please switch to the new API endpoints as soon as possible. Thank you!

DAMM v1 API
New endpoints
- Mainnet: https://damm-api.meteora.ag/swagger-ui/
- Devnet: https://damm-api.devnet.meteora.ag/

Old endpoints (deprecated soon)
- Mainnet: https://amm-v2.meteora.ag/swagger-ui/
- Devnet: https://devnet-amm-v2.meteora.ag/

DAMM v2 API
New endpoints
- Mainnet: https://dammv2-api.meteora.ag/swagger-ui/
- Devnet: https://dammv2-api.devnet.meteora.ag/

Old endpoints (deprecated soon)
- Mainnet: https://cp-amm-api.meteora.ag/swagger-ui/

You can view Meteora's main API endpoints here: https://docs.meteora.ag/resources/meteora-apis
👍7
DAMM v2 Program Update containing Permissionless Liquidity Management (Farming Rewards) is LIVE

Pool creators can now permissionlessly set up a DAMM v2 Pool Farm

Added:
⁃ Pool state add a new field creator, that records address for pool creator

Changes:
⁃ Allow pool creator to initialize reward at index 0 permissionlessly

Full program changelog: https://github.com/MeteoraAg/damm-v2/blob/main/CHANGELOG.md#cp_amm-012

Summary: https://meteoraag.notion.site/Changelog-Permissionless-Rewards-21fcd1ff211180959426f3b16c1968e0?pvs=74
🔥5
DBC Program Update containing Token Update Authority and Mint Authority is LIVE

You can now specify mutable / immutable token metadata authority and mint authority

feat:
- added 3 new options: PartnerUpdateAuthority [2], CreatorUpdateAndMintAuthority [3], PartnerUpdateAndMintAuthority [4]

❗️Update your typescript SDK to v1.2.9 to use this latest feature

minor:
- CollectFeeMode enums in TS SDK changed from QuoteOnly and Both to QuoteToken and OutputToken

Full program changelog: https://github.com/MeteoraAg/dynamic-bonding-curve/blob/main/CHANGELOG.md#dynamic_bonding_curve-014-pr-100

Full TS SDK changelog: https://github.com/MeteoraAg/dynamic-bonding-curve-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md#129---2025-06-27

Summary: https://meteoraag.notion.site/Changelog-Token-Update-Authority-and-Mint-Authority-219cd1ff21118190be05d05a2c7346e1
4
DLMM Program Update containing Dynamic Positions (Extendable & Rebalance Positions) is GOING LIVE THIS WEEK

This week, we are rolling out a major update to the DLMM program - Dynamic Positions. This update will allow liquidity providers to increase or decrease their DLMM position length, as well as rebalance their DLMM position dynamically.

NOTE: Integrators can start to prepare for the upcoming deployment. After we execute the program, we will update you again and you can pump the changes.

Added:
⁃ Endpoint claim_fee and claim_fee2 emit event ClaimFee2Event, that includes active_bin_id.
⁃ Endpoint claim_reward and claim_reward2 emit event ClaimReward2Event, that includes active_bin_id.
⁃ Add new endpoints increase_position_length and decrease_position_length, that helps to modify the position's length.
⁃ Add new endpoint rebalance_liquidity, that help position's owner to manage position better (can combine multiple modifying liquidity instructions and resize position underneath).

Changes:
⁃ Update to anchor 0.31.1 and solana 2.1.*
⁃ Support dynamic position, new position bin data will be added in extended bytes data of position account, can support up to 1400 bin data in a position account.
⁃ Remove the constraints 70 bins in endpoints add_liquidity_by_strategy, add_liquidity_by_weight, add_liquidity_by_weight_one_side
⁃ Endpoint initialize_bin_array_bitmap_extension won't return error if the bitmap_extension account has been initialized.

Full typescript SDK changelog: https://github.com/MeteoraAg/dlmm-sdk/blob/feat/extendable-position/CHANGELOG.md#meteora-agdlmm-160---pr-196

Summary: https://meteoraag.notion.site/Changelog-Dynamic-Positions-233cd1ff211181c8922be4d7989330db
🔥7👍1💯1
DLMM Program Update containing Dynamic Positions (Extendable & Rebalance Positions) is LIVE

Integrators can start deploying their changes.

Check the Changelog + Pre-announcement here: https://t.me/meteora_dev/26

Happy building ☄️
🔥3👍1
DBC Program Update containing Customizable Graduated Pool Fee (for DAMM v2 graduated pools) is LIVE

You can now specify customizable fees in DBC -> DAMM v2 pools.

feat:
⁃ customizable fees (between 0.01% to 10%)
⁃ dynamic fees (enabled or disabled)
⁃ specify quote only or quote + base token collect fee modes
⁃ Emit new event when partner create a new config key, that includes more information: EvtCreateConfigV2

❗️FOR AUTO MIGRATORS: Migrators needs to check the new value for migration_fee_option, if the value is 6 (Customizable), then need to use the new config key for DammV2 migration (A8gMrEPJkacWkcb3DGwtJwTe16HktSEfvwtuDh2MCtck)

❗️Update your typescript SDK to v1.3.5 to use this latest feature

minor:
- buildCurve, buildCurveWithMarketCap, buildCurveWithTwoSegments, buildCurveWithLiquidityWeights functions now have an optional migrationFeeOption parameter

Full program changelog: https://github.com/MeteoraAg/dynamic-bonding-curve/blob/main/CHANGELOG.md#dynamic_bonding_curve-015-pr-113

Full TS SDK changelog: https://github.com/MeteoraAg/dynamic-bonding-curve-sdk/blob/main/packages/dynamic-bonding-curve/CHANGELOG.md#135---2025-07-31

Summary: https://meteoraag.notion.site/Changelog-Customizable-Graduated-Pool-Fees-219cd1ff21118190be05d05a2c7346e1?pvs=74
🫡3🔥2
DAMM v2 Program Update containing Split LP Position and Changes to EvtInitializeReward is LIVE

You can now dynamically split LP position onchain via the program endpoint.

Added:
⁃ Add new endpoint split_position that allows position's owner to split position.

Changes:
⁃ Update quote function in rust sdk, added a condition for swap enabled

Breaking Changes:
EvtInitializeReward emit more fields: creator, reward_duration_end, pre_reward_rate and post_reward_rate

Full program changelog: https://github.com/MeteoraAg/damm-v2/blob/main/CHANGELOG.md#cp_amm-013

Full TS SDK changelog: https://github.com/MeteoraAg/damm-v2-sdk/blob/main/CHANGELOG.md#damm_v2_sdk-110-pr-59

Summary: https://meteoraag.notion.site/Changelog-Split-LP-Position-241cd1ff211180b5beabfb717689b694?pvs=74