1. Create a server-side API key
Create an API key in the Ground Developer Portal. Store it only on your backend.2. Discover available gtokens
Retrieve the environment’s yield-source catalogue:id is the gVaultId used
by the allowlist API, while contractAddress is the contract your application
calls onchain.
GVAULT_ID from the selected catalogue row and CUSTOMER_ADDRESS to the
address that will receive gtokens:
3. Allowlist the user’s address
Before the user’s first deposit, call the allowlist endpoint from your backend:200 response means the
desired state is already confirmed. A 202 response means Ground submitted an
onchain allowlist transaction.
Poll until confirmed:
"allowed": true.
4. Read the deposit asset
Read the ERC-4626-styleasset() method from the backing vault contract:
assets in
that token’s native units.
5. Approve and deposit
The user first approves the backing vault contract to spend the deposit asset:receiver to the allowlisted address that should receive gtokens.
The backing vault checks the receiver’s access, not merely the transaction sender.
Before submitting, you can estimate the output with:
6. Withdraw within current liquidity
Read the user’s immediately available capacity:owner to the calling wallet. receiver
is the address that receives the deposit asset.
7. Request a larger redemption
When the requested exit exceeds current synchronous liquidity, submit an asynchronous redemption:requestId. Ground processes queued redemptions
onchain. After the request is processed, the same owner claims the proceeds:
requestId in your operation
record until the claim confirms.