Skip to content

Releases: coinbase-samples/prime-sdk-java

v1.6.1

22 Dec 15:02
fdc4dc7

Choose a tag to compare

[1.6.1] - 2025-12-18

Added

New Endpoints

  • Staking Service
    • previewUnstake - Preview unstaking operation to get estimated amounts
    • getUnstakingStatus - Get unstaking status and estimated completion times for validators
  • Futures Service
    • getFcmSettings - Get FCM settings including target derivatives excess
    • setFcmSettings - Update FCM settings
  • Financing Service
    • listTFObligations - List trade finance obligations for an entity
    • listFinancingEligibleAssets - List assets eligible for trade finance

New Models

  • ProcessRequirements - Travel rule status requirements for transactions
  • RewardMetadata - Staking reward metadata
  • TfAsset - Trade finance asset with adjustment factors
  • TFObligation - Trade finance obligation details
  • UnstakingStatus - Unstaking status with estimated completion times
  • ValidatorUnstakingInfo - Validator-specific unstaking information

New Enums

  • EstimateType - Estimate confidence types for unstaking
  • RewardSubtype - Reward subtypes for staking
  • TravelRuleStatus - Travel rule submission status
  • UnstakeType - Unstaking operation types

New Examples

  • Staking Examples (8 new)
    • PortfolioStakingInitiate.java
    • PortfolioStakingUnstake.java
    • CreateStake.java
    • CreateUnstake.java
    • ClaimRewards.java
    • ListTransactionValidators.java
    • PreviewUnstake.java
    • GetUnstakingStatus.java
  • Futures Examples (2 new)
    • GetFcmSettings.java
    • SetFcmSettings.java
  • Financing Examples (2 new)
    • ListTFObligations.java
    • ListFinancingEligibleAssets.java

Changed

  • Updated Order model with PEG order fields (pegOffsetType, offset, wigLevel)
  • Updated Transaction model with processRequirements field
  • Updated TransactionMetadata model with spec changes
  • Updated UserRole, XmCallType, XmEntityCallStatus enums with new values

v1.5.3

07 Nov 14:33
9be24d8

Choose a tag to compare

[1.5.3] - 2025-11-05

Fixed

  • Fixed not passing request in GetWalletDepositInstructions

Added

  • Unit tests and examples for several endpoints

v1.5.1

30 Oct 17:07
a2d25dc

Choose a tag to compare

[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

30 Oct 13:25
ebfa4b1

Choose a tag to compare

[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 contracts
    • postOnly - Post-only flag for maker-only LIMIT orders
    • pegOffsetType - Peg offset type for PEG orders
    • offset - 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 orders
    • displayBaseSize - Maximum order size visible on venue books (base currency) for iceberg orders
  • GetOrderPreviewResponse: Added isRaiseExact field for raise exact order flag
  • EditOrderRequest: Added iceberg and stop order support
    • displayQuoteSize - Display size for iceberg orders
    • displayBaseSize - Display size for iceberg orders
    • stopPrice - 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 orders
    • cfmDeltaOte - Open Trade Equity accrued during current trading session
    • cfmUnsettledRealizedPnl - Unsettled realized PNL for positions closed intraday
    • cfmUnsettledAccruedFundingPnl - Unsettled accrued funding PNL from last settlement

Transactions Service

  • CreateConversionResponse: Added transactionId field - UUID of the conversion transaction

Wallets Service

  • CreateWalletResponse: Added networkFamily field 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: crossMarginOverviewoverview
    • JSON property: "cross_margin_overview""overview"
    • Getter: getCrossMarginOverview()getOverview()
    • Setter: setCrossMarginOverview()setOverview()

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:
    • getAllocationsByClientNettingIdlistAllocationsByNettingId
    • Updated corresponding request/response classes: GetAllocationsByClientNettingIdRequestListAllocationsByNettingIdRequest
  • Fixed activity type enum: PrimeActivityTypeCustodyActivityType
  • Removed nettingId field from CreateAllocationRequest to align with API specification

v1.4.0

24 Oct 21:21
6537b5b

Choose a tag to compare

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 from getActivityByActivityId)
    • getPortfolioActivity - Get portfolio-specific activity
  • Assets
    • listEntityAssets - List assets for an entity
  • Futures
    • getFcmMarginCallDetails - Get FCM margin call details
    • getFcmRiskLimits - Get FCM risk limits
    • getPositions - Get entity positions (renamed from getEntityPositions)
  • Financing
    • getCrossMarginOverview - Get cross margin overview
  • Orders
    • editOrder - Edit an existing order
    • listOrderEditHistory - List order edit history
  • Payment Methods
    • getPaymentMethodDetails - Get detailed payment method information (renamed from getEntityPaymentMethod)
  • Portfolios
    • getPortfolio - Get portfolio by ID with new request structure
    • getPortfolioCounterpartyId - Get portfolio counterparty ID
    • listPortfolios - List portfolios with proper request object
  • Products
    • listCandles - List price candles for products
  • Staking
    • portfolioStakingInitiate - Initiate staking for portfolio
    • portfolioStakingUnstake - Unstake from portfolio
    • createStake - Create stake
    • createUnstake - Create unstake
    • claimRewards - Claim staking rewards
    • listTransactionValidators - List validators for transactions
  • Transactions
    • createWalletTransfer - Create wallet transfer
    • createWalletWithdrawal - Create wallet withdrawal
    • getTransaction - Get transaction by ID
  • Users
    • listEntityUsers - List users for an entity
  • Wallets
    • createWalletDepositAddress - Create deposit address for wallet
    • listWalletAddresses - 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, AllocationSizeType
  • CandlesGranularity, CommissionCategory, CommissionType
  • FcmFuturesSweepStatus, FcmMarginCallState, FcmMarginCallType, FcmPositionSide, FeeModel
  • HierarchyType, NetworkFamily, PortfolioBalanceType, PositionSide, PositionStatus, PositionType, ProductPermissions
  • SortDirection, StakingRewardType, StakingStatus
  • TimeInForceType, TrustedAddressLevel, UnbondingStatus, UserRole, ValidatorStatus, Visibility
  • WalletDepositInstructionType, WalletVisibility
  • XMCallStatus, XMCallType, XMControlStatus, XMEntityCallStatus, XMMarginLevel, XMParty

Tests

  • CoinbasePrimeCredentialsTest - Credentials validation tests
  • VersionHeaderIntegrationTest - SDK version header tests
  • ConstantsTest - Constants validation tests

Changed

Naming Conventions

  • Web3WalletAssetOnchainAsset
  • Replaced "Web3" terminology with "Onchain" throughout codebase
  • Method renames:
    • getActivityByActivityIdgetActivity
    • listActivitieslistPortfolioActivities
    • getPortfolioAddressBooklistAddressBook
    • getEntityPositionsgetPositions
    • getEntityPaymentMethodgetPaymentMethodDetails
    • listEntityPaymentMethodslistPaymentMethods
    • getPortfolioByIdgetPortfolio
    • getTransactionByTransactionIdgetTransaction
    • createTransfercreateWalletTransfer
    • createWithdrawalcreateWalletWithdrawal
    • listUserslistEntityUsers
    • getWalletByIdgetWallet

Request/Response Class Renames

  • GetActivityByActivityIdRequestGetActivityRequest
  • GetActivityByActivityIdResponseGetPortfolioActivityResponse
  • GetEntityActivityByActivityIdResponseGetActivityResponse
  • ListActivitiesRequestListPortfolioActivitiesRequest
  • ListActivitiesResponseListPortfolioActivitiesResponse
  • GetPortfolioAddressBookRequestListAddressBookRequest
  • GetPortfolioAddressBookResponseListAddressBookResponse
  • GetPortfolioAllocationsRequestListPortfolioAllocationsRequest
  • GetEntityPaymentMethodRequestGetPaymentMethodDetailsRequest
  • GetEntityPaymentMethodResponseGetPaymentMethodDetailsResponse
  • ListEntityPaymentMethodsRequestListPaymentMethodsRequest
  • GetPortfolioByIdRequestGetPortfolioRequest
  • GetPortfolioByIdResponseGetPortfolioResponse
  • GetEntityPositionsRequestGetPositionsRequest
  • GetEntityPositionsResponseGetPositionsResponse
  • GetTransactionByTransactionIdRequestGetTransactionRequest
  • GetTransactionByTransactionIdResponseGetTransactionResponse
  • CreateTransferRequestCreateWalletTransferRequest
  • CreateTransferResponseCreateWalletTransferResponse
  • CreateWithdrawalRequestCreateWalletWithdrawalRequest
  • CreateWithdrawalResponseCreateWalletWithdrawalResponse
  • ListUsersRequestListEntityUsersRequest
  • ListUsersResponseListEntityUsersResponse
  • GetWalletByIdRequestGetWalletRequest
  • GetWalletByIdResponseGetWalletResponse

Model Class Renames

  • AllocationDestinationDestinationAlloc
  • ConversionDetailsConversionDetail
  • EntityPaymentMethodPaymentMethodSummary
  • Web3WalletAssetOnchainAsset

Models and Serialization

  • Updated request/response models with Jackson annotations
  • Added PaginationCursor for paginated responses
  • Updated model field names to match OpenAPI specification
  • Moved Pagination from com.coinbase.prime.model to com.coinbase.prime.common
  • Removed redundant response wrapper classes

Package Structure

  • Created onchainaddressbook package for onchain address book operations
  • Created common package for shared models like Pagination
  • Updated PrimeServiceFactory to include new services

Removed Classes

  • Models: AccountMetadata, Consensus, EvmParams, OnchainAddress, OnchainDetails, OrderFill (replaced by Fill), PaymentMethod, RequestedAmount (replaced by RequestAmount), Rpc, Sweep, TotalBalance, TransactionsMetadata, GetOrderPreviewResponse, OrdersMetadata, StakingInputs, FiatDepositInstructions
  • Enums: Role (replaced by UserRole), SizeType (replaced by AllocationSizeType), TimeInForce (replaced by TimeInForceType), UserActionType, BalanceType (replaced by PortfolioBalanceType), DepositType (replaced by WalletDepositInstructionType)

Fixed

  • Query parameter handling in list operations
  • Response deserialization for nested objects
  • Copyright headers

v1.3.0

29 May 15:42
a5e4470

Choose a tag to compare

[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

13 Mar 19:34
ceba5a0

Choose a tag to compare

Merge pull request #16 from coinbase-samples/jc-a-dev

update to new asset structure

v1.1.4

19 Feb 23:26
0950864

Choose a tag to compare

Add service account id to credentials and do not assert if there are unknown attributes in the credentials json.

v1.1.3

22 Jan 22:34
780ce54

Choose a tag to compare

Adds the following endpoints:

  • ActivitiesService - GetEntityActivityByActivityId
  • OrdersService - ListPortfolioFills

v1.1.2

01 Jan 00:21
8138391

Choose a tag to compare

Add missing field to response class and update core version