October 9, 2026
Stellar USDC beta
Portfolio Wallets support Stellar Testnet USDC in sandbox. Stellar mainnet is available in beta for enabled production environments. Usestellar_testnet in sandbox and stellar in production.
Stellar deposit addresses use a one-time setup flow. Configure an organization signer, subscribe to portfolio_wallet.approval.status_changed, and call POST /v2/wallets/{id}/deposit-addresses/{chain}/enable. After the setup activity is approved, the Stellar G-address appears in the wallet’s depositAddresses.
Withdrawals can deliver USDC to Stellar Testnet and to beta-enabled Stellar mainnet environments. Use the matching chain key and a valid G-address, then process approval activities and track the withdrawal until completion.
October 6, 2026
Automatic TRON deposit addresses
Every Portfolio Wallet receives a TRON USDT address automatically. Wait for address readiness before depositing. Ground funds activation and gas when an outgoing transaction needs them. Breaking change:PATCH /v2/wallets/{id} now accepts only label. Remove enabledChains from update requests; it returns HTTP 400. Address setup requires no enable request.
October 4, 2026
TRON Portfolio Wallets and JustLend V1 USDT
Portfolio Wallets support native TRON USDT in production and Shasta test USDT in sandbox. TRON addresses are provisioned automatically; poll the wallet for readiness before depositing. TRON uses the independentusdt:tron allocation group; Ethereum USDT remains in usdt. USDT does not bridge between them.
JustLend V1 USDT (justlend-v1-usdt) is available through the environment-specific catalog. Its underlying allocation represents 100% exposure to the USDT lending market. Shasta uses a simulated market with test assets. Ground pays the transaction resource costs for Ground-managed operations.
JustLend current APY preview
JustLend V1 yield-source responses now include an optionalcurrentApy preview
with apyBps, asOf, and validUntil. Label this value Current APY and stop
displaying it at validUntil; it expires two hours after observation. It is a
variable supply-rate estimate excluding rewards, using JustLend’s annualization
and display precision without additional compounding. The existing apyBps remains
the historical 30-day rate and stays null until enough history is available.
Responses also include a link to JustLend’s USDT market overview.
September 1, 2026
Strategy optimization endpoint removed
Breaking changePOST /v2/wallets/strategy/optimize is no longer available. Fetch the current
yield-source catalog from GET /v2/wallets/yield-sources, apply your allocation
policy in your application, and submit explicit allocations through
POST /v2/wallets or PATCH /v2/wallets/{id}/strategy.
August 14, 2026
Cash-to-cash allocations are rejected
POST /v2/wallets/{id}/allocate-preview and
POST /v2/wallets/{id}/allocate now reject movements whose source and
destination are both cash positions. Allocate between cash and a yield source,
or between two yield sources.
August 10, 2026
Portfolio wallet webhooks identify their wallet
Portfolio wallet deposit, withdrawal, payout, strategy, and rebalance webhooks now include a top-levelwalletId. USD amounts in deposit activity and webhooks
are returned with exactly six decimal places. Retrying a workflow no longer
emits a rebalance event solely because its worker claim changed.
August 9, 2026
Allocation responses include accepted instructions
POST /v2/wallets/{id}/allocate now returns the allocation’s requestId,
createdAt, and accepted allocations alongside its rebalanceId and current
status. Allocation create and preview responses return dollar strings with
exactly six decimal places.
July 21, 2026
JAAA USDT available in production
Production now returnsground-jaaa-usdt-vault from
GET /v2/wallets/yield-sources. Put this source under
strategy.allocations.usdt; continue using ground-jaaa-usdc-vault under
strategy.allocations.usdc for the USDC-funded lane.
This availability update does not change the response schema or introduce new
identifiers. The JAAA-USDT metadata now correctly describes its AAA-rated
collateralized loan obligation exposure.
July 20, 2026
Stablecoin-explicit JAAA yield source IDs
Breaking change The existing USDC-funded JAAA source moved fromground-jaaa-vault to
ground-jaaa-usdc-vault. Update stored strategy templates and API clients to
use the stablecoin-explicit USDC ID.
Sandbox also exposes ground-jaaa-usdt-vault for the USDT-funded JAAA lane.
Place it under strategy.allocations.usdt only when it is present in the live
environment-specific response from GET /v2/wallets/yield-sources. Production
clients must not assume the USDT row is available until the production catalog
returns it.
Historical completed JAAA-USDC transactions retain their economics and remain
readable after the identity migration.
July 17, 2026
Canonical list responses and webhook event casing
Breaking change We completed the response-pattern migration introduced on July 9. The following endpoints now return list items only underdata and pagination only through nextCursor:
GET /v2/wallets/yield-sourcesGET /v2/activityGET /v2/webhooksGET /v2/webhooks/eventsGET /v2/webhooks/{id}/events
List envelope migration
All affected list responses now use this shape:
nextCursor is non-null, pass it as the next request’s cursor query parameter. A null value means there are no more pages.
Webhook event field migration
Webhook event feed items and their nestedlatestEmission object now use camelCase exclusively. Update clients to read:
registrationId,eventType,attemptCount,deliveredAt,lastError,createdAt, andupdatedAton each event;eventId,attemptNumber,requestedAt,completedAt,responseStatus,responseMs, anderrorMessagefromlatestEmission.
Required client changes
- Read every affected list from
response.data. - Replace
response.hasMorechecks withresponse.nextCursor !== null. - Replace snake_case webhook event and delivery-attempt field access with the camelCase names above.