Releases: coinbase-samples/prime-sdk-java
Releases · coinbase-samples/prime-sdk-java
v1.6.1
[1.6.1] - 2025-12-18
Added
New Endpoints
- Staking Service
previewUnstake- Preview unstaking operation to get estimated amountsgetUnstakingStatus- Get unstaking status and estimated completion times for validators
- Futures Service
getFcmSettings- Get FCM settings including target derivatives excesssetFcmSettings- Update FCM settings
- Financing Service
listTFObligations- List trade finance obligations for an entitylistFinancingEligibleAssets- List assets eligible for trade finance
New Models
ProcessRequirements- Travel rule status requirements for transactionsRewardMetadata- Staking reward metadataTfAsset- Trade finance asset with adjustment factorsTFObligation- Trade finance obligation detailsUnstakingStatus- Unstaking status with estimated completion timesValidatorUnstakingInfo- Validator-specific unstaking information
New Enums
EstimateType- Estimate confidence types for unstakingRewardSubtype- Reward subtypes for stakingTravelRuleStatus- Travel rule submission statusUnstakeType- Unstaking operation types
New Examples
- Staking Examples (8 new)
PortfolioStakingInitiate.javaPortfolioStakingUnstake.javaCreateStake.javaCreateUnstake.javaClaimRewards.javaListTransactionValidators.javaPreviewUnstake.javaGetUnstakingStatus.java
- Futures Examples (2 new)
GetFcmSettings.javaSetFcmSettings.java
- Financing Examples (2 new)
ListTFObligations.javaListFinancingEligibleAssets.java
Changed
- Updated
Ordermodel with PEG order fields (pegOffsetType, offset, wigLevel) - Updated
Transactionmodel with processRequirements field - Updated
TransactionMetadatamodel with spec changes - Updated
UserRole,XmCallType,XmEntityCallStatusenums with new values
v1.5.3
v1.5.1
[1.5.1] - 2025-10-30
Fixed
- Fixed casing in FCM, XM, and PM class files due to git case sensitivity miss
v1.5.0
[1.5.0] - 2025-10-28
Added
Orders Service - Advanced Order Type Support
- CreateOrderRequest: Added support for advanced order types
settlCurrency- Settlement currency for futures contractspostOnly- Post-only flag for maker-only LIMIT orderspegOffsetType- Peg offset type for PEG ordersoffset- Offset value for PEG orders (0 = peg to best bid/offer)wigLevel- WIG (Would if Good) level for pegged orders
- GetOrderPreviewRequest: Added same advanced order fields as CreateOrderRequest plus:
displayQuoteSize- Maximum order size visible on venue books (quote currency) for iceberg ordersdisplayBaseSize- Maximum order size visible on venue books (base currency) for iceberg orders
- GetOrderPreviewResponse: Added
isRaiseExactfield for raise exact order flag - EditOrderRequest: Added iceberg and stop order support
displayQuoteSize- Display size for iceberg ordersdisplayBaseSize- Display size for iceberg ordersstopPrice- Stop price at which order activates
Futures Service
- GetFcmRiskLimitsResponse: Added comprehensive FCM margin and PnL fields
cfmTotalMargin- Total margin required for both positions and open orderscfmDeltaOte- Open Trade Equity accrued during current trading sessioncfmUnsettledRealizedPnl- Unsettled realized PNL for positions closed intradaycfmUnsettledAccruedFundingPnl- Unsettled accrued funding PNL from last settlement
Transactions Service
- CreateConversionResponse: Added
transactionIdfield - UUID of the conversion transaction
Wallets Service
- CreateWalletResponse: Added
networkFamilyfield for wallet network family - GetWalletDepositInstructionsResponse: Added proper JSON property annotations
@JsonProperty("crypto_instructions")for crypto deposit instructions@JsonProperty("fiat_instructions")for fiat deposit instructions
Changed
Breaking Changes
- GetCrossMarginOverviewResponse (Financing Service): Renamed field and methods for OpenAPI alignment
- Field:
crossMarginOverview→overview - JSON property:
"cross_margin_overview"→"overview" - Getter:
getCrossMarginOverview()→getOverview() - Setter:
setCrossMarginOverview()→setOverview()
- Field:
Fixed
- Aligned all Request/Response classes with OpenAPI specification v0.1
- Fixed missing optional fields across 11 classes in 5 services
- Added 26 fields total to match OpenAPI spec completely
- Fixed JSON property mappings for proper snake_case to camelCase conversion
- Fixed acronym casing in model classes (XM* → Xm*, FCM* → Fcm*) to match Java naming conventions
- Fixed field naming consistency across Request/Response classes
- Corrected method signatures and naming:
getAllocationsByClientNettingId→listAllocationsByNettingId- Updated corresponding request/response classes:
GetAllocationsByClientNettingIdRequest→ListAllocationsByNettingIdRequest
- Fixed activity type enum:
PrimeActivityType→CustodyActivityType - Removed
nettingIdfield fromCreateAllocationRequestto align with API specification
v1.4.0
Changelog
[1.4.0] - 2025-10-15
Added
OpenAPI Specification
tools/model-generator/- OpenAPI Generator integration for model generation
New Endpoints
- Activities
getActivity- Get single activity by ID (renamed fromgetActivityByActivityId)getPortfolioActivity- Get portfolio-specific activity
- Assets
listEntityAssets- List assets for an entity
- Futures
getFcmMarginCallDetails- Get FCM margin call detailsgetFcmRiskLimits- Get FCM risk limitsgetPositions- Get entity positions (renamed fromgetEntityPositions)
- Financing
getCrossMarginOverview- Get cross margin overview
- Orders
editOrder- Edit an existing orderlistOrderEditHistory- List order edit history
- Payment Methods
getPaymentMethodDetails- Get detailed payment method information (renamed fromgetEntityPaymentMethod)
- Portfolios
getPortfolio- Get portfolio by ID with new request structuregetPortfolioCounterpartyId- Get portfolio counterparty IDlistPortfolios- List portfolios with proper request object
- Products
listCandles- List price candles for products
- Staking
portfolioStakingInitiate- Initiate staking for portfolioportfolioStakingUnstake- Unstake from portfoliocreateStake- Create stakecreateUnstake- Create unstakeclaimRewards- Claim staking rewardslistTransactionValidators- List validators for transactions
- Transactions
createWalletTransfer- Create wallet transfercreateWalletWithdrawal- Create wallet withdrawalgetTransaction- Get transaction by ID
- Users
listEntityUsers- List users for an entity
- Wallets
createWalletDepositAddress- Create deposit address for walletlistWalletAddresses- List addresses for a wallet
New Models
- Activities:
ActivityMetadataAccount,ActivityMetadataConsensus,ActivityMetadataOrders,ActivityMetadataTransactions - Address Book:
AddressBookConfiguration,AddressBookMetadata,AddressBookSummary,AddressEntry,TrustedAddressConfiguration - Allocations:
AllocationRule,AllocationStrategy,CreateAllocationResponseBody,CreateNetAllocationResponseBody,DestinationAlloc - Commission:
CommissionCalculation,CommissionRate - Futures:
FcmBalance,FcmFuturesSweep,FcmFuturesSweepRequestAmount,FcmMarginCall,FcmMarginCallDetail,FcmPosition,FcmRiskLimit,FcmRiskLimits - Financing:
ConversionDetail,CrossMarginOverview,ExistingLocate,MarginConversion,TradeFinanceFee,XMLoan,XMMarginCall,XMPosition,XMRiskNettingInfo,XMSummary - Orders:
Fill,LimitOrderEdit,OrderEdit,QuoteResponse,RfqProductDetails - Payment Methods:
PaymentMethodDestination,PaymentMethodDetails,PaymentMethodSummary - Portfolios:
Counterparty,CounterpartyDestination,PortfolioStakingMetadata,PortfolioUser - Products:
Candle - Staking:
CreateStakeInputs,CreateUnstakeInputs,RewardsSummary,StakingBalance,StakingInitiateResponse,StakingPosition,StakingReward,StakingSummary,StakingUnstakeResponse,StakingYield,UnbondingEntry,ValidatorInfo,WalletClaimRewardsInputs,WalletStakeInputs,WalletUnstakeInputs - Transactions:
OnchainTransactionDetails,OnchainTransactionMetadata,CreateOnchainTransactionEvmParams,CreateOnchainTransactionRequestEvmParams,TransactionMetadata,TransactionValidator - Wallets:
AggregatedFiatBalance,DefiBalance,OnchainBalance,WalletBalance,WalletCryptoDepositInstructions,WalletFiatDepositInstructions - Common:
PaginationCursor,RequestAmount,RpcConfig,VolumeDiscount
New Enums
Action,ActivityLevel,ActivityType,AddressBookCategory,AddressBookState,AddressValidationStatus,AllocationSizeTypeCandlesGranularity,CommissionCategory,CommissionTypeFcmFuturesSweepStatus,FcmMarginCallState,FcmMarginCallType,FcmPositionSide,FeeModelHierarchyType,NetworkFamily,PortfolioBalanceType,PositionSide,PositionStatus,PositionType,ProductPermissionsSortDirection,StakingRewardType,StakingStatusTimeInForceType,TrustedAddressLevel,UnbondingStatus,UserRole,ValidatorStatus,VisibilityWalletDepositInstructionType,WalletVisibilityXMCallStatus,XMCallType,XMControlStatus,XMEntityCallStatus,XMMarginLevel,XMParty
Tests
CoinbasePrimeCredentialsTest- Credentials validation testsVersionHeaderIntegrationTest- SDK version header testsConstantsTest- Constants validation tests
Changed
Naming Conventions
Web3WalletAsset→OnchainAsset- Replaced "Web3" terminology with "Onchain" throughout codebase
- Method renames:
getActivityByActivityId→getActivitylistActivities→listPortfolioActivitiesgetPortfolioAddressBook→listAddressBookgetEntityPositions→getPositionsgetEntityPaymentMethod→getPaymentMethodDetailslistEntityPaymentMethods→listPaymentMethodsgetPortfolioById→getPortfoliogetTransactionByTransactionId→getTransactioncreateTransfer→createWalletTransfercreateWithdrawal→createWalletWithdrawallistUsers→listEntityUsersgetWalletById→getWallet
Request/Response Class Renames
GetActivityByActivityIdRequest→GetActivityRequestGetActivityByActivityIdResponse→GetPortfolioActivityResponseGetEntityActivityByActivityIdResponse→GetActivityResponseListActivitiesRequest→ListPortfolioActivitiesRequestListActivitiesResponse→ListPortfolioActivitiesResponseGetPortfolioAddressBookRequest→ListAddressBookRequestGetPortfolioAddressBookResponse→ListAddressBookResponseGetPortfolioAllocationsRequest→ListPortfolioAllocationsRequestGetEntityPaymentMethodRequest→GetPaymentMethodDetailsRequestGetEntityPaymentMethodResponse→GetPaymentMethodDetailsResponseListEntityPaymentMethodsRequest→ListPaymentMethodsRequestGetPortfolioByIdRequest→GetPortfolioRequestGetPortfolioByIdResponse→GetPortfolioResponseGetEntityPositionsRequest→GetPositionsRequestGetEntityPositionsResponse→GetPositionsResponseGetTransactionByTransactionIdRequest→GetTransactionRequestGetTransactionByTransactionIdResponse→GetTransactionResponseCreateTransferRequest→CreateWalletTransferRequestCreateTransferResponse→CreateWalletTransferResponseCreateWithdrawalRequest→CreateWalletWithdrawalRequestCreateWithdrawalResponse→CreateWalletWithdrawalResponseListUsersRequest→ListEntityUsersRequestListUsersResponse→ListEntityUsersResponseGetWalletByIdRequest→GetWalletRequestGetWalletByIdResponse→GetWalletResponse
Model Class Renames
AllocationDestination→DestinationAllocConversionDetails→ConversionDetailEntityPaymentMethod→PaymentMethodSummaryWeb3WalletAsset→OnchainAsset
Models and Serialization
- Updated request/response models with Jackson annotations
- Added
PaginationCursorfor paginated responses - Updated model field names to match OpenAPI specification
- Moved
Paginationfromcom.coinbase.prime.modeltocom.coinbase.prime.common - Removed redundant response wrapper classes
Package Structure
- Created
onchainaddressbookpackage for onchain address book operations - Created
commonpackage for shared models likePagination - Updated
PrimeServiceFactoryto include new services
Removed Classes
- Models:
AccountMetadata,Consensus,EvmParams,OnchainAddress,OnchainDetails,OrderFill(replaced byFill),PaymentMethod,RequestedAmount(replaced byRequestAmount),Rpc,Sweep,TotalBalance,TransactionsMetadata,GetOrderPreviewResponse,OrdersMetadata,StakingInputs,FiatDepositInstructions - Enums:
Role(replaced byUserRole),SizeType(replaced byAllocationSizeType),TimeInForce(replaced byTimeInForceType),UserActionType,BalanceType(replaced byPortfolioBalanceType),DepositType(replaced byWalletDepositInstructionType)
Fixed
- Query parameter handling in list operations
- Response deserialization for nested objects
- Copyright headers
v1.3.0
[1.3.0] - 2025-MAY
Added
- Entity Endpoints
- ListEntityBalances
- ListAggregateEntityPositions
- ListEntityPositions
- Futures Endpoints
- cancelEntityFuturesSweep
- getEntityFcmBalance
- getEntityPositions
- listEntityFuturesSweeps
- scheduleEntityFuturesSweeps
- setAutoSweep
- RFQ Endpoints
- createQuoteRequest
- acceptQuote
- Prime Financing Endpoints
- listExistingLocations
- listInterestAccruals
- listPortfolioInterestAccruals
- listMarginCallSummaries
- listMarginConversions
- getEntityLocateAvailabilities
- getMarginInformation
- getPortfolioBuyingPower
- getPortfolioCreditInformation
- getPortfolioWithdrawalPower
- getTieredPricingFees
- createNewLocates
- Prime Staking Endpoints
- CreateStake
- CreateUnstake
- Moved all models to one communal package for easier export
- Moved all Request/Response object to service specific package
v1.2.1
v1.1.4
v1.1.3
Adds the following endpoints:
- ActivitiesService - GetEntityActivityByActivityId
- OrdersService - ListPortfolioFills