Skip to main content
POST
Create Allocation

Authentication

✅ Organization User (CustomerEmployee)
❌ Delegated User (EndUser)
✅ Service Account

Required Permissions

Allocations:Create: Always required
Wallets:Transactions:Create: Always required. Allocation transactions are broadcast from your wallet.
FeeSponsors:Use: Required if feeSponsorId is specified.

Authorizations

Authorization
string
header
required

Bearer Token: Used to authenticate API requests. More details how to generate the token: Authentication flows

X-DFNS-USERACTION
string
header
required

User Action Signature: Used to sign the change-inducing API requests. More details how to generate the token: User Action Signing flows

Body

application/json

Request body for creating an allocation investment.

walletId
string
required

Wallet id.

Required string length: 1 - 64
Pattern: ^wa-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"wa-5pfuu-9euek-h0odgb6snva8ph3k"

protocol
enum<string>
required

Ofns protocol

Available options:
0fns
sourceAsset
EVM Fungible Token (ERC-20) · object
required
targetAsset
EVM Fungible Token (ERC-20) · object
required
slippageBps
integer
required

The slippage tolerance for this trade in basis point (BPS). Slippage tolerance defines the maximum price difference you're willing to accept during a trade from the estimated quote, ensuring you still receive at least a minimum number of tokens if the price shifts. One basis point equals one-hundredth of a percentage point, or 0.01%.

Required range: 0 <= x <= 10000
externalId
string

An optional external identifier provided by the client to ensure idempotency and prevent duplicate operations.

provider
enum<string>

The provider handling this allocation.

Available options:
M0,
Yield.xyz
feeSponsorId
string

Id of the fee sponsor that will pay the network fees for this allocation. When set, allocation transactions are broadcast as sponsored user operations.

Required string length: 1 - 64
Pattern: ^fs-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"fs-5vqdl-gliqk-b4rfukqauov1sp7j"

Response

200 - application/json

Success

A allocation investment representing funds deposited to earn interest from a DeFi protocol.

id
string
required

Unique identifier for the allocation investment.

Required string length: 1 - 64
Pattern: ^allctn-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"allctn-7mnn0-rltpq-9bvps60gjm09td0j"

walletId
string
required

Wallet id.

Required string length: 1 - 64
Pattern: ^wa-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"wa-5pfuu-9euek-h0odgb6snva8ph3k"

protocol
enum<string>
required

The DeFi protocol used for allocation generation.

Available options:
0fns,
SkySusds,
GauntletUsdcPrime,
SteakhouseUsdt,
GauntletUsdcPrimeBase,
SteakhouseUsdcBase,
SentoraPyusdMain
amount
Native Asset · object
required

The total amount currently invested in this allocation.

rewards
Native Asset · object
required

The total rewards earned so far in this allocation.

dateCreated
string<date-time>
required

ISO 8601 date (must be UTC). ISO 8601 date. When the allocation was created.

Example:

"2023-04-14T20:41:28.715Z"

actions
object[]
required
provider
enum<string>

The provider handling this allocation.

Available options:
M0,
Yield.xyz
Last modified on July 9, 2026