Omen Developer Portal

API Reference

Wallet Service API

Detailed reference for endpoints, authentication, channels, messages, environment endpoints, and data models in this integration area.

OpenAPI referencev0.2.2Wallets

Omen Wallet Service API

Server-side signing and credential management for the Omen trading platform. **Flows:** - **Prop Trading** — Risk-checked server-side signing via Privy server wallets - **Retail Delegation** — 24h session key delegation for retail users - **Retail Onboarding** — Full Polymarket account setup (Privy embedded wallet + deposit wallet/Safe + credentials) - **Builder HMAC** — HMAC-SHA256 header generation for Polymarket A

Environment endpoints

Local developmenthttp://localhost:8090Local development

Authentication

BearerAuthhttpbearer

End-user JWT bearer token for wallet linking endpoints.

ServiceAuthapiKeyX-Service-Secret

Service-to-service shared secret. Required on all non-health endpoints except the JWT-authenticated wallet linking routes, unless `SERVICE_AUTH_REQUIRED=false`.

Endpoints

MethodPathSummaryTags
GET/healthLiveness probe
Health
GET/health/readyReadiness probe
Health
GET/internal/wallet/{user_id}Get linked wallet by user id
Internal
GET/internal/trading-wallet/{user_id}Get trading wallet by user id
Internal
POST/api/v1/wallet/linkLink a wallet to the authenticated user
Wallet Linking
DELETE/api/v1/wallet/linkUnlink the authenticated user's wallet
Wallet Linking
GET/api/v1/walletGet the authenticated user's linked wallet
Wallet Linking
POST/api/v1/polymarket/hmacGenerate builder HMAC headers
HMAC
GET/api/v1/prop/walletsList prop wallets
Prop Wallets
GET/api/v1/prop/wallets/{wallet_id}Get wallet details
Prop Wallets
POST/api/v1/prop/wallets/{wallet_id}/signSign order with risk checks
Prop Wallets
POST/api/v1/prop/wallets/{wallet_id}/hmacGenerate HMAC for specific wallet
Prop Wallets
GET/api/v1/prop/wallets/{wallet_id}/positionsGet wallet positions
Prop Wallets
GET/api/v1/prop/wallets/{wallet_id}/pnlGet wallet PnL
Prop Wallets
POST/api/v1/admin/walletsCreate prop wallet
Admin
PUT/api/v1/admin/wallets/{wallet_id}Update wallet settings
Admin
DELETE/api/v1/admin/wallets/{wallet_id}Disable wallet
Admin
PUT/api/v1/admin/wallets/{wallet_id}/rulesUpdate trading rules
Admin
POST/api/v1/admin/bot-walletsProvision a bot wallet and API token
Bot Wallets
DELETE/api/v1/admin/bot-wallets/{user_id}Deactivate a bot wallet
Bot Wallets
POST/api/v1/admin/bot-wallets/{user_id}/rotate-tokenRotate a bot wallet API token
Bot Wallets
POST/api/v1/retail/delegateDelegate private key for 24h signing
Retail Delegation
DELETE/api/v1/retail/delegateRevoke delegated key
Retail Delegation
GET/api/v1/retail/delegate/statusCheck delegation status
Retail Delegation
POST/api/v1/retail/signSign order with delegated key
Retail Signing
POST/api/v1/retail/onboardOnboard retail user for Polymarket
Retail Onboarding
GET/api/v1/retail/onboard/statusCheck onboarding progress
Retail Onboarding
GET/api/v1/retail/walletGet retail wallet info
Retail Account
GET/api/v1/retail/wallet/balanceGet pUSD balance
Retail Account
GET/api/v1/retail/credentialsGet Polymarket API credential metadata
Retail Account
POST/api/v1/retail/credentials/resetReset Polymarket credentials
Retail Account
GET/api/v1/retail/approvalsCheck token approval status
Retail Account
GET/api/v1/retail/permissionsGet trading permissions for the client location
Retail Account
POST/api/v1/retail/safe/deployDeploy Safe contract
Retail Onboarding
POST/api/v1/retail/wallet/registerRegister a self-provisioned Privy embedded wallet
Retail Onboarding
POST/api/v1/retail/safe/createSubmit a client-signed SAFE-CREATE deployment
Retail Onboarding
POST/api/v1/retail/safe/execute/preparePrepare a SAFE execute for client signing
Retail Onboarding
POST/api/v1/retail/safe/execute/submitSubmit a client-signed SAFE execute
Retail Onboarding
POST/api/v1/retail/deposit-wallet/createDeploy a Polymarket deposit wallet
Retail Onboarding
POST/api/v1/retail/deposit-wallet/execute/preparePrepare a deposit wallet batch for client signing
Retail Onboarding
POST/api/v1/retail/deposit-wallet/execute/submitSubmit a signed deposit wallet batch
Retail Onboarding
POST/api/v1/retail/credentials/preparePrepare a ClobAuth challenge for client signing
Retail Onboarding
POST/api/v1/retail/credentials/submitSubmit a client-signed ClobAuth payload
Retail Onboarding
POST/api/v1/retail/polymarket/signSign order via Privy embedded wallet
Retail Signing
POST/api/v1/retail/agentic/signAllowlisted Polymarket EIP-712 signing
Retail Signing
GET/api/v1/retail/balancesGet combined balances across venues
Cross-venue
GET/api/v1/retail/deposit-addressGet deposit addresses for all venues
Cross-venue
POST/api/v1/retail/transfer/quoteGet cross-venue transfer quote
Cross-venue
POST/api/v1/retail/transfer/executeExecute cross-venue transfer
Cross-venue
GET/api/v1/retail/transfer/status/{tx_hash}Check cross-venue transfer status
Cross-venue

Data models

ErrorResponseHealthResponseReadinessResponseHmacRequestHmacHeadersHmacResponseWalletLinkRequestWalletLinkResponseWalletGetResponseInternalWalletResponseWalletStatusWalletSummaryPropWalletTradingRulesListWalletsResponseOrderDataSignOrderRequestRiskCheckRiskCheckResultsSignOrderResponsePositionSummaryPositionsResponsePnlResponseCreateWalletRequestCreateWalletResponseCreateBotWalletRequestCreateBotWalletResponseRotateBotWalletTokenResponseUpdateWalletRequestUpdateRulesRequestDelegateKeyRequestDelegateKeyResponseDelegationStatusResponseDelegatedSignRequestDelegatedSignResponseOnboardRetailRequestRetailApiCredentialsRetailApiCredentialMetadataOnboardRetailResponseOnboardingStatusOnboardingStatusResponseRetailWalletResponseRetailSignRequestRetailSignResponseAgenticSignRequestAgenticSignResponseApprovalStatusResponseSafeDeployResponseRegisterRetailWalletRequestRegisterRetailWalletResponseSafeCreateSubmitRequestSafeExecuteTransactionDtoSafeExecutePrepareRequestSafeExecutePrepareResponseSafeExecuteSubmitRequestDepositWalletCreateRequestDepositWalletCreateResponseDepositWalletExecutePrepareRequestDepositWalletExecutePrepareResponseDepositWalletExecuteSubmitRequestDepositWalletExecuteSubmitResponseRelayerSubmitResponseCredentialsPrepareRequestCredentialsPrepareResponseCredentialsSubmitRequestCredentialsSubmitResponseBalanceResponseCredentialResetResponseVenueVenueBalanceBalancesResponsePredictionMarketsDepositInfoPolymarketBridgeDepositAddressesPerpsDepositInfoDepositAddressResponseTransferQuoteRequestBridgeEstimateTransferQuoteResponseTransferExecuteRequestTransferExecuteResponseTransferStatusResponseDexPermissionTradingPermissionsResponse