diff --git a/api.yaml b/api.yaml index 6c38761..23bdbc1 100644 --- a/api.yaml +++ b/api.yaml @@ -212,8 +212,8 @@ paths: schema: $ref: '#/components/schemas/PlatformPlatformError' get: - summary: Get wallet by ID and coin - description: Get one wallet by its 'coin' and 'walletId'. One 'walletId' can map to multiple receive addresses. + summary: Get wallet by coin and ID + description: Returns wallet and balance details for a wallet. operationId: v2.wallet.get tags: - Wallet @@ -22740,8 +22740,8 @@ paths: $ref: '#/components/schemas/PlatformError' /api/v2/{coin}/wallet/balances: get: - summary: Get wallet by ID and coin - description: Get one wallet by its 'coin' and 'walletId'. One 'walletId' can map to multiple receive addresses. + summary: List total balances by coin + description: Returns total balances by asset (including tokens and NFTs) across all wallets in an enterprise. operationId: v2.wallet.gettotalbalancesbycoin tags: - Wallet @@ -26622,8 +26622,8 @@ paths: $ref: '#/components/schemas/PlatformError' /api/v2/wallet/balances: get: - summary: Get wallet by ID and coin - description: Get one wallet by its 'coin' and 'walletId'. One 'walletId' can map to multiple receive addresses. + summary: List total balances + description: Returns total balances by asset across all wallets in an enterprise. operationId: v2.wallet.gettotalbalances tags: - Wallet @@ -27240,25650 +27240,1759 @@ paths: schema: $ref: '#/components/schemas/PlatformError' components: - schemas: - PlatformError: - title: Api Error - allOf: - - type: object - properties: - name: - type: string - description: Error code - context: - type: object - additionalProperties: {} - description: Properties that apply to a specific error name - required: - - context - - $ref: '#/components/schemas/PlatformErrorNoName' - PlatformErrorNoName: - title: PlatformErrorNoName - type: object - properties: - error: - type: string - description: Human-readable error message - requestId: - type: string - description: Client request id - required: - - error - - requestId - Webhook: - title: Webhook - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - created: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - url: - type: string - example: https://your.server.com/webhook - format: uri - version: - type: number - description: 2 for coins running on API v2. - example: 2 - scope: - $ref: '#/components/schemas/WebhookScope' - state: - $ref: '#/components/schemas/WebhookState' - successiveFailedAttempts: - type: number - example: 0 - listenToFailureStates: - type: boolean - description: Whether or not to listen to failed transactions on chain. - label: - type: string - description: Label of the new webhook. - walletId: - type: string - enterpriseId: - type: string - organizationId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - userId: - type: string - type: - allOf: - - $ref: '#/components/schemas/WebhookType' - description: Event type to listen to. - numConfirmations: - type: number - example: 6 - lastAttempt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - failingSince: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - allToken: - type: boolean - txRequestStates: - type: array - items: - type: string - enum: - - pendingApproval - - canceled - - rejected - - initialized - - pendingDelivery - - delivered - - pendingUserSignature - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - signed - - failed - description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. - txRequestTransactionStates: - type: array - items: - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. - required: - - id - - created - - coin - - url - - version - - scope - - state - - successiveFailedAttempts - - listenToFailureStates - WebhookType: - title: WebhookType - type: string - enum: - - txRequest - - txRequestTransaction - - transfer - - transaction - - transactionRemoved - - transactionExpire - - pendingapproval - - block - - admin - - address_confirmation - - lowFee - - circuitBreaker - - wallet_confirmation - - bankAccount - - userKycState - - enterpriseKycState - - identityStatus - - accessToken - - accountCreated - - contractSigned - - fundsDeposited - - kycResult - - policyBalanceChange - - transaction_finality_on_l1 - WebhookState: - title: WebhookState - type: string - enum: - - active - - suspended - description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. - example: active - WebhookScope: - title: WebhookScope - type: string - enum: - - wallet - - enterprise - - organization - WalletWebhookType: - title: WalletWebhookType - type: string - enum: - - txRequest - - txRequestTransaction - - transfer - - transaction - - transactionRemoved - - transactionExpire - - pendingapproval - - block - - admin - - address_confirmation - - lowFee - - circuitBreaker - - transaction_finality_on_l1 - - fundsDeposited - WalletIdNonEmptyString: - title: WalletIdNonEmptyString - type: string - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - InvalidAddress: - title: Invalid Address - allOf: - - type: object - properties: - name: - type: string - enum: - - InvalidAddress - required: - - name - - $ref: '#/components/schemas/InvalidId' - InvalidId: - title: InvalidId - allOf: - - type: object - properties: - context: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - id - required: - - context - - $ref: '#/components/schemas/PlatformErrorNoName' - CoinString: - title: CoinString - type: string - description: A cryptocurrency symbol or token ticker symbol - example: btc - PendingApproval: - title: PendingApproval - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - wallet: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - wallets: - type: array - items: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - description: The wallets of the pending approval - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organizationName: - type: string - description: The organization name - bitgoOrg: - type: string - description: The BitGo organization - creator: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - createDate: - type: string - description: The creation date of the pending approval - format: date-time - title: ISO Date String - approvedDate: - type: string - description: The date when the approval was granted - format: date-time - title: ISO Date String - info: - allOf: - - $ref: '#/components/schemas/PendingApprovalInfo' - description: Information about the pending approval - state: - allOf: - - $ref: '#/components/schemas/PendingApprovalState' - description: The state of the pending approval - scope: - type: string - enum: - - enterprise - - wallet - - organization - description: What kind of entity the Pending Approval is tied to - userIds: - type: array - items: - type: string - description: All the Users who should see this Pending Approval - approvalsRequired: - type: number - example: 1 - minimum: 1 - walletLabel: - type: string - description: Label for the wallet - addressLabels: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/AddressString' - label: - type: string - description: The label - walletLabel: - type: string - description: The wallet label - required: - - address - - label - description: Address labels of recipients in this Pending Approval - resolvers: - type: array - items: - type: object - description: Resolvers for the pending approval - properties: - date: - type: string - description: The date of resolution - format: date-time - title: ISO Date String - resolutionAction: - type: string - enum: - - approve - - reject - - skip - - fail - description: Action taken during resolution - resolutionMemo: - type: string - description: Memo regarding the resolution - resolutionType: - allOf: - - $ref: '#/components/schemas/PendingApprovalStatePending' - description: The type of resolution - user: - type: string - description: The user who resolved the approval - videoApprover: - type: string - description: The approver of the video resolution - videoException: - type: string - description: Exception details for the video - videoLink: - type: string - description: Link to the resolution video - required: - - resolutionType - approvers: - type: array - items: - type: string - description: List of approvers - singleRunResults: - type: array - items: - type: object - properties: - ruleId: - type: string - description: The rule ID - triggered: - type: boolean - description: Whether the rule was triggered - description: Results from single run checks - txRequestId: - type: string - description: Transaction request ID - example: 123e4567-e89b-12d3-a456-426614174000 - format: uuid - videoId: - type: object - description: ID for the video related to the approval - properties: - date: - type: string - description: The date of the video ID - format: date-time - title: ISO Date String - user: - type: string - description: The user associated with the video ID - videoApprover: - type: string - description: The approver of the video - videoException: - type: string - description: The exception related to the video - videoLink: - type: string - description: The link to the video - version: - type: number - description: Version of the pending approval - groupApprovalRequirement: - type: object - description: Requirements for providing group approval. - properties: - items: - type: array - items: - type: object - properties: - id: - type: string - description: The ID of the group - minimumApprovals: - type: number - description: The name of the group - type: - type: string - description: The type of the group - required: - - id - - type - operator: - $ref: '#/components/schemas/GroupApprovalRequirementOperator' - required: - - items - - operator - policyEvaluationId: - type: string - description: ID for the policy evaluation + callbacks: {} + examples: + ActionsExample: + summary: Touchpoint Actions + description: A successful response with 3 Touchpoint Actions. + value: actions: - type: array - items: - type: object - properties: - approvers: - type: array - items: - type: string - description: The approvers of the action - id: - type: string - description: The ID of the action - name: - type: string - description: The name of the action - operator: - type: string - enum: - - AND - - OR - description: The operator of the action - parameters: - allOf: - - $ref: '#/components/schemas/PolicyActionParameters' - description: The parameters of the action - resolvers: - type: array - items: - type: object - description: The resolvers of the action - properties: - date: - type: string - description: The date of resolution - format: date-time - title: ISO Date String - resolutionAction: - type: string - enum: - - approve - - reject - - skip - - fail - description: Action taken during resolution - resolutionMemo: - type: string - description: Memo regarding the resolution - resolutionType: - allOf: - - $ref: '#/components/schemas/PendingApprovalStatePending' - description: The type of resolution - user: - type: string - description: The user who resolved the approval - videoApprover: - type: string - description: The approver of the video resolution - videoException: - type: string - description: Exception details for the video - videoLink: - type: string - description: Link to the resolution video - required: - - resolutionType - status: - allOf: - - $ref: '#/components/schemas/EvaluatedPolicyActionStatus' - description: The status of the action - required: - - id - - name - - parameters - - status - description: List of actions taken - resolutionOrder: - type: array - items: - type: object - properties: - actions: - type: array - items: - type: string - minLength: 1 - required: - - actions - description: Order of resolution - useLegacyPolicyEngine: - type: boolean - description: Flag to use legacy policy engine - videoCallId: - type: string - description: ID for the video call - lastUpdated: - type: string - description: The last date the approval was processing - format: date-time - title: ISO Date String - freeze: - type: object - description: The freeze state - properties: + - name: approvals.always.deny + label: Deny + description: Automatically reject + status: ACTIVE + adminOnly: false + parameters: [] + - name: approvals.customer.walletAdmin + label: Wallet Admin + description: Require approval from wallet admins + status: ACTIVE + adminOnly: false + parameters: + - name: minRequired + label: Approvals Required + description: Minimum required number of approvers + type: NON_NEGATIVE_NUMBER + required: OPTIONAL + allowMultiple: false + values: [] + - name: approvals.customer.finalApproval + label: Require final approval from wallet users + description: Require final approval from wallet users + status: ACTIVE + adminOnly: false + parameters: + - name: userIds + label: Users + description: List of users for final approval + type: BITGO_ID + required: ONE_OR_MORE + allowMultiple: true + values: [] + AvaxPDelegationResultsExample: + summary: AvaxP Delegation Results Example + value: + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '0' + coin: avaxp + walletId: 63110fc78b108e00071df2d3c3879dd0 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '1000' + apy: '6.5100' + unstakeable: false + page: 1 + totalPages: 1 + totalElements: 1 + AvaxPStakingRequestPOSTBodyExample: + summary: AvaxP Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1000' + type: STAKE + durationSeconds: 604800 + AvaxPStakingRequestWithTransactionsExample: + summary: AvaxP UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + durationSeconds: 604800 + walletType: custodial + type: STAKE + coin: avaxp + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '10012000000' + status: ACTIVE + rewards: '12000000' + lockedRewards: '0' + pendingUnstake: '10012000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + amount: '1012' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: WAITING + amount: '10012000000' + transactionType: withdraw_undelegated + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10012000000' + AvaxPStakingRequestWithoutDelegationsExample: + summary: AvaxP Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + durationSeconds: 604800 + walletType: hot + type: STAKE + coin: avaxp + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '10000000000' + AvaxPWalletStakingStateAttributesExamples: + summary: AvaxP Wallet Staking Attributes + value: + disclaimer: + staking: + info: + - Minimum staking period is 14 days. Maximum staking period is 1 year (365 days). Minimum to stake is 2000 AVAX. Maximum to stake is 3M AVAX. + transactionsNeeded: 1 + rewardPercentageRate: '2' + rewardsCompounding: false + unstaking: + info: + - Once staked you CANNOT unstake. It will auto-unstake at the end of your staking period. + transactionsNeeded: 0 + permission: + staking: + enabled: true + allowClientToUseOwnValidator: true + unstaking: + enabled: false + disabledReason: AVAXP is auto-unstaked + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 1 + spendable: + staking: + fee: '0' + max: '13995243325' + min: '1000000000' + netMax: '13995243325' + netMin: '1000000000' + isStakingDurationNeeded: true + minStakeMore: '0' + minDuration: '86400' + maxDuration: '31536000' + unstaking: + fee: '0' + max: '0' + min: '0' + multipleDelegations: false + CreatePolicyRuleExample: + summary: A create policy rule request + value: + name: Get approval if transferring more than 2 BTC in a minute + adminOnly: false + clauses: + - conditions: + - name: transfer.velocity.limit + parameters: + amount: '2000000' + timeWindow: '60' + coin: btc actions: - type: array - items: - type: object - properties: - reason: - type: string - state: - type: string - enum: - - frozen - - unFrozen - time: - type: string - format: date-time - title: ISO Date String - userId: - type: string - username: - type: string - state: - type: string - enum: - - frozen - - unFrozen - required: - - id - - creator - - createDate - - info - - state - - scope - EvaluatedPolicyActionStatus: - title: EvaluatedPolicyActionStatus - type: string - enum: - - SKIPPED - - PENDING - - NOT_NEEDED - - COMPLETE - - CANCELLED - - FAILED - PendingApprovalStatePending: - title: Pending - type: string - enum: - - pending - - awaitingSignature - - pendingFinalApproval - - pendingCustodianApproval - - pendingVideoApproval - - pendingIdVerification - - pendingLivenessVerification - - pendingManualTrustReview - PolicyActionParameters: - title: PolicyActionParameters - type: object - properties: - minRequired: - type: string - minLength: 1 - userIds: - type: array - items: - type: string - minLength: 1 - initiatorIsAllowedToApprove: - type: boolean - webhookURL: - type: string - minLength: 1 - livenessCheckUser: - $ref: '#/components/schemas/LivenessVerificationParameter' - isFallback: - type: boolean - walletSubtype: - $ref: '#/components/schemas/CustodialWalletSubType' - CustodialWalletSubType: - title: CustodialWalletSubType - type: string - enum: - - custodialCold - - custodialHot - LivenessVerificationParameter: - title: LivenessVerificationParameter - type: string - enum: - - transactionInitiator - - walletAdmins - - videoIdUsers - GroupApprovalRequirementOperator: - title: GroupApprovalRequirementOperator - type: string - enum: - - and - - or - AddressString: - title: AddressString - type: string - example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS - maxLength: 250 - PendingApprovalState: - title: PendingApprovalState - oneOf: - - $ref: '#/components/schemas/PendingApprovalStatePending' - - $ref: '#/components/schemas/PendingApprovalStateResolved' - - $ref: '#/components/schemas/PendingApprovalStateTrust' - - $ref: '#/components/schemas/PendingApprovalStateProtected' - PendingApprovalStateProtected: - title: Pending Protected - type: string - enum: - - pendingVideoApproval - - pendingIdVerification - - awaitingSignature - - pendingCustodianApproval - - pendingManualTrustReview - PendingApprovalStateTrust: - title: Pending Trust - type: string - enum: - - pendingVideoApproval - - pendingIdVerification - - awaitingSignature - - pendingCustodianApproval - - pendingManualTrustReview - PendingApprovalStateResolved: - title: Resolved - type: string - enum: - - approved - - processing - - rejected - PendingApprovalInfo: - title: PendingApprovalInfo - type: object - properties: - type: - $ref: '#/components/schemas/PendingApprovalType' - userChangeRequest: - type: object - properties: - action: - type: string - description: The action taken - permissions: - type: array - items: - type: string - description: The permissions associated with the change - userChanged: - type: string - description: The user that changed - transactionRequest: - type: object - properties: - buildParams: {} - coinSpecific: {} - comment: - nullable: true - type: string - description: The comment for the transaction request - fee: {} - isUnsigned: - nullable: true - type: boolean - description: Indicates if the transaction is unsigned - policyUniqueId: {} - recipients: - type: array - items: - type: object - properties: - address: - type: string - description: The address of the recipient - example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS - maxLength: 250 - amount: {} - data: - type: string - description: Additional data for the transaction - description: The recipients of the transaction - requestedAmount: {} - sourceWallet: {} - triggeredPolicy: {} - validTransaction: - type: string - description: Indicates if the transaction is valid - validTransactionHash: - type: string - description: The hash of the valid transaction - verificationItems: - nullable: true - type: array - items: - type: string - description: The verification items for the transaction - verificationRuleId: - nullable: true - type: string - description: The ID of the verification rule - videoApprovers: - type: array - items: - description: The video approvers for the transaction - transactionRequestFull: - type: object - properties: - intent: - allOf: - - $ref: '#/components/schemas/PaymentIntent' - description: The intent of the transaction request - policyUniqueId: - type: string - description: The unique ID for the policy - txRequest: - oneOf: - - $ref: '#/components/schemas/TransactionRequestLite2' - - $ref: '#/components/schemas/TransactionRequestFull' - description: The transaction request details - txRequestId: - allOf: - - $ref: '#/components/schemas/TransactionRequestId' - description: The ID of the transaction request - verificationItems: - type: array - items: - type: string - description: The verification items for the transaction - verificationRuleId: - type: string - description: The ID of the verification rule - videoApprovers: - type: array - items: - type: string - description: The video approvers for the transaction - walletRebalanceEventId: - type: string - description: The ID of the wallet rebalance event - required: - - txRequestId - policyRuleRequest: - type: object - properties: - action: - type: string - description: The action of the policy rule request - update: - type: object - description: The update details of the policy rule request - properties: - action: - allOf: - - $ref: '#/components/schemas/PolicyRuleAction' - description: The action of the policy rule - coin: - $ref: '#/components/schemas/CoinString' - condition: - allOf: - - $ref: '#/components/schemas/PolicyRuleUpdateCondition' - description: The condition of the policy rule - id: - type: string - description: The ID of the policy rule - type: - allOf: - - $ref: '#/components/schemas/ApiRuleType' - description: The type of the API rule - updateApprovalsRequiredRequest: - type: object - properties: - requestedApprovalsRequired: - type: number - description: The number of requested approvals required - updateEnterpriseRequest: - type: object - properties: - action: - type: string - enum: - - add - - update - - remove - email: - type: string - description: The email of the user - isVideoIdUser: - type: boolean - description: Indicates if the user is a video ID user - permissions: - type: string - enum: - - admin - description: The permissions associated with the update - userId: - type: string - description: The ID of the user - updateOrganizationRequest: - type: object - properties: - action: - type: string - enum: - - add - - update - - remove - email: - type: string - description: The email of the user - role: - type: string - enum: - - admin - - member - - customer - description: The role of the user in the organization - example: admin - userId: - type: string - description: The ID of the user - genericRequest: - type: object - properties: - anchors: - type: array - items: - type: object - properties: - anchorType: - allOf: - - $ref: '#/components/schemas/AnchorType' - description: The type of the anchor - key: - type: string - description: The key of the anchor - value: - type: string - description: The value of the anchor - required: - - anchorType - - key - - value - description: The anchors associated with the request - changeType: - allOf: - - $ref: '#/components/schemas/ChangeType' - description: The type of change requested - currentId: - type: string - description: The current ID associated with the request - description: - type: string - description: The description of the request - metadata: - type: object - additionalProperties: - oneOf: - - type: string - - type: number - - type: boolean - description: The metadata of the request - proposedId: - type: string - description: The proposed ID associated with the request - resourceType: - type: string - description: The resource type of the request - enterpriseInviteRequest: - type: object - properties: - action: - type: string - enum: - - add - - update - - remove - email: - type: string - description: The email of the user - enterpriseInfo: - type: object - description: Additional info used by the client accepting the invite - properties: - id: - type: string - invitedBy: - type: object - properties: - email: - type: string - fullName: - type: string - id: - type: string - required: - - email - - fullName - - id - name: - type: string - requiredVerificationStep: - type: string - userKycState: - type: string - required: - - id - - invitedBy - - name - - requiredVerificationStep - isVideoIdUser: - type: boolean - description: Indicates if the user is a video ID user - permissions: - type: string - enum: - - admin - description: The permissions associated with the invite - userId: - type: string - description: The ID of the user - required: - - type - ChangeType: - title: ChangeType - type: string - enum: - - create - - update - - delete - AnchorType: - title: AnchorType - type: string - enum: - - policyRuleId - - settlementId - ApiRuleType: - title: ApiRuleType - type: string - enum: - - advancedWhitelist - - allTx - - coinAddressWhitelist - - coinAddressBlacklist - - trustUsdVelocityLimit - - txUsdThreshold - - usdVelocityLimit - - velocityLimit - - webhook - PolicyRuleUpdateCondition: - title: PolicyRuleUpdateCondition - oneOf: - - $ref: '#/components/schemas/AddressListRuleUpdateCondition' - - $ref: '#/components/schemas/AdvancedListRuleUpdateCondition' - - $ref: '#/components/schemas/TxUsdThresholdRuleCondition' - - $ref: '#/components/schemas/LimitRuleCondition' - - $ref: '#/components/schemas/WebhookRuleCondition' - WebhookRuleCondition: - title: WebhookRuleCondition - type: object - properties: - url: - type: string - description: The url to query for the webhook - required: - - url - LimitRuleCondition: - title: LimitRuleCondition - type: object - properties: - amountString: - type: string - example: '2000000' - pattern: ^-?\d+$ - timeWindow: - type: number - description: Time window in seconds for a velocity limit, between 1 and 30 days - minimum: 0 - maximum: 2678400 - groupTags: - type: array - items: - type: string - startDate: - type: string - format: date-time - title: ISO Date String - required: - - amountString - - timeWindow - TxUsdThresholdRuleCondition: - title: TxUsdThresholdRuleCondition - type: object - properties: - lowerBound: - type: string - upperBound: - type: string - required: - - lowerBound - AdvancedListRuleUpdateCondition: - title: AdvancedListRuleUpdateCondition - type: object - properties: - add: - $ref: '#/components/schemas/AdvancedListRuleEntry' - remove: - type: object - properties: - item: - type: string - type: - type: string - enum: - - address - - enterpriseId - - walletId - required: - - item - verifyItems: - type: object - properties: - items: - type: array - items: - type: string - required: - - items - AdvancedListRuleEntry: - title: AdvancedListRuleEntry - type: object - properties: - item: - type: string - description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. - metaData: - type: object - additionalProperties: {} - description: Any data about this entry that is not used to determine when to enforce the policy - type: - allOf: - - $ref: '#/components/schemas/AdvancedListType' - description: the kind of resource a list rule entry refers to - verificationState: - type: string - enum: - - unverified - - verified - required: - - item - - type - AdvancedListType: - title: AdvancedListType - type: string - enum: - - address - - enterpriseId - - walletId - AddressListRuleUpdateCondition: - title: AddressListRuleUpdateCondition - type: object - properties: - add: - type: string - remove: - type: string - metaData: - type: object - additionalProperties: - type: object - additionalProperties: {} - PolicyRuleAction: - title: PolicyRuleAction - type: object - properties: - type: - allOf: - - $ref: '#/components/schemas/ActionType' - description: The type of the action - approvalsRequired: - type: number - description: The number of approvals required - userIds: - type: array - items: - type: string - description: The user IDs associated with the action - groupApprovalRequirement: - type: object - description: The group approval requirement - properties: - items: - type: array - items: - type: object - properties: - id: - type: string - description: The ID of the group - minimumApprovals: - type: number - description: The name of the group - type: - type: string - description: The type of the group - required: - - id - - type - operator: - $ref: '#/components/schemas/GroupApprovalRequirementOperator' - required: - - items - - operator - required: - - type - ActionType: - title: ActionType - type: string - enum: - - deny - - getApproval - - getEnterpriseUserApproval - - getAnyApproval - - getGroupApproval - - getFinalApproval - - getVideoApproval - - getIdVerification - - verifyWalletRebalance - - getCustodianApproval - - getCustodialSignature - - noop - - triggerWebhookNotification - - performLivenessVerification - - recommendBackingWalletRouting - - getManualTrustReview - TransactionRequestId: - title: TransactionRequestId - type: string - example: 123e4567-e89b-12d3-a456-426614174000 - format: uuid - TransactionRequestFull: - title: TransactionRequestFull - allOf: - - type: object - properties: + - name: approvals.customer.walletAdmin + parameters: {} + filteringConditions: + - name: wallet.ids + parameters: + walletId: + - 643f146bb13653000765c478a384a656 + lockType: LOCK_AFTER_DATE + lockDate: '2023-11-13T14:49:48.830522Z' + DotDelegationResultsExample: + summary: Dot Delegation Results Example + value: + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '0' + coin: dot + walletId: 63110fc78b108e00071df2d3c3879dd0 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '1000' + apy: '6.5100' + unstakeable: false + page: 1 + totalPages: 1 + totalElements: 1 + DotStakingRequestPOSTBodyExample: + summary: Dot Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10000000000' + type: STAKE + DotStakingRequestWithTransactionsExample: + summary: Dot Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '10000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: CONFIRMED + amount: '10000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10000000000' + DotStakingRequestWithoutDelegationsExample: + summary: Dot Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '10000000000' + DotStakingRequestsListResponseExample: + summary: Dot Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '10000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStaking: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' transactions: - type: array - items: - type: object - properties: - state: - $ref: '#/components/schemas/TransactionState' - unsignedTx: - $ref: '#/components/schemas/UnsignedTransaction' - signatureShares: - type: array - items: - allOf: - - type: object - properties: - privateShareProof: - type: string - description: The private share proof - publicShare: - type: string - description: The public share - vssProof: - type: string - description: The VSS proof of the signature share - - $ref: '#/components/schemas/SignatureShareWithoutVssProof' - commitmentShares: - type: array - items: - allOf: - - type: object - properties: - type: - type: string - enum: - - commitment - description: The type of the commitment share - required: - - type - - $ref: '#/components/schemas/BaseShare' - txHash: - type: string - updatedDate: - type: string - format: date-time - title: ISO Date String - createdDate: - type: string - format: date-time - title: ISO Date String - required: - - state - - unsignedTx - description: The transactions associated with the transaction request - - $ref: '#/components/schemas/TransactionRequestBase' - TransactionRequestBase: - title: TransactionRequestBase - type: object - properties: - apiVersion: - type: string - enum: - - lite - - full - description: The API version of the transaction request - txRequestId: - allOf: - - $ref: '#/components/schemas/TransactionRequestId' - description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. - idempotencyKey: - type: string - description: The idempotency key of the transaction request - walletId: - allOf: - - $ref: '#/components/schemas/WalletIdString' - description: The id of the Wallet the TxRequest is for. - walletType: - type: string - enum: - - backing - - cold - - custodial - - custodialPaired - - hot - - trading - description: The type describes who owns the keys to the wallet associated to the TxRequest. - version: - type: number - description: The version of the transaction request - enterpriseId: - type: string - description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - state: - $ref: '#/components/schemas/TransactionRequestState' - date: - type: string - description: The date and time this version of the TxRequest document was created. - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - createdDate: - type: string - description: The date and time the version 1 TxRequest document was created. - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - userId: - type: string - description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. - initiatedBy: - type: string - description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). - updatedBy: - type: string - description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. - intent: {} - intents: - type: array - items: {} - pendingApprovalId: - type: string - description: The id of the Pending Approval that was created for the TxRequest if one was required. - policiesChecked: - type: boolean - latest: - type: boolean - description: Indicates if this is the latest transaction request - isCanceled: - type: boolean - description: True, if the transaction request is canceled. - required: - - txRequestId - - walletId - - version - - state - - date - - createdDate - - userId - - initiatedBy - - updatedBy - - intents - - latest - TransactionRequestState: - title: TransactionRequestState - type: string - enum: - - pendingApproval - - canceled - - rejected - - initialized - - pendingDelivery - - delivered - - pendingUserSignature - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - signed - - failed - WalletIdString: - title: WalletIdString - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - BaseShare: - title: BaseShare - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/SignatureShareType' - description: The source of the commitment share - example: user - to: - allOf: - - $ref: '#/components/schemas/SignatureShareType' - description: The recipient of the commitment share. - example: bitgo - share: - type: string - description: The commitment share. - required: - - from - - to - - share - SignatureShareType: - title: SignatureShareType - type: string - enum: - - user - - backup - - bitgo - SignatureShareWithoutVssProof: - title: SignatureShareWithoutVssProof - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/SignatureShareType' - description: The source of the signature share. - to: - allOf: - - $ref: '#/components/schemas/SignatureShareType' - description: The recipient of the signature share. - share: - type: string - description: The signature share - required: - - from - - to - - share - UnsignedTransaction: - title: UnsignedTransaction - type: object - properties: - parsedTx: - $ref: '#/components/schemas/ParsedTx' - serializedTxHex: - type: string - description: The unsigned transaction as a hex string. - signableHex: - type: string - description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. - derivationPath: - type: string - description: A bip32 path. - coinSpecific: - allOf: - - type: object - properties: - nonceAddress: - type: string - stakingAddress: - type: string - - type: object - additionalProperties: {} - description: Coin specific information. - feeInfo: - type: object - properties: - fee: - oneOf: - - type: string - - type: number - feeString: - type: string - required: - - fee - - feeString - required: - - parsedTx - - serializedTxHex - - signableHex - ParsedTx: - title: ParsedTx - type: object - properties: - inputs: - type: array - items: - type: object - properties: - valueString: - type: string - _id: - type: string - address: - type: string - chain: - type: number - derivationIndex: - type: number - index: - type: number - value: - oneOf: - - type: number - - type: number - required: - - valueString - minerFee: - oneOf: - - type: string - - type: number - outputs: - type: array - items: - type: object - properties: - valueString: - type: string - address: - type: string - change: - type: boolean - coinName: - type: string - data: - type: string - isPayGo: - type: boolean - value: - oneOf: - - type: number - - type: number - wallet: - type: string - walletV1: - type: string - baseAddress: - type: string - enterprise: - type: string - required: - - valueString - spendAmount: - oneOf: - - type: string - - type: number - gasPrice: - type: number - hasUnvalidatedData: - type: boolean - payGoFee: - oneOf: - - type: string - - type: number - spendAmounts: - type: array - items: - type: object - additionalProperties: {} - type: - type: string - required: - - inputs - - minerFee - - outputs - - spendAmount - TransactionState: - title: TransactionState - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - description: If supplied, only transaction request transaction state changes from the provided list will trigger notifications. If not provided, all transaction request transaction state changes will trigger notifications. - BaseIntent: - title: Intent - type: object - properties: - intentType: - $ref: '#/components/schemas/IntentType' - sequenceId: - $ref: '#/components/schemas/optionalString' - comment: - $ref: '#/components/schemas/optionalString' - nonce: - oneOf: - - type: string - - type: number - required: - - intentType - optionalString: - title: optionalString - type: string - IntentType: - title: IntentType - type: string - enum: - - payment - - transferToken - - consolidate - - consolidateToken - - fanout - - stake - - unstake - - delegate - - undelegate - - switchValidator - - claim - - stakeClaimRewards - - pledge - - voteDelegation - - vote - - createAccount - - updateAccount - - addTrustLine - - removeTrustLine - - signMessage - - signTypedStructuredData - - enableToken - - authorize - - acceleration - - fillNonce - - walletRecovery - - contractCall - - deactivate - - customTx - - closeAssociatedTokenAccount - BeraDelegateIntent: - title: Bera Delegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - BaseStakeIntent: - title: BaseStakeIntent - allOf: - - type: object - properties: - stakingRequestId: - type: string - required: - - stakingRequestId - - $ref: '#/components/schemas/BaseIntent' - Amount: - title: Amount - type: object - properties: - value: - type: string - symbol: - type: string - required: - - value - - symbol - Address: - title: Address - type: object - properties: - address: - $ref: '#/components/schemas/optionalString' - option: - $ref: '#/components/schemas/optionalUnknownObject' - optionalUnknownObject: - title: optionalUnknownObject - type: object - additionalProperties: {} - EthLikeStakeIntent: - title: EthLike Stake Intent - allOf: - - type: object - properties: - intentType: - $ref: '#/components/schemas/IntentType' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - CoreDaoClaimIntent: - title: CoreDAO Claim Rewards Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - stakeClaimRewards - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' - BaseStakeIntentWithCalldata: - title: Base Stake Intent with Calldata - allOf: - - type: object - properties: - calldata: - type: string - required: - - calldata - - $ref: '#/components/schemas/BaseStakeIntent' - CoreDaoUndelegateIntent: - title: CoreDAO Undelegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - undelegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' - CoreDaoDelegateIntent: - title: CoreDAO Delegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' - WalletRecoveryIntent: - title: Wallet Recovery Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - walletRecovery - required: - - intentType - - $ref: '#/components/schemas/BaseIntent' - TonUndelegateIntent: - title: TON Undelegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - undelegate - validatorAddress: - type: string - useSingleNominator: - type: boolean - singleNominatorAmount: - $ref: '#/components/schemas/Amount' - required: - - intentType - - validatorAddress - - useSingleNominator - - singleNominatorAmount - - $ref: '#/components/schemas/BaseIntent' - TonPaymentIntent: - title: TON Payment Intent - allOf: - - type: object - properties: - memo: - $ref: '#/components/schemas/optionalString' - - $ref: '#/components/schemas/PaymentIntent' - PaymentIntent: - title: PaymentIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - payment - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intentType - - recipients - - $ref: '#/components/schemas/BaseIntent' - TonDelegateIntent: - title: TON Delegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - useSingleNominator: - type: boolean - ownerAddress: - $ref: '#/components/schemas/optionalString' - required: - - intentType - - validatorAddress - - amount - - useSingleNominator - - $ref: '#/components/schemas/BaseIntent' - TonConsolidateIntent: - title: TON Consolidate Intent - allOf: - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - AccountBaseConsolidateIntent: - title: AccountBaseConsolidateIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - consolidate - receiveAddress: - type: string - senderAddressIndex: - $ref: '#/components/schemas/optionalNumber' - consolidateId: - $ref: '#/components/schemas/optionalString' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - keepAlive: - $ref: '#/components/schemas/optionalBoolean' - required: - - intentType - - receiveAddress - - $ref: '#/components/schemas/AccountBaseBuildOptions' - AccountBaseBuildOptions: - title: AccountBaseBuildOptions - type: object - properties: - nonce: - oneOf: - - type: string - - type: number - optionalBoolean: - title: optionalBoolean - type: boolean - optionalNumber: - title: optionalNumber - type: number - SuiUnstakingIntent: - title: SUI Unstaking Intent - allOf: - - type: object - properties: - stakedSuiObjectId: - type: string - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - required: - - stakedSuiObjectId - - $ref: '#/components/schemas/WithdrawIntent' - WithdrawIntent: - title: WithdrawIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - claim - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - SuiStakingIntent: - title: SUI Stake Intent - allOf: - - type: object - properties: - validatorAddress: - $ref: '#/components/schemas/optionalString' - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - - $ref: '#/components/schemas/StakeIntent' - StakeIntent: - title: StakeIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - stake - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - SuiPaymentIntent: - title: SUI Payment Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/PaymentIntent' - - $ref: '#/components/schemas/SuiBuildOptions' - SuiBuildOptions: - title: SuiBuildOptions - allOf: - - type: object - properties: - feeOptions: - $ref: '#/components/schemas/SuiFeeOptions' - lockedAmount: - $ref: '#/components/schemas/optionalString' - required: - - feeOptions - - lockedAmount - - $ref: '#/components/schemas/BaseIntent' - SuiFeeOptions: - title: SuiFeeOptions - type: object - properties: - gasLimit: - type: number - required: - - gasLimit - SuiCustomTxIntent: - title: SUI Custom Tx Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - customTx - rawTx: - type: string - required: - - intentType - - rawTx - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/SuiBuildOptions' - SuiConsolidateIntent: - title: SUI Consolidate Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - - $ref: '#/components/schemas/SuiBuildOptions' - SolUnstakeIntent: - title: SOL Unstake Intent - allOf: - - type: object - properties: - stakingAddress: - type: string - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - remainingStakingAmount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - required: - - stakingAddress - - $ref: '#/components/schemas/UnstakeIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolBuildOptions: - title: SolBuildOptions - allOf: - - type: object - properties: - memo: - $ref: '#/components/schemas/optionalString' - required: - - memo - - $ref: '#/components/schemas/AccountBaseBuildOptions' - UnstakeIntent: - title: UnstakeIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - unstake - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - SolStakeIntent: - title: SOL Stake Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - required: - - validatorAddress - - amount - - $ref: '#/components/schemas/StakeIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolPaymentIntent: - title: SolPaymentIntent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/PaymentIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolDelegateIntent: - title: SOL Delegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - validatorAddress: - type: string - stakingAddresses: - $ref: '#/components/schemas/optionalStringArray' - stakingAddress: - $ref: '#/components/schemas/optionalString' - required: - - intentType - - validatorAddress - - stakingAddresses - - stakingAddress - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/SolBuildOptions' - optionalStringArray: - title: optionalStringArray - type: array - items: - type: string - SolDeactivateIntent: - title: SOL Deactivate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - deactivate - stakingAddresses: - $ref: '#/components/schemas/optionalStringArray' - stakingAddress: - $ref: '#/components/schemas/optionalString' - required: - - intentType - - stakingAddresses - - stakingAddress - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolCreateAssociatedTokenAccountIntent: - title: SOL Create Associated Token Account Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/EnableTokenIntent' - - $ref: '#/components/schemas/SolBuildOptions' - EnableTokenIntent: - title: EnableTokenIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - enableToken - enableTokens: - type: array - items: - type: object - properties: - name: - type: string - address: - $ref: '#/components/schemas/optionalString' - required: - - name - required: - - intentType - - enableTokens - - $ref: '#/components/schemas/BaseIntent' - SolConsolidateIntent: - title: SOL Consolidate Intent - allOf: - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - SolCloseAssociatedTokenAccountIntent: - title: SOL Close Associated Token Account Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - closeAssociatedTokenAccount - accountAddress: - type: string - destinationAddress: - type: string - required: - - intentType - - accountAddress - - destinationAddress - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolClaimIntent: - title: SOL Claim Intent - allOf: - - type: object - properties: - stakingAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - required: - - stakingAddress - - amount - - $ref: '#/components/schemas/WithdrawIntent' - - $ref: '#/components/schemas/SolBuildOptions' - SolAuthorizeIntent: - title: SOL Authorize Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - authorize - transactionMessage: - type: string - stakeAccount: - type: string - oldWithdrawPublicKey: - type: string - newWithdrawPublicKey: - type: string - lockupPublicKey: - type: string - nonceAccount: - type: string - nonceAuthority: - type: string - blockhash: - type: string - required: - - intentType - - transactionMessage - - stakeAccount - - oldWithdrawPublicKey - - newWithdrawPublicKey - - lockupPublicKey - - nonceAccount - - nonceAuthority - - blockhash - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/SolBuildOptions' - NearWithdrawIntent: - title: Near Withdraw Intent - allOf: - - type: object - properties: - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - recipients - - $ref: '#/components/schemas/WithdrawIntent' - NearUnstakeIntent: - title: Near Unstake Intent - allOf: - - type: object - properties: - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - recipients - - $ref: '#/components/schemas/UnstakeIntent' - NearStakeIntent: - title: Near Stake Intent - allOf: - - type: object - properties: - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - recipients - - $ref: '#/components/schemas/StakeIntent' - MmiSignTransactionIntent: - title: MMI Sign Transaction Intent - allOf: - - type: object - properties: - custodianTransactionId: - type: string - required: - - custodianTransactionId - - $ref: '#/components/schemas/PaymentIntent' - MmiSignMessageIntent: - title: MMI Sign Message Intent - allOf: - - type: object - properties: - custodianMessageId: - type: string - required: - - custodianMessageId - - $ref: '#/components/schemas/SignMessageIntent' - SignMessageIntent: - title: SignMessageIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - signMessage - messageRaw: - type: string - description: A plain text message - example: 'for EVM: test message' - messageEncoded: - allOf: - - $ref: '#/components/schemas/optionalString' - description: An encoded string - example: 'for EVM: \x19Ethereum Signed Message:\n12test message' - required: - - intentType - - messageRaw - - messageEncoded - - $ref: '#/components/schemas/BaseIntent' - LightningPaymentIntent: - title: Lightning Payment Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - payment - required: - - intentType - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/LightningPaymentRequestWithSig' - LightningPaymentRequestWithSig: - title: LightningPaymentRequestWithSig - type: object - properties: - request: - $ref: '#/components/schemas/LightningPaymentRequest' - signature: - type: string - required: - - request - - signature - LightningPaymentRequest: - title: LightningPaymentRequest - type: object - properties: - invoice: - type: string - amountMsat: - type: string - format: number - feeLimitMsat: - type: string - format: number - feeLimitRatio: - type: number - required: - - invoice - EthTransferTokenIntent: - title: ETH Transfer Token Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/TransferTokenIntent' - - $ref: '#/components/schemas/EthBuildOptions' - EthBuildOptions: - title: EthBuildOptions - allOf: - - type: object - properties: - feeOptions: - oneOf: - - $ref: '#/components/schemas/FeeOption' - - $ref: '#/components/schemas/EIP1559FeeOptions' - hopParams: - type: object - properties: - gasPriceMax: - $ref: '#/components/schemas/optionalNumber' - paymentId: - $ref: '#/components/schemas/optionalString' - userReqSig: - $ref: '#/components/schemas/optionalString' - required: - - gasPriceMax - - paymentId - - userReqSig - receiveAddress: - $ref: '#/components/schemas/optionalString' - senderAddressIndex: - $ref: '#/components/schemas/optionalNumber' - - $ref: '#/components/schemas/AccountBaseBuildOptions' - EIP1559FeeOptions: - title: EIP1559FeeOptions - type: object - properties: - gasLimit: - $ref: '#/components/schemas/optionalNumber' - maxFeePerGas: - $ref: '#/components/schemas/optionalNumber' - maxPriorityFeePerGas: - $ref: '#/components/schemas/optionalNumber' - FeeOption: - title: FeeOption - type: object - properties: - unit: - type: string - enum: - - baseUnit - - cpu - - ram - formula: - type: string - enum: - - fixed - - feeRate - - perKB - - custom - - perVKB - feeType: - type: string - enum: - - base - - max - - tip - gasLimit: - $ref: '#/components/schemas/optionalNumber' - gasPrice: - $ref: '#/components/schemas/optionalNumber' - TransferTokenIntent: - title: TransferTokenIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - transferToken - recipients: - type: array - items: - allOf: - - type: object - properties: - tokenData: - $ref: '#/components/schemas/TokenData' - required: - - tokenData - - $ref: '#/components/schemas/RecipientEntry' - required: - - intentType - - recipients - - $ref: '#/components/schemas/BaseIntent' - RecipientEntry: - title: RecipientEntry - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - TokenData: - title: TokenData - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/TokenRecipientEntryItem' - - $ref: '#/components/schemas/SupportedTokenRecipientEntryItem' - - $ref: '#/components/schemas/UnsupportedTokenRecipientEntryItem' - UnsupportedTokenRecipientEntryItem: - title: UnsupportedTokenRecipientEntryItem - type: object - properties: - tokenContractAddress: - $ref: '#/components/schemas/optionalString' - decimals: - $ref: '#/components/schemas/optionalNumber' - SupportedTokenRecipientEntryItem: - title: SupportedTokenRecipientEntryItem - type: object - properties: - tokenName: - type: string - required: - - tokenName - TokenRecipientEntryItem: - title: TokenRecipientEntryItem - type: object - properties: - tokenQuantity: - type: string - tokenType: - type: string - tokenId: - $ref: '#/components/schemas/optionalString' - required: - - tokenQuantity - - tokenType - EthStakingIntent: - title: ETH Staking Intent - allOf: - - type: object - properties: - pubkey: - type: string - withdrawalCredentials: - type: string - signature: - type: string - depositDataRoot: - type: string - required: - - pubkey - - withdrawalCredentials - - signature - - depositDataRoot - - $ref: '#/components/schemas/StakeIntent' - - $ref: '#/components/schemas/EthBuildOptions' - EthPaymentIntent: - title: ETH Payment Intent - allOf: - - type: object - properties: - selfSend: - $ref: '#/components/schemas/optionalBoolean' - required: - - selfSend - - $ref: '#/components/schemas/PaymentIntent' - - $ref: '#/components/schemas/EthBuildOptions' - EthFillNonceIntent: - title: ETH Fill Nonce Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/FillNonceIntent' - - $ref: '#/components/schemas/EthFillNonceBuildOptions' - EthFillNonceBuildOptions: - title: EthFillNonceBuildOptions - type: object - properties: - feeOptions: - oneOf: - - $ref: '#/components/schemas/FeeOption' - - $ref: '#/components/schemas/EIP1559FeeOptions' - receiveAddress: - $ref: '#/components/schemas/optionalString' - senderAddressIndex: - $ref: '#/components/schemas/optionalNumber' - FillNonceIntent: - title: FillNonceIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - fillNonce - nonce: - oneOf: - - type: string - - type: number - required: - - intentType - - nonce - - $ref: '#/components/schemas/BaseIntentWithoutNonce' - BaseIntentWithoutNonce: - title: BaseIntentWithoutNonce - type: object - properties: - intentType: - $ref: '#/components/schemas/IntentType' - sequenceId: - $ref: '#/components/schemas/optionalString' - comment: - $ref: '#/components/schemas/optionalString' - required: - - intentType - EthConsolidateTokenIntent: - title: ETH Consolidate Token Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - consolidateToken - recipients: - type: array - items: - allOf: - - type: object - properties: - tokenData: - $ref: '#/components/schemas/TokenData' - required: - - tokenData - - $ref: '#/components/schemas/RecipientEntry' - consolidateId: - $ref: '#/components/schemas/optionalString' - keepAlive: - $ref: '#/components/schemas/optionalBoolean' - required: - - intentType - - recipients - - consolidateId - - keepAlive - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/EthBuildOptions' - EthConsolidateIntent: - title: ETH Consolidate Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - - $ref: '#/components/schemas/EthBuildOptions' - EthAccelerationIntent: - title: ETH Acceleration Intent - allOf: - - type: object - properties: - feeOptions: - oneOf: - - $ref: '#/components/schemas/FeeOption' - - $ref: '#/components/schemas/EIP1559FeeOptions' - required: - - feeOptions - - $ref: '#/components/schemas/AccelerationIntent' - - $ref: '#/components/schemas/EthBuildOptionsWithoutFeeOptions' - EthBuildOptionsWithoutFeeOptions: - title: EthBuildOptionsWithoutFeeOptions - allOf: - - type: object - properties: - hopParams: - type: object - properties: - gasPriceMax: - $ref: '#/components/schemas/optionalNumber' - paymentId: - $ref: '#/components/schemas/optionalString' - userReqSig: - $ref: '#/components/schemas/optionalString' - required: - - gasPriceMax - - paymentId - - userReqSig - receiveAddress: - $ref: '#/components/schemas/optionalString' - senderAddressIndex: - $ref: '#/components/schemas/optionalNumber' - - $ref: '#/components/schemas/AccountBaseBuildOptions' - AccelerationIntent: - title: AccelerationIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - acceleration - txid: - type: string - required: - - intentType - - txid - - $ref: '#/components/schemas/BaseIntent' - DotWithdrawStakeIntent: - title: DOT Withdraw Stake Intent - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/WithdrawIntent' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - DotAccountBaseBuildOptions: - title: DotAccountBaseBuildOptions - allOf: - - type: object - properties: - fee: - type: object - properties: - amount: - oneOf: - - type: string - - type: number - formula: - type: string - enum: - - fixed - - feeRate - - perKB - - custom - type: - type: string - enum: - - base - - max - - tip - unit: - type: string - enum: - - baseUnit - - cpu - - ram - required: - - amount - - $ref: '#/components/schemas/AccountBaseBuildOptions' - DotUnstakingIntent: - title: DOT Unstaking Intent - allOf: - - type: object - properties: - amount: - $ref: '#/components/schemas/Amount' - stakingProxy: - type: string - stopStaking: - $ref: '#/components/schemas/optionalBoolean' - required: - - amount - - stakingProxy - - $ref: '#/components/schemas/UnstakeIntent' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - DotStakingIntent: - title: DOT Staking Intent - allOf: - - type: object - properties: - amount: - $ref: '#/components/schemas/Amount' - stakingProxy: - type: string - addToStake: - $ref: '#/components/schemas/optionalBoolean' - addProxy: - $ref: '#/components/schemas/optionalBoolean' - required: - - amount - - stakingProxy - - $ref: '#/components/schemas/StakeIntent' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - DotPaymentIntent: - title: DOT Payment Intent - allOf: - - type: object - properties: - proxy: - $ref: '#/components/schemas/DotProxy' - owner: - $ref: '#/components/schemas/optionalString' - required: - - proxy - - owner - - $ref: '#/components/schemas/PaymentIntent' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - DotProxy: - title: DotProxy - type: object - properties: - name: - $ref: '#/components/schemas/optionalString' - addressString: - $ref: '#/components/schemas/optionalString' - asset: - $ref: '#/components/schemas/optionalString' - amountString: - $ref: '#/components/schemas/optionalString' - DotCreateAccountIntent: - title: DOT Create Account Intent - allOf: - - type: object - properties: - delayBlocks: - type: string - proxyType: - type: string - index: - $ref: '#/components/schemas/optionalNumber' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - delayBlocks - - proxyType - - $ref: '#/components/schemas/AccountBaseCreateAccountIntent' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - AccountBaseCreateAccountIntent: - title: AccountBaseCreateAccountIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - createAccount - name: - $ref: '#/components/schemas/optionalString' - required: - - intentType - - $ref: '#/components/schemas/BaseIntent' - - $ref: '#/components/schemas/AccountBaseBuildOptions' - DotConsolidateIntent: - title: DOT Consolidate Intent - allOf: - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - CosmosWithdrawIntent: - title: Cosmos Withdraw Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - required: - - validatorAddress - - $ref: '#/components/schemas/WithdrawIntent' - CosmosUnstakeIntent: - title: Cosmos Unstake Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - undelegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntent' - CosmosSwitchValidatorIntent: - title: Cosmos Switch Validator Intent - allOf: - - $ref: '#/components/schemas/StakeSwitchValidatorIntent' - StakeSwitchValidatorIntent: - title: StakeSwitchValidatorIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - switchValidator - amount: - $ref: '#/components/schemas/Amount' - validatorAddress: - type: string - destValidatorAddress: - type: string - required: - - intentType - - amount - - validatorAddress - - destValidatorAddress - - $ref: '#/components/schemas/BaseStakeIntent' - CosmosStakeIntent: - title: Cosmos Stake Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntent' - CosmosPaymentIntent: - title: Cosmos Payment Intent - allOf: - - type: object - properties: - memo: - $ref: '#/components/schemas/optionalString' - required: - - memo - - $ref: '#/components/schemas/PaymentIntent' - BscWithdrawUndelegateIntent: - title: BSC Withdraw Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - requestNumber: - type: number - required: - - validatorAddress - - requestNumber - - $ref: '#/components/schemas/WithdrawIntent' - BscUnDelegateIntent: - title: BSC UnDelegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - undelegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - relayerFee: - type: string - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntent' - BscDelegateIntent: - title: BSC Delegate Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - delegate - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - relayerFee: - type: string - delegateVotePower: - type: string - required: - - intentType - - validatorAddress - - amount - - $ref: '#/components/schemas/BaseStakeIntent' - AtomWithdrawIntent: - title: Atom Withdraw Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - required: - - validatorAddress - - amount - - $ref: '#/components/schemas/WithdrawIntent' - AtomUnstakeIntent: - title: Atom Unstake Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - validatorAddress - - amount - - $ref: '#/components/schemas/UnstakeIntent' - AtomStakeIntent: - title: Atom Stake Intent - allOf: - - type: object - properties: - validatorAddress: - type: string - amount: - $ref: '#/components/schemas/Amount' - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address' - amount: - $ref: '#/components/schemas/Amount' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - validatorAddress - - amount - - $ref: '#/components/schemas/StakeIntent' - AtomPaymentIntent: - title: Atom Payment Intent - allOf: - - type: object - properties: - memo: - $ref: '#/components/schemas/optionalString' - required: - - memo - - $ref: '#/components/schemas/PaymentIntent' - AdaVoteDelegationIntent: - title: ADA Vote Delegation Intent - allOf: - - type: object - properties: - dRepId: - type: string - required: - - dRepId - - $ref: '#/components/schemas/VoteDelegationIntent' - VoteDelegationIntent: - title: Vote Delegation Intent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - voteDelegation - required: - - intentType - - $ref: '#/components/schemas/BaseStakeIntent' - AdaUnstakeIntent: - title: ADA Unstake Intent - allOf: - - type: object - properties: - poolKeyHash: - type: string - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - required: - - poolKeyHash - - $ref: '#/components/schemas/UnstakeIntent' - AdaStakeIntent: - title: ADA Stake Intent - allOf: - - type: object - properties: - poolKeyHash: - type: string - dRepId: - type: string - amount: - type: object - properties: - symbol: - type: string - value: - type: string - required: - - symbol - - value - required: - - poolKeyHash - - dRepId - - $ref: '#/components/schemas/StakeIntent' - AdaStakeClaimRewardsIntent: - title: ADA Stake Claim Rewards Intent - allOf: - - $ref: '#/components/schemas/StakeClaimRewardsIntent' - StakeClaimRewardsIntent: - title: StakeClaimRewardsIntent - allOf: - - type: object - properties: - intentType: - type: string - enum: - - stakeClaimRewards - amount: - $ref: '#/components/schemas/Amount' - required: - - intentType - - amount - - $ref: '#/components/schemas/BaseStakeIntent' - AdaPaymentIntent: - title: ADA Payment Intent - allOf: - - type: object - properties: - unspents: - $ref: '#/components/schemas/optionalStringArray' - required: - - unspents - - $ref: '#/components/schemas/PaymentIntent' - AdaConsolidateIntent: - title: ADA Consolidate Intent - allOf: - - type: object - properties: - unspents: - $ref: '#/components/schemas/optionalStringArray' - - $ref: '#/components/schemas/AccountBaseConsolidateIntent' - PendingApprovalType: - title: PendingApprovalType - type: string - enum: - - userChangeRequest - - transactionRequest - - transactionRequestFull - - policyRuleRequest - - updateApprovalsRequiredRequest - - updateEnterpriseRequest - - updateOrganizationRequest - - genericRequest - - enterpriseInviteRequest - Wallet: - title: Wallet - type: object - properties: - allowBackupKeySigning: - type: boolean - approvalsRequired: - type: number - example: 1 - minimum: 1 - coin: - $ref: '#/components/schemas/CoinString' - coinSpecific: - $ref: '#/components/schemas/WalletSubdocument' - deleted: - type: boolean - disableTransactionNotifications: - type: boolean - hasLargeNumberOfAddresses: - type: boolean - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - isCold: - type: boolean - label: - type: string - example: My Wallet - startDate: - type: string - description: Wallet creation time - format: date-time - title: ISO Date String - admin: - type: object - properties: - policy: - $ref: '#/components/schemas/Policy' - billingEnterprise: - type: string - buildDefaults: - type: object - properties: - minFeeRate: - type: number - description: (UTXO only) Wallet-level minimum fee rate that must be greater than or equal to the default of 1000 satoshis/kvByte. Per transaction, you can override "minFeeRate" with the "feeRate" parameter. - example: 12000 - minimum: 1000 - clientFlags: - type: array - items: - type: object - properties: - name: - type: string - value: - type: boolean - config: - type: object - properties: - nodeId: {} - custodialWalletId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - customChangeKeySignatures: - type: object - properties: - user: - type: string - backup: - type: string - bitgo: - type: string - customerWalletId: - type: string - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - bitgoOrg: - type: string - freeze: - type: object - properties: - time: - type: string - format: date-time - title: ISO Date String - expires: - type: string - format: date-time - title: ISO Date String - instantProvider: - type: string - keys: - type: array - example: - - 585951a5df8380e0e304a553 - - 585951a5df8380e0e30d645c - - 585951a5df8380e0e30b6147 - items: - type: string - keySignatures: - type: object - properties: - backupPub: - type: string - bitgoPub: - type: string - m: - type: number - description: Number of signatures required. This value must be 2 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. - example: 2 - migratedFrom: - type: string - multisigType: - $ref: '#/components/schemas/MultiSigType' - multisigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion' - 'n': - type: number - description: Number of keys provided. This value must be 3 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. - example: 3 - recoverable: - type: boolean - tags: - type: array - items: - type: string - type: - allOf: - - $ref: '#/components/schemas/WalletType' - description: The type describes who owns the keys to the wallet and how they are stored. "cold" wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. "custodial" means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. "custodialPaired" means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of "hot" wallets. "trading" wallets are trading accounts where the coin is "ofc". "distributedCustody" means You manage one key and another key agent manages the second key. BitGo manages the third key - subType: - $ref: '#/components/schemas/WalletSubType' - balanceString: - type: string - description: The cleared balance of the address in base units (e.g. Satoshis). Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. - balance: - type: number - description: The cleared balance of the address in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. - confirmedBalanceString: - type: string - description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. Guaranteed to not lose precision. - confirmedBalance: - type: number - description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. - spendableBalanceString: - type: string - description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. - spendableBalance: - type: number - description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. The is only returned if the 'expandBalance' query parameter is set to 'true'. - stakingBalanceString: - type: string - description: The staked balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. - rewardBalanceString: - type: string - description: The staking reward balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. - users: - type: array - items: - type: object - properties: - needsRecovery: - type: boolean - permissions: - type: array - items: - type: string - enum: - - admin - - spend - - view - - freeze - - trade - recoverable: - type: boolean - user: - type: string - required: - - permissions - walletFlags: - type: array - items: - type: object - properties: - name: - $ref: '#/components/schemas/WalletFlag' - value: - type: string - required: - - name - - value - receiveAddress: - $ref: '#/components/schemas/WalletAddress' - required: - - allowBackupKeySigning - - approvalsRequired - - coin - - coinSpecific - - deleted - - disableTransactionNotifications - - hasLargeNumberOfAddresses - - id - - isCold - - label - - startDate - WalletAddress: - title: WalletAddress - allOf: - - type: object - properties: - coin: - $ref: '#/components/schemas/CoinString' - wallet: - type: string - chain: - $ref: '#/components/schemas/AddressChain' - index: - type: number - required: - - coin - - wallet - - chain - - index - - $ref: '#/components/schemas/BaseWalletAddress' - BaseWalletAddress: - title: BaseWalletAddress - type: object - properties: - id: - type: string - description: Platform public ID for an address - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - address: - $ref: '#/components/schemas/AddressString' - balance: - $ref: '#/components/schemas/TrimmedBalance' - coinSpecific: - allOf: - - $ref: '#/components/schemas/AddressSubdocument' - description: Properties specific to certain coin types - label: - $ref: '#/components/schemas/AddressLabelString' - lastNonce: - type: number - default: -1 - token: - type: string - proof: - type: string - signature: - type: string - lastConsolidatedTime: - type: string - format: date - title: Date String - needsConsolidation: - type: boolean - tokenConsolidationState: {} - tokenAddress: {} - AddressLabelString: - title: AddressLabelString - type: string - description: A human-readable label for the address - example: Bob's Hot Wallet Address - maxLength: 250 - AddressSubdocument: - title: AddressSubdocument - oneOf: - - $ref: '#/components/schemas/AlgorandAddress' - - $ref: '#/components/schemas/AtomAddress' - - $ref: '#/components/schemas/AvaxPAddress' - - $ref: '#/components/schemas/UtxoAddress' - - $ref: '#/components/schemas/BitcoinCashAddress' - - $ref: '#/components/schemas/CasperAddress' - - $ref: '#/components/schemas/DotAddress' - - $ref: '#/components/schemas/EosAddress' - - $ref: '#/components/schemas/EthereumAddress' - - $ref: '#/components/schemas/Ethereum2Address' - - $ref: '#/components/schemas/FiatAddress' - - $ref: '#/components/schemas/HederaAddress' - - $ref: '#/components/schemas/OffchainAddressSubdocument' - - $ref: '#/components/schemas/SilvergateUSDAddress' - - $ref: '#/components/schemas/SolAddress' - - $ref: '#/components/schemas/StacksAddress' - - $ref: '#/components/schemas/StellarAddress' - - $ref: '#/components/schemas/TestcoinAddress' - - $ref: '#/components/schemas/TezosAddress' - - $ref: '#/components/schemas/TronAddress' - - $ref: '#/components/schemas/XRPAddress' - - $ref: '#/components/schemas/TonAddress' - TonAddress: - title: Ton Address - type: object - properties: - addresses: - type: array - items: - type: string - required: - - addresses - XRPAddress: - title: XRP Address - type: object - properties: - nonceTracker: - type: object - properties: - detectedMissingNonces: - type: array - items: - type: object - properties: - nonce: - type: number - isNonceLocked: - type: boolean - nonceLockExpireTime: - type: string - format: date - title: Date String - required: - - nonce - - isNonceLocked - detectedMissingNoncesData: - type: array - items: - type: object - properties: - nonce: - type: number - isNonceLocked: - type: boolean - nonceLockExpireTime: - type: string - format: date - title: Date String - required: - - nonce - - isNonceLocked - required: - - detectedMissingNonces - - detectedMissingNoncesData - required: - - nonceTracker - TronAddress: - title: Tron Address - type: object - properties: - rootPub: - type: string - required: - - rootPub - TezosAddress: - title: Tezos Address - type: object - properties: - counter: - type: number - updateTime: - type: string - format: date - title: Date String - txCount: - type: number - pendingChainInitialization: - type: boolean - pendingPublicKeyRevelation: - type: boolean - creationFailure: - type: array - items: - type: string - delegate: - type: string - previousLowBalanceEmailSentAt: - type: string - format: date - title: Date String - required: - - counter - - updateTime - - txCount - - pendingChainInitialization - - pendingPublicKeyRevelation - - creationFailure - TestcoinAddress: - title: Testcoin Address - type: object - additionalProperties: {} - StellarAddress: - title: Stellar Address - type: object - properties: - memoId: - type: string - rootAddress: - type: string - required: - - memoId - - rootAddress - StacksAddress: - title: Stacks Address - type: object - properties: - baseAddress: - type: string - memoId: - type: string - required: - - baseAddress - - memoId - SolAddress: - title: Sol Address - type: object - properties: - rootAddress: - type: string - minimumFunding: - type: number - pendingChainInitialization: - type: boolean - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - nonceExpiresAt: - type: string - format: date - title: Date String - nonceTxRequestid: - type: string - type: - type: string - required: - - rootAddress - - minimumFunding - - pendingChainInitialization - - trustedTokens - Token: - title: Token - type: object - properties: - limit: - type: string - token: - type: string - TrustedTokenState: - title: TrustedTokenState - type: string - enum: - - pending - - active - SilvergateUSDAddress: - title: Silvergate USD Address - type: object - properties: - bankAccountId: - type: string - bankAccount: - $ref: '#/components/schemas/BankAccountJson' - required: - - bankAccountId - BankAccountJson: - title: BankAccountJson - type: object - properties: - accountNumber: - type: string - address1: - type: string - name: - type: string - owner: - type: object - properties: - name: - type: string - address1: - type: string - address2: - type: string - address3: - type: string - required: - - name - - address1 - idHash: - type: string - verificationState: - type: string - address2: - type: string - address3: - type: string - enterpriseId: - type: string - id: - type: string - routingNumber: - type: string - shortCountryCode: - type: string - swiftCode: - type: string - type: - type: string - required: - - accountNumber - - address1 - - name - - owner - - idHash - - verificationState - OffchainAddressSubdocument: - title: Offchain Address - type: object - additionalProperties: {} - HederaAddress: - title: Hedera Address - type: object - properties: - baseAddress: - type: string - memoId: - type: string - required: - - baseAddress - - memoId - FiatAddress: - title: Fiat Address - type: object - properties: - bankAccountId: - type: string - faBankAccountId: - type: string - bankAccount: - $ref: '#/components/schemas/BankAccountJson' - Ethereum2Address: - title: Ethereum2 Address - type: object - properties: - feeAddress: - type: string - EthereumAddress: - title: Ethereum Address - type: object - properties: - creationFailure: - type: array - items: - type: string - forwarderVersion: - type: number - nonce: - type: number - feeAddress: - type: string - pendingChainInitialization: - type: boolean - pendingDeployment: - type: boolean - txCount: - type: number - updateTime: - type: string - format: date - title: Date String - hopTxid: - type: string - salt: - type: string - usdtBug: - type: boolean - isTss: - type: boolean - isNonceLocked: - type: boolean - nonceLockExpireTime: - type: string - format: date - title: Date String - previousLowBalanceEmailSentAt: - type: string - format: date - title: Date String - required: - - creationFailure - - forwarderVersion - - nonce - - feeAddress - - pendingChainInitialization - - pendingDeployment - - txCount - - updateTime - EosAddress: - title: Eos Address - type: object - properties: - rootAddress: - type: string - memoId: - type: string - required: - - rootAddress - - memoId - DotAddress: - title: Dot Address - type: object - properties: - rootAddress: - type: string - nonceTracker: - type: object - properties: - lastReservedNonce: - type: number - lastExecutedNonce: - type: number - detectedMissingNonces: - type: array - items: - type: object - properties: - nonce: - type: number - isNonceLocked: - type: boolean - nonceLockExpireTime: - type: string - format: date - title: Date String - required: - - nonce - - isNonceLocked - detecMissingNoncesData: - type: array - items: - type: object - properties: - nonce: - type: number - isNonceLocked: - type: boolean - nonceLockExpireTime: - type: string - format: date - title: Date String - required: - - nonce - - isNonceLocked - required: - - lastReservedNonce - - lastExecutedNonce - - detectedMissingNonces - - detecMissingNoncesData - required: - - rootAddress - - nonceTracker - CasperAddress: - title: Casper Address - type: object - properties: - accountHash: - type: string - rootAddress: - type: string - transferId: - type: string - required: - - accountHash - - rootAddress - - transferId - BitcoinCashAddress: - title: Bitcoin Cash Address - allOf: - - type: object - properties: - format: - $ref: '#/components/schemas/SupportedAddressFormat' - - $ref: '#/components/schemas/UtxoAddress' - UtxoAddress: - title: Utxo Address - type: object - properties: - redeemScript: - type: string - witnessScript: - type: string - SupportedAddressFormat: - title: SupportedAddressFormat - type: string - enum: - - cashaddr - - base58 - AvaxPAddress: - title: AvaxP Address - type: object - properties: - threshold: - type: number - addresses: - type: array - items: - type: string - required: - - threshold - - addresses - AtomAddress: - title: Atom Address - type: object - properties: - rootAddress: - type: string - memoId: - type: string - required: - - rootAddress - - memoId - AlgorandAddress: - title: Algorand Address - type: object - properties: - rootAddress: - type: string - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - addressVersion: - type: number - threshold: - type: number - bitgoKey: {} - bitgoPubKey: - type: string - required: - - rootAddress - TrimmedBalance: - title: TrimmedBalance - type: object - properties: - balanceString: - type: string - description: String representation of the balance. Guaranteed to not lose precision. - example: '500000' - confirmedBalanceString: - type: string - description: The total balance of confirmed transactions for the address (in the chain's base unit). Guaranteed to not lose precision. - example: '400000' - spendableBalanceString: - type: string - description: The total balance of the address (in the chain's base unit) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. - example: '40000' - updated: - oneOf: - - type: string - format: date-time - title: ISO Date String - - type: string - format: date - title: Date String - description: The last time a transaction affected the balance of this address - balance: - type: number - example: 50000 - lockedBalanceString: - type: string - reservedBalanceString: - type: string - totalReceived: - type: number - description: The total amount received on this address (in the chain's base unit) - totalSent: - type: number - description: The total amount sent from this address (in the chain's base unit) - transferCount: - type: number - tokens: - type: object - additionalProperties: {} - nfts: - type: object - additionalProperties: {} - unsupportedNfts: - type: object - additionalProperties: {} - type: {} - metadata: {} - required: - - balanceString - - confirmedBalanceString - - spendableBalanceString - AddressChain: - title: AddressChain - type: number - enum: - - 0 - - 1 - - 10 - - 11 - - 20 - - 21 - - 30 - - 31 - - 40 - - 41 - WalletFlag: - title: WalletFlag - type: string - enum: - - isStaking - - lightning - - musigKp - - trackingInscriptions - - rbf - - coldWalletStaking - - tokenizationToken - - oneClickStaking - - solOfcStaking - - suiOfcStaking - WalletSubType: - title: WalletSubType - type: string - enum: - - distributedCustody - - pairedCustodial - - custodialHot - - custodialCold - WalletType: - title: WalletType - type: string - enum: - - backing - - cold - - custodial - - custodialPaired - - hot - - trading - MultisigTypeVersion: - title: MultisigTypeVersion - type: string - enum: - - MPCv2 - MultiSigType: - title: MultiSigType - type: string - enum: - - onchain - - tss - - blsdkg - Policy: - title: Policy - type: object - properties: - date: - oneOf: - - type: string - format: date-time - title: ISO Date String - - type: string - format: date - title: Date String - format: date-time - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - latest: - type: boolean - version: - type: number - enterpriseId: - type: string - label: - type: string - rules: - type: array - items: - type: object - properties: - id: - type: string - type: - $ref: '#/components/schemas/ApiRuleType' - action: - allOf: - - $ref: '#/components/schemas/PolicyRuleAction' - description: What happens when this rule is triggered - latest: - type: boolean - version: - type: number - lockDate: - type: string - description: The time at which this rule becomes immutable - format: date-time - title: ISO Date String - mutabilityConstraint: - allOf: - - $ref: '#/components/schemas/MutabilityConstraint' - description: Specifies whether a BitGo admin can change "lockDate" * "managed" - Not locked, but requires approval from a BitGo admin to change * "permanent" - "lockDate" cannot be changed * "sticky" - Not included in bulk unlock, but "lockDate" can be individually changed - coin: - $ref: '#/components/schemas/CoinString' - condition: - allOf: - - $ref: '#/components/schemas/Condition' - description: Parameters for the type - required: - - id - - type - - action - walletId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - date - - id - - latest - - version - Condition: - title: Condition - oneOf: - - type: object - properties: {} - - $ref: '#/components/schemas/AddressListCondition' - - $ref: '#/components/schemas/AdvancedListCondition' - - $ref: '#/components/schemas/LimitRuleCondition' - - $ref: '#/components/schemas/TxUsdThresholdRuleCondition' - - $ref: '#/components/schemas/WebhookRuleCondition' - AdvancedListCondition: - title: AdvancedListCondition - type: object - properties: - entries: - type: array - items: - type: object - properties: - item: - type: string - description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. - metaData: - type: object - additionalProperties: {} - description: Any data about this entry that is not used to determine when to enforce the policy - type: - allOf: - - $ref: '#/components/schemas/AdvancedListType' - description: the kind of resource a list rule entry refers to - verificationState: - type: string - enum: - - unverified - - verified - required: - - item - - type - description: Entries specifying which addresses/ wallets/ enterprises are on the whitelist - required: - - entries - AddressListCondition: - title: AddressListCondition - type: object - properties: - addresses: - type: array - items: - type: string - metaData: - type: object - additionalProperties: - type: object - additionalProperties: {} - required: - - addresses - - metaData - MutabilityConstraint: - title: MutabilityConstraint - type: string - enum: - - unlocked - - permanent - - sticky - - managed - WalletSubdocument: - title: WalletSubdocument - oneOf: - - $ref: '#/components/schemas/AdaWallet' - - $ref: '#/components/schemas/AlgorandWallet' - - $ref: '#/components/schemas/AtomWallet' - - $ref: '#/components/schemas/AvaxPWallet' - - $ref: '#/components/schemas/UtxoWallet' - - $ref: '#/components/schemas/CasperWallet' - - $ref: '#/components/schemas/DotWallet' - - $ref: '#/components/schemas/EosWallet' - - $ref: '#/components/schemas/EthereumWallet' - - $ref: '#/components/schemas/Ethereum2Wallet' - - $ref: '#/components/schemas/FiatWallet' - - $ref: '#/components/schemas/HederaWallet' - - $ref: '#/components/schemas/NearWallet' - - $ref: '#/components/schemas/Offchain' - - $ref: '#/components/schemas/SilvergateUSDWallet' - - $ref: '#/components/schemas/StacksWallet' - - $ref: '#/components/schemas/TestcoinWallet' - - $ref: '#/components/schemas/TonWallet' - - $ref: '#/components/schemas/TronWallet' - - $ref: '#/components/schemas/StellarWallet' - - $ref: '#/components/schemas/XRPWallet' - - $ref: '#/components/schemas/TezosWallet' - - $ref: '#/components/schemas/SolWallet' - - $ref: '#/components/schemas/LightningCoinWallet' - LightningCoinWallet: - title: Lightning Coin Wallet - type: object - properties: - keys: - type: array - items: - type: string - required: - - keys - SolWallet: - title: Sol Wallet - type: object - properties: - pendingChainInitialization: - type: boolean - minimumFunding: - type: number - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - rootAddress: - type: string - nonceAddress: - type: string - lastBlockHash: - type: string - lastChainIndex: {} - nonceExpiresAt: - type: string - format: date - title: Date String - nonceTxRequestId: - type: string - required: - - pendingChainInitialization - - minimumFunding - - trustedTokens - TezosWallet: - title: Tezos Wallet - type: object - properties: - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - deployedInBlock: - oneOf: - - type: number - - type: boolean - deployTxHash: - type: string - lastChainIndex: {} - baseAddress: - type: string - feeAddress: - type: string - safeModeActivated: - type: string - lowPriorityFeeAddress: - type: string - delegate: - type: string - required: - - pendingChainInitialization - - creationFailure - XRPWallet: - title: XRP Wallet - type: object - properties: - rootAddress: - type: string - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - required: - - rootAddress - - pendingChainInitialization - - creationFailure - StellarWallet: - title: Stellar Wallet - type: object - properties: - rootAddress: - type: string - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - lastMemoId: - type: string - stellarUsername: - type: string - homeDomain: - type: string - stellarAddress: - type: string - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - required: - - rootAddress - - pendingChainInitialization - - creationFailure - - lastMemoId - TronWallet: - title: Tron Wallet - type: object - properties: - rootAddress: - type: string - rootPub: - type: string - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - minimumFunding: - type: number - required: - - rootAddress - - rootPub - - pendingChainInitialization - - creationFailure - - minimumFunding - TonWallet: - title: Ton Wallet - type: object - properties: - rootAddress: - type: string - memoId: - type: string - lastMemoId: - type: string - seqno: - type: number - lastChainIndex: - type: object - additionalProperties: - type: number - walletVersion: - type: number - required: - - rootAddress - - memoId - - lastMemoId - - seqno - TestcoinWallet: - title: Testcoin Wallet - type: object - properties: - lastChainIndex: - type: number - StacksWallet: - title: Stacks Wallet - type: object - properties: - baseAddress: - type: string - feeAddress: - type: string - lastNonce: - type: number - addressCount: - type: number - SilvergateUSDWallet: - title: Silvergate USD Wallet - type: object - properties: - backingBankAccountId: {} - backingSENBankAccountId: {} - lastUsedNonce: - type: number - required: - - backingBankAccountId - - backingSENBankAccountId - - lastUsedNonce - Offchain: - title: Offchain - type: object - properties: - needsKeyReshareAfterPasswordReset: - type: boolean - pendingSystemInitialization: - type: boolean - description: If true, this wallet is waiting for the system to finish initializing. In this state, users cannot create addresses or initiate withdrawals. - required: - - needsKeyReshareAfterPasswordReset - NearWallet: - title: Near Wallet - type: object - properties: - nonceAddress: - type: string - lastNonce: - type: number - addressCount: - type: number - pendingChainInitialization: - type: boolean - rootAddrss: - type: string - lastChainIndex: - type: object - additionalProperties: - type: number - required: - - nonceAddress - - lastNonce - - addressCount - - pendingChainInitialization - HederaWallet: - title: Hedera Wallet - type: object - properties: - addressCount: - type: number - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - deployTxHash: - type: string - baseAddress: - type: string - confirmedTransactionId: - type: string - required: - - addressCount - - pendingChainInitialization - - creationFailure - - trustedTokens - FiatWallet: - title: Fiat Wallet - type: object - properties: - backingBankAccountId: {} - backingSENBankAccountId: {} - lastUsedNonce: - type: number - required: - - backingBankAccountId - - backingSENBankAccountId - - lastUsedNonce - Ethereum2Wallet: - title: Ethereum2 Wallet - type: object - properties: - pendingChainInitialization: - type: boolean - baseAddress: - type: string - feeAddress: - type: string - required: - - pendingChainInitialization - EthereumWallet: - title: Ethereum Wallet - type: object - properties: - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - gasPriceTier: - type: string - tokenFlushThresholds: - type: object - additionalProperties: - oneOf: - - type: string - - type: number - walletVersion: - type: number - pendingDeployment: - type: boolean - deployForwardersManually: - type: boolean - flushForwardersManually: - type: boolean - enableMMI: - type: boolean - enableNFT: - type: boolean - deployedInBlock: - oneOf: - - type: number - - type: boolean - deployTxHash: - type: string - lastChainIndex: {} - baseAddress: - type: string - feeAddress: - type: string - nonce: - type: string - token: - type: string - pendingEcdsaTssInitialization: - type: boolean - safeModeActivated: - type: string - lowPriorityFeeAddress: - type: string - salt: - type: string - required: - - pendingChainInitialization - - creationFailure - - gasPriceTier - - tokenFlushThresholds - - walletVersion - - pendingDeployment - - deployForwardersManually - - flushForwardersManually - - enableMMI - - enableNFT - EosWallet: - title: Eos Wallet - type: object - properties: - rootAddress: - type: string - pendingChainInitialization: - type: boolean - creationFailure: - type: array - items: - type: string - lastMemoId: - type: string - required: - - rootAddress - - pendingChainInitialization - - creationFailure - - lastMemoId - DotWallet: - title: Dot Wallet - type: object - properties: - rootAddress: - type: string - pendingChainInitialization: - type: boolean - nonceAddress: - type: string - required: - - rootAddress - - pendingChainInitialization - CasperWallet: - title: Casper Wallet - type: object - properties: - accountHash: - type: string - creationFailure: - type: array - items: - type: string - lastTransferId: - type: string - pendingChainInitialization: - type: boolean - rootAddress: - type: string - required: - - accountHash - - creationFailure - - lastTransferId - - pendingChainInitialization - - rootAddress - UtxoWallet: - title: Utxo Wallet - type: object - properties: - customChangeWalletId: - type: string - customChangeAddressType: - type: string - sendQueueInferredScriptTypes: - type: array - items: - type: string - AvaxPWallet: - title: AvaxP Wallet - type: object - properties: - unlockAddresses: - type: array - items: - type: string - threshold: - type: number - required: - - unlockAddresses - - threshold - AtomWallet: - title: Atom Wallet - type: object - properties: - rootAddress: - type: string - lastMemoId: - type: string - lastChainIndex: {} - pendingEcdsaTssInitialization: - type: boolean - required: - - rootAddress - - lastMemoId - AlgorandWallet: - title: Algorand Wallet - type: object - properties: - addressVersion: - type: number - rootAddress: - type: string - trustedTokens: - type: array - items: - allOf: - - type: object - properties: - state: - $ref: '#/components/schemas/TrustedTokenState' - - $ref: '#/components/schemas/Token' - required: - - addressVersion - - rootAddress - AdaWallet: - title: Ada Wallet - type: object - properties: - rootAddress: - type: string - addressCount: - type: string - pendingChainInitialization: - type: boolean - rewardAddress: - type: string - lastChainIndex: - type: object - additionalProperties: - type: number - required: - - rootAddress - - addressCount - - pendingChainInitialization - - rewardAddress - CoinNonEmptyString: - title: CoinNonEmptyString - type: string - description: A cryptocurrency symbol or token ticker symbol - example: btc - minLength: 1 - UpdateWalletShareResponse: - title: UpdateWalletShareResponse - type: object - properties: - state: - allOf: - - $ref: '#/components/schemas/WalletShareState' - description: New state of the wallet share after update - changed: - type: boolean - description: Whether the wallet share was changed - required: - - state - - changed - WalletShareState: - title: WalletShareState - type: string - enum: - - pendingapproval - - active - - accepted - - canceled - - rejected - description: The state of wallet share object - example: active - EnterprisesResponse: - title: EnterprisesResponse - type: object - properties: - enterprises: - type: array - items: - oneOf: - - $ref: '#/components/schemas/Enterprise' - - $ref: '#/components/schemas/EnterpriseStub' - required: - - enterprises - EnterpriseStub: - title: Enterprise Stub - type: object - properties: - id: - $ref: '#/components/schemas/EnterpriseIdString' - name: - type: string - example: Small Company - minLength: 1 - pricingPlan: - type: string - ethFeeAddress: - type: string - description: The eth fee address used to pay for network transaction fees of this enterprise - required: - - id - - name - EnterpriseIdString: - title: EnterpriseIdString - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - Enterprise: - title: Enterprise - type: object - properties: - id: - $ref: '#/components/schemas/EnterpriseIdString' - name: - type: string - example: Small Company - additionalEnterpriseInfo: - $ref: '#/components/schemas/AdditionalEnterpriseInfo' - bitgoOrg: - allOf: - - $ref: '#/components/schemas/BitgoOrg' - description: BitGo Organization related to this entity - kycState: - $ref: '#/components/schemas/KycState' - legalIdentifiers: - $ref: '#/components/schemas/LegalIdentifiers' - type: - type: string - latestSAVersionSigned: - type: number - example: 0 - travelRule: - type: boolean - productLicenses: - type: array - items: - type: string - canAccessBorrowing: - type: boolean - description: whether the enterprise has the licence for BitGo Prime Borrowing - canAccessLending: - type: boolean - description: whether the enterprise has the licence for BitGo Prime Lending - canAccessSettlement: - type: boolean - description: whether the enterprise has the licence to utilize settlement functionality - canAccessTrading: - type: boolean - description: whether the enterprise has the licence to access BitGo Trading - canCreateColdWallet: - type: boolean - description: whether the enterprise has the license to create cold wallets - canCreateHotWallet: - type: boolean - description: whether the enterprise has the license to create hot wallets - canCreateCustodialWallet: - type: boolean - description: whether the enterprise has the license to create custodial wallets - canCreateOffchainWallet: - type: boolean - description: whether the enterprise has the license to create trading accounts - oneTimeFees: - type: array - items: - type: string - upfrontPaymentStatus: - type: string - ethAlwaysUseHop: - type: boolean - description: Always use hop address for ETH transactions - usersViewAllWallets: - type: boolean - description: All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself - example: true - videoIdWaived: - type: boolean - description: Whether the customer has waived the need for Video ID on low risk withdrawals. - example: false - tradeOnboardingAgreement: - allOf: - - $ref: '#/components/schemas/OnboardingAgreement' - description: Who & when the MPA license was ack'd - stakingServicesAgreement: - $ref: '#/components/schemas/OnboardingAgreement' - custodyServicesAgreement: - $ref: '#/components/schemas/OnboardingAgreement' - accountType: - allOf: - - $ref: '#/components/schemas/AccountType' - description: Indicates which type of KYC process the enterprise has to complete - businessModel: - $ref: '#/components/schemas/BusinessModel' - salesforceAccountId: - type: string - description: Opportunity ID from Salesforce - salesforceOpportunityId: - type: string - opportunityName: - type: string - description: Opportunity Name from Salesforce - salesEmail: - type: string - cheetahAccountId: - type: string - description: CheetahAccountID is the unique ID for a BitGo Trust enterprise in Cheetah, which is the accounting system used by Trust. - primaryContact: - type: string - description: The Id of the User who is the primary contact - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - organizationId: - $ref: '#/components/schemas/OrganizationIdString' - emergencyPhone: - type: string - description: Phone number for emergencies - example: '+11234567890' - pricingPlan: - type: string - description: The pricing plan of the enterprise - approvalsRequired: - type: number - description: How many Enterprise Admins are required for action to fire - example: 1 - mutablePolicyWindow: - type: number - description: Time in seconds after which policies on this Enterprise cannot be updated - example: 172800 - freeze: - $ref: '#/components/schemas/Freeze' - bitgoEthKey: - type: string - description: The public portion of the ethererum key generated for the enterprise fee address - ethFeeAddress: - type: string - description: The eth fee address used to pay for network transaction fees of this enterprise - walletLimit: - type: object - additionalProperties: - type: number - preferredUi: - allOf: - - $ref: '#/components/schemas/AvailableUI' - description: The UI that this enterprise prefers to use - custodialWalletLimit: - nullable: true - type: object - additionalProperties: - type: number - featureFlags: - type: array - items: - type: string - labels: - type: array - items: - type: string - publicLabels: - type: array - items: - type: string - description: Subset of labels that are OK to return back to client in GetEnterpriseResponse - licenses: - type: array - items: - type: string - description: New licences that are not stored as flags. Tax requires Portfolio Professional or Institutional - ellipticId: - type: string - description: Identifier for environment variables for a customer's Elliptic API credentials - ellipticHotWallets: - type: boolean - description: Hot wallet transactions on this enterprise are monitored in Elliptic - vaspId: - type: string - bitgoVaspId: - type: string - coinSpecific: - type: object - additionalProperties: {} - walletCounts: - type: object - description: Number of wallets per coin - properties: - enterpriseWallets: - type: object - additionalProperties: - type: number - required: - - enterpriseWallets - activePricingType: - nullable: true - allOf: - - $ref: '#/components/schemas/FlattenedPricingType' - source: - $ref: '#/components/schemas/AggregatorSourceType' - totalWalletsCount: - type: number - description: The total number of wallets in the enterprise - example: 1 - internal: - $ref: '#/components/schemas/EnterpriseInternal' - distributedCustody: - $ref: '#/components/schemas/DistributedCustody' - migratedToNewPolicyService: - type: boolean - description: Whether the enterprise has been migrated to the new policy service - videoIdUsers: - type: array - items: - type: object - properties: - email: - type: string - description: The email of the user - minLength: 1 - userId: - type: string - description: The user ID - minLength: 1 - inviter: - type: string - description: The inviter of the user - minLength: 1 - state: - allOf: - - $ref: '#/components/schemas/VideoIdUserState' - description: The state of the user - videoCallId: - type: string - description: The user's video call ID - approvalDate: - type: string - description: The date the user was approved - archivedDate: - type: string - description: The date the user was archived - pendingApprovalId: - type: string - description: The ID if the user is pending approval - videoLink: - type: string - description: The user's video link - enterpriseId: - type: string - description: EnterpriseId of enterprise this video users belongs to - enterpriseName: - type: string - description: EnterpriseName of enterprise this video users belongs to - required: - - email - - userId - - inviter - - state - description: IDs of users on the enterprise that are approved for custodial video ID - sourceConfig: - type: array - items: - type: object - properties: - source: - $ref: '#/components/schemas/AggregatorSourceType' - metadata: - type: object - description: 'The following fields: source, showBanner, readyForDistribution, showVideoIdBanner, ftxCreditorId were added for FTX insitutional distribution. Reference: https://bitgoinc.atlassian.net/browse/COPS-2695' - properties: - showBanner: - type: boolean - readyForDistribution: - type: boolean - showVideoIdBanner: - type: boolean - ftxCreditorId: - type: string - ftxHost: - type: string - required: - - source - description: Array to store configs, upon which certain actions are taken, per source - videoIdRequired: - type: boolean - description: Check for video ID Users - contract: - allOf: - - $ref: '#/components/schemas/EnterpriseContract' - description: Contract information - referralCode: - allOf: - - $ref: '#/components/schemas/ReferralCodeString' - description: Referral code - oauthSetting: - allOf: - - $ref: '#/components/schemas/OAuthSetting' - description: oauth setting of the enterprise * - optOutOfPoints: - type: boolean - description: Opt Out of Points System Flag - required: - - id - - name - - additionalEnterpriseInfo - - bitgoOrg - - kycState - - legalIdentifiers - - type - - latestSAVersionSigned - - travelRule - - productLicenses - - canAccessBorrowing - - canAccessLending - - canAccessSettlement - - canAccessTrading - - canCreateColdWallet - - canCreateHotWallet - - canCreateCustodialWallet - - canCreateOffchainWallet - - oneTimeFees - - upfrontPaymentStatus - - ethAlwaysUseHop - - usersViewAllWallets - - videoIdWaived - OAuthSetting: - title: OAuthSetting - type: object - properties: - clientId: - type: string - clientSecret: - type: string - tenantId: - type: string - oauthProvider: - $ref: '#/components/schemas/OAuthProvider' - required: - - clientId - - clientSecret - - tenantId - - oauthProvider - OAuthProvider: - title: OAuthProvider - type: string - enum: - - msEntra - ReferralCodeString: - title: ReferralCodeString - type: string - description: An Enterprise Referral Code - EnterpriseContract: - title: EnterpriseContract - type: object - properties: - startDate: - oneOf: - - type: string - format: date - title: Date String - - type: string - format: date-time - title: ISO Date String - endDate: - oneOf: - - type: string - format: date - title: Date String - - type: string - format: date-time - title: ISO Date String - isExternal: - type: boolean - AggregatorSourceType: - title: AggregatorSourceType - type: string - enum: - - bitcoinBuilder - - ftx - - ftx-retail - - ftx-bahamas - - ftx-bahamas-retail - - sofi - - bitcoinWell - - lucid - - wlf - - walrus - VideoIdUserState: - title: VideoIdUserState - type: string - enum: - - awaitingApproval - - awaitingAcceptance - - pendingSchedule - - pendingInitialId - - underReview - - approved - - rejected - - archived - DistributedCustody: - title: DistributedCustody - type: object - properties: - signingBitgoOrg: - $ref: '#/components/schemas/BitgoOrg' - required: - - signingBitgoOrg - BitgoOrg: - title: BitgoOrg - type: string - enum: - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - BitGo Europe ApS - - Frankfurt DE Trust - - BitGo Singapore - - BitGo Korea - - BitGo Mena Fze - - BitGo Custody MENA FZE - - BitGo Sister Trust 1 - - BitGo Inc - EnterpriseInternal: - title: EnterpriseInternal - type: object - properties: - migratedToNewPolicyService: - nullable: true - type: boolean - description: Whether the enterprise has been migrated to the new policy service - policiesLocked: - type: boolean - umsMappingComplete: - nullable: true - type: boolean - required: - - migratedToNewPolicyService - - policiesLocked - - umsMappingComplete - FlattenedPricingType: - title: FlattenedPricingType - allOf: - - type: object - properties: - name: - $ref: '#/components/schemas/PricingTypeName' - required: - - name - - $ref: '#/components/schemas/ActiveDateRange' - ActiveDateRange: - title: ActiveDateRange - type: object - properties: - startDate: - oneOf: - - type: string - format: date-time - title: ISO Date String - - type: string - format: date - title: Date String - description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the start date of a new auditable item. If not present, will use the current date to create a new auditable item. Start date is inclusive, i.e. we will start billing/functionality at this instant and afterwards. - startReason: - type: string - description: An optional note describing the reason the auditable item was added/created. - id: - type: string - description: Unique identifier for the date range. - endDate: - nullable: true - oneOf: - - type: string - format: date-time - title: ISO Date String - - type: string - format: date - title: Date String - description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the end date of a new auditable item. If not present, we will set the endDate to null, and we will assume an indefinite range. endDate is exclusive, i.e. we will end billing/functionality up to but not at this particular time. - endReason: - type: string - description: An optional note describing the reason the auditable item was ended. - required: - - startDate - - startReason - PricingTypeName: - title: PricingTypeName - type: string - enum: - - starter - - growth - - employee - - FTX Retail - - FTX Institutional - AvailableUI: - title: AvailableUI - type: string - enum: - - bg23 - - '' - Freeze: - title: Freeze - type: object - properties: - time: - oneOf: - - type: string - format: date - title: Date String - - type: string - format: date-time - title: ISO Date String - description: When the freeze started - format: date-time - expires: - oneOf: - - type: string - format: date - title: Date String - - type: string - format: date-time - title: ISO Date String - description: When the freeze will end - format: date-time - reason: - type: string - description: The reason the entity was frozen - frozenBy: - type: string - description: The user that froze the entity - unFrozenBy: - type: string - description: The user that unfroze the entity - OrganizationIdString: - title: OrganizationIdString - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - BusinessModel: - title: BusinessModel - type: string - enum: - - bitgoAsAService - AccountType: - title: AccountType - type: string - enum: - - individual - - entity - OnboardingAgreement: - title: OnboardingAgreement - type: object - description: For users doing self-service onboarding, they just need to click a checkbox to agree to the terms. we will track who & when that happened on a feature-by-feature basis. - properties: - user: - type: string - date: - type: string - format: date-time - title: ISO Date String - ip: - type: string - required: - - user - - date - LegalIdentifiers: - title: LegalIdentifiers - type: object - properties: - legalPersonNameIdentifierType: - $ref: '#/components/schemas/LegalPersonNameIdentifierType' - legalPersonName: - type: string - required: - - legalPersonNameIdentifierType - LegalPersonNameIdentifierType: - title: LegalPersonNameIdentifierType - type: string - enum: - - LEGL - KycState: - title: KycState - type: string - enum: - - unverified - - approved - - rejected - - pending - AdditionalEnterpriseInfo: - title: AdditionalEnterpriseInfo - type: object - properties: - contact: - $ref: '#/components/schemas/GeographicAddress' - GeographicAddress: - title: GeographicAddress - type: object - properties: - addressType: - type: string - name: - type: string - description: Legal name of the enterprise, not necessarily the same as the display name - street: - type: string - description: Address line - street2: - nullable: true - type: string - description: Optional second address line - suite: - nullable: true - type: string - description: Optional suite number - city: - type: string - description: City name - state: - type: string - description: State or region - postalCode: - type: string - description: Postal code - country: - type: string - description: ISO 3166-1 Alpha-3 country code - GetEnterpriseResponse: - title: GetEnterpriseResponse - allOf: - - type: object - properties: - wallets: - type: array - items: - type: string - minLength: 1 - tags: - type: array - items: - type: object - properties: - name: - type: string - id: - type: string - required: - - name - - id - required: - - wallets - - tags - - $ref: '#/components/schemas/Enterprise' - InvalidEnterpriseId: - title: Invalid Enterprise ID - allOf: - - type: object - properties: - name: - type: string - enum: - - InvalidEnterpriseId - required: - - name - - $ref: '#/components/schemas/InvalidId' - InvalidOrganizationId: - title: Invalid Organization ID - allOf: - - type: object - properties: - name: - type: string - enum: - - InvalidOrganizationId - required: - - name - - $ref: '#/components/schemas/InvalidId' - EnterpriseUserRole: - title: EnterpriseUserRole - type: string - enum: - - admin - - member - GetTransactionRequestsResponse: - title: GetTransactionRequestsResponse - type: object - properties: - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. - format: uuid - txRequests: - type: array - items: - oneOf: - - $ref: '#/components/schemas/TransactionRequestLite2' - - $ref: '#/components/schemas/TransactionRequestFull' - required: - - txRequests - AccessTokenResponse: - title: AccessTokenResponse - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - isExtensible: - type: boolean - bitgoAdminPermissions: - type: array - items: - type: string - client: - type: string - created: - type: string - format: date-time - title: ISO Date String - enterprise: - type: string - expires: - type: string - format: date-time - title: ISO Date String - extensionAddress: - type: string - ip: - type: string - description: IP address of the client that requested this access token - example: 127.0.0.1 - format: ipv4 - ipRestrict: - type: array - items: - type: string - description: IP addresses of clients that are allowed to use this token - label: - type: string - origin: - type: string - description: BitGo environment that issued this token - example: test.bitgo.com - token: - type: string - scope: - type: array - example: - - crypto_compare - - user_manage - - openid - - profile - - wallet_create - - wallet_manage_all - - wallet_approve_all - - wallet_spend_all - - wallet_edit_all - - wallet_view_all - items: - type: string - description: Session permissions - unlock: - allOf: - - type: object - properties: - spendingLimits: - type: object - additionalProperties: - type: object - properties: - txCount: - type: number - description: The transaction count limit for the coin - txValue: - type: number - description: The transaction value limit for the coin - txValueLimit: - type: number - description: The maximum transaction value limit for the coin - allErc20TokensLimit: - $ref: '#/components/schemas/AllErc20TokenLimit' - - $ref: '#/components/schemas/Unlock' - user: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - oauth: - type: object - properties: - oauthRequired: - type: boolean - expires: - type: string - format: date-time - title: ISO Date String - required: - - id - - isExtensible - Unlock: - title: Unlock - type: object - properties: - expires: - type: string - format: date-time - title: ISO Date String - time: - type: string - format: date-time - title: ISO Date String - txCount: - type: number - txValue: - type: number - txValueLimit: - type: number - AllErc20TokenLimit: - title: AllErc20TokenLimit - type: object - properties: - enabled: - type: boolean - description: Indicates if the limit is enabled for all ERC20 tokens - txCount: - type: number - description: The transaction count limit for all ERC20 tokens - txValue: - type: string - description: The transaction value limit for all ERC20 tokens - txValueLimitInSmallUnits: - type: string - description: The transaction value limit in small units for all ERC20 tokens - maxLimit: - type: boolean - description: Indicates if the maximum limit is enabled - required: - - enabled - - txCount - - txValue - OAuthAccessToken: - title: OAuthAccessToken - type: object - properties: - bitgoAdminPermissions: - type: array - items: - type: string - description: The BitGo admin permissions associated with the access token - client: - type: string - description: The client associated with the access token - created: - type: string - description: The creation date of the access token - format: date-time - title: ISO Date String - enterprise: - type: string - description: The enterprise associated with the access token - expires: - type: string - description: The expiration date of the access token - format: date-time - title: ISO Date String - extensionAddress: - type: string - description: The extension address associated with the access token - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - internal: - type: boolean - ip: - type: string - description: IP address of the client that requested this access token - example: 127.0.0.1 - format: ipv4 - ipRestrict: - type: array - items: - type: string - description: IP addresses of clients that are allowed to use this token - isExtensible: - type: boolean - description: Indicates if the access token is extensible - label: - type: string - description: The label associated with the access token - organizations: - type: array - items: - type: string - description: The organizations associated with the access token - origin: - type: string - description: BitGo environment that issued this token - example: test.bitgo.com - token: - type: string - description: The token value - scope: - type: array - example: - - crypto_compare - - user_manage - - openid - - profile - - wallet_create - - wallet_manage_all - - wallet_approve_all - - wallet_spend_all - - wallet_edit_all - - wallet_view_all - items: - type: string - description: Session permissions - unlock: - allOf: - - type: object - properties: - spendingLimits: - type: object - additionalProperties: - $ref: '#/components/schemas/PerCoinLimit' - - $ref: '#/components/schemas/Unlock' - description: The unlock object, returned if this session is currently unlocked - user: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - id - - isExtensible - PerCoinLimit: - title: PerCoinLimit - type: object - properties: - txCount: - type: number - description: The transaction count limit for the coin - txValue: - type: number - description: The transaction value limit for the coin - txValueLimit: - type: number - description: The maximum transaction value limit for the coin - PlatformInvalidWalletId: - title: Invalid wallet id - allOf: - - $ref: '#/components/schemas/PlatformInvalidId' - - properties: - name: - type: string - description: Error code - enum: - - InvalidWalletId - required: - - name - PlatformInvalidId: - allOf: - - $ref: '#/components/schemas/PlatformPlatformErrorNoName' - - properties: - context: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - required: - - context - Id: - title: ID - type: string - pattern: ^[0-9a-f]{32}$ - example: 59cd72485007a239fb00282ed480da1f - PlatformPlatformErrorNoName: - type: object - properties: - error: - type: string - description: Human-readable error message - requestId: - type: string - description: Client request id - required: - - error - - requestId - PlatformPlatformError: - title: API error - allOf: - - $ref: '#/components/schemas/PlatformPlatformErrorNoName' - - properties: - context: - type: object - description: Properties that apply to a specific error name - name: - type: string - description: Error code - required: - - name - PlatformWebhook: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - label: - type: string - example: Test Webhook - created: - $ref: '#/components/schemas/DateTime' - coin: - $ref: '#/components/schemas/Coin' - type: - $ref: '#/components/schemas/WebhookTypeWallet' - url: - type: string - format: uri - example: https://your.server.com/webhook - version: - type: integer - example: 2 - description: 2 for coins running on API v2. - numConfirmations: - type: integer - example: 6 - state: - type: string - description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. - enum: - - active - - suspended - example: active - lastAttempt: - $ref: '#/components/schemas/DateTime' - failingSince: - $ref: '#/components/schemas/DateTime' - successiveFailedAttempts: - type: integer - example: 0 - walletId: - type: string - allowBlockedHosts: - type: boolean - allToken: - type: boolean - txRequestStates: - type: array - items: - $ref: '#/components/schemas/PlatformTransactionRequestState' - description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. - txRequestTransactionStates: - type: array - items: - $ref: '#/components/schemas/PlatformTransactionState' - description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. - identityStatus: - type: array - items: - $ref: '#/components/schemas/IdentityStatus' - description: If present, only identity status changes from the list will trigger notifications. If not present, all identity status changes will trigger notifications. - userKycState: - type: array - items: - $ref: '#/components/schemas/PlatformVerifiedKycState' - description: If present, only user kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. - enterpriseKycState: - type: array - items: - $ref: '#/components/schemas/PlatformVerifiedKycState' - description: 'If present, only enterprise kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. ' - required: - - url - PlatformVerifiedKycState: - type: string - enum: - - approved - - pending - - rejected - IdentityStatus: - type: string - enum: - - approved - - declined - - input error - - ssn error - - gov id error - - ssn verified - - gov id verified - - evaluating submission - - awaiting document upload - - records uploaded - - in review - - incomplete verifications - - awaiting signature - - signature submitted - - initiating - - additional information submitted - PlatformTransactionState: - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - PlatformTransactionRequestState: - type: string - enum: - - initialized - - pendingApproval - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - pendingUserSignature - - pendingDelivery - - signed - - delivered - - canceled - - rejected - - failed - DateTime: - type: string - format: date-time - example: {} - WebhookTypeWallet: - type: string - enum: - - txRequest - - txRequestTransaction - - transfer - - transaction - - transactionRemoved - - transactionExpire - - pendingapproval - - address_confirmation - - lowFee - - block - - admin - - circuitBreaker - - transaction_finality_on_l1 - example: transfer - description: Event type to listen to. - Coin: - title: Coin - description: A cryptocurrency or token ticker symbol. - type: string - example: btc - PlatformPendingApproval: - title: Pending approval - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - wallet: - $ref: '#/components/schemas/Id' - enterprise: - $ref: '#/components/schemas/Id' - organization: - $ref: '#/components/schemas/Id' - creator: - $ref: '#/components/schemas/Id' - createDate: - type: string - format: date-time - info: - anyOf: - - $ref: '#/components/schemas/PendingApprovalTransactionRequest' - - $ref: '#/components/schemas/PendingApprovalTransactionRequestFull' - - $ref: '#/components/schemas/PendingApprovalUserChangeRequest' - - $ref: '#/components/schemas/PendingApprovalPolicyRuleRequest' - - $ref: '#/components/schemas/PendingApprovalUpdateApprovalsRequiredRequest' - - $ref: '#/components/schemas/PendingApprovalEnterpriseModificationResponse' - - $ref: '#/components/schemas/PendingApprovalEnterpriseInviteRequest' - state: - $ref: '#/components/schemas/PlatformPendingApprovalState' - scope: - description: What kind of entity the Pending Approval is tied to - type: string - enum: - - enterprise - - wallet - userIds: - description: All the Users who should see this Pending Approval - type: array - items: - $ref: '#/components/schemas/Id' - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - walletLabel: - type: string - resolvers: - type: array - items: - type: object - properties: - user: - type: string - date: - type: string - resolutionType: - type: string - enum: - - approved - - awaitingSignature - - pending - - pendingBitGoAdminApproval - - pendingCryptographicApproval - - pendingCustodianApproval - - pendingFinalApproval - - pendingIdVerification - - pendingVideoApproval - - processing - - rejected - signatures: - type: array - items: - type: string - videoApprover: - type: string - videoLink: - type: string - videoException: - type: string - required: - - user - - date - - resolutionType - - signatures - addressLabels: - type: array - items: - $ref: '#/components/schemas/PendingApprovalAddressLabel' - PendingApprovalAddressLabel: - description: Address labels of recipients in this Pending Approval - type: object - properties: - address: - $ref: '#/components/schemas/AddressString3' - label: - $ref: '#/components/schemas/AddressLabel' - walletLabel: - $ref: '#/components/schemas/WalletLabel' - required: - - address - - label - WalletLabel: - type: string - example: My Wallet - AddressLabel: - type: string - nullable: true - example: Bob's Hot Wallet Address - maxLength: 250 - description: A human-readable label for the address. - ApprovalsRequired: - type: integer - minimum: 1 - example: 1 - PlatformPendingApprovalState: - anyOf: - - $ref: '#/components/schemas/PlatformPendingApprovalStatePending' - - $ref: '#/components/schemas/PlatformPendingApprovalStateResolved' - PlatformPendingApprovalStateResolved: - title: Resolved - type: string - enum: - - approved - - processing - - rejected - PlatformPendingApprovalStatePending: - title: Pending - type: string - enum: - - pending - - awaitingSignature - - pendingFinalApproval - - pendingCustodianApproval - - pendingVideoApproval - - pendingIdVerification - PendingApprovalEnterpriseInviteRequest: - title: Enterprise Invite Request - type: object - properties: - type: - type: string - enum: - - enterpriseInviteRequest - enterpriseInviteRequest: - type: object - properties: - action: - type: string - enum: - - add - email: - type: string - description: The email address of the user being invited - userId: - $ref: '#/components/schemas/Id' - description: The ID of the user being invited - isVideoIdUser: - type: boolean - enterpriseInfo: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - description: The ID of the enterprise the user is being invited to - name: - type: string - description: The name of the enterprise the user is being invited to - requiredVerificationStep: - type: string - description: The required verification step needed (if any) before the user can join the enterprise - invitedBy: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - description: The ID of the user who invited the user - fullName: - type: string - description: The full name of the user who invited the user - email: - type: string - description: The email address of the user who invited the user - PendingApprovalEnterpriseModificationResponse: - title: Enterprise modification request - type: object - properties: - policyRuleRequest: - type: object - properties: - action: - type: string - updateEnterpriseRequest: - type: object - properties: - type: - type: string - enum: - - updateEnterpriseRequest - action: - type: string - enum: - - add - - remove - permission: - type: string - enum: - - admin - userId: - type: string - email: - allOf: - - $ref: '#/components/schemas/PlatformEmail' - description: E-Mail address of newly added users - type: - type: string - enum: - - policyRuleRequest - PlatformEmail: - type: string - format: email - example: user@example.com - PendingApprovalUpdateApprovalsRequiredRequest: - title: Update approvals required request - type: object - properties: - type: - type: string - enum: - - updateApprovalsRequiredRequest - updateApprovalsRequiredRequest: - type: object - properties: - requestedApprovalsRequired: - type: number - PendingApprovalPolicyRuleRequest: - title: Policy rule request - type: object - properties: - policyRuleRequest: - type: object - properties: - action: - type: string - update: - type: object - properties: - action: - $ref: '#/components/schemas/PolicyRuleActions' - coin: - $ref: '#/components/schemas/Coin' - condition: - type: object - properties: - excludeTags: - $ref: '#/components/schemas/IdArray' - groupTags: - $ref: '#/components/schemas/IdArray' - additionalProperties: true - id: - type: string - description: the id of the rule that is being updated - type: - $ref: '#/components/schemas/PolicyRuleTriggers' - type: - type: string - enum: - - policyRuleRequest - PolicyRuleTriggers: - type: string - enum: - - advancedWhitelist - - allTx - - bitcoinAddressWhitelist - - coinAddressWhitelist - - coinAddressBlacklist - - transactionLimit - - velocityLimit - - webhook - description: What causes this rule to trigger - IdArray: - type: array - items: - $ref: '#/components/schemas/Id' - example: - - 585951a5df8380e0e3063e9f - - 585951a5df8380e0e304a553 - PolicyRuleActions: - description: What happens when this rule is triggered - type: object - properties: - type: - type: string - enum: - - deny - - getApproval - - getGroupApproval - - getFinalApproval - - getCustodianApproval - - getIdVerification - - noop - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - userIds: - description: For a final approver action, who can approve - type: array - items: - $ref: '#/components/schemas/Id' - required: - - type - PendingApprovalUserChangeRequest: - title: User change request - type: object - properties: - type: - type: string - enum: - - userChangeRequest - userChangeRequest: - type: object - properties: - action: - type: string - permissions: - type: string - userChanged: - $ref: '#/components/schemas/Id' - PendingApprovalTransactionRequestFull: - title: Transaction request (full) - type: object - properties: - transactionRequestFull: - type: object - properties: - txRequestId: - type: string - policyUniqueId: - $ref: '#/components/schemas/Id' - verificationItems: - type: array - items: - type: string - verificationRuleId: - type: string - videoApprovers: - $ref: '#/components/schemas/IdArray' - walletRebalanceEventId: - $ref: '#/components/schemas/Id' - txRequest: - $ref: '#/components/schemas/PlatformTransactionRequest' - required: - - txRequestId - type: - type: string - enum: - - transactionRequestFull - PlatformTransactionRequest: - anyOf: - - $ref: '#/components/schemas/PlatformTransactionRequestLite' - - $ref: '#/components/schemas/PlatformTransactionRequestFull' - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - PlatformTransactionRequestFull: - title: Full - allOf: - - $ref: '#/components/schemas/PlatformTransactionRequestBase' - - type: object - properties: - transactions: - description: Transaction information. - type: array - items: - $ref: '#/components/schemas/PlatformTransaction' - messages: - description: Messages for the transaction request. - type: array - items: - $ref: '#/components/schemas/Message' - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - - transactions - Message: - type: object - properties: - coin: - type: string - description: The coin associated with the wallet. - combineSigShare: - type: string - createdDate: - description: The date the message was created. - type: string - format: date-time - messageEncoded: - description: The message encoded as a hex string. - type: string - messageRaw: - description: The message as human readable text. - type: string - signatureShares: - type: array - items: - $ref: '#/components/schemas/PlatformSignatureShare' - state: - $ref: '#/components/schemas/PlatformTransactionRequestState' - txHash: - type: string - description: The signed hex of the message. - updatedDate: - description: The date when the message state was updated. - type: string - format: date-time - required: - - messageRaw - - state - PlatformSignatureShare: - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The source of the signature share. - to: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The recipient of the signature share. - share: - type: string - description: The signature share. - required: - - from - - to - - share - KeyShareSource: - type: string - enum: - - user - - backup - - bitgo - example: user - PlatformTransaction: - type: object - properties: - state: - $ref: '#/components/schemas/PlatformTransactionState' - unsignedTx: - allOf: - - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' - description: Holds the unsigned transaction for this transaction in a tx-request. - signatureShares: - type: array - description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. Holds the signature shares for this transaction in a tx-request. - items: - $ref: '#/components/schemas/PlatformSignatureShare' - commitmentShares: - type: array - description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. Holds the commitment shares for this transaction in a tx-request. - items: - $ref: '#/components/schemas/PlatformCommitmentShare' - txHash: - type: string - description: The hash of the transaction from the TxRequest that has been signed and is pending broadcast. - bitgoPaillierChallenge: - description: BitGo-to-user paillier challenge. Required when signing with ECDSA MPC wallets. - type: object - properties: - p: - type: array - items: - type: string - required: - - state - - unsignedTx - PlatformCommitmentShare: - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The source of the commitment share. - to: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The recipient of the commitment share. - share: - type: string - description: The commitment share. - type: - allOf: - - $ref: '#/components/schemas/CommitmentType' - - default: commitment - description: The type of the commitment share. - required: - - from - - to - - share - - type - CommitmentType: - type: string - enum: - - commitment - example: commitment - TransactionRequestUnsignedTransaction: - type: object - properties: - serializedTxHex: - type: string - description: The unsigned transaction as a hex string. - signableHex: - type: string - description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. - derivationPath: - type: string - description: A bip32 path. - feeInfo: - type: object - properties: - feeString: - type: string - fee: - type: number - required: - - fee - - feeString - coinSpecific: - description: Coin specific information. - type: object - parsedTx: - description: The parsed transaction information. - type: object - properties: - minerFee: - type: string - spendAmount: - type: string - spendAmounts: - type: array - items: - type: object - properties: - coinName: - type: string - amountString: - type: string - payGoFee: - type: string - outputs: - type: array - items: - type: object - properties: - address: - type: string - isPayGo: - type: boolean - value: - type: number - wallet: - type: string - walletV1: - type: string - baseAddress: - type: string - enterprise: - type: string - valueString: - type: string - data: - type: string - change: - type: boolean - coinName: - type: string - required: - - address - - valueString - inputs: - type: array - items: - type: object - properties: - derivationIndex: - type: number - value: - type: number - address: - type: string - valueString: - type: string - chain: - type: number - index: - type: number - required: - - valueString - - value - type: - type: string - memo: - type: string - required: - - minerFee - - outputs - - inputs - required: - - serializedTxHex - - signableHex - PlatformTransactionRequestBase: - type: object - properties: - txRequestId: - type: string - description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. - version: - type: number - description: The version of the document. Data changes are done only with inserts and incrementing the version. - latest: - type: boolean - description: A boolean flag that indicates whether the document is the latest version of the TxRequest. - walletId: - type: string - description: The id of the Wallet the TxRequest is for. - walletType: - allOf: - - $ref: '#/components/schemas/WalletTypePublic' - description: The type describes who owns the keys to the wallet associated to the TxRequest. - enterpriseId: - type: string - description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. - state: - $ref: '#/components/schemas/PlatformTransactionRequestState' - date: - allOf: - - $ref: '#/components/schemas/DateTime' - description: The date and time this version of the TxRequest document was created. - createdDate: - allOf: - - $ref: '#/components/schemas/DateTime' - description: The date and time the version 1 TxRequest document was created. - userId: - type: string - description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. - initiatedBy: - type: string - description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). - updatedBy: - type: string - description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. - intent: - $ref: '#/components/schemas/TransactionRequestIntent' - intents: - type: array - items: - $ref: '#/components/schemas/TransactionRequestIntent' - pendingApprovalId: - type: string - description: The id of the Pending Approval that was created for the TxRequest if one was required. - isCanceled: - type: boolean - description: True, if the transaction request is canceled. - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - createdDate - - userId - - initiatedBy - - updatedBy - - intents - TransactionRequestIntent: - anyOf: - - $ref: '#/components/schemas/AdaStakeIntent1' - - $ref: '#/components/schemas/ConsolidateTokenIntent1' - - $ref: '#/components/schemas/CosmosContractCallIntent' - - $ref: '#/components/schemas/DOTClaimIntent' - - $ref: '#/components/schemas/DotPaymentIntent1' - - $ref: '#/components/schemas/DotStakingIntent' - - $ref: '#/components/schemas/DotUnstakingIntent' - - $ref: '#/components/schemas/EthAccelerationIntent' - - $ref: '#/components/schemas/EthFillNonceIntent' - - $ref: '#/components/schemas/EthPaymentIntent' - - $ref: '#/components/schemas/ETHSignMessageIntent' - - $ref: '#/components/schemas/EthStakingIntent' - - $ref: '#/components/schemas/NearStakeIntent1' - - $ref: '#/components/schemas/NearUnstakeIntent1' - - $ref: '#/components/schemas/NearWithdrawIntent1' - - $ref: '#/components/schemas/SolClaimIntent' - - $ref: '#/components/schemas/SolCreateAssociatedTokenAccountIntent' - - $ref: '#/components/schemas/SolStakeIntent' - - $ref: '#/components/schemas/SolUnstakeIntent' - - $ref: '#/components/schemas/TransferTokenIntent1' - - $ref: '#/components/schemas/UnstakeIntent2' - - $ref: '#/components/schemas/WalletRecoveryIntent1' - - $ref: '#/components/schemas/WithdrawIntent2' - WithdrawIntent2: - title: Generic claim unstake - allOf: - - $ref: '#/components/schemas/BaseStakeIntent2' - - type: object - properties: - intentType: - type: string - enum: - - claim - required: - - intentType - BaseStakeIntent2: - allOf: - - $ref: '#/components/schemas/BaseIntent2' - - type: object - properties: - stakingRequestId: - type: string - required: - - stakingRequestId - BaseIntent2: - type: object - properties: - intentType: - type: string - sequenceId: - type: string - description: | - A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because BitGo only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. It is the responsibility of the caller to keep track of this ID. - example: abc123 - comment: - type: string - description: The 'comment' is only visible to users on the wallet and is not shared publicly. - nonce: - type: string - description: The 'nonce' of a transaction (optional) - memo: - type: string - description: | - A 'memo' is an additional address feature necessary for identifying a transaction recipient beyond wallet address. - required: - - intentType - UnstakeIntent2: - title: Generic Unstake - allOf: - - $ref: '#/components/schemas/BaseStakeIntent2' - - type: object - properties: - intentType: - type: string - enum: - - unstake - required: - - intentType - Amount2: - type: object - properties: - value: - type: string - description: The value should be a valid number. - example: '100' - symbol: - type: string - description: The coin or token the value is referring to. - example: usdc - required: - - value - - symbol - TxAddress: - type: object - properties: - address: - type: string - options: - type: object - required: - - address - BaseIntent1: - title: Intent - type: object - properties: - intentType: - $ref: '#/components/schemas/IntentType1' - sequenceId: - $ref: '#/components/schemas/optionalString' - comment: - $ref: '#/components/schemas/optionalString' - nonce: - oneOf: - - type: string - - type: number - required: - - intentType - Amount1: - title: Amount - type: object - properties: - value: - type: string - symbol: - type: string - required: - - value - - symbol - StakeIntent2: - allOf: - - $ref: '#/components/schemas/BaseStakeIntent2' - - type: object - properties: - intentType: - type: string - enum: - - stake - required: - - intentType - ETHSignMessageIntent: - title: Eth sign message - allOf: - - $ref: '#/components/schemas/BaseIntent2' - - type: object - properties: - intentType: - type: string - enum: - - signMessage - required: - - intentType - PaymentIntent1: - title: PaymentIntent - allOf: - - type: object - properties: - intent: - type: string - enum: - - payment - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/Address1' - amount: - $ref: '#/components/schemas/Amount1' - data: - $ref: '#/components/schemas/optionalString' - required: - - address - - amount - required: - - intent - - recipients - - $ref: '#/components/schemas/BaseIntent1' - Address1: - title: Address - type: object - properties: - address: - $ref: '#/components/schemas/optionalString' - option: - $ref: '#/components/schemas/optionalUnknownObject' - DOTClaimIntent: - title: Dot Claim Unstake - allOf: - - $ref: '#/components/schemas/DOTBuildOptions' - - $ref: '#/components/schemas/WithdrawIntent2' - DOTBuildOptions: - allOf: - - $ref: '#/components/schemas/AccountBaseBuildOptions2' - - type: object - properties: - fee: - $ref: '#/components/schemas/DOTFeeOptions' - DOTFeeOptions: - type: object - properties: - amount: - type: string - unit: - type: string - enum: - - baseUnit - - cpu - - ram - formula: - type: string - enum: - - fixed - - feeRate - - perKB - - custom - type: - type: string - enum: - - base - - max - - tip - required: - - amount - AccountBaseBuildOptions2: - type: object - properties: - nonce: - type: string - CosmosContractCallIntent: - title: Cosmos Contract Call - allOf: - - $ref: '#/components/schemas/BaseIntent2' - - type: object - properties: - intentType: - type: string - enum: - - contractCall - contract: - type: string - description: The address of the contract to call. - msgHex: - type: string - description: The binary message data to send to the contract in hex format. - required: - - intentType - - contract - - msgHex - WalletTypePublic: - type: string - description: The type describes who owns the keys to the wallet and how they are stored. 'cold' wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. 'custodial' means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. 'custodialPaired' means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of 'hot' wallets. 'trading' wallets are trading accounts where the coin is 'ofc'. 'distributedCustody' means You manage one key and another key agent manages the second key. BitGo manages the third key - enum: - - cold - - custodial - - custodialPaired - - hot - - trading - - distributedCustody - PlatformTransactionRequestLite: - title: Lite - allOf: - - $ref: '#/components/schemas/PlatformTransactionRequestBase' - - type: object - properties: - unsignedTxs: - type: array - description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. - items: - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' - signatureShares: - type: array - description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. - items: - $ref: '#/components/schemas/PlatformSignatureShare' - commitmentShares: - type: array - description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. - items: - $ref: '#/components/schemas/PlatformCommitmentShare' - txHashes: - type: array - items: - type: string - description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - PendingApprovalTransactionRequest: - title: Transaction request (lite) - type: object - properties: - transactionRequest: - type: object - properties: - buildParams: - type: object - coinSpecific: - type: object - comment: - type: string - fee: - $ref: '#/components/schemas/IntegerOrString' - isUnsigned: - type: boolean - recipients: - type: array - items: - type: object - properties: - address: - $ref: '#/components/schemas/AddressString3' - amount: - $ref: '#/components/schemas/IntegerOrIntegerString' - data: - type: string - requestedAmount: - $ref: '#/components/schemas/IntegerOrIntegerString' - sourceWallet: - $ref: '#/components/schemas/Id' - triggeredPolicy: - $ref: '#/components/schemas/Id' - validTransaction: - type: string - validTransactionHash: - type: string - type: - type: string - enum: - - transactionRequest - IntegerOrIntegerString: - oneOf: - - type: string - pattern: ^-?\d+$ - example: '2000000' - - type: integer - IntegerOrString: - oneOf: - - type: string - example: '2000000' - - type: integer - ExpressResolvePendingApprovalRequest: - type: object - properties: - state: - type: string - description: New state for the pending approval - enum: - - approved - - rejected - walletPassphrase: - type: string - description: Passphrase to decrypt the user key on the wallet - xprv: - type: string - description: Private key in string form, if walletPassphrase is not available - otp: - $ref: '#/components/schemas/Otp' - Otp: - type: string - example: '123456' - description: Second factor authentication token - PlatformWallet: - type: object - properties: - admin: - type: object - properties: - policy: - $ref: '#/components/schemas/PlatformPolicy' - allowBackupKeySigning: - type: boolean - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - balanceString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: Total balance in base units (e.g. Satoshis) - buildDefaults: - $ref: '#/components/schemas/WalletBuildDefaults' - coin: - $ref: '#/components/schemas/Coin' - coinSpecific: - $ref: '#/components/schemas/WalletCoinSpecific' - custodialWallet: - type: object - description: The associated custodial wallet object - custodialWalletId: - $ref: '#/components/schemas/Id' - deleted: - type: boolean - disableTransactionNotifications: - type: boolean - enterprise: - $ref: '#/components/schemas/Id' - freeze: - type: object - properties: - time: - type: string - format: dateTime - expires: - type: string - format: dateTime - id: - $ref: '#/components/schemas/Id' - isCold: - type: boolean - keys: - $ref: '#/components/schemas/Keys' - label: - $ref: '#/components/schemas/WalletLabel' - m: - $ref: '#/components/schemas/NumSignatures' - 'n': - $ref: '#/components/schemas/NumKeychains' - nodeId: - $ref: '#/components/schemas/Id' - receiveAddress: - $ref: '#/components/schemas/Address2' - recoverable: - type: boolean - tags: - type: array - items: - $ref: '#/components/schemas/Id' - spendableBalanceString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: Spendable balance in base units (e.g. Satoshis) - unspentCount: - type: number - example: 100 - description: Number of unspent outputs present in the wallet - startDate: - allOf: - - $ref: '#/components/schemas/DateTime' - description: Wallet creation time - type: - $ref: '#/components/schemas/WalletTypePublic' - users: - type: array - items: - $ref: '#/components/schemas/WalletUser' - customChangeKeySignatures: - $ref: '#/components/schemas/CustomChangeKeySignatures' - multisigType: - $ref: '#/components/schemas/WalletMultisigType' - multisigTypeVersion: - $ref: '#/components/schemas/PlatformMultisigTypeVersion' - required: - - approvalsRequired - - coin - - deleted - - disableTransactionNotifications - - id - - label - PlatformMultisigTypeVersion: - type: string - enum: - - MPCv2 - WalletMultisigType: - type: string - enum: - - onchain - - tss - - blsdkg - CustomChangeKeySignatures: - type: object - properties: - user: - type: string - backup: - type: string - bitgo: - type: string - description: | - Signatures for the keys which will be used to derive custom change addresses. - - **Note:** These signatures may only be set once for each wallet and are not modifiable after being set. - WalletUser: - type: object - properties: - user: - $ref: '#/components/schemas/Id' - permissions: - type: array - items: - $ref: '#/components/schemas/WalletPermission' - example: - user: 55e8a1a5df8380e0e30e20c6 - permissions: - - admin - - view - - spend - WalletPermission: - type: string - description: | - Comma-separated list of privileges for a wallet. Includes: - - - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. - - 'freeze' - Can freeze a wallet, disabling all withdrawals. - - 'spend' - Can initiate withdrawals and generate new receive addresses. - - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). - - 'view' - Can view balances and transactions. - - Permissions don't overlap. Required parameter if 'reshare' is false. - enum: - - admin - - spend - - trade - - view - example: spend,view - IntegerString: - type: string - pattern: ^-?\d+$ - example: '2000000' - Address2: - type: object - properties: - id: - allOf: - - $ref: '#/components/schemas/Id' - description: platform public id for an address - address: - $ref: '#/components/schemas/AddressString3' - chain: - $ref: '#/components/schemas/Chain' - index: - type: integer - coin: - type: string - lastNonce: - type: integer - default: -1 - wallet: - allOf: - - $ref: '#/components/schemas/Id' - description: The wallet which contains this address - coinSpecific: - type: object - description: Properties which are specific to certain coin types - properties: - xlm: - $ref: '#/components/schemas/AddressCoinSpecificXlm' - txlm: - $ref: '#/components/schemas/AddressCoinSpecificXlm' - balance: - allOf: - - type: object - - $ref: '#/components/schemas/AddressBalance' - description: Balance of the address. In case of Eth and Celo, if returnBalancesForToken is passed with includeBalances, then it will return token balance in the address object. This field will be present only when 'includeBalances' query param is passed as true. - label: - $ref: '#/components/schemas/AddressLabel' - addressType: - $ref: '#/components/schemas/AddressType' - AddressType: - type: string - example: p2sh - enum: - - p2sh - - p2shP2wsh - - p2wsh - - p2tr - - p2trMusig2 - AddressBalance: - type: object - properties: - updated: - type: string - description: The last time a transaction affected the balance of this address - format: date-time - balance: - type: integer - description: The cleared balance of the address - example: 50000 - balanceString: - type: string - description: String representation of 'balance'. Guaranteed to not lose precision. - example: '50000' - totalReceived: - type: integer - description: The total amount received on this address (in the chain's base unit) - totalSent: - type: integer - description: The total amount send from this address (in the chain's base unit) - confirmedBalanceString: - type: string - description: | - The total balance of confirmed transactions for the address (in the chain's base unit). - Guaranteed to not lose precision. - example: '40000' - spendableBalanceString: - type: string - description: | - The total balance of the address (in the chain's base unit) which may - be used as inputs for creating new transactions in string representation. - Guaranteed to not lose precision. - example: '40000' - AddressCoinSpecificXlm: - type: object - properties: - memoId: - allOf: - - $ref: '#/components/schemas/IntegerString' - - example: '1' - description: Latest memo id generated for the wallet - rootAddress: - type: string - description: Root address of the wallet - example: GCTTCPH4IIDK7P72FFAEJ3ZFN6WDHJH6GGMRPHPM56ZWGIQ7B3XTIJAM - Chain: - type: integer - example: 1 - enum: - - 0 - - 1 - - 10 - - 11 - - 20 - - 21 - - 30 - - 31 - - 40 - - 41 - NumKeychains: - description: | - Number of keys provided. This value must be 3 for hot wallets, - 1 for **ofc** wallets, and not specified for custodial wallets. - type: integer - example: 3 - NumSignatures: - description: | - Number of signatures required. This value must be 2 for - hot wallets, 1 for **ofc** wallets, and not specified for custodial - wallets. - type: integer - example: 2 - Keys: - type: array - items: - $ref: '#/components/schemas/Id' - example: - - 585951a5df8380e0e304a553 - - 585951a5df8380e0e30d645c - - 585951a5df8380e0e30b6147 - WalletCoinSpecific: - oneOf: - - title: Wallet - type: object - properties: - creationFailure: - type: array - items: - $ref: '#/components/schemas/TxId' - description: Includes list of fail initialization txids - pendingChainInitialization: - type: boolean - description: Whether the wallet needs to be initialized on the chain - - $ref: '#/components/schemas/WalletCoinSpecificCosmos' - - $ref: '#/components/schemas/WalletCoinSpecificXlm' - WalletCoinSpecificXlm: - title: XLM - type: object - properties: - rootAddress: - type: string - description: Root address of the wallet - example: GCTTCPH4IIDK7P72FFAEJ3ZFN6WDHJH6GGMRPHPM56ZWGIQ7B3XTIJAM - stellarUsername: - type: string - description: Username for the user's Stellar address - example: foo_bar@baz.com - homeDomain: - type: string - description: Home domain of a Stellar account - example: bitgo.com - stellarAddress: - type: string - description: Email-like address associated to a Stellar account - example: foo_bar@baz.com*bitgo.com - WalletCoinSpecificCosmos: - title: ATOM - type: object - properties: - rootAddress: - type: string - description: Wallet address to send or receive assets. - example: cosmos1uvrgkp82dmeks368d7g2ejzm3axhapzveh5uek - lastChainIndex: - type: number - description: Index of last address that was derived. - example: 1 - lastMemoId: - type: string - description: A running counter of the last known memo id. The first one is 0. - example: '0' - pendingEcdsaTssInitialization: - type: boolean - description: If true, this wallet cannot sign transactions or messages as the enterprise has not finished MPC setup. - example: false - required: - - rootAddress - - lastMemoId - TxId: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - WalletBuildDefaults: - type: object - properties: - minFeeRate: - type: integer - minimum: 1000 - nullable: true - example: 12000 - description: | - (BTC only) The minimum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. Must be greater than or equal to the default of 1000 satoshis/kvByte. - - Note: The you can override 'minFeeRate' on a per transaction basis with the 'feeRate' parameter. - maxFeeRate: - type: integer - minimum: 1000 - nullable: true - example: 18000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The you can override 'maxFeeRate' on a per transaction basis with the 'feeRate' parameter. - feeMultiplier: - type: number - minimum: 1 - nullable: true - example: 1.2 - description: | - (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. - - Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. - changeAddressType: - $ref: '#/components/schemas/DefaultChangeAddressType' - txFormat: - type: string - example: psbt - enum: - - legacy - - psbt - - psbt-lite - description: | - (UTXO only) The default transaction format to use for this wallet. Per transaction, you can override the default with the 'txFormat' parameter. - DefaultChangeAddressType: - type: string - example: p2wsh - enum: - - p2sh - - p2shP2wsh - - p2wsh - - p2tr - - p2trMusig2 - - default - description: | - (UTXO only) The default script type to use for change for this wallet. Per transaction, you override the default with the 'changeAddressType' parameter. If 'default' is provided, it will clear the 'changeAddressType' default on the wallet. Note that each UTXO coin has different address types available. For example, Only BTC supports 'p2tr'. - PlatformPolicy: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - date: - type: string - format: date-time - label: - type: string - latest: - type: boolean - rules: - type: array - items: - $ref: '#/components/schemas/PlatformPolicyRule' - version: - type: integer - required: - - id - - latest - - rules - - version - PlatformPolicyRule: - type: object - properties: - id: - type: string - lockDate: - type: string - description: The time at which this rule becomes immutable - format: date-time - mutabilityConstraint: - $ref: '#/components/schemas/PlatformMutabilityConstraint' - coin: - $ref: '#/components/schemas/Coin' - type: - $ref: '#/components/schemas/PolicyRuleTriggers' - condition: - $ref: '#/components/schemas/PolicyRuleConditions' - action: - $ref: '#/components/schemas/PolicyRuleActions' - required: - - id - - lockDate - - type - - action - PolicyRuleConditions: - title: Type - description: Parameters for the type - oneOf: - - title: Velocity limit - type: object - properties: - amountString: - $ref: '#/components/schemas/IntegerString' - timeWindow: - type: integer - minimum: 0 - maximum: 2678400 - description: Time window in seconds for a velocity limit, between 1 and a month - - title: USD velocity limit - type: object - properties: - amountString: - $ref: '#/components/schemas/IntegerString' - timeWindow: - type: integer - minimum: 0 - maximum: 2678400 - description: Time window in seconds for a velocity limit, between 1 and 30 days - - title: Whitelist - type: object - properties: - addresses: - description: Addresses allowed/restricted for a whitelist/blacklist - type: array - items: - oneOf: - - type: string - - $ref: '#/components/schemas/Id' - - title: Advanced whitelist - type: object - properties: - entries: - description: Entries specifying which addresses/ wallets/ enterprises are on the whitelist - type: array - items: - $ref: '#/components/schemas/AdvancedListRuleEntry1' - - title: Webhook - type: object - properties: - url: - type: string - description: the url to query for the webhook - ListRuleEntryType: - type: string - enum: - - address - - walletId - - enterpriseId - description: the kind of resource a list rule entry refers to - PlatformMutabilityConstraint: - type: string - description: | - Specifies whether a BitGo admin can change 'lockDate' - * 'managed' - Not locked, but requires approval from a BitGo admin to change - * 'permanent' - 'lockDate' cannot be changed - * 'sticky' - Not included in bulk unlock, but 'lockDate' can be individually changed - enum: - - managed - - permanent - - sticky - UpdateWallet: - type: object - properties: - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - buildDefaults: - $ref: '#/components/schemas/WalletBuildDefaults' - disableTransactionNotifications: - type: boolean - label: - $ref: '#/components/schemas/WalletLabel' - customChangeKeySignatures: - $ref: '#/components/schemas/CustomChangeKeySignatures' - coinSpecific: - $ref: '#/components/schemas/WalletUpdateCoinSpecific' - WalletUpdateCoinSpecific: - type: object - properties: - eth: - $ref: '#/components/schemas/WalletUpdateCoinSpecificEth' - teth: - $ref: '#/components/schemas/WalletUpdateCoinSpecificEth' - WalletUpdateCoinSpecificEth: - type: object - properties: - deployForwardersManually: - type: boolean - flushForwardersManually: - type: boolean - PlatformUpdateWalletShareResponse: - type: object - properties: - state: - allOf: - - $ref: '#/components/schemas/PlatformWalletShareState' - description: New state of the wallet share after update - changed: - type: boolean - PlatformWalletShareState: - type: string - example: active - enum: - - pendingapproval - - active - - accepted - - canceled - - rejected - WalletShare: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - wallet: - $ref: '#/components/schemas/Id' - walletLabel: - $ref: '#/components/schemas/WalletLabel' - fromUser: - $ref: '#/components/schemas/Id' - toUser: - $ref: '#/components/schemas/Coin' - permission: - type: string - description: | - Comma-separated list of privileges for a wallet. Includes: - - - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. - - 'freeze' - Can freeze a wallet, disabling all withdrawals. - - 'spend' - Can initiate withdrawals and generate new receive addresses. - - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). - - 'view' - Can view balances and transactions. - - Permissions don't overlap. Required parameter if 'reshare' is false. - enum: - - admin - - spend - - trade - - view - example: spend,view - message: - type: string - description: User readable message to display to the share recipient - state: - $ref: '#/components/schemas/PlatformWalletShareState' - enterprise: - $ref: '#/components/schemas/Id' - pendingApprovalId: - allOf: - - $ref: '#/components/schemas/Id' - description: Only set if this wallet share is currently pending approval - keychain: - description: Only set if this wallet share has an associated keychain - type: object - properties: - pub: - description: Sharing user's root public key - type: string - encryptedPrv: - description: Sharing user's private key encrypted under their wallet passphrase - type: string - fromPubKey: - description: Sharing user's derived public key which will be used to calculate the wallet sharing secret. - type: string - toPubKey: - description: Shared-to user's derived public key which will be used to calculate the wallet sharing secret. - type: string - path: - description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) - example: m/1234/1/1 - type: string - required: - - id - - coin - - wallet - - walletLabel - - fromUser - - toUser - - permissions - - message - - state - - enterprise - PlatformEnterprise: - type: object - properties: - accountType: - $ref: '#/components/schemas/EnterpriseAccountType' - additionalEnterpriseInfo: - $ref: '#/components/schemas/PlatformAdditionalEnterpriseInfo' - admin: - type: object - properties: - policy: - $ref: '#/components/schemas/PlatformPolicy' - approvedVideoIdUsers: - type: array - items: - $ref: '#/components/schemas/Id' - description: IDs of users on the enterprise that are approved for custodial video ID - approvalsRequired: - type: integer - description: How many Enterprise Admins are required for action to fire - example: 1 - bitgoEthKey: - type: string - description: The public portion of the ethererum key generated for the enterprise fee address - bitgoOrg: - $ref: '#/components/schemas/PlatformBitgoOrg' - canAccessBorrowing: - type: boolean - description: whether the enterprise has the licence for BitGo Prime Borrowing - canAccessLending: - type: boolean - description: whether the enterprise has the licence for BitGo Prime Lending - canAccessSettlement: - type: boolean - description: whether the enterprise has the licence to utilize settlement functionality - canAccessTrading: - type: boolean - description: whether the enterprise has the licence to access BitGo Trading - canCreateColdWallet: - type: boolean - description: whether the enterprise has the license to create cold wallets - canCreateCustodialWallets: - type: boolean - description: whether the enterprise has the license to create custodial wallets - canCreateHotWallet: - type: boolean - description: whether the enterprise has the license to create hot wallets - contract: - $ref: '#/components/schemas/PlatformEnterpriseContract' - emergencyPhone: - $ref: '#/components/schemas/EmergencyPhone' - ethFeeAddress: - type: string - description: The eth fee address used to pay for network transaction fees of this enterprise - freeze: - $ref: '#/components/schemas/PlatformFreeze' - id: - $ref: '#/components/schemas/Id' - mutablePolicyWindow: - type: integer - description: Time in seconds after which policies on this Enterprise cannot be updated - example: 172800 - name: - type: string - example: Small Company - pricingTypes: - $ref: '#/components/schemas/EnterprisePricingTypes' - activePricingType: - $ref: '#/components/schemas/EnterpriseActivePricingType' - kits: - $ref: '#/components/schemas/EnterpriseKits' - activeKits: - $ref: '#/components/schemas/EnterpriseActiveKits' - primaryContact: - allOf: - - $ref: '#/components/schemas/Id' - description: The Id of the User who is the primary contact - preferredUi: - allOf: - - $ref: '#/components/schemas/EnterpriseAvailableUI' - description: The UI that this enterprise prefers to use - totalWalletsCount: - type: integer - description: The total number of wallets in the enterprise - example: 1 - usersViewAllWallets: - $ref: '#/components/schemas/ViewAllWallets' - videoIdWaived: - $ref: '#/components/schemas/VideoIdWaived' - required: - - id - VideoIdWaived: - example: true - description: Whether the customer has waived the need for Video ID on low risk withdrawals. - type: boolean - ViewAllWallets: - example: true - description: All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself - type: boolean - EnterpriseAvailableUI: - type: string - enum: - - bg23 - EnterpriseActiveKits: - type: array - items: - allOf: - - $ref: '#/components/schemas/AuditableItem' - - $ref: '#/components/schemas/EnterpriseKitName' - EnterpriseKitName: - type: object - properties: - name: - type: string - enum: - - default - - wallet - - custody - - liquidity - - cryptoCompare - AuditableItem: - type: object - properties: - id: - type: string - description: Unique identifier for the date range. - startDate: - type: string - description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the start date of a new auditable item. If not present, will use the current date to create a new auditable item. Start date is inclusive, i.e. we will start billing/functionality at this instant and afterwards. - startReason: - type: string - description: An optional note describing the reason the auditable item was added/created. - endDate: - type: string - description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the end date of a new auditable item. If not present, we will set the endDate to null, and we will assume an indefinite range. endDate is exclusive, i.e. we will end billing/functionality up to but not at this particular time. - endReason: - type: string - description: An optional note describing the reason the auditable item was ended. - EnterpriseKits: - type: array - items: - type: object - properties: - name: - $ref: '#/components/schemas/EnterpriseKitName' - datesActive: - type: array - items: - $ref: '#/components/schemas/AuditableItem' - EnterpriseActivePricingType: - allOf: - - $ref: '#/components/schemas/AuditableItem' - - $ref: '#/components/schemas/EnterprisePricingType' - EnterprisePricingType: - type: object - properties: - name: - type: string - enum: - - starter - - growth - EnterprisePricingTypes: - type: array - items: - type: object - properties: - name: - $ref: '#/components/schemas/EnterprisePricingType' - datesActive: - type: array - items: - $ref: '#/components/schemas/AuditableItem' - PlatformFreeze: - type: object - properties: - time: - type: string - format: date-time - description: When the freeze started - expires: - type: string - format: date-time - description: When the freeze will end - EmergencyPhone: - type: string - description: Phone number for emergencies - example: '+11234567890' - PlatformEnterpriseContract: - type: object - properties: - startDate: - type: string - description: The contract start date for an enterprise - endDate: - type: string - description: The contract end date for an enterprise - PlatformBitgoOrg: - type: string - description: BitGo Organization related to this entity - enum: - - BitGo Inc - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - Frankfurt DE Trust - - BitGo Sister Trust 1 - - BitGo Korea - - BitGo Singapore - - BitGo Europe ApS - - BitGo Mena Fze - - BitGo Custody MENA FZE - PlatformAdditionalEnterpriseInfo: - type: object - properties: - contact: - $ref: '#/components/schemas/PlatformGeographicAddress' - PlatformGeographicAddress: - type: object - properties: - name: - type: string - description: Legal name of the enterprise, not neccessarily the enterprise name - street: - type: string - description: Address line - street2: - type: string - nullable: true - description: Optional 2nd address line - suite: - type: string - description: Optional suite number - city: - type: string - description: City name - state: - type: string - description: State or region - postalCode: - type: string - description: Postcal code - country: - type: string - description: ISO 3166-1 Alpha-3 country code - example: - name: Jane Doe - street: '1' - street2: Wall Street - suite: '3' - city: New York - state: NY - postalCode: '10005' - country: USA - EnterpriseAccountType: - type: string - description: Indicates which type of KYC process the enterprise has to complete - enum: - - individual - - entity - V1PendingApproval: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - enterprise: - allOf: - - $ref: '#/components/schemas/Id' - description: The Id of the associated enterprise - walletId: - type: string - example: 1G47mSr3oANXMafVrR8UC4pzV7FEAzo3r9 - description: The base address of the associated wallet - creator: - allOf: - - $ref: '#/components/schemas/Id' - description: The Id of the User that created the Pending Approval - createDate: - type: string - format: date-time - info: - type: object - properties: - type: - type: string - enum: - - bitcoinAddressWhitelistRequest - - userChangeRequest - - policyRuleRequest - - dailyLimitPolicyRequest - - transactionRequest - - tagUpdateRequest - - updateEnterpriseRequest - - updateApprovalsRequiredRequest - updateEnterpriseRequest: - type: object - properties: - action: - type: string - enum: - - add - - remove - permissions: - type: array - items: - $ref: '#/components/schemas/EnterprisePermission' - userId: - allOf: - - $ref: '#/components/schemas/Id' - description: The Id of the User to be added to or removed from the Enterprise - email: - allOf: - - $ref: '#/components/schemas/Email' - description: E-Mail address of newly added users - updateApprovalsRequiredRequest: - type: object - properties: - requestedApprovalsRequired: - type: number - minimum: 1 - description: the number of approvalsRequired that should be changed to - state: - type: string - enum: - - pending - - approved - - rejected - walletUserIds: - type: array - items: - $ref: '#/components/schemas/Id' - description: an array of all the Users on the Wallet who need to see this Pending Approval - approvalsRequired: - type: number - minimum: 1 - resolvers: - type: array - items: - type: object - properties: - user: - type: string - date: - type: string - resolutionType: - type: string - enum: - - pending - - approved - - rejected - signatures: - type: array - items: - type: string - videoApprover: - type: string - videoLink: - type: string - videoException: - type: string - EnterprisePermission: - type: string - enum: - - admin - UpdateEnterprise: - type: object - properties: - legalIdentifiers: - $ref: '#/components/schemas/PlatformLegalIdentifiers' - approvalsRequired: - type: integer - minimum: 1 - description: How many Enterprise Admins are required for action to fire - distributedCustody: - $ref: '#/components/schemas/DistributedCustodyUpdateEnterprise' - usersViewAllWallets: - type: boolean - description: Allow users to view all wallets - DistributedCustodyUpdateEnterprise: - type: object - description: Parameters associated with distributed custody enterprises. If you want to remove 'signingBitgoOrg', set it to null. - properties: - signingBitgoOrg: - type: string - description: BitGo Organization related to this entity. Allowed values are BitGo Inc, BitGo Trust, BitGo New York, BitGo Germany, BitGo Switzerland, Frankfurt DE Trust, BitGo Sister Trust 1, BitGo Korea, BitGo Singapore, null - nullable: true - PlatformLegalIdentifiers: - type: object - properties: - legalPersonName: - type: string - description: Legal name of the Enterprise - required: - - legalPersonName - example: - legalPersonName: Pineapple Capital Inc - PlatformInvalidEnterpriseId: - title: Invalid enterprise ID - allOf: - - $ref: '#/components/schemas/PlatformInvalidId' - - properties: - name: - type: string - description: Error code - enum: - - InvalidEnterpriseId - required: - - name - DeleteEnterpriseUser: - type: object - properties: - username: - type: string - format: email - required: - - username - CreateTransactionRequest: - type: object - properties: - idempotencyKey: - type: string - description: The combination of the idempotencyKey, version and walletId has to be unique. If no idempotencyKey is specified then it remains undefined for the txRequest. Note, version is an internal field that is auto incremented on every update to a txRequest. - intent: - $ref: '#/components/schemas/TransactionRequestIntent' - videoApprovers: - allOf: - - $ref: '#/components/schemas/IdArray' - description: (Custodial) Specify who should perform the Video ID with Trust if one should be required. - apiVersion: - type: string - description: Full or Light to differentiate between the different transaction request flows. - enum: - - lite - - full - default: full - preview: - type: boolean - description: | - When set to true, the transaction request is returned without being stored in the DB. - default: false - required: - - intent - WalletId: - type: string - example: 59cd72485007a239fb00282ed480da1f - Session: - type: object - properties: - created: - type: string - format: date-time - expires: - type: string - format: date-time - id: - $ref: '#/components/schemas/Id' - ip: - allOf: - - $ref: '#/components/schemas/Ip' - description: IP address of the client that requested this access token - ipRestrict: - type: array - items: - type: string - format: ipv4 - description: IP addresses of clients that are allowed to use this token - origin: - type: string - example: test.bitgo.com - description: BitGo environment that issued this token - scope: - allOf: - - $ref: '#/components/schemas/Scope' - description: Session permissions - unlock: - allOf: - - $ref: '#/components/schemas/PlatformUnlock' - description: The Unlock object, returned if this session is currently unlocked. - user: - $ref: '#/components/schemas/Id' - required: - - created - - expires - - id - - origin - - scope - - user - PlatformUnlock: - type: object - properties: - time: - type: string - format: date-time - expires: - type: string - format: date-time - txCount: - type: integer - txValue: - type: integer - txValueLimit: - type: number - spendingLimits: - $ref: '#/components/schemas/SpendingLimits' - SpendingLimits: - type: object - additionalProperties: - type: object - properties: - txCount: - type: integer - txValue: - type: integer - txValueLimit: - type: number - example: - btc: - txCount: 1 - txValue: 0 - txValueLimit: 100000000 - eth: - txCount: 1 - txValue: 0 - txValueLimit: 50000000000 - Scope: - type: array - items: - type: string - example: - - crypto_compare - - user_manage - - openid - - profile - - wallet_create - - wallet_manage_all - - wallet_approve_all - - wallet_spend_all - - wallet_edit_all - - wallet_view_all - Ip: - type: string - format: ipv4 - example: 127.0.0.1 - DuplicateSequenceId: - title: Duplicate SequenceId - allOf: - - $ref: '#/components/schemas/PlatformPlatformError' - - properties: - name: - type: string - description: Error code - enum: - - DuplicateSequenceId - required: - - name - V1ErrorResponse: - title: V1ErrorResponse - type: object - properties: - errorName: - type: string - error: - type: string - required: - - errorName - - error - V1ListingEntryWithListingResponse: - title: V1ListingEntryWithListingResponse - allOf: - - type: object - properties: - listing: - $ref: '#/components/schemas/V1ListingResponse' - required: - - listing - - $ref: '#/components/schemas/V1ListingEntryResponse' - V1ListingEntryResponse: - title: V1ListingEntryResponse - type: object - properties: - id: - type: string - title: uuid - walletId: - type: string - minLength: 1 - coin: - type: string - minLength: 1 - type: - $ref: '#/components/schemas/EntryType' - description: - type: string - minLength: 1 - discoverable: - type: boolean - featured: - type: boolean - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - id - - walletId - - coin - - type - - discoverable - - featured - - createdAt - - updatedAt - V1ListingResponse: - title: V1ListingResponse - type: object - description: codec for listing http response - properties: - id: - type: string - title: uuid - name: - type: string - minLength: 1 - description: - type: string - minLength: 1 - editable: - type: boolean - description: True, if the name is editable. - required: - - id - - name - - editable - EntryType: - title: EntryType - type: string - enum: - - GO_ACCOUNT - description: codec for entry type - V1GlobalListingWithListingEntries: - title: V1GlobalListingWithListingEntries - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/V1GlobalListingResponse' - - $ref: '#/components/schemas/V1ListingEntryListResponse' - V1GlobalListingResponse: - title: V1GlobalListingResponse - type: object - description: codec for global listing http response - properties: - id: - type: string - title: uuid - enterpriseId: - type: string - minLength: 1 - description: - type: string - minLength: 1 - name: - type: string - minLength: 1 - owner: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - id - - enterpriseId - - name - - owner - - createdAt - - updatedAt - V1ListingEntryListResponse: - title: V1ListingEntryListResponse - type: object - description: codec for listing entry list http response - properties: - listingEntries: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - walletId: - type: string - minLength: 1 - coin: - type: string - minLength: 1 - type: - $ref: '#/components/schemas/EntryType' - description: - type: string - minLength: 1 - discoverable: - type: boolean - featured: - type: boolean - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - id - - walletId - - coin - - type - - discoverable - - featured - - createdAt - - updatedAt - required: - - listingEntries - V1ConnectionWithOwnerAndTargetListResponse: - title: V1ConnectionWithOwnerAndTargetListResponse - type: object - properties: - connections: - type: array - items: - allOf: - - type: object - properties: - ownerListingEntry: - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' - targetListingEntry: - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' - required: - - ownerListingEntry - - targetListingEntry - - $ref: '#/components/schemas/V1ConnectionResponse' - required: - - connections - V1ConnectionResponse: - title: V1ConnectionResponse - type: object - description: codec for connection http response - properties: - id: - type: string - title: uuid - type: - $ref: '#/components/schemas/ConnectionType' - status: - $ref: '#/components/schemas/ConnectionStatus' - label: - type: string - minLength: 1 - description: - type: string - minLength: 1 - createdBy: - type: string - minLength: 1 - updatedBy: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - id - - type - - status - - label - - createdBy - - updatedBy - - createdAt - - updatedAt - ConnectionType: - title: ConnectionType - type: string - enum: - - DVP - - WHITELIST - description: codec for valid connection statuses - ConnectionStatus: - title: ConnectionStatus - type: string - enum: - - PENDING_DEACTIVATION - - PENDING_ACTIVATION - - ACTIVE - - INACTIVE - description: codec for valid connection statuses - V1DirectoryListingEntryWithConnectionsListResponse: - title: V1DirectoryListingEntryWithConnectionsListResponse - type: object - properties: - listingEntries: - type: array - items: - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' - - $ref: '#/components/schemas/V1ConnectionWithOwnerAndTargetListResponse' - required: - - listingEntries - V1ListingEntryWithConnectionsListResponse: - title: V1ListingEntryWithConnectionsListResponse - type: object - properties: - listingEntries: - type: array - items: - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' - - $ref: '#/components/schemas/V1ConnectionWithOwnerListResponse' - required: - - listingEntries - V1ConnectionWithOwnerListResponse: - title: V1ConnectionWithOwnerListResponse - type: object - properties: - connections: - type: array - items: - allOf: - - type: object - properties: - ownerListingEntry: - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' - required: - - ownerListingEntry - - $ref: '#/components/schemas/V1ConnectionResponse' - required: - - connections - V1ListingUpdateResponse: - title: V1ListingUpdateResponse - type: object - properties: - id: - type: string - title: uuid - enterpriseId: - type: string - minLength: 1 - description: - type: string - minLength: 1 - name: - type: string - minLength: 1 - owner: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - globalListing: - type: object - description: codec for global listing http response - properties: - createdAt: - type: string - format: date-time - title: ISO Date String - description: - type: string - minLength: 1 - enterpriseId: - type: string - minLength: 1 - id: - type: string - title: uuid - name: - type: string - minLength: 1 - owner: - type: string - minLength: 1 - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - createdAt - - enterpriseId - - id - - name - - owner - - updatedAt - required: - - id - - name - - owner - - createdAt - - updatedAt - V1ConnectionListResponse: - title: V1ConnectionListResponse - type: object - description: codec for connection list http response - properties: - connections: - type: array - items: - type: object - description: codec for connection http response - properties: - id: - type: string - title: uuid - type: - $ref: '#/components/schemas/ConnectionType' - status: - $ref: '#/components/schemas/ConnectionStatus' - label: - type: string - minLength: 1 - description: - type: string - minLength: 1 - createdBy: - type: string - minLength: 1 - updatedBy: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - required: - - id - - type - - status - - label - - createdBy - - updatedBy - - createdAt - - updatedAt - required: - - connections - UpdatableConnectionStatus: - title: UpdatableConnectionStatus - type: string - enum: - - PENDING_DEACTIVATION - V1ErrorPayload: - title: V1ErrorPayload - type: object - properties: - error: - type: string - required: - - error - BNSupportedCurrency: - title: BNSupportedCurrency - type: string - V1SupportedCurrencies: - title: V1SupportedCurrencies - type: object - additionalProperties: - type: array - items: - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/BNMetadata' - BNMetadata: - title: BNMetadata - type: object - properties: - partnerNames: - type: array - items: - type: string - minLength: 1 - required: - - partnerNames - V1EnterpriseSupportedCurrenciesResponse: - title: V1EnterpriseSupportedCurrenciesResponse - type: object - properties: - supportedCurrencies: - $ref: '#/components/schemas/V1SupportedCurrencies' - domain: - type: string - minLength: 1 - required: - - supportedCurrencies - - domain - NonNegativeBigAmount: - title: NonNegativeBigAmount - type: string - SettlementTransferStatus: - title: SettlementTransferStatus - type: string - enum: - - pending - - pending_onchain - - onchain_initiated - - onchain_failed - - completed - - failed - - rejected - V1ClientGetSettlementTransfersOkPayload: - title: V1ClientGetSettlementTransfersOkPayload - type: object - properties: - settlementTransfers: - $ref: '#/components/schemas/MaskedV1SettlementTransfersOutput' - required: - - settlementTransfers - MaskedV1SettlementTransfersOutput: - title: MaskedV1SettlementTransfersOutput - type: array - items: - type: object - properties: - sourceTradingAccountId: - type: string - minLength: 1 - sourceNetworkAccountId: - type: string - title: uuid - destinationTradingAccountId: - type: string - minLength: 1 - destinationNetworkAccountId: - type: string - title: uuid - currency: - type: string - minLength: 1 - settlementId: - type: string - title: uuid - quantity: - $ref: '#/components/schemas/NonNegativeBigAmount' - txIds: - type: array - items: - type: string - minLength: 1 - status: - $ref: '#/components/schemas/SettlementTransferStatus' - usdValue: - nullable: true - oneOf: - - type: string - format: number - - type: number - id: - type: string - title: uuid - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - settlementStatus: - $ref: '#/components/schemas/SettlementStatuses' - settlementNotes: - type: string - minLength: 1 - sourceClientName: - type: string - minLength: 1 - destinationClientName: - type: string - minLength: 1 - sourceConnectionName: - type: string - minLength: 1 - destinationConnectionName: - type: string - minLength: 1 - required: - - currency - - settlementId - - quantity - - txIds - - status - - usdValue - - id - - createdAt - - updatedAt - - settlementStatus - SettlementStatuses: - title: SettlementStatuses - type: string - enum: - - failed - - completed - - pending - - rejected - V1PartnersOutput: - title: V1PartnersOutput - type: object - properties: - id: - type: string - title: uuid - enterpriseId: - type: string - minLength: 1 - trustOrg: - type: string - institutionId: - type: string - institutionIdentifier: - type: string - name: - type: string - minLength: 1 - connectionKeySchema: - $ref: '#/components/schemas/PartnerConnectionKeySchema' - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - clientId: - type: string - title: uuid - broker: - type: boolean - active: - type: boolean - settlementTransactionRouteId: - type: string - publicKey: - type: string - required: - - id - - enterpriseId - - trustOrg - - name - - connectionKeySchema - - createdAt - - updatedAt - - clientId - - broker - - active - PartnerConnectionKeySchema: - title: PartnerConnectionKeySchema - type: string - enum: - - token - - tokenAndSignature - - apiKeyAndSecret - - clearloop - V1PartnerIncompleteSettlementOrErrorPayload: - title: V1PartnerIncompleteSettlementOrErrorPayload - oneOf: - - $ref: '#/components/schemas/V1PartnerSettlementIncompletePayload' - - $ref: '#/components/schemas/V1ErrorPayload' - V1PartnerSettlementIncompletePayload: - title: V1PartnerSettlementIncompletePayload - type: object - properties: - settlement: - oneOf: - - $ref: '#/components/schemas/V1PendingSettlementOutput' - - $ref: '#/components/schemas/V1FailedSettlementOutput' - - $ref: '#/components/schemas/V1RejectedSettlementOutput' - required: - - settlement - V1PendingSettlementOutput: - title: V1PendingSettlementOutput - type: object - properties: - id: - type: string - title: uuid - partnerId: - type: string - title: uuid - externalId: - type: string - minLength: 1 - status: - type: string - enum: - - pending - settlementType: - $ref: '#/components/schemas/SettlementTypes' - reconciled: - type: boolean - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - rtId: - type: string - lossSLAAlertSent: - type: boolean - gainSLAAlertSent: - type: boolean - required: - - id - - partnerId - - externalId - - status - - settlementType - - reconciled - - initiatedBy - - createdAt - - updatedAt - - lossSLAAlertSent - - gainSLAAlertSent - V1FailedSettlementOutput: - title: V1FailedSettlementOutput - type: object - properties: - id: - type: string - title: uuid - partnerId: - type: string - title: uuid - externalId: - type: string - minLength: 1 - reason: - type: string - minLength: 1 - status: - type: string - enum: - - failed - settlementType: - $ref: '#/components/schemas/SettlementTypes' - reconciled: - type: boolean - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - rtId: - type: string - lossSLAAlertSent: - type: boolean - gainSLAAlertSent: - type: boolean - required: - - id - - partnerId - - externalId - - reason - - status - - settlementType - - reconciled - - initiatedBy - - createdAt - - updatedAt - - lossSLAAlertSent - - gainSLAAlertSent - V1RejectedSettlementOutput: - title: V1RejectedSettlementOutput - type: object - properties: - id: - type: string - title: uuid - partnerId: - type: string - title: uuid - externalId: - type: string - minLength: 1 - reason: - type: string - minLength: 1 - status: - type: string - enum: - - rejected - settlementType: - $ref: '#/components/schemas/SettlementTypes' - reconciled: - type: boolean - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - finalizedAt: - type: string - format: date-time - title: ISO Date String - rtId: - type: string - lossSLAAlertSent: - type: boolean - gainSLAAlertSent: - type: boolean - required: - - id - - partnerId - - externalId - - reason - - status - - settlementType - - reconciled - - initiatedBy - - createdAt - - updatedAt - - finalizedAt - - lossSLAAlertSent - - gainSLAAlertSent - SettlementTypes: - title: SettlementTypes - type: string - enum: - - onchain - - offchain - V1PartnerSettlementOkPayload: - title: V1PartnerSettlementOkPayload - type: object - properties: - settlement: - $ref: '#/components/schemas/V1CompleteSettlementOutput' - required: - - settlement - V1CompleteSettlementOutput: - title: V1CompleteSettlementOutput - type: object - properties: - id: - type: string - title: uuid - partnerId: - type: string - title: uuid - externalId: - type: string - minLength: 1 - status: - type: string - enum: - - completed - settlementType: - $ref: '#/components/schemas/SettlementTypes' - reconciled: - type: boolean - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - finalizedAt: - type: string - format: date-time - title: ISO Date String - rtId: - type: string - lossSLAAlertSent: - type: boolean - gainSLAAlertSent: - type: boolean - required: - - id - - partnerId - - externalId - - status - - settlementType - - reconciled - - initiatedBy - - createdAt - - updatedAt - - finalizedAt - - lossSLAAlertSent - - gainSLAAlertSent - SettlementAmountsRecord: - title: SettlementAmountsRecord - oneOf: - - $ref: '#/components/schemas/PartySettlementAmountsRecord' - - $ref: '#/components/schemas/CounterpartyPartySettlementAmountsRecord' - PartySettlementAmountsRecord: - title: PartySettlementAmountsRecord - type: object - additionalProperties: - type: object - additionalProperties: - type: string - description: Record> - description: Record> For exchange-style settlements, where the exchange is always the source and client owned connections are the destination. - CounterpartyPartySettlementAmountsRecord: - title: CounterpartyPartySettlementAmountsRecord - type: object - additionalProperties: - type: object - additionalProperties: - type: object - additionalProperties: - type: string - description: Record> - description: Record> For exchange-style settlements, where the exchange is always the source and client owned connections are the destination. - description: Record>> For broker-style settlements, where the source and destination are both client owned connections. - V1PendingSettlementPayload: - title: V1PendingSettlementPayload - type: object - properties: - settlement: - $ref: '#/components/schemas/V1PendingSettlementOutput' - required: - - settlement - V1SettlementPayload: - title: V1SettlementPayload - type: object - properties: - settlement: - $ref: '#/components/schemas/V1SettlementOutput' - required: - - settlement - V1SettlementOutput: - title: V1SettlementOutput - oneOf: - - $ref: '#/components/schemas/V1PendingSettlementOutput' - - $ref: '#/components/schemas/V1FailedSettlementOutput' - - $ref: '#/components/schemas/V1CompleteSettlementOutput' - - $ref: '#/components/schemas/V1RejectedSettlementOutput' - V1ListSettlementsOkPayload: - title: V1ListSettlementsOkPayload - type: object - properties: - settlements: - type: array - items: - oneOf: - - $ref: '#/components/schemas/V1PendingSettlementOutput' - - $ref: '#/components/schemas/V1FailedSettlementOutput' - - $ref: '#/components/schemas/V1CompleteSettlementOutput' - - $ref: '#/components/schemas/V1RejectedSettlementOutput' - required: - - settlements - V1GetSettlementOkPayload: - title: V1GetSettlementOkPayload - type: object - properties: - settlement: - $ref: '#/components/schemas/V1SettlementOutput' - settlementTransfers: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - currency: - type: string - minLength: 1 - settlementId: - type: string - title: uuid - quantity: - $ref: '#/components/schemas/NonNegativeBigAmount' - txIds: - type: array - items: - type: string - minLength: 1 - status: - $ref: '#/components/schemas/SettlementTransferStatus' - sourceTradingAccountId: - type: string - minLength: 1 - sourceNetworkAccountId: - type: string - title: uuid - destinationTradingAccountId: - type: string - minLength: 1 - destinationNetworkAccountId: - type: string - title: uuid - required: - - id - - createdAt - - updatedAt - - currency - - settlementId - - quantity - - txIds - - status - - sourceTradingAccountId - - destinationTradingAccountId - - destinationNetworkAccountId - required: - - settlement - - settlementTransfers - V1ClientGetSettlementOkPayload: - title: V1ClientGetSettlementOkPayload - type: object - properties: - settlement: - $ref: '#/components/schemas/V1SettlementOutput' - settlementTransfers: - $ref: '#/components/schemas/MaskedV1SettlementTransfersOutput' - required: - - settlement - - settlementTransfers - V1PartnersPostOkPayload: - title: V1PartnersPostOkPayload - type: object - properties: - partner: - $ref: '#/components/schemas/V1PartnersOutput' - required: - - partner - V1PartnersGetOkPayload: - title: V1PartnersGetOkPayload - type: object - properties: - partners: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - name: - type: string - minLength: 1 - institutionId: - type: string - institutionIdentifier: - type: string - connectionKeySchema: - $ref: '#/components/schemas/PartnerConnectionKeySchema' - active: - type: boolean - settlementTransactionRouteId: - type: string - publicKey: - type: string - enterpriseId: - type: string - stablePartner: - type: boolean - required: - - id - - name - - connectionKeySchema - - active - - stablePartner - required: - - partners - V1ExtDepositsPayload: - title: V1ExtDepositsPayload - type: object - properties: - deposits: - $ref: '#/components/schemas/ExtDepositsResp' - required: - - deposits - ExtDepositsResp: - title: ExtDepositsResp - type: array - items: - type: object - properties: - onChainTxId: - type: string - minLength: 1 - transferId: - type: string - currency: - type: string - minLength: 1 - quantity: - type: number - id: - type: string - title: uuid - settlementId: - type: string - title: uuid - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - externalSettlementId: - type: string - minLength: 1 - required: - - onChainTxId - - currency - - id - - settlementId - - createdAt - - updatedAt - - externalSettlementId - V1ReservedDeallocationOrErrorPayload: - title: V1ReservedDeallocationOrErrorPayload - oneOf: - - $ref: '#/components/schemas/V1ErrorPayload' - - $ref: '#/components/schemas/V1ReservedRetriableDeallocationOutput' - V1ReservedRetriableDeallocationOutput: - title: V1ReservedRetriableDeallocationOutput - type: object - properties: - deallocation: - $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' - required: - - deallocation - V1ReservedRetriableAllocationOutput: - title: V1ReservedRetriableAllocationOutput - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - enum: - - true - reason: - type: string - minLength: 1 - status: - type: string - enum: - - reserved - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - reason - - status - PositiveAllocationAmount: - title: PositiveAllocationAmount - oneOf: - - $ref: '#/components/schemas/PositiveCurrencyAmount' - - $ref: '#/components/schemas/PositiveBigNumberCurrencyAmount' - PositiveCurrencyAmount: - title: PositiveCurrencyAmount - type: object - properties: - currency: - type: string - minLength: 1 - quantity: - type: string - required: - - currency - - quantity - PositiveBigNumberCurrencyAmount: - title: PositiveBigNumberCurrencyAmount - type: object - properties: - currency: - type: string - minLength: 1 - quantity: - type: string - required: - - currency - - quantity - V1DeallocationReleasedWithErrorPostPayload: - title: V1DeallocationReleasedWithErrorPostPayload - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/V1DeallocationReleasedPayload' - - $ref: '#/components/schemas/V1ErrorPayload' - V1DeallocationReleasedPayload: - title: V1DeallocationReleasedPayload - type: object - properties: - deallocation: - $ref: '#/components/schemas/V1ReleasedAllocation' - required: - - deallocation - V1ReleasedAllocation: - title: V1ReleasedAllocation - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - enum: - - false - status: - type: string - enum: - - released - reason: - type: string - minLength: 1 - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - status - - reason - V1DeallocationClearedPostPayload: - title: V1DeallocationClearedPostPayload - type: object - properties: - deallocation: - $ref: '#/components/schemas/V1ClearedAllocation' - required: - - deallocation - V1ReservedDeallocationsPostPayload: - title: V1ReservedDeallocationsPostPayload - type: object - properties: - deallocation: - $ref: '#/components/schemas/V1ReservedAllocationOutput' - required: - - deallocation - V1ReservedAllocationOutput: - title: V1ReservedAllocationOutput - oneOf: - - $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' - - $ref: '#/components/schemas/V1ReservedNonRetriableAllocationOutput' - V1ReservedNonRetriableAllocationOutput: - title: V1ReservedNonRetriableAllocationOutput - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - enum: - - false - reason: - type: string - minLength: 1 - status: - type: string - enum: - - reserved - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - reason - - status - V1ClearedAllocation: - title: V1ClearedAllocation - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - enum: - - false - status: - type: string - enum: - - cleared - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - status - PositiveBNCurrencyAmount: - title: PositiveBNCurrencyAmount - type: object - properties: - currency: - $ref: '#/components/schemas/BNSupportedCurrency' - quantity: - type: string - required: - - currency - - quantity - V1ConnectionPayload: - title: V1ConnectionPayload - type: object - properties: - connection: - $ref: '#/components/schemas/V1ConnectionOutput' - required: - - connection - V1ConnectionOutput: - title: V1ConnectionOutput - type: object - properties: - id: - type: string - title: uuid - name: - type: string - minLength: 1 - clientId: - type: string - title: uuid - partnerId: - type: string - title: uuid - networkAccountId: - type: string - title: uuid - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - active: - type: boolean - proof: - type: string - minLength: 1 - nonce: - type: string - minLength: 1 - partnersConnectionId: - nullable: true - type: string - minLength: 1 - partnersClientId: - nullable: true - type: string - minLength: 1 - initialized: - type: boolean - required: - - id - - name - - clientId - - partnerId - - networkAccountId - - createdAt - - updatedAt - - active - - proof - - nonce - - partnersConnectionId - - partnersClientId - - initialized - ConnectionKey: - title: ConnectionKey - oneOf: - - $ref: '#/components/schemas/TokenConnectionKey' - - $ref: '#/components/schemas/TokenAndSignatureConnectionKey' - - $ref: '#/components/schemas/ApiKeyAndSecretConnectionKey' - - $ref: '#/components/schemas/ClearLoopConnectionKey' - TokenConnectionKey: - title: TokenConnectionKey - type: object - properties: - schema: - type: string - enum: - - token - connectionToken: - type: string - minLength: 1 - required: - - schema - - connectionToken - TokenAndSignatureConnectionKey: - title: TokenAndSignatureConnectionKey - type: object - properties: - schema: - type: string - enum: - - tokenAndSignature - connectionToken: - type: string - minLength: 1 - signature: - type: string - minLength: 1 - required: - - schema - - connectionToken - - signature - ApiKeyAndSecretConnectionKey: - title: ApiKeyAndSecretConnectionKey - type: object - properties: - schema: - type: string - enum: - - apiKeyAndSecret - apiKey: - type: string - minLength: 1 - apiSecret: - type: string - minLength: 1 - required: - - schema - - apiKey - - apiSecret - ClearLoopConnectionKey: - title: ClearLoopConnectionKey - type: object - properties: - schema: - type: string - enum: - - clearloop - apiKey: - type: string - minLength: 1 - apiSecret: - type: string - minLength: 1 - clientAccountId: - type: string - minLength: 1 - companyRegistrationNumber: - type: string - minLength: 1 - required: - - schema - - apiKey - - apiSecret - - clientAccountId - - companyRegistrationNumber - V1ConnectionsGetOkPayload: - title: V1ConnectionsGetOkPayload - type: object - properties: - connections: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - name: - type: string - minLength: 1 - clientId: - type: string - title: uuid - partnerId: - type: string - title: uuid - networkAccountId: - type: string - title: uuid - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - active: - type: boolean - proof: - type: string - minLength: 1 - nonce: - type: string - minLength: 1 - partnersConnectionId: - nullable: true - type: string - minLength: 1 - partnersClientId: - nullable: true - type: string - minLength: 1 - initialized: - type: boolean - required: - - id - - name - - clientId - - partnerId - - networkAccountId - - createdAt - - updatedAt - - active - - proof - - nonce - - partnersConnectionId - - partnersClientId - - initialized - required: - - connections - V1ClientsPostOkPayload: - title: V1ClientsPostOkPayload - type: object - properties: - client: - $ref: '#/components/schemas/V1ClientsOutput' - required: - - client - V1ClientsOutput: - title: V1ClientsOutput - type: object - properties: - id: - type: string - title: uuid - enterpriseId: - type: string - minLength: 1 - trustOrg: - type: string - walletId: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - balanceAlertLastSent: - type: string - required: - - id - - enterpriseId - - trustOrg - - walletId - - createdAt - - updatedAt - AccountBalanceRecord: - title: AccountBalanceRecord - type: object - additionalProperties: - type: object - properties: - available: - type: string - held: - type: string - required: - - available - - held - V1ClientBalancesGetPayload: - title: V1ClientBalancesGetPayload - type: object - properties: - clientId: - type: string - title: uuid - balances: - $ref: '#/components/schemas/AccountBalanceRecord' - networkBalances: - $ref: '#/components/schemas/NetworkAccountBalanceRecordForClient' - required: - - clientId - - balances - - networkBalances - NetworkAccountBalanceRecordForClient: - title: NetworkAccountBalanceRecordForClient - type: object - additionalProperties: - type: object - properties: - partnerId: - type: string - title: uuid - partnersConnectionId: - type: string - minLength: 1 - name: - type: string - minLength: 1 - balances: - $ref: '#/components/schemas/AccountBalanceRecord' - partnerInstitutionIdentifier: - type: string - minLength: 1 - required: - - partnerId - - partnersConnectionId - - name - - balances - V1PartnerBalancesGetPayload: - title: V1PartnerBalancesGetPayload - type: object - properties: - networkBalances: - $ref: '#/components/schemas/NetworkAccountBalanceRecordForPartner' - balances: - $ref: '#/components/schemas/AccountBalanceRecord' - required: - - networkBalances - NetworkAccountBalanceRecordForPartner: - title: NetworkAccountBalanceRecordForPartner - type: object - additionalProperties: - type: object - properties: - clientId: - type: string - title: uuid - partnerId: - type: string - title: uuid - partnersConnectionId: - type: string - minLength: 1 - balances: - $ref: '#/components/schemas/AccountBalanceRecord' - required: - - clientId - - partnerId - - partnersConnectionId - - balances - V1AllocationGetPayload: - title: V1AllocationGetPayload - type: object - properties: - allocation: - $ref: '#/components/schemas/V1AllocationGetOutput' - required: - - allocation - V1AllocationGetOutput: - title: V1AllocationGetOutput - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - reason: - nullable: true - type: string - minLength: 1 - status: - $ref: '#/components/schemas/AllocationStatus' - type: - $ref: '#/components/schemas/AllocationType' - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - reason - - status - - type - AllocationStatus: - title: AllocationStatus - type: string - enum: - - cleared - - released - - reserved - AllocationType: - title: AllocationType - type: string - enum: - - allocation - - deallocation - V1ReservedAllocationOrErrorPayload: - title: V1ReservedAllocationOrErrorPayload - oneOf: - - $ref: '#/components/schemas/V1ErrorPayload' - - $ref: '#/components/schemas/V1ReservedRetriableAllocationsPostPayload' - V1ReservedRetriableAllocationsPostPayload: - title: V1ReservedRetriableAllocationsPostPayload - type: object - properties: - allocation: - $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' - required: - - allocation - V1AllocationsReleasedWithErrorPostPayload: - title: V1AllocationsReleasedWithErrorPostPayload - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/V1AllocationsReleasedPayload' - - $ref: '#/components/schemas/V1ErrorPayload' - V1AllocationsReleasedPayload: - title: V1AllocationsReleasedPayload - type: object - properties: - allocation: - $ref: '#/components/schemas/V1ReleasedAllocation' - required: - - allocation - V1AllocationsClearedPostPayload: - title: V1AllocationsClearedPostPayload - type: object - properties: - allocation: - $ref: '#/components/schemas/V1ClearedAllocation' - required: - - allocation - V1ReservedNonRetriableAllocationsPostPayload: - title: V1ReservedNonRetriableAllocationsPostPayload - type: object - properties: - allocation: - $ref: '#/components/schemas/V1ReservedNonRetriableAllocationOutput' - required: - - allocation - V1AllocationsGetPayload: - title: V1AllocationsGetPayload - type: object - properties: - allocations: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - amount: - $ref: '#/components/schemas/PositiveAllocationAmount' - connectionId: - type: string - title: uuid - clientExternalId: - type: string - minLength: 1 - partnerExternalId: - type: string - minLength: 1 - initiatedBy: - type: string - minLength: 1 - notes: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - retriable: - type: boolean - reason: - nullable: true - type: string - minLength: 1 - status: - $ref: '#/components/schemas/AllocationStatus' - type: - $ref: '#/components/schemas/AllocationType' - required: - - id - - amount - - connectionId - - clientExternalId - - initiatedBy - - createdAt - - updatedAt - - retriable - - reason - - status - - type - required: - - allocations - HistoricalPrice: - type: object - required: - - time - - open - - high - - low - - close - - base_volume - - quote_volume - properties: - time: - type: string - format: date-time - open: - type: number - format: float - high: - type: number - format: float - low: - type: number - format: float - close: - type: number - format: float - base_volume: - type: number - format: float - quote_volume: - type: number - format: float - example: - time: '2014-11-07T22:19:28.578Z' - open: 576.0590066 - high: 576.0590066 - low: 575.8330204 - close: 575.978887 - base_volume: 296.23 - quote_volume: 170627.62385 - HistoricalPriceResult: - type: object - required: - - data - properties: - data: - type: object - required: - - prices - - nextBatchPrevId - properties: - prices: - type: object - additionalProperties: - type: array - items: - $ref: '#/components/schemas/HistoricalPrice' - nextBatchPrevId: - type: string - example: - data: - prices: - BTC-USD: - - time: '2014-11-07T22:19:28.578Z' - open: 576.0590066 - high: 576.0590066 - low: 575.8330204 - close: 575.978887 - base_volume: 296.23 - quote_volume: 170627.62385 - nextBatchPrevId: a0dbb6aad06d9a37c9882231d8dc32ef - MarketDataError: - type: object - description: Market Data Error - properties: - error: - type: string - errorName: - type: string - required: - - error - - errorName - example: - errorName: backend:common:invalidArgument - error: backend:common:invalidArgument key=instrument - BlockHash: - type: string - example: 0000000000000296ed56abee6cb78e40b00c47a03d92e71dd92c4862ca636b95 - IdentityOccupation: - title: IdentityOccupation - type: string - enum: - - Agriculture - - Art Dealer / Auctioneer / Import / Export Company - - Financial Services (Asset Mgmt., Bank, Broker Dealer, Commodities, Mutual Fund, Ins. Co) - - Casinos and Gambling Establishments - - Charity/NGO/Non-Profit/Foundation/Endowment - - Computer Programmer / Administrator / Software Engineer / IT or Software / Technology Company - - Crypto Services (ATM, Exchange, Lender, Coins/Token) - - Education / Teacher - - Extractive Industry (Oil, Gas, etc.) / Jewels / Gemstones / Precious Metals - - Family Office - - Film / TV / Entertainment (not adult) - - Government/State owned/Political Org. (i.e. Sovereign Wealth Fund) - - Healthcare - - Law Enforcement / Military / Protective Services - - Miner / Mining Pool - - Money Service Business - - Other - - Private Equity / Venture Capital - - Professional Service Providers (lawyers accountants etc.) - - Real estate brokers developers and appraisers - - Recreation / Hospitality - - Student / Unemployed / Retired - - Traders / Trading (High Frequency, Proprietary, Market Maker) - - Other - Default - - Weapons Dealers - PersonaIdClass: - title: PersonaIdClass - type: string - enum: - - cct - - cid - - dl - - foid - - hic - - id - - ipp - - keyp - - ltpass - - munid - - myn - - nbi - - nric - - ofw - - rp - - pan - - pid - - pp - - ppc - - pr - - sss - - td - - tribalid - - umid - - vid - - visa - - wp - PlatformError2: - title: PlatformError - allOf: - - type: object - properties: - name: - type: string - context: - type: object - additionalProperties: {} - status: - type: number - additionalDetails: - type: object - properties: - retryAfter: - type: number - required: - - retryAfter - required: - - context - - $ref: '#/components/schemas/PlatformErrorNoName2' - PlatformErrorNoName2: - title: PlatformErrorNoName - type: object - properties: - error: - type: string - requestId: - type: string - required: - - error - - requestId - PutIdentityDocumentUpdateResponse: - title: PutIdentityDocumentUpdateResponse - type: object - properties: - id: - type: string - title: uuid - status: - type: string - minLength: 1 - selectedIdClass: - $ref: '#/components/schemas/PersonaIdClass' - required: - - id - - status - - selectedIdClass - IdentityDocumentType: - title: IdentityDocumentType - type: string - enum: - - frontPhoto - - backPhoto - - proofOfResidency - IdentityDocumentGetResponse: - title: IdentityDocumentGetResponse - type: object - properties: - documents: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - identityId: - type: string - title: uuid - status: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - fileUploads: - type: array - items: - type: object - properties: - fileName: - type: string - minLength: 1 - fileSize: - type: number - uploadStatus: - type: string - minLength: 1 - documentType: - $ref: '#/components/schemas/IdentityDocumentType' - required: - - fileName - - fileSize - - uploadStatus - - documentType - selectedIdClass: - $ref: '#/components/schemas/PersonaIdClass' - required: - - id - - identityId - - status - - createdAt - - updatedAt - required: - - documents - PostIdentityDocumentCreateResponse: - title: PostIdentityDocumentCreateResponse - type: object - properties: - id: - type: string - title: uuid - status: - type: string - minLength: 1 - selectedIdClass: - $ref: '#/components/schemas/PersonaIdClass' - fileUploads: - type: array - items: - type: object - properties: - fileName: - type: string - minLength: 1 - fileSize: - type: number - uploadStatus: - type: string - minLength: 1 - documentType: - $ref: '#/components/schemas/IdentityDocumentType' - required: - - fileName - - fileSize - - uploadStatus - - documentType - required: - - id - - status - - selectedIdClass - - fileUploads - IdentityUpdateResponse: - title: IdentityUpdateResponse - type: object - properties: - id: - type: string - title: uuid - status: - type: string - minLength: 1 - organizationId: - type: string - minLength: 1 - enterpriseId: - type: string - minLength: 1 - userId: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - errorDescription: - type: string - minLength: 1 - signaturesSubmitted: - $ref: '#/components/schemas/ContractTypes' - signaturesRequired: - $ref: '#/components/schemas/ContractTypes' - required: - - id - - status - - organizationId - ContractTypes: - title: ContractTypes - type: array - items: - type: string - enum: - - csa - - mpa - - mic - - wvr - ESignatures: - title: ESignatures - type: array - items: - type: object - properties: - contractSignerNameFull: - type: string - minLength: 1 - contractSignedDate: - type: string - format: date-time - title: ISO Date String - contractSignedIPAddress: - type: string - minLength: 1 - contractType: - $ref: '#/components/schemas/ContractType' - contractVersion: - type: string - minLength: 1 - userAgreesToTerms: - type: boolean - required: - - contractSignerNameFull - - contractSignedDate - - contractSignedIPAddress - - contractType - - contractVersion - - userAgreesToTerms - ContractType: - title: ContractType - type: string - enum: - - csa - - mpa - - mic - - wvr - IdentityGetResponse: - title: IdentityGetResponse - type: object - properties: - identities: - type: array - items: - type: object - properties: - id: - type: string - title: uuid - status: - type: string - minLength: 1 - organizationId: - type: string - minLength: 1 - enterpriseId: - type: string - minLength: 1 - userId: - type: string - minLength: 1 - createdAt: - type: string - format: date-time - title: ISO Date String - updatedAt: - type: string - format: date-time - title: ISO Date String - errorDescription: - type: string - minLength: 1 - occupation: - type: string - countryOfCitizenship: - type: string - govIdCountryOfIssuance: - type: string - politicallyExposedPerson: - type: boolean - debugStatus: - type: string - country: - type: string - countryOfResidence: - type: string - addressCity: - type: string - addressPostalCode: - type: string - addressStreet1: - type: string - addressStreet2: - type: string - addressSubdivision: - type: string - birthDate: - type: string - format: date-time - title: ISO Date String - identificationNumber: - type: string - nameFirst: - type: string - nameLast: - type: string - nameMiddle: - type: string - phoneNumber: - type: string - selectedIdClass: - type: string - debugFailureReason: - type: string - emailAddress: - type: string - contractSignerNameFull: - type: string - contractSignedDate: - type: string - format: date-time - title: ISO Date String - contractSignedIPAddress: - type: string - contractVersion: - type: string - userAgreesToTerms: - type: string - signatureSubmitted: - type: string - signaturesSubmitted: - type: array - items: - type: string - enum: - - csa - - mpa - - mic - - wvr - signaturesRequired: - type: array - items: - type: string - enum: - - csa - - mpa - - mic - - wvr - required: - - id - - status - - organizationId - required: - - identities - IdentityCreateResponse: - title: IdentityCreateResponse - type: object - properties: - id: - type: string - title: uuid - status: - type: string - minLength: 1 - required: - - id - - status - AdaStakeIntent1: - title: Ada Stake - allOf: - - $ref: '#/components/schemas/StakeIntent2' - - type: object - properties: - poolKeyHash: - type: string - description: | - The pool key hash to which the coins will be delegated to. - required: - - poolKeyHash - AddressString3: - title: Address - type: string - example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS - maxLength: 250 - AdvancedListRuleEntry1: - title: Advanced whitelist rule entry - type: object - properties: - item: - allOf: - - oneOf: - - $ref: '#/components/schemas/AddressString3' - - $ref: '#/components/schemas/Id' - description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. - metaData: - type: object - description: Any data about this entry that is not used to determine when to enforce the policy - properties: - label: - type: string - description: A client-specified label for this entry. Label must be unique or not set. - owner: - type: string - description: The legal owner of the address/ wallet/ enterprise - example: Legal Owner LLC - address: - type: string - description: The address of the receiver wallet if the whitelist is of type 'walletId'. - additionalProperties: true - type: - $ref: '#/components/schemas/ListRuleEntryType' - required: - - item - - type - AnnotatedTransfer: - allOf: - - $ref: '#/components/schemas/Transfer' - - type: object - properties: - confirmations: - type: integer - description: The number of blocks that have been confirmed since this Transfer's block was confirmed - entries: - type: array - items: - type: object - properties: - label: - type: string - description: If this address was labeled by the user, this is the label - AnnotatedTransferWithInputsOutputs: - allOf: - - $ref: '#/components/schemas/AnnotatedTransfer' - - type: object - properties: - inputs: - type: array - description: If this is a Transfer on a UTXO coin, the array of inputs - items: - $ref: '#/components/schemas/Unspent' - outputs: - type: array - description: If this is a Transfer on a UTXO coin, the array of outputs - items: - $ref: '#/components/schemas/Unspent' - PlatformError3: - title: API error - allOf: - - $ref: '#/components/schemas/PlatformErrorNoName3' - - properties: - context: - type: object - description: Properties that apply to a specific error name - name: - type: string - description: Error code - required: - - name - PlatformErrorNoName3: - type: object - properties: - error: - type: string - description: Human-readable error message - requestId: - type: string - description: Client request id - required: - - error - - requestId - AverageFee: - type: object - properties: - averageFee: - type: number - description: Calculated by summing the fees of the blocks over the number of blocks. - example: 16000000 - required: - - averageFee - BackupKeyType: - type: string - description: Coin name used to choose correct KRS public key for the given provider. Possible valid values are "btc", "eth", "bitcoin" - example: eth - BalanceReserve: - type: object - properties: - baseFee: - type: string - description: base fee used in transaction fees - example: '100' - baseReserve: - type: string - description: base reserve used in minimum account balances - example: '5000000' - reserve: - type: string - description: minimum account balance, calculated using base reserve - example: '25000000' - minimumFunding: - type: string - description: minimum funding balance, calculated using reserve and base fee - example: '25000500' - height: - type: integer - description: the height of the block that provides the base values - example: 11228504 - BalanceStaked: - type: array - items: - type: object - properties: - address: - allOf: - - type: string - - $ref: '#/components/schemas/AddressString3' - description: the address of the wallet - balances: - type: array - items: - type: object - description: an object containing of validators and the current staked amount - properties: - validator: - allOf: - - type: string - - $ref: '#/components/schemas/AddressString3' - description: the validator - staked_amount: - type: string - description: the amount delegated to the validator - example: '5000000000' - BalanceTotalRewards: - type: array - items: - type: object - properties: - address: - allOf: - - type: string - - $ref: '#/components/schemas/AddressString3' - description: the address of the wallet - rewards: - type: array - items: - type: object - description: an object containing the reward recipient address and the total rewards received - properties: - reward_recipient: - allOf: - - type: string - - $ref: '#/components/schemas/AddressString3' - description: the receiving address - reward_amount: - type: string - description: the total rewards received - example: '5000000000' - BankAccountCurrency: - title: BankAccountCurrency - description: | - The currency of the bank account. If null, defaults to 'fiatusd'. - type: string - nullable: true - enum: - - fiatusd - - fiateur - - null - example: fiatusd - BankAccountFee: - type: object - description: | - A fee that's associated with a bank account. - properties: - feeInfo: - type: object - properties: - bank: - type: string - enum: - - customers_sftp - - customers_api - - bcbgroup - description: | - The bank that the fee is associated with. - type: - type: string - enum: - - static - - variable - description: | - The type of fee. - amount: - type: string - description: | - The fee amount. - coin: - $ref: '#/components/schemas/BankAccountCurrency' - BankAccountId: - title: ID - type: string - pattern: ^[0-9a-f]{32}$ OR UUID - example: 59cd72485007a239fb00282ed480da1f - BankAccountIdHash: - type: string - example: 5c645791cf8eb19304292a8e3365fee3 - description: | - Unique identifier for this account, derived from 'accountNumber', - 'routingNumber', and 'swiftCode' - BankAccountPendingActivity: - type: string - enum: - - trust - BankAccountRequest: - anyOf: - - $ref: '#/components/schemas/DomesticWireBankAccount' - - $ref: '#/components/schemas/InternationalWireBankAccount' - - $ref: '#/components/schemas/CBITBankAccount' - BankAccountResponse: - type: object - description: | - An external bank account. 'routingNumber' must be set for US bank accounts. - 'swiftCode' must be set for banks outside the US. - properties: - accountNumber: - description: Bank account number or IBAN. - type: string - minLength: 1 - maxLength: 34 - example: 114584906 - enterpriseId: - $ref: '#/components/schemas/Id' - address: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - address1: - type: string - example: 2390 El Camino Real - address2: - type: string - example: Palo Alto, CA 94306 - address3: - type: string - example: '' - id: - $ref: '#/components/schemas/Id' - name: - type: string - example: America California Bank - ownerName: - type: string - example: Donald E. Knuth - ownerAddress: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - owner: - type: object - description: Bank account owner - properties: - name: - type: string - example: Donald E. Knuth - address1: - type: string - example: Computer Science Department - address2: - type: string - example: Stanford University - address3: - type: string - example: Stanford, CA 94305-9045 - required: - - name - - address1 - routingNumber: - description: US bank routing number - type: string - example: '129131673' - minLength: 9 - maxLength: 9 - pattern: ^[0-9]+$ - shortCountryCode: - $ref: '#/components/schemas/ShortCountryCode' - swiftCode: - description: Bank identifier code, as specified by ISO 9362. Used by banks outside the US. - type: string - example: DEUTDEFF500 - minLength: 8 - maxLength: 11 - pattern: ^[A-Z]{6}[0-9A-Z]{2}([0-9A-Z]{3})?$ - type: - $ref: '#/components/schemas/BankAccountType' - currency: - $ref: '#/components/schemas/BankAccountCurrency' - externalId: - type: string - example: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 - furtherCreditTo: - type: string - example: Donald E. Knuth - intermediaryBankName: - type: string - example: America California Bank - intermediaryBankId: - type: string - example: 59cd72485007a239fb00282ed480da1f - idHash: - $ref: '#/components/schemas/BankAccountIdHash' - trustOrg: - $ref: '#/components/schemas/BitgoOrg1' - token: - type: string - example: fiat - verificationState: - $ref: '#/components/schemas/BankAccountVerificationState' - pendingActivity: - $ref: '#/components/schemas/BankAccountPendingActivity' - fee: - $ref: '#/components/schemas/BankAccountFee' - BankAccountType: - title: BankAccountType - description: | - The type of bank account. If null, defaults 'wire'. - type: string - nullable: true - enum: - - wire - - cbit - - null - example: wire - BankAccountVerificationState: - type: string - enum: - - pending - - approved - - rejected - - removed - Bitcoin: - type: string - enum: - - btc - - tbtc4 - description: This route is only available for Bitcoin. - BitgoOrg1: - type: string - description: BitGo Organization related to this entity - enum: - - BitGo Inc - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - Frankfurt DE Trust - - BitGo Sister Trust 1 - - BitGo Korea - - BitGo Singapore - - BitGo Europe ApS - - BitGo Mena Fze - - BitGo Custody MENA FZE - BuildParams: - type: object - properties: - type: - type: string - description: | - Required for transactions from MPC wallets. "acceleration" speeds up transactions with a certain nonce by adjusting the gas setting. "accountSet" is for XRP AccountSet transactions. "enabletoken" is for SOL. "stakingLock" and "stakingUnlock" are for Stacks delegations. "transfer" is for native-asset transfers. "trustline" is for Stellar trustline transactions. Possible types include: [acceleration, accountSet, enabletoken, stakingLock, stakingUnlock, transfer, transfertoken, trustline] - - For AVAX, possible types include: 'addValidator', 'export', and 'import'. - - For XRP, possible types include: 'payment' and 'accountSet'. The default is 'payment'. - - For STX, type is required. - numBlocks: - type: integer - description: | - (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. - - Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. - minimum: 2 - maximum: 1000 - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - maxFeeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - example: 20000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The 'feeRate' overrides the 'maxFeeRate'. - feeMultiplier: - allOf: - - $ref: '#/components/schemas/NumberOrString' - - example: 1.5 - description: | - (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. - - Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. - minConfirms: - type: integer - description: | - The unspent selection for the transaction will only consider unspents with at least this many confirmations to be used as inputs. Does not apply to change outputs unless used in combination with 'enforceMinConfirmsForChange'. - enforceMinConfirmsForChange: - type: boolean - description: When set to true, will enforce minConfirms for change outputs. Defaults to false. - default: false - gasPrice: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Custom gas price to be used for sending the transaction. Only for ETH and ERC20 tokens. - eip1559: - properties: - maxPriorityFeePerGas: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - maximum: 100000000000 - description: Max priority tip price for EIP1559 transactions. Only for ETH and ERC20 tokens. - maxFeePerGas: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Max total gasPrice for EIP1559 transactions. Only for ETH and ERC20 tokens. - gasLimit: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Custom gas limit to be used for sending the transaction. Only for ETH and ERC20 tokens. - targetWalletUnspents: - type: integer - description: | - Specifies the minimum count of good-sized unspents to maintain in the wallet. Change splitting ceases when the - wallet has 'targetWalletUnspents' good-sized unspents. - - **Note**: Wallets that continuously send a high count of transactions will automatically split large change amounts - into multiple good-sized change outputs while they have fewer than 'targetWalletUnspents' good-sized unspents in - their unspent pool. Breaking up large unspents helps to reduce the amount of unconfirmed funds in flight in future - transactions, and helps to avoid long chains of unconfirmed transactions. This is especially useful for newly - funded wallets or recently refilled send-only wallets. - default: 1000 - minValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Ignore unspents smaller than this amount of base units (e.g. satoshis). For doge, only string is allowed. - maxValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Ignore unspents larger than this amount of base units (e.g. satoshis). For doge, only string is allowed. - sequenceId: - type: string - description: | - A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. - nonce: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: | - (DOT only) A nonce ID is a number used to protect private communications by preventing replay attacks. - This is an advanced option where users can manually input a new nonce value - in order to correct or fill in a missing nonce ID value. - noSplitChange: - type: boolean - description: | - Set 'true' to disable automatic change splitting. - - Also see: 'targetWalletUnspents' - default: false - unspents: - type: array - items: - example: 12b147dd8b4f73c01f72bdbf5b589eea614f3de609ffdbdac84852d6505cf8a3:1 - type: string - description: | - Used to explicitly specify the unspents to be used in the input set in the transaction. Each unspent should be in the form 'prevTxId:nOutput'. - changeAddress: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: Specifies a custom destination address for the transaction's change output(s) - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - instant: - type: boolean - description: (DASH only) Specifies whether or not to use Dash's "InstantSend" feature when sending a transaction. - memo: - type: object - properties: - type: - type: string - value: - type: string - description: | - Memo for Stellar or EOS. Type is only required for memos in Stellar transactions. The memo contains optional extra information that can also be used to identify payments in Stellar or EOS. - comment: - type: string - description: | - Optional metadata (only persisted in BitGo) to be applied to the transaction. Use this to add transaction-specific information such as the transaction's purpose or another identifier that you want to reference later. The value is shown in the UI in the transfer listing page. - maxLength: 256 - destinationChain: - type: string - description: (AVAXC and AVAXP only) Destination chain for an AVAX import/export transaction. One of [P, C]. - sourceChain: - type: string - description: (AVAXC and AVAXP only) Source chain for an AVAX import/export transaction. One of [P, C]. - addressType: - type: string - deprecated: true - description: |- - DEPRECATED - use 'changeAddressType'. - The type of address to create for change. One of 'p2sh', 'p2shP2wsh', 'p2wsh', or 'p2tr'. - changeAddressType: - anyOf: - - $ref: '#/components/schemas/AddressType' - - $ref: '#/components/schemas/ChangeAddressTypes' - description: The address type for the change address. One of 'p2sh', 'p2shP2wsh', 'p2wsh', 'p2tr' or 'p2trMusig2'. - startTime: - type: string - description: Unix timestamp in seconds.nanoseconds format, denoting the start of the validity window. Only for HBAR transactions. - example: 1714067129.1020603 - consolidateId: - allOf: - - $ref: '#/components/schemas/Id' - description: (ALGO/TEZOS only) Consolidation ID of this consolidation transaction. - lastLedgerSequence: - type: integer - description: (XRP only) Absolute max ledger the transaction should be accepted in, whereafter it will be rejected - ledgerSequenceDelta: - type: integer - description: (XRP only) Relative ledger height (in relation to the current ledger) that the transaction should be accepted in, whereafter it will be rejected - rbfTxIds: - type: array - items: - type: string - description: The list of transactions to accelerate using Replace-By-Fee (RBF) for UTXO coins (currently accelerating only one tx is supported). - isReplaceableByFee: - type: boolean - description: It is used to mark an UTXO transaction eligible for Replace-By-Fee (RBF) later. - validFromBlock: - type: integer - description: Optional block this transaction is valid from - validToBlock: - type: integer - description: Optional block this transaction is valid until - trustlines: - type: array - items: - $ref: '#/components/schemas/Trustline' - description: List of trustlines to manage on the account. Available for Stellar. - stakingOptions: - anyOf: - - $ref: '#/components/schemas/CSPRStakingOptions' - - $ref: '#/components/schemas/STXStakingOptions' - description: Required object for staking. Only for CSPR and STX. - messageKey: - type: string - description: Optional parameter that takes a hexadecimal value to set 'messagekey' for an XRP 'accountSet' transaction. Recipients field should be empty when 'messageKey' is set. - reservation: - type: object - properties: - expireTime: - type: string - format: date-time - description: Required. The time that the unspent reservations should expire. - description: Optional parameter for UTXO coins to automatically reserve the unspents that are used in the build. Useful for Cold wallets. If using, must set expireTime. - CBITBankAccount: - title: CBIT Bank Account - type: object - description: | - An external bank account. 'routingNumber' must be set for US bank accounts. - 'swiftCode' must be set for banks outside the US. - properties: - accountNumber: - description: Bank account number or IBAN. - type: string - minLength: 1 - maxLength: 34 - example: 114584906 - enterpriseId: - $ref: '#/components/schemas/Id' - address: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - address1: - type: string - example: 2390 El Camino Real - address2: - type: string - example: Palo Alto, CA 94306 - address3: - type: string - example: '' - name: - type: string - example: America California Bank - ownerName: - type: string - example: Donald E. Knuth - ownerAddress: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - owner: - type: object - description: Bank account owner - properties: - name: - type: string - example: Donald E. Knuth - address1: - type: string - example: Computer Science Department - address2: - type: string - example: Stanford University - address3: - type: string - example: Stanford, CA 94305-9045 - required: - - name - - address1 - externalId: - description: Required for CBIT transfers. - type: string - example: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 - shortCountryCode: - $ref: '#/components/schemas/ShortCountryCode' - type: - $ref: '#/components/schemas/BankAccountType' - currency: - $ref: '#/components/schemas/BankAccountCurrency' - furtherCreditTo: - type: string - example: Donald E. Knuth - intermediaryBankName: - type: string - example: America California Bank - intermediaryBankId: - type: string - example: 59cd72485007a239fb00282ed480da1f - required: - - accountNumber - - address1 - - shortCountryCode - - name - - owner - - enterpriseId - - externalId - CSPRStakingOptions: - title: CSPR - type: object - properties: - amount: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Required for CSPR. String representation of the amount to stake or unstake in base units (motes). - validator: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: Required for CSPR. The validator address used to delegate or undelegate. - CannotRemoveAdmin: - title: Can't remove admin - allOf: - - $ref: '#/components/schemas/PlatformErrorNoName3' - - properties: - context: - type: object - properties: - adminCount: - type: integer - description: | - Current number of admins on the wallet. This number must be - greater than 'approvalsRequired', since an admin cannot approve - his/her own operation. - approvalsRequired: - description: Number of admins that must approve a wallet operation - type: integer - required: - - adminCount - - approvalsRequired - name: - type: string - description: Error code - enum: - - CannotRemoveAdmin - required: - - context - - name - ChangeAddressTypes: - type: array - items: - $ref: '#/components/schemas/AddressType' - description: The address types for the change address. Order by preference and BitGo uses the first available. Any subset of 'p2sh', 'p2shP2wsh', 'p2wsh', 'p2tr' or 'p2trMusig2'. - LightningCoin: - title: Coin - description: A lightning coin name. - type: string - example: lnbtc - CommitmentShare: - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The source of the commitment share. - to: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The recipient of the commitment share. - share: - type: string - description: The commitment share. - type: - allOf: - - $ref: '#/components/schemas/CommitmentType' - - default: commitment - description: The type of the commitment share. - required: - - from - - to - - share - - type - ConsolidateAccountBuildRequest: - type: object - properties: - consolidateAddresses: - description: | - Optional: restrict the consolidation to the specified receive addresses. If not provided, will consolidate the - funds from all receive addresses up to 500 addresses. - type: array - items: - type: string - apiVersion: - description: | - The Trasaction Request API version to use for MPC EdDSA Hot Wallets. - Defaults based on the wallet type and asset curve. - type: string - enum: - - full - - lite - ConsolidateAccountBuildResponse: - type: object - properties: - keyDerivationPath: - type: string - ConsolidateTokenIntent1: - title: Consolidate Token - allOf: - - $ref: '#/components/schemas/BaseIntent2' - - $ref: '#/components/schemas/EthBuildOptions' - - type: object - properties: - intentType: - type: string - enum: - - consolidateToken - recipients: - type: array - items: - $ref: '#/components/schemas/RecipientEntry1' - consolidateId: - type: string - description: Consolidation ID of this consolidation transaction - keepAlive: - type: string - description: True, if excluding the minimum-funding amounts in an address during consolidation. - required: - - intentType - - recipients - ConsolidateUnspentsRequest: - type: object - properties: - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - maxFeeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - example: 20000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The 'feeRate' overrides the 'maxFeeRate'. - maxFeePercentage: - type: integer - description: Maximum relative portion that can be spent towards fees - feeTxConfirmTarget: - type: integer - description: Block target for fee estimation - bulk: - type: boolean - description: Build multiple transactions at the same time. This enables you to increase the maximum number of unspents on the 'limit' parameter up to 2,000. If true, you must pass the 'txFormat' as 'psbt' and you can't pass the 'targetAddress' or 'numUnspentsToMake' parameters. - minValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Minimum value of unspents to use in base units (e.g. satoshis). Can be used to skip very small unspents when consolidating at higher fee rates. For doge, only string is allowed. - maxValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: | - Maximum value of unspents to use in base units (e.g. satoshis). Should be used to prevent larger unspents from being consolidated needlessly, and that some funds remain available for spending while the consolidation transactions are in flight. For doge, only string is allowed. - minHeight: - type: integer - description: Minimum height of unspents on the block chain to use - minConfirms: - type: integer - description: Minimum confirmation threshold for external inputs - enforceMinConfirmsForChange: - type: boolean - description: Flag for enforcing minConfirms for change inputs - limit: - type: integer - description: Maximum number of unspents to use in the transaction - numUnspentsToMake: - type: integer - description: Number of new unspents to make - targetAddress: - type: string - description: address to use for generated outputs. Must be wallet address. - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - ConsolidationCoins: - type: string - enum: - - algo - - talgo - - xtz - - txtz - - eth - - hteth - description: This route is only available for Algorand, Tezos, and Eth. - CreateBlockWebhook: - type: object - properties: - type: - $ref: '#/components/schemas/WebhookTypeBlock' - url: - type: string - format: uri - example: http://your.server.com/webhook - description: URL to fire the webhook to. - label: - type: string - description: Label of the new webhook. - numConfirmations: - type: integer - minimum: 0 - example: 6 - description: Number of confirmations before triggering the webhook. If 0 or unspecified, requests will be sent to the callback endpoint when the transfer is first seen and when it is confirmed. - required: - - type - - url - CreateKey: - type: object - properties: - coinSpecific: - $ref: '#/components/schemas/KeyCreateCoinSpecific' - encryptedPrv: - type: string - description: Private part of this key pair, encrypted with a passphrase that only the client knows. Required for all sources except 'bitgo'. - source: - $ref: '#/components/schemas/KeySource' - enterprise: - allOf: - - $ref: '#/components/schemas/Id' - description: The Enterprise that will own this key - newFeeAddress: - type: boolean - description: Create a new keychain instead of fetching enterprise key (only for Ethereum) - pub: - allOf: - - $ref: '#/components/schemas/Pub' - description: Public part of this key pair. If the key type is "independent" (default) it is required for user key and is optional for backup key. If key type is "tss" this field is not required. - isDistributedCustody: - type: boolean - description: Set to true if you want to create a key for distributed custody. This parameter is only valid if you have the distributed custody enterprise license enabled and are creating a BitGo key. Otherwise it will throw an error. - example: false - commonPub: - type: string - description: The commonPub for the key. This value is necessary for BLS keys when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. - commonKeychain: - type: string - description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the common pub concatenated with the common chaincode. - keyShares: - type: array - items: - $ref: '#/components/schemas/KeyShare' - description: Only required for BitGo MPC keys. Those will be the shares from the user and the backup provider that BitGo will end up generating the BitGo key (share) from. - type: - $ref: '#/components/schemas/BackupKeyType' - keyType: - allOf: - - $ref: '#/components/schemas/KeyType' - - default: tss - userGPGPublicKey: - type: string - description: User's public key in ASCII armored format. Only required for BitGo MPC keys. - backupGPGPublicKey: - type: string - description: Backup public key in ASCII armored format (may be managed by user or KRS). Only required for BitGo MPC keys. - isMPCv2: - type: boolean - description: Whether a key or wallet is using the Multi-Party Computation version 2 protocol. Optional field. - CreatePolicyRule: - type: object - properties: - coin: - type: string - example: zrx - description: | - If set, the rule will only apply to the given coin or ERC20 token in an - Ethereum wallet. It is generally recommended to not set a coin for policy rules of the following types: - 'advancedWhitelist', 'allTx', 'coinAddressWhitelist', 'coinAddressBlacklist', 'webhook'. - id: - type: string - description: The id of the rule, must be unique among rules in the policy - type: - $ref: '#/components/schemas/CreatePolicyRuleTriggers' - condition: - $ref: '#/components/schemas/PolicyRuleUpdateConditions' - action: - $ref: '#/components/schemas/PolicyRuleActions' - required: - - id - - type - - action - CreatePolicyRuleTriggers: - type: string - enum: - - advancedWhitelist - - allTx - - allTxNoFiat - - coinAddressWhitelist - - coinAddressBlacklist - - velocityLimit - - webhook - description: What causes this rule to trigger - CreateSendLabel: - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - address: - $ref: '#/components/schemas/AddressString3' - enterpriseId: - $ref: '#/components/schemas/Id' - label: - type: string - maxLength: 250 - required: - - coin - - address - - enterpriseId - - label - CreateSignatureShareRequest: - type: object - properties: - signatureShare: - allOf: - - $ref: '#/components/schemas/SignatureShare' - description: A user-provided share to be used in the ECDSA or EDDSA MPC signing flow. Please use signatureShares instead - signatureShares: - type: array - items: - $ref: '#/components/schemas/SignatureShare' - description: User-provided shares to be used in the ECDSA or EDDSA MPC signing flow. - signerShare: - type: string - description: | - An openPGP ascii armored message (encrypted to the known HSM public key) containing the - previous signer’s offset secret share as a 128 character hex string (64 bytes) consisting of - the new offset “u” private component from the user [or backup] new offset Y-share as a 64 character - hex string (32 bytes) concatenated with the new offset “chaincode” component of the new offset Y-share - as a 64 character hex string (32 bytes). Must be provided when uploading an R share. - userPublicGpgKey: - type: string - description: User’s public key of the gpg key. - CreateWallet: - type: object - properties: - coinSpecific: - $ref: '#/components/schemas/WalletCreateCoinSpecific' - enterprise: - allOf: - - $ref: '#/components/schemas/Id' - description: This is required for Ethereum wallets since they can only be created as part of an enterprise. - keys: - allOf: - - $ref: '#/components/schemas/Keys' - description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. - keySignatures: - type: object - properties: - backup: - type: string - description: a signature of the backup pub key using the user key (useful for change address verification) - bitgo: - type: string - description: a signature of the bitgo pub key using the user key (useful for change address verification) - label: - $ref: '#/components/schemas/WalletLabel' - multisigType: - $ref: '#/components/schemas/WalletMultisigType' - address: - $ref: '#/components/schemas/WalletCustomAddress' - m: - allOf: - - $ref: '#/components/schemas/NumSignatures' - description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. - 'n': - allOf: - - $ref: '#/components/schemas/NumKeychains' - description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. - tags: - type: array - items: - $ref: '#/components/schemas/Id' - type: - $ref: '#/components/schemas/WalletTypePublic' - walletVersion: - type: integer - default: 1 - description: (ETH only) Specify the wallet creation contract version used when creating a wallet contract. Use 0 for the old wallet creation, 1 for the new wallet creation, where it is only deployed upon receiving funds. 2 for wallets with the same functionality as v1 but with NFT support. 3 for MPC wallets. 4 is same as v2 but with some changes related to network identifier and encoding of tx data. v4 is applicable for Arbitrum, Optimism, ZkSync, and other EVM-compatible chains that we will onboard in the future. 5 for MPC MPCv2 wallets. 6 for EVM MPCv2 wallets with receive addresses. - minimum: 0 - maximum: 6 - eip1559: - type: object - description: '(ETH walletVersion: 0 wallets only) Specify eip1559 fee parameters in wallet creation transactions.' - properties: - maxPriorityFeePerGas: - type: string - description: Max priority tip price for EIP1559 transactions. Only for ETH and ERC20 tokens. - maxFeePerGas: - type: string - description: Max total gasPrice for EIP1559 transactions. Only for ETH and ERC20 tokens. - required: - - maxPriorityFeePerGas - - maxFeePerGas - required: - - label - DomesticWireBankAccount: - title: Domestic Wire Bank Account - type: object - description: | - An external bank account. 'routingNumber' must be set for US bank accounts. - 'swiftCode' must be set for banks outside the US. - properties: - accountNumber: - description: Bank account number or IBAN. - type: string - minLength: 1 - maxLength: 34 - example: 114584906 - enterpriseId: - $ref: '#/components/schemas/Id' - address: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - address1: - type: string - example: 2390 El Camino Real - address2: - type: string - example: Palo Alto, CA 94306 - address3: - type: string - example: '' - name: - type: string - example: America California Bank - ownerName: - type: string - example: Donald E. Knuth - ownerAddress: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - owner: - type: object - description: Bank account owner - properties: - name: - type: string - example: Donald E. Knuth - address1: - type: string - example: Computer Science Department - address2: - type: string - example: Stanford University - address3: - type: string - example: Stanford, CA 94305-9045 - required: - - name - - address1 - routingNumber: - description: US bank routing number. Required for domestic wire transfers within the US. - type: string - example: '129131673' - minLength: 9 - maxLength: 9 - pattern: ^[0-9]+$ - shortCountryCode: - $ref: '#/components/schemas/ShortCountryCode' - type: - $ref: '#/components/schemas/BankAccountType' - currency: - $ref: '#/components/schemas/BankAccountCurrency' - furtherCreditTo: - type: string - example: Donald E. Knuth - intermediaryBankName: - type: string - example: America California Bank - intermediaryBankId: - type: string - example: 59cd72485007a239fb00282ed480da1f - required: - - accountNumber - - address1 - - shortCountryCode - - name - - owner - - enterpriseId - - routingNumber - DotPaymentIntent1: - title: DOT Payment Intent - allOf: - - type: object - properties: - proxy: - $ref: '#/components/schemas/DotProxy' - owner: - $ref: '#/components/schemas/optionalString' - required: - - proxy - - owner - - $ref: '#/components/schemas/PaymentIntent1' - - $ref: '#/components/schemas/DotAccountBaseBuildOptions' - DuplicateSequenceId1: - title: Duplicate SequenceId - allOf: - - $ref: '#/components/schemas/PlatformError3' - - properties: - name: - type: string - description: Error code - enum: - - DuplicateSequenceId - required: - - name - Email: - type: string - format: email - example: user@example.com - EnterpriseUser: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - username: - $ref: '#/components/schemas/Email' - firstName: - type: string - description: User first name - example: Jane - lastName: - type: string - description: User last name - example: Doe - fullName: - type: string - description: User full name - example: Jane Doe - isActive: - type: boolean - email: - type: object - properties: - email: - $ref: '#/components/schemas/Email' - verified: - type: boolean - description: User has verified their email - verified: - type: boolean - description: User has verified their email - identity: - type: object - properties: - kyc: - type: object - properties: - hasVideoID: - type: boolean - example: true - description: User has done initial video ID - overallState: - $ref: '#/components/schemas/UserKycState' - required: - type: boolean - example: true - description: Sanction screening is required for this User - EnterpriseUsersResponse: - type: object - properties: - adminUsers: - type: array - items: - $ref: '#/components/schemas/EnterpriseUser' - nonAdminUsers: - type: array - items: - $ref: '#/components/schemas/EnterpriseUser' - count: - type: integer - description: The total number of Users returned. - incomplete: - type: boolean - description: Set to true if the Enterprise has at least 500 v1 or v2 wallets. If there are more than 500 wallets (either v1 or v2) it could mean that some Wallets were not considered for finding all Users. - ErrorPayload: - type: object - properties: - error: - type: string - errorName: - type: string - required: - - error - - errorName - EstimateTransactionFees: - title: Bitcoin - type: object - properties: - feePerKb: - type: integer - description: (BTC only) The fee (in base units) per kilobyte (or virtual kilobyte) required to confirm a transaction on 2 or more blocks. - example: 15902 - cpfpFeePerKb: - type: integer - description: | - (BTC only) Child-Pays-For-Parent (CPFP) fee (in base units) per kilobyte (or virtual kilobyte). Includes the fees for all unconfirmed transactions dependent on the CPFP transaction. - numBlocks: - type: integer - description: | - (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. - - Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. - example: 2 - confidence: - type: integer - minimum: 0 - maximum: 100 - description: (BTC only) The confidence (as a percentage) in the accuracy of the fee estimate. - example: 80 - feeByBlockTarget: - type: object - description: | - (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. - - Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. - example: - '1': 50536 - '2': 15902 - '3': 1579 - required: - - feePerKb - - numBlocks - EstimateTransactionFeesAccountCoin: - title: Account-based - type: object - properties: - feeEstimate: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: fee estimate for a transaction for the given account-based coin, denominated in the base units of that coin (i.e. Drops for XRP, Stroops for XLM, etc) - required: - - feeEstimate - EstimateTransactionFeesAlgo: - title: ALGO - type: object - properties: - feeRate: - description: Calculated by transaction size. Fee rate is in microAlgo (base unit). - type: integer - example: 1 - minimumFee: - description: Always 1000. - type: integer - default: 1000 - example: 1000 - required: - - feeRate - - minimumFee - EstimateTransactionFeesEth: - title: ETH - type: object - properties: - feeEstimate: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: fee estimate for a transaction for the given account-based coin, denominated in base units (i.e. Wei) - gasLimitEstimate: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The amount of gas that the transaction will use, if recipient is provided in the request - minGasPrice: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: minimum gas price that can be provided in base units - minGasLimit: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: minimum gas limit that can be provided in base units - maxGasLimit: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: maximum gas limit that can be provided in base units - minGasIncreaseBy: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: gas price must not be increased by less than this after being introduced to the network - eip1559: - allOf: - - $ref: '#/components/schemas/EstimateTransactionFeesEthEip1559' - description: EIP 1559 fee estimates - required: - - feeEstimate - - minGasPrice - - minGasLimit - - maxGasLimit - - minGasIncreaseBy - EstimateTransactionFeesEthEip1559: - type: object - properties: - baseFee: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: Block base fees, in base units (i.e. Wei), per gas. Zeroes are returned for pre-EIP-1559 blocks - gasUsedRatio: - description: Block gas used ratio. Calculated as the ratio of gasUsed and gasLimit - type: string - safeLowMinerTip: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: 25th percentile of the tips spent in the last block - normalMinerTip: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: 35th percentile of the tips spent in the last block - standardMinerTip: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: 50th percentile of the tips spent in the last block - fastestMinerTip: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: 75th percentile of the tips spent in the last block - ludicrousMinerTip: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: 97th percentile of the tips spent in the last block - required: - - baseFee - - gasUsedRatio - EstimateTransactionFeesTrx: - title: TRX - type: object - properties: - fee: - description: Maximum fee for a payment transaction, denominated in base units (i.e. sun). It varies for TRX and TRC20 Token based on the coin parameter - type: integer - example: 100000000 - newAccountFee: - description: Fee for wallet initialization - type: integer - example: 100000000 - netFee: - description: Fee rate per unit of tx size. Not used currently ('fee' is a maximum limit, the network charges the cost of the transaction) - type: integer - example: 1000 - required: - - fee - - newAccountFee - - netFee - ExpressAccelerateTxRequest: - type: object - properties: - cpfpTxIds: - type: array - description: | - txids of the transactions to bump - - **Notes**: - Each target unconfirmed transaction must be sending funds to the calling wallet. - Accepts only a single txid at this stage. - items: - $ref: '#/components/schemas/TxId' - cpfpFeeRate: - type: integer - description: Desired effective feerate of the bumped transactions and the CPFP transaction in satoshi per kilobyte - maxFee: - type: integer - description: | - Maximum allowed fee for the CPFP transaction in satoshi - - **Note**: - A CPFP transaction accelerates the target transactions and all of the unconfirmed transactions the target transactions depends on. - As it can be difficult to discern the complete transaction ancestry at times, we recommend limiting the total fee for each CPFP attempt as a safety net to prevent CPFP transactions that exceed your cost expectations. - rbfTxIds: - type: array - items: - type: string - description: The list of transactions to accelerate using Replace-By-Fee (RBF) for UTXO coins (currently accelerating only one tx is supported). - feeMultiplier: - allOf: - - type: number - minimum: 1 - - example: 1.5 - description: | - (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. - - Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. - ExpressAcceptShareRequest: - type: object - properties: - userPassword: - type: string - description: User's password to decrypt the shared wallet (required if the wallet was shared with spend permission) - newWalletPassphrase: - type: string - description: New wallet passphrase for saving the shared wallet private key If not provided and the wallet was shared with spend permission, then the userPassword is used - overrideEncryptedPrv: - type: string - description: Encrypted private key received out-of-band - ExpressAcceptShareResponse: - type: object - properties: - state: - type: string - allOf: - - $ref: '#/components/schemas/WalletShareState1' - description: State of the share - changed: - type: boolean - description: Indicates if the share changed - ExpressCalculateMinerFeeInfoRequest: - type: object - properties: - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom minimum fee rate in a coin's base unit per kilobyte (or virtual kilobyte)--for example, satoshis per kvByte or microAlgos per kByte. If the applied 'feeRate' does not meet a coin's required minimum transaction fee amount, the minimum is still applied (for example, 1000 sat/kvByte or a flat 1000 microAlgos). - nP2shInputs: - type: integer - description: Number of P2SH (multi-signature) inputs - example: 2 - nP2pkhInputs: - type: integer - description: Number of P2PKH (single-signature) inputs - example: 0 - nP2shP2wshInputs: - type: integer - description: Number of P2SH_P2WSH (wrapped segwit multi-signature) inputs - example: 1 - nOutputs: - type: integer - description: Number of outputs - example: 2 - required: - - nOutputs - ExpressCalculateMinerFeeInfoResponse: - type: object - properties: - size: - type: integer - description: Estimated size of the transaction in bytes - example: 776 - fee: - type: integer - description: Estimated fee in base units for the transaction - example: 38800 - feeRate: - type: integer - description: The fee rate in base units per kB used to estimate the fee for the transaction - example: 50000 - ExpressCanonicalAddressRequest: - type: object - properties: - address: - type: string - description: Address to canonicalize - version: - oneOf: - - type: string - default: base58 - description: Version of the desired BCH address. - enum: - - base58 - - bech32 - - type: integer - description: Version of the desired LTC address. - enum: - - 1 - - 2 - ExpressInitWalletRequest: - type: object - properties: - passphrase: - type: string - description: Passphrase to encrypt the admin macaroon of the signer node. - ExpressUnlockLightningWalletRequest: - type: object - properties: - passphrase: - type: string - description: Passphrase to decrypt the unlock the node. - ExpressGenerateSignerMacaroonRequest: - type: object - properties: - passphrase: - type: string - description: Passphrase to decrypt the admin macaroon of the signer node. - addIpCaveatToMacaroon: - type: boolean - description: If true, adds an IP caveat to the generated signer macaroon. - ExpressConsolidateAccountRequest: - type: object - properties: - consolidateAddresses: - description: | - Optional: restrict the consolidation to the specified receive addresses. If not provided, will consolidate the - funds from all receive addresses up to 500 addresses. - type: array - items: - type: string - walletPassphrase: - description: | - Passphrase to decrypt the user key on the wallet. - Required if External Signer is not used to sign the transactions. - type: string - prv: - description: | - The un-encrypted user private key in string form. - If the key is a JSON object it must be stringified. - Required if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. - type: string - apiVersion: - description: | - The Trasaction Request API version to use for MPC EdDSA Hot Wallets. - Defaults based on the wallet type and asset curve. - type: string - enum: - - full - - lite - ExpressConsolidateUnspentsRequest: - type: object - properties: - walletPassphrase: - type: string - description: Passphrase to decrypt the user key on the wallet - xprv: - type: string - description: Private key in string form, if walletPassphrase is not available - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - maxFeeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - example: 20000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The 'feeRate' overrides the 'maxFeeRate'. - maxFeePercentage: - type: integer - description: Maximum relative portion that can be spent towards fees - feeTxConfirmTarget: - type: integer - description: Block target for fee estimation - bulk: - type: boolean - description: Build multiple transactions at the same time. This enables you to increase the maximum number of unspents on the 'limit' parameter up to 2,000. If true, you must pass the 'txFormat' as 'psbt' and you can't pass the 'targetAddress' or 'numUnspentsToMake' parameters. - minValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Minimum value of unspents to use in base units (e.g. satoshis). Can be used to skip very small unspents when consolidating at higher fee rates. For doge, only string is allowed. - maxValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: | - Maximum value of unspents to use in base units (e.g. satoshis). Should be used to prevent larger unspents from being consolidated needlessly, and that some funds remain available for spending while the consolidation transactions are in flight. For doge, only string is allowed. - minHeight: - type: integer - description: Minimum height of unspents on the block chain to use - minConfirms: - type: integer - description: Minimum confirmation threshold for external inputs - enforceMinConfirmsForChange: - type: boolean - description: Flag for enforcing minConfirms for change inputs - limit: - type: integer - description: Maximum number of unspents to use in the transaction - numUnspentsToMake: - type: integer - description: Number of new unspents to make - targetAddress: - type: string - description: address to use for generated outputs. Must be wallet address. - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - ExpressCreateKeychainResponse: - type: object - description: Generated key pair - properties: - prv: - type: string - description: Private key - example: xprv9s21ZrQH143K2Y4th5Bn8sCRCMNjVr3sm9TLj9yw9SRKxYbJdB18bpc7cZFHKKWKuWZUBATfbDVE26u7w2iUhmWD8Gsp8UkaemhLEfopC35 - pub: - $ref: '#/components/schemas/Pub' - ExpressDecryptRequest: - type: object - properties: - input: - type: string - description: Ciphertext to decrypt - password: - type: string - description: Key which is used for decryption - ExpressDecryptResponse: - type: object - properties: - decrypted: - type: string - ExpressEncryptRequest: - type: object - properties: - input: - type: string - description: Plaintext message which should be encrypted - password: - type: string - description: Password which should be used to encrypt message - ExpressEncryptResponse: - type: object - properties: - encrypted: - type: string - ExpressFanOutUnspentsRequest: - type: object - properties: - walletPassphrase: - type: string - description: Passphrase to decrypt the user key on the wallet - xprv: - type: string - description: Private key in string form, if walletPassphrase is not available - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - maxFeeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - example: 20000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The 'feeRate' overrides the 'maxFeeRate'. - maxFeePercentage: - type: integer - description: Maximum relative portion that can be spent towards fees - feeTxConfirmTarget: - type: integer - description: Block target for fee estimation - minValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Minimum value of unspents to use in base units (e.g. satoshis). For doge, only string is allowed. - maxValue: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Maximum value of unspents to use in base units (e.g. satoshis). For doge, only string is allowed. - minHeight: - type: integer - description: Minimum height of unspents on the block chain to use - minConfirms: - type: integer - description: Minimum confirmation threshold for external inputs - enforceMinConfirmsForChange: - type: boolean - description: Flag for enforcing minConfirms for change inputs - unspents: - type: array - items: - type: string - description: Unspents to fan out in the transaction. Mutually exclusive with maxNumInputsToUse. - maxNumInputsToUse: - type: integer - description: Maximum number of unspents to use in the transaction. Mutually exclusive with unspents. - numUnspentsToMake: - type: integer - description: Number of new unspents to make - targetAddress: - type: string - description: address to use for generated outputs. Must be wallet address. - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - ExpressGenerateWalletRequest: - type: object - properties: - label: - $ref: '#/components/schemas/WalletLabel' - multisigType: - type: string - enum: - - onchain - - tss - - blsdkg - description: If absent, BitGo uses the default wallet type for the asset. For Solana wallets, this parameter is required and must be set to 'tss'. - type: - type: string - enum: - - hot - - cold - - custodial - description: The type of wallet, defined by key management and signing protocols. 'hot' and 'cold' are both self-managed wallets. If absent, defaults to 'hot'. - passphrase: - type: string - description: Passphrase to be used to encrypt the user key on the wallet - userKey: - type: string - description: User provided public key - backupXpub: - $ref: '#/components/schemas/Pub' - backupXpubProvider: - type: string - enum: - - dai - description: Optional key recovery service to provide and store the backup key - enterprise: - allOf: - - $ref: '#/components/schemas/Id' - description: Enterprise id. This is required for Ethereum wallets since they can only be created as part of an enterprise - disableTransactionNotifications: - type: boolean - description: Flag for disabling wallet transaction notifications - passcodeEncryptionCode: - type: string - description: The passphrase used for decrypting the encrypted wallet passphrase during wallet recovery - coldDerivationSeed: - type: string - description: Seed that derives an extended user key or common keychain for a cold wallet. - gasPrice: - type: integer - description: Gas price to use when deploying an Ethereum wallet - disableKRSEmail: - type: boolean - description: Flag for preventing KRS from sending email after creating backup key - walletVersion: - type: integer - default: 1 - description: (ETH only) Specify the wallet creation contract version used when creating a wallet contract. Use 0 for the old wallet creation, 1 for the new wallet creation, where it is only deployed upon receiving funds. 2 for wallets with the same functionality as v1 but with NFT support. 3 for MPC wallets. - minimum: 0 - maximum: 3 - isDistributedCustody: - type: boolean - description: True, if the wallet type is a distributed-custodial. If passed, you must also pass the 'enterprise' parameter. - bitgoKeyId: - allOf: - - $ref: '#/components/schemas/Id' - description: BitGo key ID for self-managed cold MPC wallets. - commonKeychain: - type: string - description: Common keychain for self-managed cold MPC wallets. - required: - - label - - enterprise - ExpressGenerateWalletResponse: - oneOf: - - $ref: '#/components/schemas/ExpressWallet' - - title: Wallet (including keychains) - type: object - description: Wallet with user, bitgo and backup keychains (when 'includeKeychains' query param is 'true'). - properties: - wallet: - $ref: '#/components/schemas/ExpressWallet' - encryptedWalletPassphrase: - type: string - description: Encrypted wallet passphrase. Used only with 'passcodeEncryptionCode'. You can use the encrypted wallet passphrase in the BitGo web app during password recovery for the wallet. - example: '"{\"iv\":\"IpwAFi0+TDsLJCV4pg8T6w==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"3lkIc47rjzo=\",\"ct\":\"/m6JL/ttTJWXNmHm+dzI\"}"' - userKeychain: - type: object - description: User keychain - properties: - id: - $ref: '#/components/schemas/Id' - encryptedPrv: - type: string - description: User private key encrypted with the user passphrase - example: '{"iv":"TEd5eouui6hKashuVi5WHQ==","v":1,"iter":10000,"ks":256,"ts":64,"mode":"ccm","adata":"","cipher":"aes","salt":"dHu4PWoX2M8=","ct":"fYr9Y/6kU40AosONkV0xi+fWsyhpYSew0L2YKH/qEZjOlxeDjpC2aTJ0Yc/KdmXheUGolcAxGSx93ykN21Zim1DGc/UGa25IUA/3ARgX7gBsYnYEy5e5Ol0YZYb9pa7KFeaDZSLMXrxxoahg5zL4AJsUx90Pwcg="}' - prv: - type: string - description: User private key - example: xprv9s21ZrQH143K3e1981rUcbKjJ9G57SDCDZ9HY4Sqhx5ZqMoyK1j49kAf1vuM1G9nhRr6kzqbUQb3gj5zuzrsvNRQ84tYf32EcyapRgBNpp4 - pub: - $ref: '#/components/schemas/Pub' - ethAddress: - type: string - description: Ethereum address corresponding to this keychain - example: '0xf5b7cca8621691f9dde304cb7128b6bb3d409363' - source: - type: string - description: Party that created the key - example: user - coinSpecific: - type: object - description: Coin specific key data - backupKeychain: - type: object - description: Backup keychain - properties: - id: - $ref: '#/components/schemas/Id' - prv: - type: string - description: Backup private key - example: xprv9s21ZrQH143K47iEnAFZRJz36E5ZxuEDBJETFYxJTsTVxuPc9z7oGWADUK6icX5P3ruoe244yxMt9uZ2LjWhddvnJJ4zB7zK93qBtxYrmN6 - pub: - $ref: '#/components/schemas/Pub' - source: - type: string - description: Party that created the key - example: backup - ethAddress: - type: string - description: Ethereum address corresponding to this keychain - example: '0xf5b7cca8621691f9dde304cb7128b6bb3d409363' - coinSpecific: - type: object - description: Coin specific key data - bitgoKeychain: - type: object - description: BitGo keychain - properties: - id: - $ref: '#/components/schemas/Id' - pub: - $ref: '#/components/schemas/Pub' - isBitGo: - type: boolean - description: Flag for identifying keychain as created by BitGo - example: true - source: - type: string - description: Party that created the key - example: bitgo - ethAddress: - type: string - description: Ethereum address corresponding to this keychain - example: '0xa487900d0de75107b1cc7ade0e2662980e5ce940' - coinSpecific: - type: object - description: Coin specific key data - warning: - type: string - description: If the backup key is held by the user, this is a message warning the user to securely backup their backup keychain. - example: Be sure to backup the backup keychain -- it is not stored anywhere else! - ExpressPingResponse: - type: object - properties: - status: - type: string - ExpressSendCoinsRequest: - allOf: - - type: object - properties: - address: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: Destination address - amount: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: Amount in base units (e.g. satoshi, wei, drops, stroops). For doge, only string is allowed. - walletPassphrase: - type: string - description: Passphrase to decrypt the user key on the wallet - prv: - type: string - description: Optional, private key in string form, if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. - - $ref: '#/components/schemas/BuildParams' - - type: object - properties: - data: - type: string - description: (ETH only) Optional data to pass to the transaction - hop: - type: boolean - description: (ETH, AVAXC and POLYGON) Set to true if funds to destination need to come from single sig address - tokenName: - type: string - description: Token name, defined in the BitGoJS Statics package. - ExpressSendCoinsResponse: - type: object - properties: - transfer: - allOf: - - $ref: '#/components/schemas/Transfer' - description: New transfer - txid: - type: string - description: Unique transaction identifier - tx: - oneOf: - - type: string - description: Encoded transaction hex (or base64 for XLM) - - $ref: '#/components/schemas/PsbtHex' - status: - type: string - description: Transfer status - enum: - - signed - - signed (suppressed) - - pendingApproval - ExpressUnlockLightningWalletResponse: - type: object - properties: - message: - type: string - example: ok - ExpressLightningNodeStateResponse: - type: object - properties: - state: - description: Current state of the node - type: string - enum: - - NON_EXISTING - - LOCKED - - UNLOCKED - - RPC_ACTIVE - - SERVER_ACTIVE - - WAITING_TO_START - ExpressSendConsolidationResponse: - type: object - properties: - success: - description: An Array of TransactionRequest or Transfers. - type: array - items: - oneOf: - - $ref: '#/components/schemas/TransactionRequestLite1' - - $ref: '#/components/schemas/TransactionRequestFull1' - - $ref: '#/components/schemas/Transfer' - failure: - type: array - description: An Array of Error messages. - items: - type: string - required: - - success - - failure - ExpressSendManyRequest: - allOf: - - type: object - properties: - recipients: - type: array - items: - type: object - description: List of recipient addresses and amounts to send - properties: - address: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: Destination address - amount: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - description: The amount in base units (e.g. satoshis) to send. For doge, only string is allowed. - tokenName: - type: string - description: The token name. Required for MPC wallets token transactions. - example: sol:natix - tokenData: - allOf: - - $ref: '#/components/schemas/RecipientTokenData' - description: Data set to build a transaction that involves a token interaction. - description: A list of recipient addresses and amounts. Must be present but empty for CPFP transactions. - otp: - type: string - description: Two factor auth code to enable sending the transaction. Not necessary if using a long lived access token within the spending limit. - walletPassphrase: - type: string - description: | - Passphrase to decrypt the user key on the wallet. - Required if External Signer is not used to sign the transactions. - prv: - type: string - description: | - The un-encrypted user private key in string form. - If the key is a JSON object it must be stringified. - Required if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. - - $ref: '#/components/schemas/BuildParams' - - type: object - properties: - data: - type: string - description: (ETH only) Optional data to pass to the transaction - ExpressShareWalletRequest: - type: object - properties: - email: - type: string - description: Email address of the user being invited - example: foo@bar.com - permissions: - type: string - allOf: - - $ref: '#/components/schemas/WalletPermission' - walletPassphrase: - type: string - description: Wallet passphrase of the user sharing the wallet - message: - type: string - description: User readable message to display to the share recipient - reshare: - type: boolean - description: Flag for reinviting a user to the wallet. This is required if the invitee has already been invited to the wallet, but has changed their password and needs a new invite - skipKeychain: - type: boolean - description: If true, skips using a shared key (for when the wallet is shared without spend permission). - disableEmail: - type: boolean - description: Flag for disabling invite notification email - required: - - email - - permissions - ExpressSignTssTx: - anyOf: - - $ref: '#/components/schemas/TransactionRequestLite1' - - $ref: '#/components/schemas/ExpressSignTssTxFull' - ExpressSignTssTxFull: - title: Full - type: object - properties: - txRequestId: - description: | - The transaction request ID. - This is the ID returned by the Create Transaction Request API. - type: string - walletPassphrase: - description: | - The wallet passphrase. - Required if External Signer is not used to sign the transactions. - type: string - prv: - description: | - The un-encrypted user private key of the wallet. - If the key is a JSON object it must be stringified. - Required for Self-Managed Cold wallets when External Signer is not used to sign the transactions. - type: string - required: - - txRequestId - ExpressSignTxRequest: - type: object - properties: - prv: - type: string - description: user private key - example: xprv9s21ZrQH143K3xQwj4yx3fHjDieEdqFDweBvFxn28qGvfQGvweUWuUuDRpepDu6opq3jiWHU9h3yYTKk5vvu4ykRuGA4i4Kz1vmFMPLTsoC - txPrebuild: - type: object - properties: - wallet: - $ref: '#/components/schemas/Id' - txHex: - type: string - description: Serialized transaction hex - txBase64: - type: string - description: Serialized transaction base64 (applies to XLM only) The request must include this or a txHex - txInfo: - oneOf: - - $ref: '#/components/schemas/UtxoTxInfo' - - $ref: '#/components/schemas/XlmTxInfo' - feeInfo: - type: object - properties: - size: - type: integer - description: Estimated size of the transaction in bytes - example: 776 - fee: - type: integer - description: Estimated fee in base units for the transaction - example: 38800 - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - payGoFee: - type: integer - description: BitGo fee of the transaction (in base units) - example: 0 - payGoFeeString: - type: integer - description: BitGo fee of the transaction (in base units) represented as a String - example: '0' - isLastSignature: - type: boolean - description: Should be set to true if you are signing the second time, attaching the final signature. Default to false. - pubs: - type: array - description: Public Keys (user, backup, bitgo) for the wallet (UTXO coins only) - items: - type: string - example: - - string - - string - - string - ExpressSignTxResponse: - type: object - properties: - txInfo: - oneOf: - - title: Hex - type: object - properties: - txHex: - $ref: '#/components/schemas/TxHex' - - title: Base64 - type: object - properties: - halfSigned: - type: object - properties: - txBase64: - $ref: '#/components/schemas/TxBase64' - ExpressSweepRequest: - type: object - properties: - address: - type: string - description: The destination address for the sweep transaction - walletPassphrase: - type: string - description: Passphrase to decrypt the user key on the wallet - xprv: - type: string - description: Private key in string form, if walletPassphrase is not available - otp: - type: string - description: Two factor auth code to enable sending the transaction - feeTxConfirmTarget: - type: string - description: Number of blocks to wait to confirm the transaction - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. - - If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. - - Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. - maxFeeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrIntegerString' - - example: 20000 - description: | - (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. - - Note: The 'feeRate' overrides the 'maxFeeRate'. - allowPartialSweep: - type: boolean - default: false - description: | - Use 'allowPartialSweep: true' to sweep part of a wallet when there are too many unspents to empty the wallet in a - single transaction. While the expected outcome of a single sweep call would usually be an empty wallet, using the - allowPartialSweep option may leave some funds in the wallet. Making repeated calls with the allowPartialSweep - option allows emptying wallets with many unspents without consolidating first. - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - ExpressVerifyCoinAddressRequest: - type: object - properties: - address: - type: string - allOf: - - $ref: '#/components/schemas/AddressString3' - description: Address which should be verified for correct format - ExpressWallet: - title: Wallet - type: object - properties: - id: - $ref: '#/components/schemas/Id' - users: - type: array - description: Ids of users with access to the wallet - items: - type: object - properties: - user: - $ref: '#/components/schemas/Id' - permissions: - type: array - description: Array of permissions for the user - items: - type: string - example: - - admin - - view - - spend - coin: - type: string - description: Name of the blockchain the wallet is on - example: tbtc4 - label: - type: string - description: Name the user assigned to the wallet - example: My TBTC4 Wallet - m: - type: integer - description: Number of signatures required for the wallet to send - example: 2 - 'n': - type: integer - description: Number of signers on the wallet - example: 3 - keys: - type: array - description: Ids of wallet keys - items: - $ref: '#/components/schemas/Id' - keySignatures: - type: object - description: Signatures for the backup and BitGo public keys signed by the user key - properties: - backupPub: - type: string - description: Signature for the backup pub - example: 1fe81d0c91457d89993b01475bfb9e5809067ae046926faeab6e63beea009d8dd460387e0c3843034570798a9c2bcc1dbbea2988ee5a36979e0bbe6e02f7840af2 - bitgoPub: - type: string - description: Signature for the BitGo pub - example: 209d0e9a6d4352b66fae0a35ce62c1059bcc4db9e2883abc4f1b3d20481c5cebb7299c581efd9e0151abaf2496da7c6d75d276de36ed3de37c94e9cc5a2ea77e59 - tags: - type: array - description: Tags set on the wallet - items: - $ref: '#/components/schemas/Id' - receiveAddress: - $ref: '#/components/schemas/Address2' - balance: - type: integer - description: Wallet balance as number - example: 0 - balanceString: - type: string - description: Wallet balance as string - example: '0' - confirmedBalance: - type: integer - description: Confirmed wallet balance as number - example: 0 - confirmedBalanceString: - type: string - description: Confirmed wallet balance as string - example: '0' - spendableBalance: - type: integer - description: Spendable wallet balance as number - example: 0 - spendableBalanceString: - type: string - description: Spendable wallet balance as string - example: '0' - deleted: - type: boolean - description: Flag which indicates the wallet has been deleted - example: false - isCold: - type: boolean - description: Flag for identifying cold wallets - example: false - freeze: - type: object - description: Freeze state (used to stop the wallet from spending) - properties: - time: - type: string - format: date-time - description: Time when the wallet becomes frozen - expires: - type: string - format: date-time - description: Time when the wallet is unfrozen and allowed to spend - example: {} - disableTransactionNotifications: - type: boolean - description: Flag for disabling wallet transaction notifications - example: false - admin: - type: object - description: Admin data (wallet policies) - example: {} - approvalsRequired: - type: integer - description: Number of admin approvals required for an action to fire - example: 1 - pendingApprovals: - type: array - description: Pending approvals on the wallet - items: - $ref: '#/components/schemas/PendingApproval1' - example: [] - allowBackupKeySigning: - type: boolean - description: Flag for allowing signing with backup key - example: false - coinSpecific: - type: object - description: Coin-specific data - clientFlags: - type: array - items: - type: string - recoverable: - type: boolean - description: Flag indicating whether this wallet's user key is recoverable with the passphrase held by the user. - startDate: - type: string - format: date-time - description: Time when this wallet was created - hasLargeNumberOfAddresses: - type: boolean - description: | - Flag indicating that this wallet is large (more than 100,000 addresses). If this is set, some APIs may omit - properties which are expensive to calculate for wallets with many addresses (for example, the total address - counts returned by the List Addresses API). - config: - type: object - description: Custom configuration options for this wallet - ExpressWalletRecoverTokenRequest: - type: object - properties: - tokenContractAddress: - type: string - description: Contract address of the unsupported token - recipient: - type: string - description: Destination address recovered tokens should be sent to - walletPassphrase: - type: string - description: Wallet passphrase - prv: - type: string - description: User private key - broadcast: - type: boolean - description: Whether to send to BitGo for cosigning and broadcast the transaction. If false, a half-siged transaction will be returned. - ExpressWalletRecoverTokenResponse: - type: object - properties: - halfSigned: - type: object - properties: - contractSequenceId: - type: integer - example: 1101 - expireTime: - type: integer - example: 1550088020 - gasLimit: - type: integer - example: 500000 - gasPrice: - type: integer - example: 20000000000 - operationHash: - type: string - example: 9.44792020725999e+76 - recipient: - type: object - properties: - address: - type: string - example: 4.7261295088313645e+47 - amount: - type: string - example: '2400' - signature: - type: string - example: 1.9519588812712557e+156 - tokenContractAddress: - type: string - example: 3.8941146273864216e+46 - walletId: - $ref: '#/components/schemas/Id' - ExpressWalletSignTxRequest: - type: object - properties: - keychain: - type: object - properties: - encryptedPrv: - type: string - description: Encrypted user private key - description: | - The user's keychain object with an 'encryptedPrv' property. The 'walletPassphrase' parameter is required when using 'keychain'. Any request must include either 'keychain' or 'prv'. - prv: - type: string - description: | - User private key - - Note: The request must include either 'prv' or 'keychain' - example: xprv9s21ZrQH143K3xQwj4yx3fHjDieEdqFDweBvFxn28qGvfQGvweUWuUuDRpepDu6opq3jiWHU9h3yYTKk5vvu4ykRuGA4i4Kz1vmFMPLTsoC - txPrebuild: - type: object - properties: - wallet: - $ref: '#/components/schemas/Id' - txHex: - type: string - description: Serialized transaction hex - txBase64: - type: string - description: Serialized transaction base64 (applies to XLM only). The request must include this or a txHex - txInfo: - oneOf: - - $ref: '#/components/schemas/UtxoTxInfo' - - $ref: '#/components/schemas/XlmTxInfo' - feeInfo: - oneOf: - - $ref: '#/components/schemas/UtxoFeeInfo' - - $ref: '#/components/schemas/XlmFeeInfo' - description: The transaction description object as created by 'Build Transaction' - coldDerivationSeed: - type: string - description: | - A seed used to create a deterministic BIP-32 path which is then used to derive a private key. This is useful when one wants to create multiple BitGo cold wallets but only protect a single master private key. Using the seed one can create a child key for a specific wallet, for instance an Ethereum wallet could use the "eth" seed while an XRP wallet could use "xrp" as a seed. Both of these child keys would be derived from a single master key and so only the master key needs to be stored and protected. - walletPassphrase: - type: string - description: | - Passphrase to decrypt the user keychain. 'walletPassphrase' is a required parameter when the parameter 'keychain' is provided. - recipients: - type: array - items: - type: object - description: Array of objects describing the recipients. See buildTransaction for more detail. Required on ETH. - FederationError: - type: object - properties: - status: - type: number - description: HTTP status code - detail: - type: string - description: Human-readable error message - error: - type: string - description: Human-readable error message - name: - type: string - description: Error code - requestId: - type: string - description: Client request id - required: - - status - - detail - - error - - name - - requestId - FeeAddressBalanceResponse: - type: object - properties: - balance: - type: string - description: | - Total balance in enterprise gas tank. - Freeze1: - type: object - properties: - time: - type: string - format: date-time - description: When the freeze started - expires: - type: string - format: date-time - description: When the freeze will end - InitiateTrustlineParams: - type: object - properties: - memo: - type: object - properties: - type: - type: string - value: - type: string - description: | - The memo contains optional extra information that can also be used to identify payments in Stellar. - comment: - type: string - description: | - Optional metadata (only persisted in BitGo) to be applied to the transaction. Use this to add transaction-specific information such as the transaction's purpose or another identifier that you want to reference later. The value is shown in the UI in the transfer listing page. - maxLength: 256 - trustlines: - type: array - items: - $ref: '#/components/schemas/Trustline' - description: List of trustlines to manage on the account. - required: - - trustlines - RecipientAmount: - oneOf: - - type: string - pattern: ^(-?\d+|max)$ - example: '2000000' - - type: integer - IntentType1: - title: IntentType - type: string - enum: - - payment - - transferToken - - consolidate - - consolidateToken - - fanout - - stake - - unstake - - delegate - - undelegate - - switchValidator - - claim - - stakeClaimRewards - - pledge - - vote - - createAccount - - updateAccount - - addTrustLine - - removeTrustLine - - signMessage - - signTypedStructuredData - - enableToken - - authorize - - acceleration - - fillNonce - - walletRecovery - - contractCall - - deactivate - - customTx - - closeAssociatedTokenAccount - InternationalWireBankAccount: - title: International Wire Bank Account - type: object - description: | - An external bank account. 'routingNumber' must be set for US bank accounts. - 'swiftCode' must be set for banks outside the US. - properties: - accountNumber: - description: Bank account number or IBAN. - type: string - minLength: 1 - maxLength: 34 - example: 114584906 - enterpriseId: - $ref: '#/components/schemas/Id' - address: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - address1: - type: string - example: 2390 El Camino Real - address2: - type: string - example: Palo Alto, CA 94306 - address3: - type: string - example: '' - name: - type: string - example: America California Bank - ownerName: - type: string - example: Donald E. Knuth - ownerAddress: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - owner: - type: object - description: Bank account owner - properties: - name: - type: string - example: Donald E. Knuth - address1: - type: string - example: Computer Science Department - address2: - type: string - example: Stanford University - address3: - type: string - example: Stanford, CA 94305-9045 - required: - - name - - address1 - swiftCode: - description: Bank identifier code, as specified by ISO 9362. Required for international wire transfers. - type: string - example: DEUTDEFF500 - minLength: 8 - maxLength: 11 - pattern: ^[A-Z]{6}[0-9A-Z]{2}([0-9A-Z]{3})?$ - shortCountryCode: - $ref: '#/components/schemas/ShortCountryCode' - type: - $ref: '#/components/schemas/BankAccountType' - currency: - $ref: '#/components/schemas/BankAccountCurrency' - furtherCreditTo: - type: string - example: Donald E. Knuth - intermediaryBankName: - type: string - example: America California Bank - intermediaryBankId: - type: string - example: 59cd72485007a239fb00282ed480da1f - required: - - accountNumber - - address1 - - shortCountryCode - - name - - owner - - enterpriseId - - swiftCode - InvalidAddress1: - title: Invalid address - allOf: - - $ref: '#/components/schemas/PlatformErrorNoName3' - - properties: - context: - type: object - properties: - address: - type: string - coin: - $ref: '#/components/schemas/Coin' - required: - - address - - coin - name: - type: string - description: Error code - enum: - - InvalidAddress - required: - - coin - - context - - address - - name - InvalidEnterpriseId1: - title: Invalid enterprise ID - allOf: - - $ref: '#/components/schemas/InvalidId1' - - properties: - name: - type: string - description: Error code - enum: - - InvalidEnterpriseId - required: - - name - InvalidId1: - allOf: - - $ref: '#/components/schemas/PlatformErrorNoName3' - - properties: - context: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - required: - - context - InvalidOFAC: - title: Address error - allOf: - - $ref: '#/components/schemas/PlatformErrorNoName3' - - properties: - name: - type: string - description: Error code - enum: - - AddressError - error: - type: string - description: Human-readable error message - example: Address cannot be used - required: - - name - InvalidTransferId: - title: Invalid transfer ID - allOf: - - $ref: '#/components/schemas/InvalidId1' - - properties: - name: - type: string - description: Error code - enum: - - InvalidTransferId - required: - - name - InvalidUserId: - title: Invalid user ID - allOf: - - $ref: '#/components/schemas/InvalidId1' - - properties: - name: - type: string - description: Error code - enum: - - InvalidUserId - required: - - name - InvalidWalletId: - title: Invalid wallet id - allOf: - - $ref: '#/components/schemas/InvalidId1' - - properties: - name: - type: string - description: Error code - enum: - - InvalidWalletId - required: - - name - Key: - title: Multisig - allOf: - - $ref: '#/components/schemas/KeyCommon' - - type: object - properties: - pub: - $ref: '#/components/schemas/Pub' - required: - - id - - type - KeyCommon: - type: object - properties: - encryptedPrv: - type: string - description: The encrypted private key - id: - $ref: '#/components/schemas/Id' - isBitGo: - type: boolean - description: True, if this key is owned by BitGo - example: false - source: - $ref: '#/components/schemas/KeySource' - type: - $ref: '#/components/schemas/KeyType' - required: - - id - - type - KeyCreateCoinSpecific: - type: object - properties: - lnbtc: - $ref: '#/components/schemas/KeyCreateCoinSpecificLnbtc' - tlnbtc: - $ref: '#/components/schemas/KeyCreateCoinSpecificLnbtc' - KeyCreateCoinSpecificLnbtc: - type: object - properties: - purpose: - allOf: - - $ref: '#/components/schemas/KeyPurpose' - description: The purpose of the key. - KeyPurpose: - type: string - enum: - - userAuth - - nodeAuth - example: userAuth - KeyShare: - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The source of the key share. - to: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The recipient of the key share. - publicShare: - type: string - description: Public part of the share concatenated with chain code (64+64 characters hex string). - privateShare: - type: string - description: Private part of the share concatenated with chain code (64+64 characters hex string). Depending on who the source and the recipient are, the share might be encrypted against the recipient's public key. - privateShareProof: - type: string - description: The certificate of the private share, signed by the source of the key share. - vssProof: - type: string - description: The verifiable shamir share verification value - required: - - from - - to - - publicShare - - privateShare - KeyShareResponse: - allOf: - - $ref: '#/components/schemas/KeyShare' - - type: object - properties: - hsmSig: - type: string - description: openPGP ASCII armored public key format string. Can be used to ensure that the "u" value came from the HSM. This contains the HSM signature/certification (signed by bitgo GPG key pair) of the public form of the "u" value and notation packets that indicate the commonPublicKey and the key ids of the two GPG keys used to share wrapping (userGPGPublicKey and backupGPGPublicKey). - required: - - hsmSig - KeySource: - type: string - enum: - - backup - - bitgo - - cold - - user - example: user - KeyTSS: - title: MPC - allOf: - - $ref: '#/components/schemas/KeyCommon' - - type: object - properties: - commonKeychain: - type: string - description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the concatenation of the common public key (32-byte) with the common chaincode (32-byte) as a hex string. - commonPub: - type: string - description: The common public key. This value is required to be set for BLS keys when the source is either "user" or "backup". Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. - required: - - id - - type - - source - KeyTSSCreated: - title: MPC key - description: This schema contains KeyTSS attributes and several ephemeral fileds which are only available during the key creation since they are not stored. - allOf: - - $ref: '#/components/schemas/KeyTSS' - - type: object - properties: - commonKeychainSig: - type: string - description: openPGP ASCII armored pubkey format string. This contains the HSM signature/certification (signed by BitGo MPC GPG key pair) of the commonKeychain. This is necessary for verification purposes to ensure that the commonKeychain value came from BitGo's HSM. Used for full custody/OVC operations. - commonPublicKeySig: - type: string - description: OpenPGP ASCII pubkey armoured string containing HSM signature certification. Allows to ensure that commonPublicKey came from the HSM - keyShares: - type: array - items: - $ref: '#/components/schemas/KeyShareResponse' - walletHSMGPGPublicKeySigs: - type: string - description: GPG ASCII armored public key format that consists of HSM signature/certification and GPG notation data appended to the key signature subpackets - required: - - id - - type - - source - KeyType: - type: string - enum: - - tss - - independent - - blsdkg - default: independent - description: A value from a string enum denoting what kind of key this is. Defaults to “independent” indicating an on-chain key is requested. If set to “tss” this tells us that a “tss” key is requested. - example: tss - KeysResponse: - type: object - properties: - keys: - type: array - items: - oneOf: - - $ref: '#/components/schemas/Key' - - $ref: '#/components/schemas/KeyTSS' - required: - - keys - ListBankAccountsResponse: - type: object - properties: - bankAccounts: - type: array - items: - $ref: '#/components/schemas/BankAccountResponse' - ListWalletSharesResponse: - type: object - properties: - incoming: - type: array - items: - $ref: '#/components/schemas/WalletShare1' - outgoing: - type: array - items: - $ref: '#/components/schemas/WalletShare1' - LockedSession: - type: object - properties: - created: - type: string - format: date-time - expires: - type: string - format: date-time - id: - $ref: '#/components/schemas/Id' - ip: - allOf: - - $ref: '#/components/schemas/Ip' - description: IP address of the client that requested this access token - ipRestrict: - type: array - items: - type: string - format: ipv4 - description: IP addresses of clients that are allowed to use this token - origin: - type: string - example: test.bitgo.com - description: BitGo environment that issued this token. The token is only valid in this environment. - scope: - allOf: - - $ref: '#/components/schemas/Scope' - description: Session permissions - user: - $ref: '#/components/schemas/Id' - required: - - created - - expires - - id - - origin - - scope - - user - MemoObject: - type: object - properties: - type: - type: string - value: - type: string - description: | - Memo for Stellar or EOS. Type is only required for memos in Stellar transactions. The memo contains optional extra information that can also be used to identify payments in Stellar or EOS. - MemoString: - type: string - maxLength: 100 - description: A memo for this specific transaction. This format is only available for Stacks. - Message1: - type: object - properties: - coin: - type: string - description: The coin associated with the wallet. - combineSigShare: - type: string - createdDate: - description: The date the message was created. - type: string - format: date-time - messageEncoded: - description: The message encoded as a hex string. - type: string - messageRaw: - description: The message as human readable text. - type: string - signatureShares: - type: array - items: - $ref: '#/components/schemas/SignatureShare' - state: - $ref: '#/components/schemas/TransactionRequestState1' - txHash: - type: string - description: The signed hex of the message. - updatedDate: - description: The date when the message state was updated. - type: string - format: date-time - required: - - messageRaw - - state - MultisigTypeVersion1: - type: string - enum: - - MPCv2 - MutabilityConstraint1: - type: string - description: | - Specifies whether a BitGo admin can change 'lockDate' - * 'managed' - Not locked, but requires approval from a BitGo admin to change - * 'permanent' - 'lockDate' cannot be changed - * 'sticky' - Not included in bulk unlock, but 'lockDate' can be individually changed - enum: - - managed - - permanent - - sticky - Name: - type: object - properties: - first: - type: string - example: Jane - full: - type: string - example: Jane Doe - last: - type: string - example: Doe - NearStakeIntent1: - title: Near Stake - allOf: - - $ref: '#/components/schemas/StakeIntent2' - - type: object - properties: - recipients: - type: array - items: - $ref: '#/components/schemas/RecipientEntry1' - required: - - recipients - NearUnstakeIntent1: - title: Near Unstake - allOf: - - $ref: '#/components/schemas/UnstakeIntent2' - - type: object - properties: - recipients: - type: array - items: - $ref: '#/components/schemas/RecipientEntry1' - required: - - recipients - NearWithdrawIntent1: - title: Near Claim Unstake - allOf: - - $ref: '#/components/schemas/WithdrawIntent2' - - type: object - properties: - recipients: - type: array - items: - $ref: '#/components/schemas/RecipientEntry1' - required: - - recipients - NextBatchPrevId: - type: string - format: uuid - example: 585951a5df8380e0e3063e9f - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. - NonParticipationTransactionBuildRequest: - title: Non participation transaction - allOf: - - $ref: '#/components/schemas/BuildParams' - - type: object - properties: - nonParticipation: - type: boolean - required: - - nonParticipation - NumberOrString: - oneOf: - - type: string - pattern: ^-?[\d\.]+$ - example: '1.5' - - type: number - PendingApproval1: - title: Pending approval - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - wallet: - $ref: '#/components/schemas/Id' - enterprise: - $ref: '#/components/schemas/Id' - organization: - $ref: '#/components/schemas/Id' - creator: - $ref: '#/components/schemas/Id' - createDate: - type: string - format: date-time - info: - anyOf: - - $ref: '#/components/schemas/PendingApprovalTransactionRequest' - - $ref: '#/components/schemas/PendingApprovalTransactionRequestFull1' - - $ref: '#/components/schemas/PendingApprovalUserChangeRequest' - - $ref: '#/components/schemas/PendingApprovalPolicyRuleRequest' - - $ref: '#/components/schemas/PendingApprovalUpdateApprovalsRequiredRequest' - - $ref: '#/components/schemas/PendingApprovalEnterpriseModificationResponse1' - - $ref: '#/components/schemas/PendingApprovalEnterpriseInviteRequest' - state: - $ref: '#/components/schemas/PendingApprovalState1' - scope: - description: What kind of entity the Pending Approval is tied to - type: string - enum: - - enterprise - - wallet - userIds: - description: All the Users who should see this Pending Approval - type: array - items: - $ref: '#/components/schemas/Id' - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - walletLabel: - type: string - resolvers: - type: array - items: - type: object - properties: - user: - type: string - date: - type: string - resolutionType: - type: string - enum: - - approved - - awaitingSignature - - pending - - pendingBitGoAdminApproval - - pendingCryptographicApproval - - pendingCustodianApproval - - pendingFinalApproval - - pendingIdVerification - - pendingVideoApproval - - processing - - rejected - signatures: - type: array - items: - type: string - videoApprover: - type: string - videoLink: - type: string - videoException: - type: string - required: - - user - - date - - resolutionType - - signatures - addressLabels: - type: array - items: - $ref: '#/components/schemas/PendingApprovalAddressLabel' - PendingApprovalEnterpriseModificationResponse1: - title: Enterprise modification request - type: object - properties: - policyRuleRequest: - type: object - properties: - action: - type: string - updateEnterpriseRequest: - type: object - properties: - type: - type: string - enum: - - updateEnterpriseRequest - action: - type: string - enum: - - add - - remove - permission: - type: string - enum: - - admin - userId: - type: string - email: - allOf: - - $ref: '#/components/schemas/Email' - description: E-Mail address of newly added users - type: - type: string - enum: - - policyRuleRequest - PendingApprovalState1: - anyOf: - - $ref: '#/components/schemas/PendingApprovalStatePending1' - - $ref: '#/components/schemas/PendingApprovalStateResolved' - PendingApprovalStatePending1: - title: Pending - type: string - enum: - - pending - - awaitingSignature - - pendingFinalApproval - - pendingCustodianApproval - - pendingVideoApproval - - pendingIdVerification - PendingApprovalTransactionRequestFull1: - title: Transaction request (full) - type: object - properties: - transactionRequestFull: - type: object - properties: - txRequestId: - type: string - policyUniqueId: - $ref: '#/components/schemas/Id' - verificationItems: - type: array - items: - type: string - verificationRuleId: - type: string - videoApprovers: - $ref: '#/components/schemas/IdArray' - walletRebalanceEventId: - $ref: '#/components/schemas/Id' - txRequest: - $ref: '#/components/schemas/TransactionRequest' - required: - - txRequestId - type: - type: string - enum: - - transactionRequestFull - PendingApprovals: - title: Pending approvals - type: object - properties: - pendingApprovals: - type: array - items: - $ref: '#/components/schemas/PendingApproval1' - Policy1: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - date: - type: string - format: date-time - label: - type: string - latest: - type: boolean - rules: - type: array - items: - $ref: '#/components/schemas/PolicyRule' - version: - type: integer - required: - - id - - latest - - rules - - version - PolicyRule: - type: object - properties: - id: - type: string - lockDate: - type: string - description: The time at which this rule becomes immutable - format: date-time - mutabilityConstraint: - $ref: '#/components/schemas/MutabilityConstraint1' - coin: - $ref: '#/components/schemas/Coin' - type: - $ref: '#/components/schemas/PolicyRuleTriggers' - condition: - $ref: '#/components/schemas/PolicyRuleConditions' - action: - $ref: '#/components/schemas/PolicyRuleActions' - required: - - id - - lockDate - - type - - action - PolicyRuleUpdateConditions: - title: Type - description: Parameters for the type - anyOf: - - title: Advanced whitelist - type: object - properties: - add: - $ref: '#/components/schemas/AdvancedListRuleEntry1' - required: - - add - - title: Whitelist - type: object - properties: - add: - description: Address to add to the list - oneOf: - - type: string - - $ref: '#/components/schemas/Id' - metaData: - type: object - description: An object with arbitrary metadata about the added address. - properties: - addedBy: - type: string - description: Text indicating who added this address to the whitelist - additionalProperties: true - required: - - add - - title: Remove address from whitelist - type: object - properties: - remove: - description: Address to remove from the list - oneOf: - - type: string - - $ref: '#/components/schemas/Id' - - $ref: '#/components/schemas/AdvancedListRuleEntry1' - required: - - remove - - type: object - PsbtHex: - type: string - description: BIP174 serialization of a PSBT - example: 70736274ff0100530100000001ccf3d1b853dcff06a939afef91d8b178d74028516bb831d77fcfd5b1ce6715f00000000000ffffffff01f0b9f5050000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387000000004f010488b21e0000000000000000003a922e29f0c8eb0db2a60484cbdcb631f6b107c9caae3ffdcf3e7d2ec1f6bcd00312148715f361dab685a669d42431e5d6d3f973404dab9c9fd1b950b279ad763404cc18ae084f010488b21e0000000000000000006d1d656d3ddd91c194c04565a3603702a21016ced14a265f38982d6275e67b6403d3bac2313a7c6b21cbb11b14b0d10341f922c0a403a8bd8c87f0dc820f35af6e04f65cd8694f010488b21e000000000000000000cb04fd63ab34d90fe6466b880e2a02ccf8a863374312991af8911b1aaab443340336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b62909504f2ef0389000100c00100000000010101010101010101010101010101010101010101010101010101010101010101010000000000ffffffff0100e1f5050000000017a914d909474404c124a3d04c3fbff61faa49cf43c58b87024730440220360d495738071ed6930084713724262ef55d710e06d85f90b56727ab83c91b5702200ae452a812717ef0ac8866989ffc963d88c14f9694fa57ef046dd699bea1d5da01210247496797efe8b56780cd9bee19ac3d916624829cacd3f1236fa608000193e54d0000000001012000e1f5050000000017a914d909474404c124a3d04c3fbff61faa49cf43c58b87010469522102cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b42092102d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab210344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f153ae220602cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b420914f2ef038900000000000000000000000000000000220602d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab14cc18ae080000000000000000000000000000000022060344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f114f65cd8690000000000000000000000000000000000010069522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae2202035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf214cc18ae0800000000000000000100000000000000220203e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b14f65cd86900000000000000000100000000000000220203f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f14f2ef03890000000000000000010000000000000000 - Pub: - type: string - description: public part of a key pair - example: xpub661MyMwAqRbcGMVhmc7wqQRYMtcX9LAvSj1pjB213y5TsrkV2uuzJjWnjBrT1FUeNWGPjaVm5p7o6jdNcQJrV1cy3a1R8NQ9m7LuYKA8RpH - RecipientEntry1: - type: object - properties: - address: - $ref: '#/components/schemas/TxAddress' - amount: - $ref: '#/components/schemas/Amount2' - data: - type: string - tokenData: - $ref: '#/components/schemas/TokenData1' - required: - - address - - amount - RecipientTokenData: - type: object - properties: - tokenName: - type: string - description: Name of token, as represented in BitGoJS Statics package. - tokenContractAddress: - type: string - description: Address of token or smart contract. Required if token is unsupported by BitGo. Not required if passing "tokenName". - decimalPlaces: - type: integer - description: Relevant for fungible tokens. Not required if passing "tokenName". Defaults to smallest base unit. - tokenType: - type: string - description: Token standard - enum: - - ERC20 - - ERC721 - - ERC1155 - tokenId: - type: string - description: ID of token to use when constructing transaction or calldata. Required for NFTs. - tokenQuantity: - type: string - description: Quantity of token to use when constructing calldata (amount to transfer). - RejectReshare: - type: object - properties: - userId: - $ref: '#/components/schemas/Id' - required: - - userId - ResendShareEmailResponse: - type: object - properties: - resent: - type: boolean - ReservedUnspent: - type: object - description: a ReservedUnspent object - properties: - id: - type: string - description: The id of the unspent in the form : - example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8:2 - walletId: - $ref: '#/components/schemas/Id' - expireTime: - type: string - format: date-time - userId: - $ref: '#/components/schemas/Id' - required: - - id - - walletId - - expireTime - - userId - STXStakingOptions: - title: STX - type: object - properties: - contractName: - type: string - description: The STX staking contract name. Use pox-3. - default: pox-3 - functionName: - type: string - description: STX staking contract function. - oneOf: - - type: string - description: Function name used to delegate funds. - default: delegate-stx - - type: string - description: Function name used to revoke delegated funds. - default: revoke-delegate-stx - functionArgs: - type: array - description: The 4 Objects are required and in the order expressed. - items: - anyOf: - - title: uint128 - type: object - properties: - type: - type: string - default: uint128 - description: Type of argument. Use the default. - val: - type: string - description: Amount in micro-stx - - title: principal - type: object - properties: - type: - type: string - default: principal - description: Type of argument. Use the default. - val: - type: string - description: Address of the validator - - title: optional - type: object - properties: - type: - type: string - default: optional - description: Type of argument. Use the default. - val: - type: string - description: The number of cycles that the delegation will last. This is a mandatory field that must be greater than 1. - - title: optional - type: object - properties: - type: - type: string - default: optional - description: Type of argument. Use the default. - val: - type: object - properties: - type: - type: string - default: tuple - description: Type of argument. Use the default. - val: - type: array - description: The 2 objects are required and in the order expressed. - items: - anyOf: - - title: hash - type: object - properties: - key: - type: string - default: hashbytes - description: Type of argument. Use the default. - type: - type: string - default: buffer - description: Type of argument. Use the default. - val: - type: string - description: The BTC Address hash. - - title: version - type: object - properties: - key: - type: string - default: version - description: Type of argument. Use the default. - type: - type: string - default: buffer - description: Type of argument. Use the default. - val: - type: string - description: The BTC Address version. - SendLabel: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - address: - $ref: '#/components/schemas/AddressString3' - enterpriseId: - $ref: '#/components/schemas/Id' - label: - type: string - maxLength: 250 - required: - - id - - coin - - address - - enterpriseId - - label - SendTransaction: - title: Sent Transaction - allOf: - - $ref: '#/components/schemas/BuildParams' - - type: object - description: Include buildParams from the build request to be stored in case of rebuilding. - type: object - description: This endpoint broadcasts half-signed transactions. - properties: - comment: - type: string - description: An optional memo for the transaction. - maxLength: 256 - halfSigned: - type: object - properties: - txHex: - type: string - description: The half-signed transaction. The request must include this or a txHex. - txHex: - type: string - description: The half-signed, serialized transaction hex. Alternative to sending halfSigned. - sequenceId: - type: string - description: Your own unique ID - videoApprovers: - $ref: '#/components/schemas/VideoApprovers' - Session1: - type: object - properties: - created: - type: string - format: date-time - expires: - type: string - format: date-time - id: - $ref: '#/components/schemas/Id' - ip: - allOf: - - $ref: '#/components/schemas/Ip' - description: IP address of the client that requested this access token - ipRestrict: - type: array - items: - type: string - format: ipv4 - description: IP addresses of clients that are allowed to use this token - origin: - type: string - example: test.bitgo.com - description: BitGo environment that issued this token - scope: - allOf: - - $ref: '#/components/schemas/Scope' - description: Session permissions - unlock: - allOf: - - $ref: '#/components/schemas/Unlock1' - description: The Unlock object, returned if this session is currently unlocked. - user: - $ref: '#/components/schemas/Id' - required: - - created - - expires - - id - - origin - - scope - - user - ShareWalletRequest: - type: object - properties: - permission: - type: string - description: | - Comma-separated list of privileges for a wallet. Includes: - - - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. - - 'freeze' - Can freeze a wallet, disabling all withdrawals. - - 'spend' - Can initiate withdrawals and generate new receive addresses. - - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). - - 'view' - Can view balances and transactions. - - Permissions don't overlap. Required parameter if 'reshare' is false. - enum: - - admin - - spend - - trade - - view - example: spend,view - message: - type: string - description: User readable message to display to the share recipient - reshare: - type: boolean - description: Flag for reinviting a user to the wallet. This is required if the invitee has already been invited to the wallet, but has changed their password and needs a new invite - disableEmail: - type: boolean - description: Flag for disabling invite notification email - user: - $ref: '#/components/schemas/Id' - keychain: - $ref: '#/components/schemas/WalletShareKeychain' - skipKeychain: - type: boolean - description: If true, allows creating wallet shares without a sharing a key (keychain) when the wallet is shared with spend permission. - required: - - user - ShareWalletResponse: - type: object - description: Wallet share object - properties: - id: - allOf: - - $ref: '#/components/schemas/Id' - description: Wallet share id - coin: - allOf: - - $ref: '#/components/schemas/Coin' - description: Coin of the wallet - wallet: - allOf: - - $ref: '#/components/schemas/Id' - description: Wallet id - walletLabel: - $ref: '#/components/schemas/WalletLabel' - fromUser: - allOf: - - $ref: '#/components/schemas/Id' - description: Id of the user sharing the wallet - toUser: - allOf: - - $ref: '#/components/schemas/Id' - description: Id of the user receiving the share - permissions: - type: string - allOf: - - $ref: '#/components/schemas/WalletPermission' - message: - type: string - description: Message for the user receiving the share - state: - type: string - allOf: - - $ref: '#/components/schemas/WalletShareState1' - description: State of the share - enterprise: - allOf: - - $ref: '#/components/schemas/Id' - description: If the wallet belongs to an enterprise, the id of that enterprise - pendingApprovalId: - allOf: - - $ref: '#/components/schemas/Id' - description: If the share generated a pending approval, the id of that pending approval - keychain: - $ref: '#/components/schemas/WalletShareKeychain' - ShortCountryCode: - type: string - description: Two-letter country code, as specified by ISO 3166-1 alpha-2 - minLength: 2 - maxLength: 2 - example: US - enum: - - AD - - AE - - AF - - AG - - AI - - AL - - AM - - AO - - AQ - - AR - - AS - - AT - - AU - - AW - - AX - - AZ - - BA - - BB - - BD - - BE - - BF - - BG - - BH - - BI - - BJ - - BL - - BM - - BN - - BO - - BQ - - BR - - BS - - BT - - BV - - BW - - BY - - BZ - - CA - - CC - - CD - - CF - - CG - - CH - - CI - - CK - - CL - - CM - - CN - - CO - - CR - - CU - - CV - - CW - - CX - - CY - - CZ - - DE - - DJ - - DK - - DM - - DO - - DZ - - EC - - EE - - EG - - EH - - ER - - ES - - ET - - FI - - FJ - - FK - - FM - - FO - - FR - - GA - - GB - - GD - - GE - - GF - - GG - - GH - - GI - - GL - - GM - - GN - - GP - - GQ - - GR - - GS - - GT - - GU - - GW - - GY - - HK - - HM - - HN - - HR - - HT - - HU - - ID - - IE - - IL - - IM - - IN - - IO - - IQ - - IR - - IS - - IT - - JE - - JM - - JO - - JP - - KE - - KG - - KH - - KI - - KM - - KN - - KP - - KR - - KW - - KY - - KZ - - LA - - LB - - LC - - LI - - LK - - LR - - LS - - LT - - LU - - LV - - LY - - MA - - MC - - MD - - ME - - MF - - MG - - MH - - MK - - ML - - MM - - MN - - MO - - MP - - MQ - - MR - - MS - - MT - - MU - - MV - - MW - - MX - - MY - - MZ - - NA - - NC - - NE - - NF - - NG - - NI - - NL - - 'NO' - - NP - - NR - - NU - - NZ - - OM - - PA - - PE - - PF - - PG - - PH - - PK - - PL - - PM - - PN - - PR - - PS - - PT - - PW - - PY - - QA - - RE - - RO - - RS - - RU - - RW - - SA - - SB - - SC - - SD - - SE - - SG - - SH - - SI - - SJ - - SK - - SL - - SM - - SN - - SO - - SR - - SS - - ST - - SV - - SX - - SY - - SZ - - TC - - TD - - TF - - TG - - TH - - TJ - - TK - - TL - - TM - - TN - - TO - - TR - - TT - - TV - - TW - - TZ - - UA - - UG - - UM - - US - - UY - - UZ - - VA - - VC - - VE - - VG - - VI - - VN - - VU - - WF - - WS - - YE - - YT - - ZA - - ZM - - ZW - SignatureShare: - type: object - properties: - from: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The source of the signature share. - to: - allOf: - - $ref: '#/components/schemas/KeyShareSource' - description: The recipient of the signature share. - share: - type: string - description: The signature share. - required: - - from - - to - - share - SimulateWalletWebhookRequestBody: - oneOf: - - title: Transfer - type: object - properties: - transferId: - allOf: - - $ref: '#/components/schemas/Id' - description: The ID of a transfer on the specified wallet. This must be provided if the webhook is of type 'transfer'. - required: - - transferId - - title: Pending Approval - type: object - properties: - pendingApprovalId: - allOf: - - $ref: '#/components/schemas/Id' - description: The ID of a pending approval on the specified wallet. This must be provided if the webhook is of type 'pendingApproval'. - required: - - pendingApprovalId - - title: Transaction request - type: object - properties: - txRequestId: - type: string - description: The txRequestId of a transaction request on the specified wallet. This must be provided if the webhook is of type 'txRequest' or 'txRequestTransaction'. - required: - - txRequestId - TokenData1: - type: object - properties: - tokenType: - type: string - description: The type of standard of the token. - example: ERC721 - tokenQuantity: - type: string - description: The quantity of token to transfer (should be 1 for ERC721). - example: '101' - tokenContractAddress: - type: string - description: Address of the token contract which is necessary if the token is not supported on WP. - example: '0x3d8e90d5F403a0A18dfeeAd36E30EF95D5E1ad3a' - tokenName: - type: string - description: Name of the token as it is supported on WP. - example: tpolygon:name - tokenId: - type: string - description: Id of the token to be transferred which is required for NFTs. - example: '123' - decimalPlaces: - type: number - description: Number of decimal places the token uses (for fungible tokens unsupported in WP). - example: 18 - Transaction: - type: object - properties: - state: - $ref: '#/components/schemas/TransactionState1' - unsignedTx: - allOf: - - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' - description: Holds the unsigned transaction for this transaction in a tx-request. - signatureShares: - type: array - description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. Holds the signature shares for this transaction in a tx-request. - items: - $ref: '#/components/schemas/SignatureShare' - commitmentShares: - type: array - description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. Holds the commitment shares for this transaction in a tx-request. - items: - $ref: '#/components/schemas/CommitmentShare' - txHash: - type: string - description: The hash of the transaction from the TxRequest that has been signed and is pending broadcast. - bitgoPaillierChallenge: - description: BitGo-to-user paillier challenge. Required when signing with ECDSA MPC wallets. - type: object - properties: - p: - type: array - items: - type: string - required: - - state - - unsignedTx - TransactionBuildRequest: - title: Withdrawal - allOf: - - $ref: '#/components/schemas/BuildParams' - - type: object - properties: - recipients: - type: array - items: - type: object - properties: - amount: - allOf: - - $ref: '#/components/schemas/RecipientAmount' - description: String representation of the amount to send in base units (satoshis/litoshis/zatoshis/duffs). For doge, only string is allowed. Passing in 'max' will send the recipient the maximum amount available, minus fees and amounts for other recipients. Only a single recipient with a 'max' amount is allowed. - address: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: The address to send to - memo: - anyOf: - - $ref: '#/components/schemas/MemoString' - - $ref: '#/components/schemas/MemoObject' - description: A list of recipient addresses and amounts. Must be present but empty for Child-Pays-For-Parent transactions. - txFormat: - $ref: '#/components/schemas/UtxoTransactionFormat' - required: - - recipients - TransactionBuildResult: - type: object - properties: - keyDerivationPath: - type: string - TransactionInitiateRequest: - allOf: - - $ref: '#/components/schemas/BuildParams' - - type: object - properties: - recipients: - type: array - items: - type: object - properties: - amount: - allOf: - - $ref: '#/components/schemas/RecipientAmount' - description: String representation of the amount to send in base units (satoshis/litoshis/zatoshis/duffs). For doge, only string is allowed. Passing in 'max' will send the recipient the maximum amount available, minus fees and amounts for other recipients. Only a single recipient with a 'max' amount is allowed. - address: - allOf: - - $ref: '#/components/schemas/AddressString3' - description: The address to send to - memo: - anyOf: - - $ref: '#/components/schemas/MemoString' - - $ref: '#/components/schemas/MemoObject' - description: A list of recipient addresses and amounts. Must be present but empty for Child-Pays-For-Parent transactions. - TransactionRequest: - anyOf: - - $ref: '#/components/schemas/TransactionRequestLite1' - - $ref: '#/components/schemas/TransactionRequestFull1' - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - TransactionRequestBase1: - type: object - properties: - txRequestId: - type: string - description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. - version: - type: number - description: The version of the document. Data changes are done only with inserts and incrementing the version. - latest: - type: boolean - description: A boolean flag that indicates whether the document is the latest version of the TxRequest. - walletId: - type: string - description: The id of the Wallet the TxRequest is for. - walletType: - allOf: - - $ref: '#/components/schemas/WalletTypePublic' - description: The type describes who owns the keys to the wallet associated to the TxRequest. - enterpriseId: - type: string - description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. - state: - $ref: '#/components/schemas/TransactionRequestState1' - date: - allOf: - - $ref: '#/components/schemas/DateTime' - description: The date and time this version of the TxRequest document was created. - createdDate: - allOf: - - $ref: '#/components/schemas/DateTime' - description: The date and time the version 1 TxRequest document was created. - userId: - type: string - description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. - initiatedBy: - type: string - description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). - updatedBy: - type: string - description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. - intent: - $ref: '#/components/schemas/TransactionRequestIntent' - intents: - type: array - items: - $ref: '#/components/schemas/TransactionRequestIntent' - pendingApprovalId: - type: string - description: The id of the Pending Approval that was created for the TxRequest if one was required. - isCanceled: - type: boolean - description: True, if the transaction request is canceled. - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - createdDate - - userId - - initiatedBy - - updatedBy - - intents - TransactionRequestFull1: - title: Full - allOf: - - $ref: '#/components/schemas/TransactionRequestBase1' - - type: object - properties: - transactions: - description: Transaction information. - type: array - items: - $ref: '#/components/schemas/Transaction' - messages: - description: Messages for the transaction request. - type: array - items: - $ref: '#/components/schemas/Message1' - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - - transactions - TransactionRequestLite1: - title: Lite - allOf: - - $ref: '#/components/schemas/TransactionRequestBase1' - - type: object - properties: - unsignedTxs: - type: array - description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. - items: - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' - signatureShares: - type: array - description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. - items: - $ref: '#/components/schemas/SignatureShare' - commitmentShares: - type: array - description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. - items: - $ref: '#/components/schemas/CommitmentShare' - txHashes: - type: array - items: - type: string - description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. - required: - - txRequestId - - version - - latest - - walletId - - state - - date - - userId - - intent - TransactionRequestState1: - type: string - enum: - - initialized - - pendingApproval - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - pendingUserSignature - - pendingDelivery - - signed - - delivered - - canceled - - rejected - - failed - TransactionResponse: - type: object - properties: - transfer: - $ref: '#/components/schemas/Transfer' - txid: - type: string - description: The transaction's unique identifier - tx: - type: string - description: The encoded transaction, either base64 for XLM or hex for other coins - status: - $ref: '#/components/schemas/TransferState' - TransactionState1: - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - Transfer: - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - id: - $ref: '#/components/schemas/Id' - wallet: - $ref: '#/components/schemas/Id' - enterprise: - $ref: '#/components/schemas/Id' - txid: - $ref: '#/components/schemas/TxId' - txidType: - type: string - description: The type of the transaction id - enum: - - transactionHash - - blockHash - height: - type: integer - description: The height of the block this Transfer was confirmed in (999999999 if unconfirmed) - heightId: - type: string - description: The unique height id of the block - date: - type: string - format: date-time - description: The date this Transfer was last updated - confirmations: - type: integer - description: The number of blocks that have been confirmed since this Transfer's block was confirmed - type: - type: string - description: Defines whether or not this Transfer was sent or received by the user - enum: - - send - - receive - value: - type: integer - description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) - valueString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The total value (in base units) sent by this Transfer represented as a String - intendedValueString: - description: A string representation (in base units) of the initial value for the transfer. This is present because when a transaction fails on chain, its value is mutated to be zero. This string is immutable and will always be the intended value of the initial transfer regardless of the final state of the transaction. - allOf: - - $ref: '#/components/schemas/IntegerString' - baseValue: - type: integer - description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. Instead, use baseValueWithoutFees. - baseValueString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. Instead, use baseValueWithoutFees. - baseValueWithoutFees: - type: integer - description: The value (in base units) sent by this transfer excluding network fees. - baseValueWithoutFeesString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The value (in base units) sent by this transfer, excluding network fees, represented as a string - feeString: - type: string - description: The Transfer's fee (in base units) represented as a String - payGoFee: - type: integer - description: The Transfer's BitGo fee (in base units) - payGoFeeString: - type: string - description: The Transfer's BitGo fee (in base units) represented as a String - usd: - type: number - description: The amount of USD of this Transfer (will be negative if it's a send) - usdRate: - type: number - description: The USD price at the time this Transfer was created - state: - $ref: '#/components/schemas/TransferState' - tags: - type: array - description: The tags to be used on this Transfer (used in Policies) - items: - $ref: '#/components/schemas/Id' - history: - type: array - description: An audit log of events that have happened to the Transfer during its lifecycle - items: - type: object - properties: - date: - type: string - format: date-time - description: The date of this history object - user: - $ref: '#/components/schemas/Id' - action: - type: string - enum: - - created - - signed - - unconfirmed - - confirmed - - approved - - commented - - removed - - failed - - rejected - comment: - type: string - description: If this history object is of action 'commented', this is the comment from the user - comment: - type: string - description: A comment from the user - vSize: - type: integer - description: The size of the transaction - coinSpecific: - type: object - description: Transfer fields specific to each coin type - sequenceId: - type: string - description: | - A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. - entries: - type: array - description: An array of objects describing the change in address balances made as a result of this Transfer - items: - type: object - properties: - address: - type: string - description: An address affected by this Transfer - example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ - wallet: - allOf: - - $ref: '#/components/schemas/Id' - description: Only visible when the user has access to the wallet - value: - type: integer - description: The change (in base units) in the address's balance - valueString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The change (in base units) in the address's balance represented as a String - isChange: - type: boolean - description: True if this address is a change address (only exists for UTXO coins) and if this is a 'sent' Transfer - isPayGo: - type: boolean - description: True if this address is the BitGo PayGo wallet - token: - type: string - description: If this is a token entry, the token's symbol - example: omg - label: - type: string - description: Names of addresses given by the user. - failed: - type: boolean - description: true if this entry is failed. - associatedNativeCoinAddress: - type: string - description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. - required: - - address - - valueString - usersNotified: - type: boolean - description: Whether BitGo already sent notifications to the users of the transfer wallet - label: - type: string - description: Address labels (if any) from entries concatenated. - replaces: - type: array - description: Transaction IDs that this transfer replaces. - items: - type: string - replacedBy: - type: array - description: Transaction IDs that replace this transfer. - items: - type: string - required: - - id - - coin - - wallet - - txid - - height - - date - - confirmations - - type - - valueString - - usd - - usdRate - - state - - tags - - history - - comment - - coinSpecific - TransferState: - type: string - example: confirmed - enum: - - confirmed - - failed - - initialized - - pendingApproval - - rejected - - removed - - replaced - - signed - - unconfirmed - TransferTokenIntent1: - title: Transfer Token - allOf: - - $ref: '#/components/schemas/BaseIntent2' - - type: object - properties: - intentType: - type: string - enum: - - transferToken - recipients: - type: array - items: - $ref: '#/components/schemas/RecipientEntry1' - TransfersResponse: - type: object - properties: - transfers: - type: array - items: - $ref: '#/components/schemas/AnnotatedTransferWithInputsOutputs' - coin: - $ref: '#/components/schemas/Coin' - nextBatchPrevId: - $ref: '#/components/schemas/NextBatchPrevId' - required: - - transfers - - coin - Trustline: - type: object - properties: - token: - type: string - description: One of the supported coin types for Stellar tokens listed in [Coin-specific-implementation](#tag/Coin-specific-implementation) - example: txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L - action: - enum: - - add - - remove - limit: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: String representation of the amount to limit in base units (stroops) - TxBase64: - type: string - description: Serialized transaction base64 (applies to XLM only) - example: AAAAAGRnXg19FteG/7zPd+jDC7LDvRlzgfFC+JrPhRep0kYiAAAAZAB/4cUAAAACAAAAAAAAAAAAAAABAAAAAQAAAABkZ14NfRbXhv+8z3fowwuyw70Zc4HxQviaz4UXqdJGIgAAAAEAAAAAmljT/+FedddnAHwo95dOC4RNy6eVLSehaJY34b9GxuYAAAAAAAAAAAehIAAAAAAAAAAAAUrgwAkAAABAOExcvVJIUJv9HuVfbV0y7lRPRARv4wDtcdhHG7QN40h5wQ2uwPF52OGQ8KY+66a1A/8lNKB75sgj2xj44s8lDQ== - TxHex: - type: string - description: Serialized transaction hex - example: 01000000000101d58f82d996dd872012675adadf4606734906b25a413f6e2ee535c0c10aef96020000000000ffffffff028de888000000000017a914c91aa24f65827eecec775037d886f2952b73cbe48740420f000000000017a9149304d18497b9bfe9532778a0f06d9fff3b3befaf870500473044022023d7210ba6d8bbd7a28b8af226f40f7235caab79156f93f9c9969fc459ea7f73022050fbdca788fba3de686b66b3501853695ff9d6f375867470207d233b099576e001000069522103d4788cda52f91c1f6c82eb91491ca76108c9c5f0839bc4f02eccc55fedb3311c210391bcef9dcc89570a79ba3c7514e65cd48e766a8868eca2769fa9242fdcc796662102ef3c5ebac4b54df70dea1bb2655126368be10ca0462382fcb730e55cddd2dd6a53aec8b11400 - Unlock1: - type: object - properties: - time: - type: string - format: date-time - expires: - type: string - format: date-time - txCount: - type: integer - txValue: - type: integer - txValueLimit: - type: number - spendingLimits: - $ref: '#/components/schemas/SpendingLimits' - UnlockRequest: - type: object - properties: - duration: - type: integer - minimum: 1 - maximum: 3600 - default: 600 - description: Number of seconds that the session will stay unlocked - otp: - $ref: '#/components/schemas/Otp' - Unspent: - type: object - properties: - id: - $ref: '#/components/schemas/UnspentId' - address: - type: string - description: The address of this unspent - example: 2MsKxhhkDo5WaLaYRGA9Cr3iSQPyXsu6Fi2 - value: - type: integer - valueString: - $ref: '#/components/schemas/IntegerString' - blockHeight: - type: integer - description: The block this Unspent was created in - date: - type: string - format: date-time - description: The date this unspent was created - example: '2017-03-25T23:01:40.248Z' - coinbase: - type: boolean - description: True if this unspent came from the coinbase transaction - wallet: - $ref: '#/components/schemas/Id' - fromWallet: - $ref: '#/components/schemas/Id' - chain: - type: integer - description: The type of this unspent's address (P2SH, P2WSH, etc...) - example: 0 - index: - type: integer - description: A monotonic counter used when creating new addresses - redeemScript: - type: string - description: The Script program used to cryptographically verify spending this unspent - example: 522102f1e990044d2a8be43d5b500bbdcb36277b97a4b07e01c5101ae8ec1568bfd6532103dab7dc82f2fc8c28200c1bdeca9c4cf181e0ca257395829cbd599395048afb57210205422e711827d8356f2fb75334d863941dd7eb45bd5788fa231dc5fa755135b653ae - witnessScript: - type: string - description: The segwit Script program used to cryptographically verify spending this unspent - example: 52210351311cd81144e6cbdba561d24dfc22644cb02d053339d4beace03231b3be4f372103a8d0c1a375b9ee1a2411f9f8e18373be7f228b18260f63bbfca48809170ed08b2103c3bd8bd074657bbe9ee6714b31a4a54b6fd5b5cda0e1030122f9bf46b5034f6b53ae - isSegwit: - type: boolean - UnspentId: - type: string - description: The id of the unspent in the form : - example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8:2 - UpdateBankAccountRequest: - type: object - description: Updates some fields on a bank account. The server only allows updating of bank accounts that have their verificationState set to 'rejected' or 'approved'. Does not allow updating of critical fields like accountNumber, enterpriseId, id, routingNumber, swiftCode. - properties: - address1: - type: string - example: 2390 El Camino Real - address2: - type: string - example: Palo Alto, CA 94306 - address3: - type: string - example: '' - name: - type: string - example: America California Bank - owner: - type: object - description: Bank account owner - properties: - name: - type: string - example: Donald E. Knuth - address1: - type: string - example: Computer Science Department - address2: - type: string - example: Stanford University - address3: - type: string - example: Stanford, CA 94305-9045 - shortCountryCode: - $ref: '#/components/schemas/ShortCountryCode' - address: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - ownerName: - type: string - example: Donald E. Knuth - ownerAddress: - type: string - example: 2390 El Camino Real, Palo Alto, CA 94306 - type: - type: string - enum: - - checking - - savings - furtherCreditTo: - type: string - example: Donald E. Knuth - intermediaryBankId: - type: string - example: 5c645791cf8eb19304292a8e3365fee3 - intermediaryBankName: - type: string - example: Bank of America - UpdateCommentRequest: - type: object - properties: - comment: - type: string - description: The new comment for the transfer. - UpdateRemovePolicyRule: - type: object - properties: - coin: - allOf: - - $ref: '#/components/schemas/Coin' - description: | - Policy rules of types 'allTx', 'coinAddressWhitelist', 'coinAddressBlacklist' and 'webhook' are recommended to - be used without setting a coin so that they will apply to all coins and tokens that could be in a wallet. If - your policy rule is of one of these types and has a coin set on it, you also need to set the coin in the body. - This is necessary because the id alone may not be sufficient for finding the correct rule to update or delete. - id: - type: string - description: The id of the rule. The combination of id and coin must be unique among rules in the policy. - type: - $ref: '#/components/schemas/PolicyRuleTriggers' - condition: - $ref: '#/components/schemas/PolicyRuleUpdateConditions' - action: - $ref: '#/components/schemas/PolicyRuleActions' - required: - - id - - type - - action - UpdateSendLabel: - type: object - properties: - label: - type: string - maxLength: 250 - description: A human-readable mapping to an address - required: - - label - User: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - isActive: - type: boolean - isFrozen: - type: boolean - freezeReason: - type: string - example: Frozen due to suspicious activity - name: - $ref: '#/components/schemas/Name' - username: - $ref: '#/components/schemas/Email' - email: - type: object - properties: - email: - $ref: '#/components/schemas/Email' - verified: - type: boolean - example: true - phone: - type: object - properties: - phone: - type: string - example: 408-718-6885 - verified: - type: boolean - example: true - country: - type: string - example: USA - state: - type: string - example: New York - UserKycState: - type: string - enum: - - approved - - flagged - - flagged_retry_allowed - - inreview - - pending - - rejected - - unverified - UserSharingKey: - type: object - required: - - email - properties: - email: - $ref: '#/components/schemas/Email' - UtxoFeeInfo: - title: UTXO - type: object - description: feeInfo (UTXO) - properties: - size: - type: integer - description: Estimated size of the transaction in bytes - example: 776 - fee: - type: integer - description: Estimated fee in base unit for the transaction - example: 38800 - feeRate: - allOf: - - $ref: '#/components/schemas/IntegerOrString' - - example: 10000 - description: | - Custom minimum fee rate in a coin's base unit per kilobyte (or virtual kilobyte)--for example, satoshis per kvByte or microAlgos per kByte. If the applied 'feeRate' does not meet a coin's required minimum transaction fee amount, the minimum is still applied (for example, 1000 sat/kvByte or a flat 1000 microAlgos). - payGoFee: - type: integer - description: BitGo fee of the transaction (in base units) - example: 0 - payGoFeeString: - type: integer - description: BitGo fee of the transaction (in base units) represented as a String - example: '0' - UtxoTransactionFormat: - type: string - description: |- - [UTXO only] Format of the returned transaction hex serialization. - 'legacy' for serialized transaction in custom bitcoinjs-lib format. 'psbt' for BIP174 serialized transaction - enum: - - legacy - - psbt - - psbt-lite - default: legacy - example: psbt - UtxoTxInfo: - title: UTXO - type: object - description: txInfo (UTXO) - properties: - changeAddresses: - type: array - items: - $ref: '#/components/schemas/AddressString3' - nOutputs: - type: integer - description: Number of outputs - example: 2 - nP2SHInputs: - type: integer - example: 0 - nSegwitInputs: - type: integer - example: 1 - unspents: - type: array - items: - $ref: '#/components/schemas/Unspent' - walletAddressDetails: - $ref: '#/components/schemas/Address2' - VerifiedKycState: - type: string - enum: - - approved - - pending - - rejected - VideoApprovers: - type: array - items: - $ref: '#/components/schemas/Id' - description: | - A list of public ids of users that should do the video id verification for the transaction that is being sent or initiated. - minItems: 1 - Wallet1: - type: object - properties: - admin: - type: object - properties: - policy: - $ref: '#/components/schemas/Policy1' - allowBackupKeySigning: - type: boolean - approvalsRequired: - $ref: '#/components/schemas/ApprovalsRequired' - balanceString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: Total balance in base units (e.g. Satoshis) - buildDefaults: - $ref: '#/components/schemas/WalletBuildDefaults' - coin: - $ref: '#/components/schemas/Coin' - coinSpecific: - $ref: '#/components/schemas/WalletCoinSpecific' - custodialWallet: - type: object - description: The associated custodial wallet object - custodialWalletId: - $ref: '#/components/schemas/Id' - deleted: - type: boolean - disableTransactionNotifications: - type: boolean - enterprise: - $ref: '#/components/schemas/Id' - freeze: - type: object - properties: - time: - type: string - format: dateTime - expires: - type: string - format: dateTime - id: - $ref: '#/components/schemas/Id' - isCold: - type: boolean - keys: - $ref: '#/components/schemas/Keys' - label: - $ref: '#/components/schemas/WalletLabel' - m: - $ref: '#/components/schemas/NumSignatures' - 'n': - $ref: '#/components/schemas/NumKeychains' - nodeId: - $ref: '#/components/schemas/Id' - receiveAddress: - $ref: '#/components/schemas/Address2' - recoverable: - type: boolean - tags: - type: array - items: - $ref: '#/components/schemas/Id' - spendableBalanceString: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: Spendable balance in base units (e.g. Satoshis) - unspentCount: - type: number - example: 100 - description: Number of unspent outputs present in the wallet - startDate: - allOf: - - $ref: '#/components/schemas/DateTime' - description: Wallet creation time - type: - $ref: '#/components/schemas/WalletTypePublic' - users: - type: array - items: - $ref: '#/components/schemas/WalletUser' - customChangeKeySignatures: - $ref: '#/components/schemas/CustomChangeKeySignatures' - multisigType: - $ref: '#/components/schemas/WalletMultisigType' - multisigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion1' - required: - - approvalsRequired - - coin - - deleted - - disableTransactionNotifications - - id - - label - WalletConsolidateUnspentsResponse: - type: object - properties: - txHex: - oneOf: - - $ref: '#/components/schemas/TxHex' - - $ref: '#/components/schemas/PsbtHex' - txInfo: - $ref: '#/components/schemas/UtxoTxInfo' - feeInfo: - $ref: '#/components/schemas/UtxoFeeInfo' - WalletCreateCoinSpecific: - type: object - properties: - xlm: - $ref: '#/components/schemas/WalletCreateCoinSpecificXlm' - txlm: - $ref: '#/components/schemas/WalletCreateCoinSpecificXlm' - lnbtc: - $ref: '#/components/schemas/WalletCreateCoinSpecificLnbtc' - tlnbtc: - $ref: '#/components/schemas/WalletCreateCoinSpecificLnbtc' - WalletCreateCoinSpecificLnbtc: - type: object - properties: - keys: - allOf: - - $ref: '#/components/schemas/Keys' - example: - - 585951a5df8380e0e304a553 - - 585951a5df8380e0e30d645c - description: Lightning wallet only. Array of two key IDs for 'userAuthKey' and 'nodeAuthKey'. - WalletCreateCoinSpecificXlm: - type: object - properties: - stellarUsername: - type: string - description: Username for the user's Stellar address. It's case insensitive, and it can't be changed after it's set. - pattern: ^[a-zA-Z0-9-_.+@]+$ - example: foo_bar@baz.com - WalletCustomAddress: - type: string - example: ivxzn3bdn4uo - description: A custom address can be provided for EOS wallets. It must be exactly 12 alphanumeric characters. - WalletLimit: - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - limit: - type: integer - count: - type: integer - minimum: 0 - isCustodial: - type: boolean - enum: - - true - required: - - coin - - count - WalletLimitsResponse: - type: array - items: - $ref: '#/components/schemas/WalletLimit' - WalletMaximumSpendable: - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - maximumSpendable: - type: string - example: '19948310' - WalletRecoveryIntent1: - title: Wallet Recovery - type: object - properties: - intentType: - type: string - sequenceId: - type: string - description: | - A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because BitGo only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. It is the responsibility of the caller to keep track of this ID. - example: abc123 - comment: - type: string - description: The 'comment' is only visible to users on the wallet and is not shared publicly. - required: - - intentType - WalletShare1: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - wallet: - $ref: '#/components/schemas/Id' - walletLabel: - $ref: '#/components/schemas/WalletLabel' - fromUser: - $ref: '#/components/schemas/Id' - toUser: - $ref: '#/components/schemas/Coin' - permission: - type: string - description: | - Comma-separated list of privileges for a wallet. Includes: - - - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. - - 'freeze' - Can freeze a wallet, disabling all withdrawals. - - 'spend' - Can initiate withdrawals and generate new receive addresses. - - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). - - 'view' - Can view balances and transactions. - - Permissions don't overlap. Required parameter if 'reshare' is false. - enum: - - admin - - spend - - trade - - view - example: spend,view - message: - type: string - description: User readable message to display to the share recipient - state: - $ref: '#/components/schemas/WalletShareState1' - enterprise: - $ref: '#/components/schemas/Id' - pendingApprovalId: - allOf: - - $ref: '#/components/schemas/Id' - description: Only set if this wallet share is currently pending approval - keychain: - description: Only set if this wallet share has an associated keychain - type: object - properties: - pub: - description: Sharing user's root public key - type: string - encryptedPrv: - description: Sharing user's private key encrypted under their wallet passphrase - type: string - fromPubKey: - description: Sharing user's derived public key which will be used to calculate the wallet sharing secret. - type: string - toPubKey: - description: Shared-to user's derived public key which will be used to calculate the wallet sharing secret. - type: string - path: - description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) - example: m/1234/1/1 - type: string - required: - - id - - coin - - wallet - - walletLabel - - fromUser - - toUser - - permissions - - message - - state - - enterprise - WalletShareKeychain: - type: object - description: Key passed to the receiving user, included if the wallet was shared with spend permission - properties: - pub: - description: One of wallet pub (onchain), commonPub (BLS) or commonKeychain (MPC) - type: string - encryptedPrv: - description: Private key of the user sharing the wallet encrypted under their wallet passphrase - type: string - fromPubKey: - description: Derived public key of the user sharing the wallet - type: string - toPubKey: - description: Derived public key of the user receiving the share - type: string - path: - description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) - example: m/1234/1/1 - type: string - WalletShareState1: - type: string - example: active - enum: - - pendingapproval - - active - - accepted - - canceled - - rejected - WalletSpending: - type: object - properties: - velocityLimitSpending: - type: array - items: - type: object - properties: - coin: - allOf: - - $ref: '#/components/schemas/Coin' - - example: btc - timeWindow: - allOf: - - $ref: '#/components/schemas/IntegerString' - - example: '3600' - description: | - String representation of the time window in seconds (ex: 0 = per transaction, 3600 = hourly, - 86400 = daily). - limitAmountString: - allOf: - - $ref: '#/components/schemas/IntegerString' - - example: '1000000' - description: | - String representation of the spending limit in base units. - amountSpentString: - allOf: - - $ref: '#/components/schemas/IntegerString' - - example: '148310' - description: | - String representation of the current amount spent in base units. Guaranteed to not lose - precision. - WalletUnspents: - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - unspents: - type: array - items: - $ref: '#/components/schemas/Unspent' - WalletsResponse: - type: object - properties: - wallets: - type: array - items: - $ref: '#/components/schemas/Wallet1' - nextBatchPrevId: - $ref: '#/components/schemas/NextBatchPrevId' - totalCount: - type: integer - required: - - wallets - WalletsWithCoinResponse: - allOf: - - $ref: '#/components/schemas/WalletsResponse' - - type: object - properties: - coin: - $ref: '#/components/schemas/Coin' - required: - - coin - Webhook1: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - label: - type: string - example: Test Webhook - created: - $ref: '#/components/schemas/DateTime' - coin: - $ref: '#/components/schemas/Coin' - type: - $ref: '#/components/schemas/WebhookTypeWallet' - url: - type: string - format: uri - example: https://your.server.com/webhook - version: - type: integer - example: 2 - description: 2 for coins running on API v2. - numConfirmations: - type: integer - example: 6 - state: - type: string - description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. - enum: - - active - - suspended - example: active - lastAttempt: - $ref: '#/components/schemas/DateTime' - failingSince: - $ref: '#/components/schemas/DateTime' - successiveFailedAttempts: - type: integer - example: 0 - walletId: - type: string - allowBlockedHosts: - type: boolean - allToken: - type: boolean - txRequestStates: - type: array - items: - $ref: '#/components/schemas/TransactionRequestState1' - description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. - txRequestTransactionStates: - type: array - items: - $ref: '#/components/schemas/TransactionState1' - description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. - identityStatus: - type: array - items: - $ref: '#/components/schemas/IdentityStatus' - description: If present, only identity status changes from the list will trigger notifications. If not present, all identity status changes will trigger notifications. - userKycState: - type: array - items: - $ref: '#/components/schemas/VerifiedKycState' - description: If present, only user kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. - enterpriseKycState: - type: array - items: - $ref: '#/components/schemas/VerifiedKycState' - description: 'If present, only enterprise kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. ' - required: - - url - WebhookNotification: - type: object - properties: - id: - $ref: '#/components/schemas/Id' - coin: - $ref: '#/components/schemas/Coin' - type: - $ref: '#/components/schemas/WebhookTypeWallet' - walletType: - type: string - example: cold - transferType: - type: string - example: receive - value: - type: integer - example: 1055354 - valueString: - type: string - example: 1055354 - baseValue: - type: integer - example: 1055354 - baseValueString: - type: string - example: 1055354 - feeString: - type: string - example: 71854 - initiator: - type: array - items: - type: string - example: external - receiver: - type: string - example: tb1q3tzuxef7qc0sl8jq6vh3hpeq0w7swmq9a7eh4p - version: - type: integer - example: 2 - state: - type: string - description: If 'failed', webhook notification failed to connect with the target URL. If 'new', webhook notification was newly generated, in response to an event. If 'pending', webhook notification is awaiting processing by the webhook worker. If 'processed', webhook notification successfully sent to target URL. If 'unconfirmed', webhook notification is awaiting confirmation on the blockchain. - enum: - - failed - - new - - pending - - processed - - unconfirmed - example: new - WebhookTypeBlock: - type: string - enum: - - block - - wallet_confirmation - example: block - XlmFeeInfo: - title: XLM - type: object - description: feeInfo (XLM) - properties: - height: - type: integer - description: Height of the ledger that provided the values - example: 123456 - xlmBaseFee: - type: string - description: Base network fee per transaction operation - example: '100' - xlmBaseReserve: - type: string - description: Base reserve used to calculate the minimum balance required by the network - example: '5000000' - XlmTxInfo: - title: XLM - type: object - description: txInfo (XLM) - properties: - fee: - type: integer - description: Network fee - example: 100 - operations: - type: array - items: - type: object - properties: - amount: - type: string - description: Amount in Lumens as string - example: '10.5' - asset: - type: object - properties: - code: - type: string - example: XLM - destination: - type: string - example: GCNFRU774FPHLV3HAB6CR54XJYFYITOLU6KS2J5BNCLDPYN7I3DOMIPY - type: - type: string - enum: - - payment - - createAccount - example: payment - sequence: - type: string - example: '35995558267060226' - source: - type: string - example: GBSGOXQNPULNPBX7XTHXP2GDBOZMHPIZOOA7CQXYTLHYKF5J2JDCF7LT - InscriptionId: - type: string - description: The ID of the inscription in the form i - example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8i2 - pattern: ^[\da-f]{64}i[\d]+$ - Actions: - type: object - description: | - Wrapper object for a list of Actions. Not paginated. - required: - - actions - properties: - actions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/AlwaysDenyAction' - - $ref: '#/components/schemas/WalletAdminAction' - - $ref: '#/components/schemas/FinalApprovalAction' - - $ref: '#/components/schemas/EnterpriseAdminAction' - - $ref: '#/components/schemas/EnterpriseUserAction' - TransferAmountCondition: - title: Amount - type: object - description: Enables policy rules to trigger based on withdrawal amount. The amount is by asset, such as BTC or USD. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - transfer.amount - example: transfer.amount - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Spending limit - description: - type: string - description: A description for the condition which can be shown to an end user. - example: Allows creating a condition based on the Spending limit - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of Parameters to control how the condition behaves. - items: - anyOf: - - $ref: '#/components/schemas/OperatorConditionParameter' - - $ref: '#/components/schemas/AmountConditionParameter' - - $ref: '#/components/schemas/CoinConditionParameter' - OperatorConditionParameter: - title: Operator - type: object - description: The boolean operator used when comparing the transfer amount with the limit defined in this condition. - required: - - name - - label - - description - - type - - required - - allowMultiple - - values - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - operator - example: operator - label: - type: string - description: A label for the condition parameter that you can display to users. - example: Comparison Operator - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The comparison operator to use when comparing the transfer amount with the given amount - type: - type: string - description: Accepts only enumerated values as listed in the 'values' property of this condition. - enum: - - ENUMERATED - example: ENUMERATED - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - values: - $ref: '#/components/schemas/ValidValues' - ValidValues: - type: array - description: A list of valid values, only values from this list will be accepted. - items: - anyOf: - - $ref: '#/components/schemas/GreaterThanValue' - - $ref: '#/components/schemas/GreaterThanOrEqualToValue' - - $ref: '#/components/schemas/LessThanValue' - - $ref: '#/components/schemas/LessThanOrEqualToValue' - GreaterThanValue: - title: Greater than - type: object - description: The greater than (>) operator. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - '>' - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Greater than - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The transfer amount must be greater than the given limit for the condition to trigger - GreaterThanOrEqualToValue: - title: Greater than or equal to - type: object - description: The greater than or equal to (>=) operator. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - '>=' - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Greater than or equal to - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The transfer amount must be greater than or equal to the given limit for the condition to trigger - LessThanValue: - title: Less than - type: object - description: The less than (>) operator. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - < - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Less than - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The transfer amount must be less than the given limit for the condition to trigger - LessThanOrEqualToValue: - title: Less than or equal to - type: object - description: The less than or equal to (<=) operator. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - <= - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Less than or equal to - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The transfer amount must be less than or equal to the given limit for the condition to trigger - AmountConditionParameter: - title: Amount - type: object - description: The amount incoming transfers will be compared with. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - amount - example: amount - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The amount to compare to - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The transfer amount will be compared with this limit - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - NON_NEGATIVE_NUMBER - example: NON_NEGATIVE_NUMBER - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - CoinConditionParameter: - title: Coin - type: object - description: The asset the amount is expressed in. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - coin - example: coin - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Currency - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: This condition only applies to transfers of this currency (USD applies to all transfers) - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - COIN_OR_USD - example: COIN_OR_USD - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - TransferVelocityLimitCondition: - title: Velocity limit - type: object - description: Enables policy rules to trigger based on how much withdraws over a period of time from a specific wallet or from all wallets. The amount is by asset, such as BTC or USD. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - transfer.velocity.limit - example: transfer.velocity.limit - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Spending Limit - description: - type: string - description: A description for the condition which can be shown to an end user. - example: Allows creating a condition based on the amount of coin or USD that can be spent over a period of time - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of Parameters to control how the condition behaves. - items: - anyOf: - - $ref: '#/components/schemas/VelocityAmountConditionParameter' - - $ref: '#/components/schemas/TimeWindowConditionParameter' - - $ref: '#/components/schemas/VelocityCoinConditionParameter' - - $ref: '#/components/schemas/ScopeConditionParameter' - VelocityAmountConditionParameter: - title: Amount - type: object - description: The withdrawable amount within the time window. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - amount - example: amount - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Amount - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The amount that can be spent within the time window - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - NON_NEGATIVE_NUMBER - example: NON_NEGATIVE_NUMBER - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - TimeWindowConditionParameter: - title: Time window - type: object - description: The period of time this condition covers, in seconds. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - timeWindow - example: timeWindow - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: time window - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The period of time this condition covers, in seconds - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - NON_NEGATIVE_NUMBER - example: NON_NEGATIVE_NUMBER - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - VelocityCoinConditionParameter: - title: Unit - type: object - description: The unit of currency the amount is denoted in, can be a cryptocurrency or a fiat currency. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - coin - example: coin - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Unit - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The unit the amount is denoted in, can be a coin or a fiat currency - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - COIN_OR_USD - example: COIN_OR_USD - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - ScopeConditionParameter: - title: Scope - type: object - description: Defines the entities included in the velocity calculation. - required: - - name - - label - - description - - type - - required - - allowMultiple - - values - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - scope - example: scope - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: scope - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Entities that will be included in the velocity calculation - type: - type: string - description: Accepts only enumerated values as listed in the 'values' property of this condition. - enum: - - ENUMERATED - example: ENUMERATED - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - values: - type: array - description: A list of valid values, only values from this list will be accepted. - items: - anyOf: - - $ref: '#/components/schemas/WalletValue' - - $ref: '#/components/schemas/EnterpriseValue' - WalletValue: - title: Wallet - type: object - description: Applies to a specific wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - wallet - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: Only spending from the transferring wallet will be included - EnterpriseValue: - title: Enterprise - type: object - description: Applies to the entire enterprise. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - enterprise - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Enterprise - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: Spending from the entire transferring wallet's enterprise will be included - TransferInitiatorsCondition: - title: Initiator - type: object - description: Enables you to create a condition based on transaction initiator. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - transfer.initiators - example: transfer.initiators - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Transfer Initiators - description: - type: string - description: A description for the condition which can be shown to an end user. - example: Enables creating a condition based on if the transfer initiator is a listed user. - status: - type: string - description: Identifies if the condition is currently active and usable. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of parameters that control how the condition behaves. - items: - anyOf: - - $ref: '#/components/schemas/TransferInitiatorsUserIdsConditionParameter' - TransferInitiatorsUserIdsConditionParameter: - type: object - description: The list of user ids the transfer initiator condition will checker against for triggering. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - userIds - example: userIds - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: User Ids - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The list of user ids to check the transfer initiator against. - type: - type: string - description: The type of acceptable values for this condition parameter, a valid HMAC BitGo ID. - enum: - - BITGO_USER_ID - example: BITGO_USER_ID - required: - type: string - description: ALWAYS if the parameter is required otherwise OPTIONAL. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'true' - TransferWebhookCondition: - type: object - description: Enables you to create a condition based on if the transfer should send a payload to a webhook URL and receive a status code. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - transfer.webhook - example: transfer.webhook - label: - type: string - description: A label for the condition that you can display to an end user. - example: Transfer Webhook - description: - type: string - description: A description for the Condition which can be shown to an end user. - example: Enables creating a condition based on if the transfer should send a payload to a webhook URL and receive a status code. - status: - type: string - description: Identifies if the condition is currently active and usable. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of parameters that control how the condition behaves. - items: - anyOf: - - $ref: '#/components/schemas/TransferWebhookUrlConditionParameter' - - $ref: '#/components/schemas/TransferWebhookCoinConditionParameter' - TransferWebhookUrlConditionParameter: - type: object - description: The webhook URL the transfer sends a payload to. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - webhookUrl - example: webhookUrl - label: - type: string - description: A description for the condition parameter that you can display to an end user. - example: Webhook URL - description: - type: string - description: The webhook URL to post the transfer payload to. - example: The webhook URL to post the transfer payload to - type: - type: string - description: The type of acceptable values for this condition parameter. Must be a valid webhook URL string. - enum: - - FREE_FORM - example: FREE_FORM - required: - type: string - description: ALWAYS if the parameter is required otherwise OPTIONAL. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - TransferWebhookCoinConditionParameter: - type: object - description: The asset to check the transfer against to determine if a webhook payload should be sent. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - coin - example: coin - label: - type: string - description: A description for the condition parameter that you can display to an end user. - example: Asset - description: - type: string - description: The asset this condition applies to. - example: The asset this condition applies to - type: - type: string - description: The type of acceptable values for this condition parameter. Must be a valid coin ticker string. - enum: - - COIN - example: COIN - required: - type: string - description: ALWAYS if the parameter is required otherwise OPTIONAL. - enum: - - OPTIONAL - example: OPTIONAL - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - TransferDestinationTypeCondition: - title: Destination - type: object - description: Enables policy rules to trigger based on destination. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - transfer.destination.type - example: transfer.destination.type - label: - type: string - description: A label for the condition that you can display to users. - example: Destination - description: - type: string - description: A description for the condition that you can display to an end user. - example: Allows creating a condition based on the type of the funds destination - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of Parameters to control how the condition behaves. - items: - anyOf: - - $ref: '#/components/schemas/DestinationTypeTypeConditionParameter' - - $ref: '#/components/schemas/DestinationTypeCoinConditionParameter' - DestinationTypeTypeConditionParameter: - title: Destination - type: object - description: The type of destination this condition will match. - required: - - name - - label - - description - - type - - required - - allowMultiple - - values - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - type - example: type - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Type - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The type of destination this condition will match - type: - type: string - description: Accepts only enumerated values as listed in the 'values' property of this condition. - enum: - - ENUMERATED - example: ENUMERATED - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'false' - values: - type: array - description: A list of valid values, only values from this list will be accepted. - items: - anyOf: - - $ref: '#/components/schemas/WhitelistedAddressValue' - - $ref: '#/components/schemas/NonWhitelistedAddressValue' - DestinationTypeCoinConditionParameter: - title: Asset - type: object - description: The asset this condition applies to. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - coin - example: coin - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Asset - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The asset this condition applies to. Optional. - type: - type: string - description: A cryptocurrency asset. - enum: - - COIN - example: COIN - required: - type: string - description: A value is not required. - enum: - - OPTIONAL - example: OPTIONAL - allowMultiple: - type: boolean - description: Only one value can be provided. - example: 'false' - WhitelistedAddressValue: - title: Whitelisted - type: object - description: The destination is whitelisted. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - whitelistedAddress - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Whitelisted address - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The destination is whitelisted - NonWhitelistedAddressValue: - title: Not whitelisted - type: object - description: The destination is not whitelisted. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - nonWhitelistedAddress - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Non-whitelisted address - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: The destination is not whitelisted - FilteringConditions: - type: object - description: | - Wrapper object for a list of Filtering Conditions. Not paginated. - required: - - conditions - properties: - conditions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/WalletTypeCondition' - - $ref: '#/components/schemas/WalletIdsCondition' - - $ref: '#/components/schemas/WalletAllCondition' - WalletAllCondition: - title: Wallet all - type: object - description: Wallet-all condition for the all-wallets scope. - required: - - name - - label - - description - - status - properties: - name: - type: string - description: The name of the condition. - enum: - - wallet.all - example: wallet.all - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Wallet All - description: - type: string - description: A description for the condition which can be shown to an end user. - example: For all Wallets - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - WalletIdsCondition: - title: Wallet ID - type: object - description: Wallet ID condition for the all-wallets scope. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - wallet.ids - example: wallet.ids - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Wallet Id - description: - type: string - description: A description for the condition which can be shown to an end user. - example: The Wallet Ids - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of Parameters to control how the condition behaves. - items: - allOf: - - $ref: '#/components/schemas/WalletIdParameter' - WalletIdParameter: - type: object - description: The Wallet Id parameter determines on which Wallets this condition will trigger. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - walletId - example: walletId - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Wallet Id - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: he Wallet Ids - type: - type: string - description: The type of acceptable values for this condition parameter. - enum: - - BITGO_WALLET_ID - example: BITGO_WALLET_ID - required: - type: string - description: This Conditions parameter must always be provided. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'true' - WalletTypeCondition: - title: Wallet type - type: object - description: Wallet-type condition for the all-wallets scope. - required: - - name - - label - - description - - status - - parameters - properties: - name: - type: string - description: The name of the condition. - enum: - - wallet.type - example: wallet.type - label: - type: string - description: A label for the condition which can be shown to an end user. - example: Wallet Type - description: - type: string - description: A description for the condition which can be shown to an end user. - example: Allows creating a condition based on the Wallet Type - status: - type: string - description: | - Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The condition is available for use. - * 'INACTIVE' - The condition is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - parameters: - type: array - description: A list of Parameters to control how the condition behaves. - items: - allOf: - - $ref: '#/components/schemas/WalletTypeParameter' - WalletTypeParameter: - type: object - description: The Wallet Type parameter determines on what type of Wallet this condition will trigger. - required: - - name - - label - - description - - type - - required - - allowMultiple - - values - properties: - name: - type: string - description: The name of the condition parameter. - enum: - - walletType - example: walletType - label: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: Type - description: - type: string - description: A description for the condition parameter which can be shown to an end user. - example: The Wallet Type - type: - type: string - description: This Conditions parameter has a set of defined values. - enum: - - ENUMERATED - required: - type: string - description: This Conditions parameter must always be provided. - enum: - - ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: 'true' - values: - type: array - description: A list of valid values, only values from this list will be accepted. - items: - anyOf: - - $ref: '#/components/schemas/CustodialValue' - - $ref: '#/components/schemas/HotValue' - - $ref: '#/components/schemas/ColdValue' - - $ref: '#/components/schemas/TradingValue' - - $ref: '#/components/schemas/CustodialPairedValue' - - $ref: '#/components/schemas/BackingValue' - CustodialValue: - title: Custodial cold wallet - type: object - description: Custodial cold wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - custodial - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Custodial Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A custodial wallet - HotValue: - title: Self-managed hot wallet - type: object - description: Self-managed hot wallet wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - hot - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Hot Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A hot wallet - ColdValue: - title: Self-managed cold wallet - type: object - description: Self-managed cold wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - cold - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Cold Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A cold wallet - TradingValue: - title: Go Account - type: object - description: Go Account. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - trading - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Trading Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A trading wallet - CustodialPairedValue: - title: Custodial-paired wallet - type: object - description: Custodial-paired wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - custodialPaired - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Custodial Paired Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A custodial paired wallet - BackingValue: - title: Backing hot wallet - type: object - description: Backing hot wallet. - required: - - value - - label - - description - properties: - value: - type: string - enum: - - backing - description: The actual value. - label: - type: string - description: A label for the condition parameter Value which can be shown to an end user. - example: Backing Wallet - description: - type: string - description: A description for the condition parameter Value which can be shown to an end user. - example: A backing wallet - Conditions: - type: object - description: | - Wrapper object for a list of Conditions. Not paginated. - properties: - conditions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/TransferDestinationTypeCondition' - - $ref: '#/components/schemas/TransferVelocityLimitCondition' - - $ref: '#/components/schemas/TransferAmountCondition' - - $ref: '#/components/schemas/TransferInitiatorsCondition' - - $ref: '#/components/schemas/TransferWebhookCondition' - PolicyRuleVersions: - type: object - description: | - description: All versions of a policy rule. Not paginated. - required: - - versions - properties: - versions: - type: array - description: | - List of policy rule versions. The list is sorted by version number in descending order, but rules with a - null version, such as those in pending approval or denied, appear first. - items: - $ref: '#/components/schemas/PolicyRule1' - CreatePolicyRuleRequest: - type: object - description: Create or Update policy rule Request. - required: - - name - - adminOnly - - clauses - - filteringConditions - properties: - name: - type: string - maxLength: 256 - description: Human readable name of the rule. - example: Get approval if transferring more than 2 BTC in a minute - adminOnly: - type: boolean - description: true, if the policy rule is a BitGo internal rule, false otherwise. - example: false - clauses: - type: array - description: | - List of policy rule Clauses: a combination of Conditions and Actions. - items: - type: object - description: | - A combination of Conditions and Actions. - required: - - conditions - - actions - properties: - conditions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/TransferAmountConditionRequest' - - $ref: '#/components/schemas/TransferVelocityLimitConditionRequest' - - $ref: '#/components/schemas/TransferDestinationTypeConditionRequest' - - $ref: '#/components/schemas/TransferInitiatorsConditionRequest' - - $ref: '#/components/schemas/TransferWebhookConditionRequest' - actions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/AlwaysDenyActionRequest' - - $ref: '#/components/schemas/WalletAdminActionRequest' - - $ref: '#/components/schemas/FinalApprovalActionRequest' - - $ref: '#/components/schemas/EnterpriseUsersActionRequest' - filteringConditions: - type: array - description: List of Filtering Conditions that must trigger for the policy rule to be Evaluated. - items: - anyOf: - - $ref: '#/components/schemas/WalletIdsFilteringCondition' - - $ref: '#/components/schemas/WalletTypeFilteringCondition' - - $ref: '#/components/schemas/WalletAllFilteringCondition' - lockType: - type: string - description: | - Indicates how the policy rule is locked. - - * 'LOCK_AFTER_DATE' - Will lock after the lockDate set on the policy rule. - * 'PERMANENT' - Is permanently locked. - enum: - - LOCK_AFTER_DATE - - PERMANENT - example: PERMANENT - lockDate: - type: string - description: | - The date after which the policy rule will be locked. Only applicable if the policy rule is locked with - 'LOCK_AFTER_DATE'. - format: date-time - example: '2023-11-13T14:49:48.830522Z' - AllWalletsScope: - type: object - description: | - A policy rule scope. For example the All Wallets scope. - required: - - id - - name - - label - - description - - conditions - properties: - id: - type: string - description: Unique id of the scope. A UUID. - example: 306258df-dcab-489e-a9fe-ff28ce9fa312 - name: - type: string - description: Name of the scope. - enum: - - wallet.segregated - example: wallet.segregated - label: - type: string - description: A label for the scope which can be shown to an end user. - example: Wallet - description: - type: string - description: A description for the scope which can be shown to an end user. - example: A BitGo Wallet - conditions: - type: array - description: A list of Filtering Conditions the scope supports. For example the Wallet Type Filtering condition. - items: - anyOf: - - $ref: '#/components/schemas/WalletTypeCondition' - - $ref: '#/components/schemas/WalletIdsCondition' - - $ref: '#/components/schemas/WalletAllCondition' - scopes: - type: object - description: Wrapper object for a list of scopes. Not paginated. - properties: - scopes: - description: A list of scopes available on your Enterprise. - type: array - items: - $ref: '#/components/schemas/AllWalletsScope' - Touchpoint: - type: object - description: A Touchpoint. For example the Transfer from a Wallet Touchpoint. - required: - - id - - name - - status - - label - - description - - adminOnly - properties: - id: - type: string - description: Id of the Touchpoint. A UUID. - example: 306258df-dcab-489e-a9fe-ff28ce9fa312 - name: - type: string - description: Name of the Touchpoint. - enum: - - wallet.segregated.transfer - - policies.management.edit - example: wallet.segregated.transfer - label: - type: string - description: A label for the Touchpoint which can be shown to an end user. - example: Transfer from a Segregated Wallet - description: - type: string - description: A description for the Touchpoint which can be shown to an end user. - example: When transferring from a BitGo Segregated Wallet - status: - type: string - description: | - Status of the Touchpoint. Indicates if the Touchpoint is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The Touchpoint is available for use. - * 'INACTIVE' - The Touchpoint is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal Touchpoint, false otherwise. - example: false - TouchpointsResults: - description: A paginated list of Touchpoints - allOf: - - type: object - properties: - touchpoints: - type: array - items: - $ref: '#/components/schemas/Touchpoint' - - $ref: '#/components/schemas/PaginatedResults' - GeneralError: - type: object - properties: - code: - type: string - message: - type: string - status: - type: integer - ValidationError: - allOf: - - $ref: '#/components/schemas/GeneralError' - - type: object - properties: - failedValidations: - type: object - AlwaysDenyAction: - title: Automatically reject - type: object - description: Automatically denies a transfer. - required: - - name - - label - - description - - status - - adminOnly - properties: - name: - type: string - description: The name of the action. - enum: - - approvals.always.deny - example: approvals.always.deny - label: - type: string - description: A label for the action which can be shown to an end user. - example: Deny - description: - type: string - description: A description for the action which can be shown to an end user. - example: Automatically reject - status: - type: string - description: | - Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The action is available for use. - * 'INACTIVE' - The action is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal action, false otherwise. - example: false - AlwaysDenyActionRequest: - title: Automatically reject - type: object - description: Automatically reject. - required: - - name - properties: - name: - type: string - description: Name of the associated Action. - enum: - - approvals.always.deny - example: approvals.always.deny - Clause: - type: object - description: | - A combination of Conditions and Actions. - properties: - actions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/AlwaysDenyActionRequest' - - $ref: '#/components/schemas/EnterpriseAdminActionRequest' - - $ref: '#/components/schemas/WalletAdminActionRequest' - - $ref: '#/components/schemas/FinalApprovalActionRequest' - - $ref: '#/components/schemas/EnterpriseUsersActionRequest' - conditions: - type: array - items: - anyOf: - - $ref: '#/components/schemas/TransferAmountConditionRequest' - - $ref: '#/components/schemas/TransferVelocityLimitConditionRequest' - - $ref: '#/components/schemas/TransferDestinationTypeConditionRequest' - - $ref: '#/components/schemas/TransferInitiatorsConditionRequest' - EnterpriseAdminAction: - title: Require enterprise-admin approval - type: object - description: Requires approval from an enterprise admin. - required: - - name - - label - - description - - status - - adminOnly - properties: - name: - type: string - description: The name of the action. - enum: - - approvals.customer.enterpriseAdmin - example: approvals.customer.enterpriseAdmin - label: - type: string - description: A label for the action which can be shown to an end user. - example: Enterprise Admin - description: - type: string - description: A description for the action which can be shown to an end user. - example: Enterprise admin approval - status: - type: string - description: | - Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The action is available for use. - * 'INACTIVE' - The action is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal action, false otherwise. - example: false - EnterpriseAdminActionRequest: - title: Require enterprise-admin approval - type: object - description: Require enterprise-admin approval. - required: - - name - properties: - name: - type: string - description: Name of the associated Action. - enum: - - approvals.customer.enterpriseAdmin - example: approvals.customer.enterpriseAdmin - operator: - $ref: '#/components/schemas/OperatorType' - EnterpriseUserAction: - title: Require approval from a set of enterprise users - type: object - description: Requires approval from a set of enterprise users. - required: - - name - - label - - description - - status - - adminOnly - - parameters - properties: - name: - type: string - description: The name of the action. - enum: - - approvals.customer.enterpriseUser - example: approvals.customer.enterpriseUser - label: - type: string - description: A label for the action which can be shown to an end user. - example: Require approval from a set of users - description: - type: string - description: A description for the action which can be shown to an end user. - example: Enterprise users approval - status: - type: string - description: | - Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The action is available for use. - * 'INACTIVE' - The action is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal action, false otherwise. - example: false - parameters: - type: array - description: A list of Parameters to control how the action behaves. - items: - anyOf: - - $ref: '#/components/schemas/EnterpriseUserIdsActionParameter' - - $ref: '#/components/schemas/MinRequireActionParameter' - - $ref: '#/components/schemas/InitiatorIsAllowedToApproveActionParameter' - EnterpriseUserIdsActionParameter: - title: Approvers user ids - type: object - description: The set of enterprise users approvers. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the action parameter. - enum: - - userIds - example: userIds - label: - type: string - description: A label for the action parameter which can be shown to an end user. - example: Users - description: - type: string - description: A description for the action parameter which can be shown to an end user. - example: List of enterprise users for approval - type: - type: string - description: The type of acceptable values for this action parameter. - enum: - - BITGO_USER_ID - example: BITGO_USER_ID - required: - type: string - description: A value must be always provided for exactly one or more of the action Parameters with a 'required' value of 'ONE_OR_MORE'. In other words, all the action Parameters with a 'required' of 'ONE_OR_MORE' form a group, and a value must be provided for one or more of the action Parameters in the group. - enum: - - ONE_OR_MORE - example: ONE_OR_MORE - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: true - EnterpriseUsersActionRequest: - title: Require approval from a set of enterprise users - type: object - description: Require approval from a set of enterprise users. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the associated Action. - enum: - - approvals.customer.enterpriseUser - example: approvals.customer.enterpriseUser - parameters: - type: object - description: Required data needed to configure the Action. - required: - - userIds - - minRequired - properties: - userIds: - type: array - items: - type: string - example: 63cf101298470200073bbae71add80d5 - description: List of enterprise users for approval - example: - - 63cf101298470200073bbae71add80d5 - minRequired: - type: number - description: Minimum required number of approvers - example: 1 - initiatorIsAllowedToApprove: - type: boolean - description: Whether the initiator is allowed to approve this action. false by default. - example: false - default: false - operator: - $ref: '#/components/schemas/OperatorType' - FinalApprovalAction: - title: Require final approval from wallet users - type: object - description: Requires final approval from wallet users after wallet-admin approval. Final approvers don't have to be wallet admins. - required: - - name - - label - - description - - status - - adminOnly - - parameters - properties: - name: - type: string - description: The name of the action. - enum: - - approvals.customer.finalApproval - example: approvals.customer.finalApproval - label: - type: string - description: A label for the action which can be shown to an end user. - example: Require final approval from wallet users - description: - type: string - description: A description for the action which can be shown to an end user. - example: Require final approval from wallet users - status: - type: string - description: | - Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The action is available for use. - * 'INACTIVE' - The action is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal action, false otherwise. - example: false - parameters: - type: array - description: A list of Parameters to control how the action behaves. - items: - anyOf: - - $ref: '#/components/schemas/FinalApproversUserIdsActionParameter' - - $ref: '#/components/schemas/InitiatorIsAllowedToApproveActionParameter' - FinalApprovalActionRequest: - title: Require final approval from wallet users - type: object - description: Require final approval from wallet users. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the associated Action. - enum: - - approvals.customer.finalApproval - example: approvals.customer.finalApproval - parameters: - type: object - description: Required data needed to configure the Action. - required: - - userIds - properties: - userIds: - type: array - items: - type: string - example: 63cf101298470200073bbae71add80d5 - description: The final approvers - example: - - 63cf101298470200073bbae71add80d5 - initiatorIsAllowedToApprove: - type: boolean - description: Whether the initiator is allowed to approve this action. true by default. - example: true - default: true - operator: - $ref: '#/components/schemas/OperatorType' - FinalApproversUserIdsActionParameter: - title: Final approvers user ids - type: object - description: The final approvers. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the action parameter. - enum: - - userIds - example: userIds - label: - type: string - description: A label for the action parameter which can be shown to an end user. - example: Users - description: - type: string - description: A description for the action parameter which can be shown to an end user. - example: List of users for final approval - type: - type: string - description: The type of acceptable values for this action parameter. - enum: - - BITGO_USER_ID - example: BITGO_USER_ID - required: - type: string - description: A value must be always provided for exactly one or more of the action Parameters with a 'required' value of 'ONE_OR_MORE'. In other words, all the action Parameters with a 'required' of 'ONE_OR_MORE' form a group, and a value must be provided for one or more of the action Parameters in the group. - enum: - - ONE_OR_MORE - example: ONE_OR_MORE - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: true - InitiatorIsAllowedToApproveActionParameter: - title: Initiator is allowed to approve - type: object - description: Whether the initiator is allowed to approve this action. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the action parameter. - enum: - - initiatorIsAllowedToApprove - example: initiatorIsAllowedToApprove - label: - type: string - description: A label for the action parameter which can be shown to an end user. - example: Initiator Is Allowed To Approve - description: - type: string - description: A description for the action parameter which can be shown to an end user. - example: Whether the initiator is allowed to approve this action - type: - type: string - description: The type of acceptable values for this action parameter. - enum: - - BOOLEAN - example: BOOLEAN - required: - type: string - description: A value is not required. - enum: - - OPTIONAL - example: OPTIONAL - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: false - MinRequireActionParameter: - title: Minimum number of approvals required - type: object - description: Minimum required number of approvers. - required: - - name - - label - - description - - type - - required - - allowMultiple - properties: - name: - type: string - description: The name of the action parameter. - enum: - - minRequired - example: minRequired - label: - type: string - description: A label for the action parameter which can be shown to an end user. - example: Approvals Required - description: - type: string - description: A description for the action parameter which can be shown to an end user. - example: Minimum required number of approvers - type: - type: string - description: The type of acceptable values for this action parameter. - enum: - - POSITIVE_NUMBER - example: POSITIVE_NUMBER - required: - type: string - description: A value must always be provided, i.e. the parameter is required. - enum: - - ALWAYS - example: ALWAYS - allowMultiple: - type: boolean - description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. - example: false - OperatorType: - type: string - description: Boolean operators that join Conditions, and/or Actions. Must be null on the last Condition or Action, or if there is only one Condition or Action, must be non-null on all others. - enum: - - AND - - OR - example: AND - PaginatedResults: - type: object - description: Common fields of a paginated result. - required: - - page - - totalPages - - totalElements - properties: - page: - type: integer - description: Page number. Page numbers start at 1. - totalPages: - type: integer - description: Total number of pages. Total pages start at 1. - totalElements: - type: integer - description: Total number of elements across all pages. - PaginatedResultsWithNextBatchPrevId: - type: object - description: Common fields of a paginated result paged with a nextBatchPrevId. - required: - - nextBatchPrevId - properties: - nextBatchPrevId: - type: string - description: The value to pass as the prevId to the API for getting the next page. - PolicyRule1: - type: object - description: | - A Policy Rule, the combination of a Scope, a Touchpoint, Conditions, and Actions. It allows you to define what - needs to happen (Actions) before a user can execute a sensitive operation (Touchpoint) on a Scope (e.g. a Wallet) - depending on the specific details of the operation (Conditions). See Concepts. - required: - - id - - uniqueId - - name - - status - - adminOnly - - touchpointId - - touchpointLabel - - scopeId - - scopeLabel - - clauses - - filteringConditions - - locked - - lockType - - createdBy - - modifiedBy - - createdDate - - modifiedDate - properties: - id: - type: string - description: Id of the Policy Rule. This identifier is not unique in isolation, it must be paired with an specific Policy Rule Version number to uniquely identified a particular version of a Policy Rule. A UUID. - example: 306258df-dcab-489e-a9fe-ff28ce9fa312 - uniqueId: - type: string - description: The uniqueId of the Policy Rule version. A UUID. - example: cb4e0a0a-2768-4024-904a-178ca6d2cd54 - name: - type: string - description: Human readable name of the rule. - example: My first policy rule - status: - type: string - description: | - Indicates if the Policy Rule is considered in Evaluations. - - * 'ACTIVE' - Will be Evaluated. - * 'INACTIVE' - Will NOT be Evaluated. - * 'DENIED' - The requested policy rule change was Denied. - * 'PENDING_APPROVAL' - This version of the policy rule is Pending Approval before it can be activated. - enum: - - ACTIVE - - INACTIVE - - DENIED - - PENDING_APPROVAL - example: ACTIVE - version: - type: integer - description: The Policy Rule Version, an integer that is incremented each time the Policy Rule changes. - default: 1 - example: 1 - adminOnly: - type: boolean - description: true, if the Policy Rule is a BitGo internal rule. Typically, this allows setting Global Policy Rules across enterprises. - example: false - touchpointId: - type: string - description: The id of the Touchpoint associated with the Policy Rule. A UUID. - example: 0a244ae3-26cf-48ed-9854-edd5b9751f3e - touchpointLabel: - type: string - description: Label of the Touchpoint associated with the Policy Rule. For example the Transfer from a Wallet Touchpoint. - example: Transfer from a Wallet - scopeId: - type: string - description: The id of the Scope associated with the Policy Rule. A UUID. - example: 08a3f714-c330-41e6-bd83-bad3a8d37188 - scopeLabel: - type: string - description: Label of the Scope associated with the Policy Rule. For example the All Wallets Scope. - example: All Wallets - clauses: - type: array - description: | - List of Policy Rule Clauses: a combination of Conditions and Actions. - items: - $ref: '#/components/schemas/Clause' - filteringConditions: - type: array - description: List of Filtering Conditions that must trigger for this Policy Rule to be Evaluated. - items: - anyOf: - - $ref: '#/components/schemas/WalletTypeFilteringCondition' - - $ref: '#/components/schemas/WalletIdsFilteringCondition' - - $ref: '#/components/schemas/WalletAllFilteringCondition' - locked: - type: boolean - description: true, if the Policy Rule is locked, false otherwise. - example: false - lockType: - type: string - description: | - Indicates how the Policy Rule is locked. - - * 'LOCK_AFTER_DATE' - Will lock after the lockDate set on the Policy Rule. - * 'PERMANENT' - Is permanently locked. - enum: - - LOCK_AFTER_DATE - - PERMANENT - example: PERMANENT - lockDate: - type: string - description: | - The date after which the Policy Rule will be locked. Only applicable if the Policy Rule is locked with - 'LOCK_AFTER_DATE'. - format: date-time - example: '2023-11-13T14:49:48.830522Z' - enterpriseId: - type: string - description: The id of the Enterprise this Policy Rule belongs to. - example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - lastTriggeredDate: - type: string - description: | - The date when the Policy Rule was last triggered. Only applicable if the Policy Rule is locked with - 'LOCK_AFTER_DATE'. - format: date-time - example: '2023-11-13T14:49:48.830522Z' - lastTriggeredEvaluationId: - type: string - description: | - The id of the Evaluation that last triggered the Policy Rule. A UUID. - example: 306258df-dcab-489e-a9fe-ff28ce9fa312 - createdBy: - type: string - description: The id of the user who created the Policy Rule or the string \"BitGo\". - example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - modifiedBy: - type: string - description: The id of the user who last modified the Policy Rule or the string \"BitGo\". - example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - createdDate: - type: string - description: The date when the Policy Rule was created. A timestamp. - format: date-time - example: '2023-11-13T14:49:48.830522Z' - modifiedDate: - type: string - description: The date when the Policy Rule was last modified. A timestamp. - format: date-time - example: '2023-11-13T14:49:48.830522Z' - lockModifiedBy: - type: string - description: The id of the user who last modified the lock of the Policy Rule. - example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - evaluationId: - type: string - description: | - The id of the Evaluation that was done when this Policy Rule version was requested to be created, modified - or deleted. A UUID. - example: 306258df-dcab-489e-a9fe-ff28ce9fa312 - PolicyRulesResults: - description: Paginated list of Policy Rules. - allOf: - - $ref: '#/components/schemas/PaginatedResultsWithNextBatchPrevId' - - type: object - properties: - rules: - type: array - description: | - A list of Policy Rules matching the search criteria. - items: - $ref: '#/components/schemas/PolicyRule1' - TransferAmountConditionParameters: - type: object - description: Data required to evaluate the condition. - required: - - operator - - amount - - coin - properties: - operator: - type: string - enum: - - '>' - - '>=' - - < - - <= - description: The comparison operator to use when comparing the transfer amount with the given limit - example: '>' - amount: - type: string - description: The transfer amount is compared with this limit. - example: '100000000' - coin: - type: string - description: This condition only applies to transfers of this currency (USD applies to all transfers). - example: btc - TransferAmountConditionRequest: - title: Amount - type: object - description: Transfer-amount condition. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - transfer.amount - example: transfer.amount - parameters: - $ref: '#/components/schemas/TransferAmountConditionParameters' - operator: - $ref: '#/components/schemas/OperatorType' - TransferDestinationTypeConditionParameters: - type: object - description: Data required to evaluate the transfer destination condition. - required: - - type - properties: - type: - type: string - enum: - - whitelistedAddress - - nonWhitelistedAddress - description: The type of destination this condition will match. - example: whitelistedAddress - coin: - type: string - description: The asset this condition applies to. - example: btc - TransferDestinationTypeConditionRequest: - title: Destination - type: object - description: Destination condition. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - transfer.destination.type - example: transfer.destination.type - parameters: - $ref: '#/components/schemas/TransferDestinationTypeConditionParameters' - operator: - $ref: '#/components/schemas/OperatorType' - TransferInitiatorsConditionParameters: - type: object - description: Data required to evaluate the transfer initiator condition. - required: - - userIds - properties: - userIds: - type: array - items: - type: string - description: A list of user IDs to validate for the transfer initiator. - example: '[659bdac013822ba1e8c60d8c497197c4, 63ebe51c12381c0007415e4f50bc95ce]' - TransferInitiatorsConditionRequest: - title: Initiator - type: object - description: Initiator condition. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - transfer.initiators - example: transfer.initiators - parameters: - $ref: '#/components/schemas/TransferInitiatorsConditionParameters' - operator: - $ref: '#/components/schemas/OperatorType' - TransferVelocityLimitConditionParameters: - type: object - description: Data required to evaluate the transfer velocity limit condition. - required: - - scope - - timeWindow - - amount - - coin - properties: - scope: - type: string - enum: - - wallet - - enterprise - description: Entities to include in the velocity calculation. - example: wallet - timeWindow: - type: string - description: A window of time in which a set of amount can be spent. - example: '60' - amount: - type: string - description: The transfer amount is compared with this limit. - example: '100000000' - coin: - type: string - description: The unit that the amount is denoted in, in either crypto or a fiat currency. - example: ETH - TransferVelocityLimitConditionRequest: - title: Velocity limit - type: object - description: Velocity-limit condition. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - transfer.velocity.limit - example: transfer.velocity.limit - parameters: - $ref: '#/components/schemas/TransferVelocityLimitConditionParameters' - operator: - $ref: '#/components/schemas/OperatorType' - TransferWebhookConditionParameters: - type: object - description: Data required to evaluate the transfer webhook condition. - required: - - webhookUrl - properties: - webhookUrl: - type: string - description: The webhook url to post transfer payload to. - example: https://webhook.site/91561f7b-4141-4ee2-8336-e10650cd000f - coin: - type: string - description: The asset this condition applies to. - example: btc - TransferWebhookConditionRequest: - title: Webhook - type: object - description: Transfer webhook condition. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - transfer.webhook - example: transfer.webhook - parameters: - $ref: '#/components/schemas/TransferWebhookConditionParameters' - WalletAdminAction: - title: Require wallet-admin approval - type: object - description: Requires approval from one or more wallet admin. - required: - - name - - label - - description - - status - - adminOnly - - parameters - properties: - name: - type: string - description: The name of the action. - enum: - - approvals.customer.walletAdmin - example: approvals.customer.walletAdmin - label: - type: string - description: A label for the action which can be shown to an end user. - example: Wallet Admin - description: - type: string - description: A description for the action which can be shown to an end user. - example: Require approval from wallet admins - status: - type: string - description: | - Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. - - * 'ACTIVE' - The action is available for use. - * 'INACTIVE' - The action is NOT available for use. - enum: - - ACTIVE - - INACTIVE - example: ACTIVE - adminOnly: - type: boolean - description: true, if this is an internal action, false otherwise. - example: false - parameters: - type: array - description: A list of Parameters to control how the action behaves. - items: - anyOf: - - $ref: '#/components/schemas/MinRequireActionParameter' - WalletAdminActionRequest: - title: Require Require approval from wallet admins - type: object - description: Require Require approval from wallet admins. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the associated Action. - enum: - - approvals.customer.walletAdmin - example: approvals.customer.walletAdmin - parameters: - type: object - description: Required data needed to configure the Action. - required: - - minRequired - properties: - minRequired: - type: string - description: Number of required approvals - example: '1' - operator: - $ref: '#/components/schemas/OperatorType' - WalletAllFilteringCondition: - title: All wallets - type: object - description: Filter by all wallets. - required: - - name - properties: - name: - type: string - description: Name of the condition. - enum: - - wallet.all - example: wallet.all - WalletIdsFilteringCondition: - title: Wallet ID - type: object - description: Filter by wallet ID. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - wallet.ids - example: wallet.ids - parameters: - type: object - description: Required data needed to evaluate the Filtering Condition. - required: - - walletId - properties: - walletId: - type: array - items: - type: string - description: The Wallet Ids this Filtering Condition will match. - WalletTypeFilteringCondition: - title: Wallet type - type: object - description: Filter by wallet type. - required: - - name - - parameters - properties: - name: - type: string - description: Name of the condition. - enum: - - wallet.type - example: wallet.type - parameters: - type: object - description: Required data needed to evaluate the Filtering Condition. - required: - - walletType - properties: - walletType: - type: array - items: - type: string - enum: - - hot - - custodial - TradeUser: - required: - - email - - firstName - - id - - lastName - type: object - properties: - id: - type: string - format: uuid - firstName: - type: string - lastName: - type: string - email: - type: string - format: email - example: - id: a253c86c-1f0f-42cc-bcd0-2dcc5040b204 - firstName: Uncle - lastName: MoneyPenny - email: uncle.moneypenny@bitgo.com - Account1: - required: - - id - - name - type: object - properties: - id: - type: string - format: uuid - name: - type: string - example: - id: f230fdebfa084ffebc7e00515f54603f - name: Uncle MoneyPenny's Trading Wallet - Accounts: - type: array - items: - $ref: '#/components/schemas/Account1' - AccountBalance: - required: - - currency - - balance - - heldBalance - - tradableBalance - - withdrawableBalance - type: object - properties: - currency: - type: string - description: Currency symbol - balance: - type: string - format: decimal - description: The total balance in the account - heldBalance: - type: string - format: decimal - description: The total balance reserved for some purpose, e.g. a pending withdrawal - tradableBalance: - type: string - format: decimal - description: The total balance available for trading - withdrawableBalance: - type: string - format: decimal - description: The total balance available for withdrawal - example: - currencyId: 6016e0a9-545a-45fb-8370-caab1680956a - currency: BTC - balance: '100.0' - heldBalance: '10.0' - tradableBalance: '90.0' - AccountBalances: - type: array - items: - $ref: '#/components/schemas/AccountBalance' - Amount4: - type: object - required: - - quantity - - currency - properties: - quantity: - type: string - format: decimal - description: The specified quantity. - currency: - type: string - description: The specified quantity currency. - example: - quantity: '100.0' - currency: USD - FundingType: - type: string - enum: - - margin - - funded - description: The funding type of the order. Funded orders will be placed with the user's available balance. Margin orders will be placed with the user's margin balance. - default: funded - MarginNetOpenPosition: - type: object - required: - - currency - - enterpriseId - - netOpenPosition - - netOpenPositionValue - - shortMarginPositionNotionalLimit - - longMarginPositionNotionalLimit - - unrealizedPnL - - lastModified - properties: - currency: - type: string - enterpriseId: - type: string - format: uuid - netOpenPosition: - type: number - format: decimal - netOpenPositionValue: - type: number - format: decimal - shortMarginPositionNotionalLimit: - $ref: '#/components/schemas/Amount4' - longMarginPositionNotionalLimit: - $ref: '#/components/schemas/Amount4' - unrealizedPnL: - $ref: '#/components/schemas/Amount4' - lastModified: - type: string - format: date-time - example: - currency: BTC - enterpriseId: 63925f940c259a00061853808ffea830 - netOpenPosition: -2.3242 - netOpenPositionValue: -124017.22 - shortMarginPositionNotionalLimit: - quantity: 1000000 - currency: USD - longMarginPositionNotionalLimit: - quantity: 1000000 - currency: USD - unrealizedPnL: - quantity: 1200 - currency: USD - lastModified: '2024-07-29T21:13:09.000Z' - MarginNetOpenPositionLimit: - type: object - required: - - enterpriseId - - currency - - shortMarginPositionNotionalLimit - - longMarginPositionNotionalLimit - properties: - enterpriseId: - type: string - currency: - type: string - shortMarginPositionNotionalLimit: - $ref: '#/components/schemas/Amount4' - longMarginPositionNotionalLimit: - $ref: '#/components/schemas/Amount4' - example: - enterpriseId: enterprise-123 - currency: BTC - shortMarginPositionNotionalLimit: - quantity: '1000000' - currency: USD - longMarginPositionNotionalLimit: - quantity: '2000000' - currency: USD - Order: - required: - - id - - accountId - - time - - creationDate - - completionDate - - type - - fundingType - - status - - product - - side - - quantity - - quantityCurrency - - filledQuantity - - filledQuoteQuantity - - averagePrice - type: object - properties: - id: - type: string - format: uuid - accountId: - type: string - clientOrderId: - type: string - time: - type: string - format: date-time - description: DEPRECATED - creationDate: - type: string - format: date-time - scheduledDate: - type: string - format: date-time - lastFillDate: - type: string - format: date-time - completionDate: - type: string - format: date-time - settleDate: - type: string - format: date-time - type: - type: string - fundingType: - $ref: '#/components/schemas/FundingType' - status: - $ref: '#/components/schemas/OrderStatus' - product: - type: string - description: Product name e.g. BTC-USD - side: - $ref: '#/components/schemas/Side' - quantity: - type: string - format: decimal - description: The specified quantity. - quantityCurrency: - type: string - description: The specified quantity currency. - filledQuantity: - type: string - format: decimal - description: The base quantity that was filled. - filledQuoteQuantity: - type: string - format: decimal - description: The quote quantity that was filled. - averagePrice: - type: string - format: decimal - limitPrice: - type: string - format: decimal - duration: - type: integer - description: Duration of the order in minutes. - twapInterval: - type: integer - description: Interval length of the TWAP order in minutes. - reason: - description: Reason for order cancellation. 'internalError' indicates an error occurred within the server while processing the order, resulting in an order cancellation. 'insufficientFunds' indicates that the order was cancelled due to shortage of funds to complete the transaction. - type: string - enum: - - internalError - - insufficientFunds - example: insufficientFunds - example: - id: 67fd640c-cb6c-4218-80ae-49e79ec15646 - accountId: 60e740e7898f7d00064d43769a73dc48 - clientOrderId: myorderid1 - time: {} - creationDate: {} - scheduledDate: {} - lastFillDate: {} - completionDate: {} - settleDate: {} - fundingType: funded - type: market - status: completed - product: BTC-USD - side: buy - quantity: '1000' - quantityCurrency: USD - filledQuantity: '0.02457152' - filledQuoteQuantity: '1000' - averagePrice: '40697.32' - Orders: - type: array - items: - $ref: '#/components/schemas/Order' - NewOrderRequest: - oneOf: - - $ref: '#/components/schemas/NewMarketOrderRequest' - - $ref: '#/components/schemas/NewLimitOrderRequest' - - $ref: '#/components/schemas/NewTWAPOrderRequest' - NewMarketOrderRequest: - title: Market - required: - - product - - quantity - - quantityCurrency - - side - - type - - fundingType - type: object - properties: - clientOrderId: - type: string - description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. - maxLength: 256 - product: - type: string - description: Product name e.g. BTC-USD - type: - type: string - description: Must be set to "market" - fundingType: - $ref: '#/components/schemas/FundingType' - side: - $ref: '#/components/schemas/Side' - quantity: - type: string - format: decimal - quantityCurrency: - type: string - description: The quantity currency must be in quote currency for buy and base currency for sell. e.g. If product is BTC-USD, the base currency will be BTC. - example: - clientOrderId: myorder1 - type: market - product: BTC-USD - side: buy - quantity: '10000' - quantityCurrency: USD - NewLimitOrderRequest: - title: Limit - required: - - product - - quantity - - quantityCurrency - - side - - type - - limitPrice - type: object - properties: - clientOrderId: - type: string - description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. - maxLength: 256 - product: - type: string - description: Product name e.g. BTC-USD - type: - type: string - description: Must be set to "limit" - fundingType: - $ref: '#/components/schemas/FundingType' - side: - $ref: '#/components/schemas/Side' - quantity: - type: string - format: decimal - quantityCurrency: - type: string - description: The quantity currency must be in the base currency for both buy and sell. e.g. If product is BTC-USD, the base currency will be BTC. - limitPrice: - type: string - format: decimal - duration: - type: integer - description: Duration of the limit order in minutes. For orders that are good till cancelled, skip duration and use timeInForce=GTC. - timeInForce: - type: string - description: Time in force for the order. GTC (Good Till Cancelled) is the only allowed value. - enum: - - GTC - example: - clientOrderId: myorder1 - type: limit - product: BTC-USD - side: buy - quantity: '1' - quantityCurrency: BTC - limitPrice: '10005' - duration: 60 - NewTWAPOrderRequest: - title: TWAP - required: - - product - - quantity - - quantityCurrency - - side - - type - - duration - - interval - type: object - properties: - clientOrderId: - type: string - description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. - maxLength: 256 - product: - type: string - description: Product name e.g. BTC-USD - type: - type: string - description: Must be set to "twap" - fundingType: - $ref: '#/components/schemas/FundingType' - side: - $ref: '#/components/schemas/Side' - quantity: - type: string - format: decimal - quantityCurrency: - type: string - description: The quantity currency must be in quote currency for buy unless a limit price is specified, in which case buy orders can only be placed in the base currency. For sell, the quantity currency must be in base. e.g. If product is BTC-USD, the base currency will be BTC. - limitPrice: - type: string - format: decimal - duration: - type: integer - description: Duration of the TWAP order in minutes. - interval: - type: integer - description: Interval of the TWAP order in minutes. - scheduledDate: - type: string - format: date-time - example: - clientOrderId: myorder1 - type: twap - product: BTC-USD - side: buy - quantity: '100000' - quantityCurrency: USD - duration: 60 - interval: 5 - PrimeTrade: - required: - - id - - orderId - - time - - product - - side - - price - - quoteQuantity - - quantity - - settled - type: object - properties: - id: - type: string - format: uuid - orderId: - type: string - format: uuid - time: - type: string - format: date-time - product: - type: string - description: Product name e.g. BTC-USD - side: - $ref: '#/components/schemas/Side' - price: - type: string - format: decimal - quoteQuantity: - type: string - format: decimal - description: Quote quantity, e.g. For BTC-USD product, 100.50 USD - quantity: - type: string - format: decimal - description: Base quantity, e.g. For BTC-USD product, 0.0045 BTC - settled: - type: boolean - example: - id: 7e0c768e-2d16-4c1e-b39d-06fa20009397 - orderId: d50ec984-77a8-460a-b958-66f114b0de9b - time: {} - side: buy - product: BTC-USD - quoteQuantity: '100.50' - price: '22333.33' - quantity: '0.0045' - settled: true - Trades: - type: array - items: - $ref: '#/components/schemas/PrimeTrade' - Currency: - required: - - id - - name - - symbol - type: object - properties: - id: - type: string - format: uuid - symbol: - type: string - name: - type: string - example: - id: 6016e0a9-545a-45fb-8370-caab1680956a - symbol: BTC - name: Bitcoin - Currencies: - type: array - items: - $ref: '#/components/schemas/Currency' - Product: - required: - - baseCurrencyId - - baseCurrency - - baseMinSize - - id - - isTradeDisabled - - isMarginTradeSupported - - name - - quoteCurrencyId - - quoteCurrency - - quoteIncrement - - quoteMinSize - type: object - properties: - id: - type: string - format: uuid - name: - type: string - description: Product name e.g. BTC - baseCurrencyId: - type: string - format: uuid - baseCurrency: - type: string - description: Currency name e.g. BTC - quoteCurrencyId: - type: string - format: uuid - quoteCurrency: - type: string - description: Currency name e.g. USD - baseMinSize: - type: string - format: decimal - baseMaxSize: - type: string - format: decimal - baseIncrement: - type: string - format: decimal - quoteMinSize: - type: string - format: decimal - quoteIncrement: - type: string - format: decimal - isTradeDisabled: - type: boolean - isMarginTradeSupported: - type: boolean - description: True if margin trading is supported for this product - example: - id: 86d09911-e58e-4f27-ac1f-91d5f9c79952 - name: BTC-USD - baseCurrencyId: 6016e0a9-545a-45fb-8370-caab1680956a - quoteCurrencyId: 7d5d1e8d-e6e1-4676-99af-190012515418 - baseCurrency: BTC - quoteCurrency: USD - baseMinSize: '0.001' - baseMaxSize: '10000.00' - quoteIncrement: '0.01' - Products: - type: array - items: - $ref: '#/components/schemas/Product' - Level1OrderBookSnapshot: - required: - - askPrice - - askSize - - bidPrice - - bidSize - - product - - time - type: object - properties: - time: - type: string - format: date-time - product: - type: string - description: Product name e.g. BTC - bidPrice: - type: string - format: decimal - bidSize: - type: string - format: decimal - askPrice: - type: string - format: decimal - askSize: - type: string - format: decimal - example: - time: {} - product: BTC-USD - bidPrice: '7090.96' - bidSize: '1.253433' - askPrice: '7090.97' - askSize: '25.23881' - Level2OrderBookSnapshot: - required: - - asks - - bids - - product - - time - type: object - properties: - time: - type: string - format: date-time - product: - type: string - description: Product name e.g. BTC - bids: - type: array - description: An array of levels of [price, size] - items: - type: string - format: decimal - asks: - type: array - description: An array of levels of [price, size] - items: - type: string - format: decimal - example: - time: {} - product: BTC-USD - bids: - - - '7090.96' - - '1.253433' - asks: - - - '7090.97' - - '25.23881' - OrderStatus: - type: string - enum: - - pending_open - - open - - completed - - pending_cancel - - canceled - - error - - scheduled - Error: - required: - - error - - errorName - - reqId - type: object - properties: - error: - type: string - errorName: - type: string - reqId: - type: string - example: - error: invalid permission - errorName: backend:common:forbidden - reqId: d41d4d21e63d63b293caf55f2a739a79 - Side: - description: Side of a trade, from the perspective of the requesting user - type: string - enum: - - buy - - sell - example: buy - StakingRequestPOSTBody: - type: object - properties: - clientId: - description: Optional user generated identifier to detect duplicated requests. - type: string - amount: - description: Amount to stake in base units (i.e. Wei for ETH). For Ethereum the amount must be a multiple of 32 ETH (32000000000000000000 Wei). For Testnet the 32 ETH multiple restriction does not apply. - type: string - example: '32000000000000000000' - type: - description: Staking Request type = 'STAKE' - type: string - example: STAKE - required: - - amount - - type - AvaxPStakingRequestPOSTBody: - title: AVAXP stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to stake in base units. - type: string - example: '1000' - type: - description: Staking Request type = 'STAKE'. - type: string - example: STAKE - durationSeconds: - description: The length of time in seconds to complete a staking period. - type: integer - example: 604800 - required: - - amount - - type - - durationSeconds - EthStakingRequestPOSTBody: - title: ETH stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - gasPrice: - type: string - description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. - MaticStakingRequestPOSTBody: - title: MATIC stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - gasPrice: - type: string - description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. - NearStakingRequestPOSTBody: - title: NEAR stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to stake in base units. - type: string - example: '12000000000000000000' - SolStakingRequestPOSTBody: - title: SOL stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to stake in base units. - type: string - example: '1000' - DotStakingRequestPOSTBody: - title: DOT stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to stake in base units. - type: string - example: '10000000000' - CosmosLikeStakingRequestPOSTBody: - title: ATOM-like stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - properties: - validator: - description: The validator to delegate to. - type: string - example: 017234b285929170324e1051ccd887dc08adf049650ecf5d383985b0b0048ab39b - required: - - validator - AtomStakingRequestPOSTBody: - title: ATOM stake - allOf: - - $ref: '#/components/schemas/StakingRequestPOSTBody' - type: object - UnStakingRequestPOSTBody: - type: object - properties: - clientId: - description: Optional user generated identifier to detect duplicated requests. - type: string - type: - description: Staking Request type = 'UNSTAKE'. - type: string - example: UNSTAKE - required: - - type - MaticUnStakingRequestPOSTBody: - title: MATIC unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - gasPrice: - type: string - description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. - NearUnStakingRequestPOSTBody: - title: NEAR unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to stake in base units. - type: string - example: '12000000000000000000' - type: - description: Staking Request type = 'UNSTAKE'. - type: string - example: UNSTAKE - required: - - amount - - type - SolUnStakingRequestPOSTBody: - title: SOL unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - type: - description: Staking Request type = 'UNSTAKE'. - type: string - example: UNSTAKE - delegationId: - description: The delegation ID representing the delegation to unstake. - type: string - required: - - type - DotUnStakingRequestPOSTBody: - title: DOT unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - type: - description: Staking Request type = 'UNSTAKE'. - type: string - example: UNSTAKE - delegationId: - description: The delegation ID representing the delegation to unstake. - type: string - amount: - description: Amount to unstake in base units. - type: string - example: '10000000000' - required: - - type - CosmosLikeUnStakingRequestPOSTBody: - title: ATOM-like unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - delegationId: - description: Optional delegation ID representing the delegation to unstake. - type: string - amount: - description: Amount to unstake in base units. - type: string - example: '10000000000' - required: - - amount - AtomUnStakingRequestPOSTBody: - title: ATOM unstake - allOf: - - $ref: '#/components/schemas/UnStakingRequestPOSTBody' - type: object - properties: - amount: - description: Amount to unstake in base units. - type: string - example: '10000000000' - required: - - amount - EthStakingRequest: - title: ETH - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - gasPrice: - type: string - description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. - delegations: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/EthStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/EthStakingTransaction' - amount: - description: Amount to stake in base units (i.e. Wei for ETH). For Ethereum the amount needs to be a multiple of 32 ETH (32000000000000000000 Wei). For Testnet the 32 ETH multiple restriction does not apply. - type: string - MaticStakingRequest: - title: MATIC - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - gasPrice: - type: string - description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. - delegations: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/MaticStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/MaticStakingTransaction' - amount: - description: Amount to stake in base units (i.e. Wei for MATIC) - type: string - NearStakingRequest: - title: NEAR - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/NearStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/NearStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - CosmosLikeStakingRequest: - title: ATOM like - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/CosmosLikeStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/CosmosLikeStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - AtomStakingRequest: - title: ATOM - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/AtomStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/AtomStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - SolStakingRequest: - title: SOL - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/SolStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/SolStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - DotStakingRequest: - title: DOT - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/DotStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/DotStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - AvaxPStakingRequest: - title: AVAXP - allOf: - - $ref: '#/components/schemas/StakingRequest' - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 1 - items: - $ref: '#/components/schemas/AvaxPStakingDelegation' - transactions: - type: array - minItems: 1 - maxItems: 500 - items: - $ref: '#/components/schemas/AvaxPStakingTransaction' - amount: - description: Amount to stake in base units. - type: string - durationSeconds: - description: The length of time in seconds to complete a staking period. - type: integer - StakingDelegationProperties: - type: object - properties: - delegationCycle: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The number of cycles this delegation will be active. - endBurnBlockHeight: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The end burn block height for this delegation. - expireAt: - description: The staking expiration date. - type: string - format: date-time - example: '2025-01-31T00:00:00.000Z' - rewardWalletId: - description: The ID of the wallet where rewards will be received. - type: string - StakingDelegation: - type: object - properties: - id: - description: The staking request ID. - type: string - coin: - description: The staking asset. - type: string - walletId: - description: The ID of the wallet that the delegation is tied to. - type: string - delegationAddress: - description: The delegation address. - type: string - withdrawalAddress: - description: The withdrawal address. - type: string - delegated: - description: The delegation amount. - type: string - status: - description: The status of the delegation. - type: string - rewards: - description: The amount of rewards received over the lifetime. - type: string - lockedRewards: - description: The amount of locked rewards received. - type: string - pendingUnstake: - description: The amount that is pending unstake. - type: string - pendingStake: - description: The amount that is pending stake. - type: string - apy: - description: The estimated reward APY or APR if rewards are not compounding. - type: string - unstakingFee: - description: The total fees needed in the wallet to unstake an amount from the delegation. - type: string - unstakingMin: - description: The minimum amount needed to unstake from the delegation. - type: string - properties: - allOf: - - $ref: '#/components/schemas/StakingDelegationProperties' - type: object - rewardCoin: - description: The coin in which rewards will be received. - type: string - EthStakingDelegation: - title: ETH - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - MaticStakingDelegation: - title: MATIC - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - properties: - unstakeable: - description: True if unable to unstake. - type: boolean - NearStakingDelegation: - title: NEAR - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - CosmosLikeStakingDelegation: - title: ATOM like - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - AtomStakingDelegation: - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - SolStakingDelegation: - title: SOL - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - DotStakingDelegation: - title: DOT - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - AvaxPStakingDelegation: - allOf: - - $ref: '#/components/schemas/StakingDelegation' - type: object - DelegationResults: - type: object - properties: - delegations: - type: array - minItems: 1 - maxItems: 500 - items: - oneOf: - - $ref: '#/components/schemas/CosmosLikeStakingDelegation' - - $ref: '#/components/schemas/DotStakingDelegation' - - $ref: '#/components/schemas/EthStakingDelegation' - - $ref: '#/components/schemas/MaticStakingDelegation' - - $ref: '#/components/schemas/NearStakingDelegation' - - $ref: '#/components/schemas/SolStakingDelegation' - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - EthStakingTransactionSendRequest: - type: object - properties: - halfSigned: - description: A half-signed transaction object. - type: object - properties: - contractSequenceId: - description: The contract sequence ID of the transaction. - type: string - eip1559: - description: Eip1559 Params - type: object - properties: - maxPriorityFeePerGas: - type: string - maxFeePerGas: - type: string - operationHash: - type: string - expireTime: - type: string - signature: - type: string - comment: - type: string - EthStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - properties: - buildParams: - $ref: '#/components/schemas/TransactionBuildParams' - MaticStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - properties: - gasPrice: - description: The gas limit in base units. - type: string - NearStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - CosmosLikeStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - AtomStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - SolStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - AvaxPStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - DotStakingTransaction: - allOf: - - $ref: '#/components/schemas/StakingTransaction' - type: object - DotWalletStakingStateAttributes: - type: object - properties: - spendableAttributes: - $ref: '#/components/schemas/DotWalletStakingSpendableAttributes' - permissionAttributes: - $ref: '#/components/schemas/WalletStakingPermissionAttributes' - disclaimerAttributes: - $ref: '#/components/schemas/WalletStakingDisclaimerAttributes' - WalletStakingStateAttributes: - type: object - properties: - spendableAttributes: - $ref: '#/components/schemas/DotWalletStakingSpendableAttributes' - permissionAttributes: - $ref: '#/components/schemas/WalletStakingPermissionAttributes' - disclaimerAttributes: - $ref: '#/components/schemas/WalletStakingDisclaimerAttributes' - DotWalletStakingSpendableAttributes: - type: object - properties: - stakingSpendableAttributes: - $ref: '#/components/schemas/StakingSpendableAttributes' - unstakingSpendableAttributes: - $ref: '#/components/schemas/UnStakingSpendableAttributes' - AvaxpWalletStakingStateAttributes: - type: object - properties: - stakingSpendableAttributes: - allOf: - - $ref: '#/components/schemas/StakingSpendableAttributes' - type: object - properties: - minDuration: - description: The minimum duration in seconds for staking period. - type: integer - maxDuration: - description: The maximum duration in seconds for staking period. - type: integer - unstakingSpendableAttributes: - $ref: '#/components/schemas/UnStakingSpendableAttributes' - WalletStakingPermissionAttributes: - type: object - properties: - walletPermissionAttributes: - $ref: '#/components/schemas/WalletPermissionAttributes' - stakingPermissionAttributes: - $ref: '#/components/schemas/StakingPermissionAttributes' - unstakingPermissionAttributes: - $ref: '#/components/schemas/UnstakingPermissionAttributes' - WalletStakingDisclaimerAttributes: - type: object - properties: - stakingDisclaimerAttributes: - $ref: '#/components/schemas/StakingDisclaimerAttributes' - unstakingDisclaimerAttributes: - $ref: '#/components/schemas/UnstakingDisclaimerAttributes' - StakingSpendableAttributes: - type: object - properties: - max: - description: The maximum spendable amount. - type: string - min: - description: The minimum spendable amount. - type: string - fee: - description: The blockchain fee to submit the transactions needed to stake. - type: string - netMax: - description: The maximum spendable amount minus fees. - type: string - netMin: - description: The net minimum spendable amount plus fees. - type: string - isStakingDurationNeeded: - description: True, if staking duration in seconds is required. - type: boolean - minStakeMore: - description: The minimum amount required to stake to the same validator. - type: integer - UnStakingSpendableAttributes: - type: object - properties: - max: - description: The maximum spendable amount. - type: string - min: - description: The minimum spendable amount. - type: string - fee: - description: The blockchain fee to submit the transactions needed to unstake. - type: string - multipleDelegations: - description: True, if more than one active staking delegation exists for a wallet. - type: boolean - WalletPermissionAttributes: - type: object - properties: - hasEnoughAdmins: - description: True, if the wallet has enough admins to create a staking request. - type: boolean - numberOfRequiredAdmin: - description: The number of admins required to create a hot staking request. - type: integer - StakingPermissionAttributes: - type: object - properties: - enabled: - description: If the wallet has staking request submission permission. - type: string - disabledReason: - description: The reason that staking request submission has been disabled. - type: string - UnstakingPermissionAttributes: - type: object - properties: - enabled: - description: If the wallet has unstaking request submission permission. - type: string - disabledReason: - description: The reason that unstaking request submission has been disabled. - type: string - StakingDisclaimerAttributes: - type: object - properties: - info: - description: Disclaimer info - type: string - transactionsNeeded: - description: The number of transactions needed for a staking request. - type: integer - UnstakingDisclaimerAttributes: - type: object - properties: - info: - description: Disclaimer info - type: string - transactionsNeeded: - description: The number of transactions needed for an unstaking request. - type: integer - StakingWallet: - type: object - properties: - enterpriseId: - description: The ID of the enterprise where the the staking request was created. - type: string - walletId: - description: The ID of the wallet where the staking request was created. - type: string - walletType: - description: The type of wallet the staking request was created from, either cold, custodial, or hot. - type: string - label: - description: The label of the wallet the staking request was created from. - type: string - coin: - description: The staking asset. - type: string - delegated: - description: The delegated staked amount in base units. - type: string - pendingUnstake: - description: The amount that is actively being unstaked. - type: string - pendingStake: - description: The amount that is actively being staked. - type: string - spendableAttributes: - description: Spendable attributes - type: object - rewards: - description: The amount of rewards received in base units. - type: string - lockedRewards: - description: The amout of locked rewards in base units. - type: string - apy: - description: The reward accrual annual percentage rate. The rate is estimated yearly based on the last 7 days using the same methodology as leading beacon chain validator aggregators (e.g. https://beaconcha.in/validators). - type: string - createdDate: - description: The date the staking request was created. - type: string - modifiedDate: - description: The last date the staking wallet was modified. - type: string - required: - - enterpriseId - - walletId - - walletType - - label - - coin - - delegated - - pendingUnstake - - pendingStake - - rewards - - lockedRewards - - apy - - createdDate - - modifiedDate - StakingWalletsResponse: - type: object - properties: - stakingWallets: - description: An array of staking wallets. - type: array - items: - $ref: '#/components/schemas/StakingWallet' - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - required: - - stakingWallets - - page - - totalPages - - totalElements - StakingEnterprise: - type: object - properties: - enterpriseId: - description: The ID of the enterprise where the the staking request was created from. - type: string - coin: - description: The staking asset. - type: string - delegated: - description: The delegated staked amount in base units. - type: string - rewards: - description: The reward accrual amount in base units. - type: string - apy: - description: Reward accrual annual percentage rate. Estimated yearly based on the last 7 days. Same methodology as leading beacon chain validator aggregators (e.g. https://beaconcha.in/validators) - type: string - StakingRewards: - type: object - properties: - rewards: - description: An array of rewards. - type: array - items: - $ref: '#/components/schemas/StakingReward' - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - StakingReward: - type: object - properties: - reward: - description: The reward in base units. - type: string - walletId: - description: The wallet ID. - type: string - enterpriseId: - description: The enterprise ID. - type: string - date: - description: The date and time of the reward. - type: string - format: date-time - required: - - reward - - date - DelegationAccruals: - type: object - properties: - accruals: - description: An array of delegation accruals. - type: array - items: - $ref: '#/components/schemas/DelegationAccrual' - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - DelegationAccrual: - type: object - properties: - rewardsReceived: - description: The total rewards received over the lifetime of the wallet. - type: string - delegated: - description: The total rewards delegated (staked). - type: string - pendingDelegated: - description: The total amount pending to be delegated (staked). - type: string - pendingUndelegated: - description: Total amount pending to be undelegated (unstaked). - type: string - spendable: - description: Total spendable (withdrawable) amount in the wallet. - type: string - locked: - description: The total amount locked but not delegated (staked). Example is staking rewards that are not re-staked and compounding. - type: string - delegationId: - description: The delegation ID. - type: string - delegationAddress: - description: The delegation address. - type: string - withdrawalAddress: - description: The withdrawal address. - type: string - walletId: - description: The wallet ID. - type: string - enterpriseId: - description: The enterprise ID. - type: string - coin: - description: The staking asset. - type: string - date: - description: The date and time of the accrual record. - type: string - format: date-time - TransactionBuildParams: - type: object - properties: - recipients: - description: Recipient build params data - type: object - properties: - amount: - description: The amount to stake in base units. - type: string - address: - description: The address. - type: string - data: - description: The staking data (ABI format). - type: string - stakingParams: - description: Staking params - type: object - properties: - requestId: - type: string - amount: - description: The amount to stake in base units. - type: string - validator: - description: The validator address. - type: string - actionType: - description: The action type (e.g. delegate). - type: string - gasPrice: - description: The Gas price in base units. - type: string - gasLimit: - description: The Gas limit in base units. - type: string - StakingRequestsResponse: - type: object - properties: - requests: - type: array - minItems: 1 - maxItems: 500 - items: - oneOf: - - $ref: '#/components/schemas/EthStakingRequestWithTransactions' - - $ref: '#/components/schemas/NearStakingRequestWithTransactions' - - $ref: '#/components/schemas/CosmosLikeStakingRequestWithTransactions' - - $ref: '#/components/schemas/AtomStakingRequestWithTransactions' - - $ref: '#/components/schemas/SolStakingRequestWithTransactions' - - $ref: '#/components/schemas/DotStakingRequestWithTransactions' - - $ref: '#/components/schemas/MaticStakingRequest' - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - StakingRequestsListResponse: - type: object - properties: - requests: - type: array - minItems: 1 - maxItems: 500 - items: - oneOf: - - $ref: '#/components/schemas/EthStakingRequest' - - $ref: '#/components/schemas/MaticStakingRequest' - - $ref: '#/components/schemas/NearStakingRequest' - - $ref: '#/components/schemas/CosmosLikeStakingRequest' - - $ref: '#/components/schemas/AtomStakingRequest' - - $ref: '#/components/schemas/SolStakingRequest' - - $ref: '#/components/schemas/DotStakingRequest' - EthStakingRequestWithTransactions: - title: ETH - allOf: - - $ref: '#/components/schemas/EthStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/EthStakingTransaction' - NearStakingRequestWithTransactions: - title: NEAR - allOf: - - $ref: '#/components/schemas/NearStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/NearStakingTransaction' - CosmosLikeStakingRequestWithTransactions: - title: ATOM like - allOf: - - $ref: '#/components/schemas/CosmosLikeStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/CosmosLikeStakingTransaction' - AtomStakingRequestWithTransactions: - title: ATOM - allOf: - - $ref: '#/components/schemas/AtomStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/AtomStakingTransaction' - SolStakingRequestWithTransactions: - title: SOL - allOf: - - $ref: '#/components/schemas/SolStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/SolStakingTransaction' - DotStakingRequestWithTransactions: - title: DOT - allOf: - - $ref: '#/components/schemas/DotStakingRequest' - - type: object - properties: - transactions: - type: array - items: - oneOf: - - $ref: '#/components/schemas/DotStakingTransaction' - StakeableCoinsResult: - title: Stakeable coins - type: object - properties: - coins: - type: array - items: - $ref: '#/components/schemas/StakeableCoins' - page: - type: integer - totalPages: - type: integer - totalElements: - type: integer - StakingError: - title: Staking Error - type: object - properties: - error: - type: string - errorName: - type: string - reqId: - type: string - context: - type: object - CoinsUnauthorizedError: - type: object - properties: - error: - type: string - errorName: - type: string - reqId: - type: string - context: - type: object - properties: - errorName: - type: string - StakeableCoins: - type: object - properties: - symbol: - type: string - baseUnit: - type: string - isToken: - type: boolean - isTss: - type: boolean - isMultiSig: - type: boolean - l1Chain: - type: string - StakingValidator: - type: object - properties: - delegationAddress: - description: The delegation address. - type: string - coin: - description: The staked coin. - type: string - delegated: - description: The total delegated amount in base units. - type: string - rewards: - description: The reward accrual amount in base units. - type: string - apy: - description: The annual percentage yield. - type: string - type: - description: The validator provider used for staking. - type: string - rewardCoin: - description: The coin in which rewards will be received. - type: string - StakingValidatorsResponse: - type: object - properties: - validators: - type: array - minItems: 1 - maxItems: 500 - items: - allOf: - - $ref: '#/components/schemas/StakingValidator' - - type: object - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - StakingPartneredValidator: - type: object - properties: - delegationAddress: - description: The delegation address. - type: string - type: - description: The validator provider. - type: string - totalStaked: - description: The total staked amount in base units. - type: string - rewards: - description: The reward accrual amount in base units. - type: string - apy: - description: The annual percentage yield. - type: string - commission: - description: The fee charged by the validator as a percentage. - type: string - coin: - description: The staked coin. - type: string - avses: - description: The validator's actively validated services (AVS) for restaking. - type: array - items: - type: string - historicRatePerformance: - description: The validator's historical reward rate for the last 30 days. - type: string - StakingPartneredValidatorsResponse: - type: object - properties: - validators: - type: array - minItems: 1 - maxItems: 500 - items: - allOf: - - $ref: '#/components/schemas/StakingPartneredValidator' - - type: object - page: - type: integer - description: The page number for paging purposes. - totalPages: - type: integer - description: The total number of pages for paging purposes. - totalElements: - type: integer - description: The number of elements per page used for paging purposes. - StakingLicense: - type: object - properties: - coin: - description: The name of the coin. - type: string - fee: - description: The corresponding fee for coin in current license. - type: string - StakingLicenseResponse: - type: object - properties: - enterpriseId: - type: string - description: The enterprise ID. - defaultFee: - type: string - description: The default fee for the asset. - fees: - type: array - minItems: 1 - maxItems: 500 - items: - allOf: - - $ref: '#/components/schemas/StakingLicense' - - type: object - StakingRequest: - title: Staking Request - type: object - properties: - id: - description: Staking request ID. - type: string - clientId: - description: Optional clientId if passed into the request. - type: string - requestingUserId: - description: The ID of the user that created the staking request. - type: string - enterpriseId: - description: The ID of the enterprise where the the staking request was created. - type: string - walletId: - description: The ID of the wallet where the staking request was created. - type: string - withdrawalAddress: - description: Withdrawal Address - type: string - walletType: - description: The type of wallet the staking request was created from either cold, custodial, or hot. - type: string - type: - $ref: '#/components/schemas/StakingRequestType' - coin: - description: The coin to be staked (ETH, MATIC, NEAR, SOL). - type: string - createdDate: - description: The date the staking request was created. - type: string - format: date-time - status: - $ref: '#/components/schemas/StakingRequestStatus' - statusModifiedDate: - description: The last date the status changed. - type: string - error: - description: The reason the staking request failed. - type: string - totalStaked: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The sum of the amounts of all confirmed staking transactions in this request. - delegationCycle: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The number of cycles this staking request will be active. - required: - - id - - requestingUserId - - enterpriseId - - walletId - - withdrawalAddress - - walletType - - type - - coin - - createdDate - - status - - statusModifiedDate - StakingRequestStatus: - title: Staking Request Status - description: The status of the staking request. For ETH the status will change from NEW to READY when a validator has been assigned to the wallet's address. - type: string - enum: - - NEW - - PENDING_VALIDATORS - - READY - - PENDING_APPROVAL - - PENDING_BITGO_TRUST_APPROVAL - - PENDING - - FAILED - - REJECTED - - VALIDATOR_ACTIVATING - - PARTIAL_CONFIRMED - - CONFIRMED - - COOLDOWN - - WARMUP - - DELAYED_COOLDOWN - - DELAYED_WARMUP - - ETH_PARTIAL_EXITED - - ETH_EXITED - StakingRequestType: - title: Staking Request Type - description: The type of staking request. - type: string - enum: - - STAKE - - UNSTAKE - - CLAIM_REWARDS - - SWITCH_VALIDATOR - - CHECKPOINT - - UNSUPPORTED - StakingTransaction: - title: Staking Transaction - type: object - properties: - id: - description: The staking transaction ID. - type: string - stakingRequestId: - description: The staking request ID. - type: string - transactionType: - allOf: - - $ref: '#/components/schemas/StakingTransactionType' - - type: string - description: The transaction type (delegate). - txHash: - description: The transaction hash. - type: string - createdDate: - description: The date the transaction was created. - type: string - format: date-time - status: - $ref: '#/components/schemas/StakingTransactionStatus' - statusModifiedDate: - description: The last date the status changed. - type: string - format: date-time - error: - description: The reason the transaction failed. - type: string - amount: - allOf: - - $ref: '#/components/schemas/IntegerString' - description: The transaction Amount in base units (i.e. Wei for ETH). - delegationId: - description: The staking delegation the transaction is acting on. - type: string - pendingApprovalId: - description: Pending Approval ID - type: string - transferId: - description: Transfer ID - type: string - txRequestId: - description: Transaction Request ID for the Transaction Request API - type: string - required: - - stakingRequestId - - transactionType - - createdDate - - status - - statusModifiedDate - - delegationId - - amount - StakingTransactionStatus: - title: Staking Transaction Status - description: The status of the transaction, either NEW, READY, INITIATED, CONFIRMED, or REJECTED. - type: string - enum: - - WAITING - - READY - - SENDING - - PENDING_APPROVAL - - PENDING_BITGO_TRUST_APPROVAL - - REJECTED - - PENDING - - FAILED - - CONFIRMED - - VALIDATOR_ACTIVATING - - DELAYED_READY - StakingTransactionType: - title: Staking Transaction Type - description: The type of staking transaction. - type: string - enum: - - delegate - - reward - - undelegate - - withdraw_undelegated - - authorize - - '' - TransactionRequestLite2: - title: TransactionRequestLite - allOf: - - type: object - properties: - intent: - allOf: - - $ref: '#/components/schemas/TransactionIntent1' - description: The intent of the transaction request - unsignedTxs: - type: array - items: - type: object - properties: - parsedTx: - $ref: '#/components/schemas/ParsedTx' - serializedTxHex: - type: string - description: The unsigned transaction as a hex string. - signableHex: - type: string - description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. - derivationPath: - type: string - description: A bip32 path. - coinSpecific: - allOf: - - type: object - properties: - nonceAddress: - type: string - stakingAddress: - type: string - - type: object - additionalProperties: {} - description: Coin specific information. - feeInfo: - type: object - properties: - fee: - oneOf: - - type: string - - type: number - feeString: - type: string - required: - - fee - - feeString - required: - - parsedTx - - serializedTxHex - - signableHex - description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. - signatureShares: - type: array - items: - allOf: - - type: object - properties: - vssProof: - type: string - description: The VSS proof of the signature share - privateShareProof: - type: string - description: The private share proof - publicShare: - type: string - description: The public share - - $ref: '#/components/schemas/SignatureShareWithoutVssProof' - description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. - commitmentShares: - type: array - items: - allOf: - - type: object - properties: - type: - type: string - enum: - - commitment - description: The type of the commitment share - required: - - type - - $ref: '#/components/schemas/BaseShare' - description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. - txHashes: - type: array - items: - type: string - description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. - - $ref: '#/components/schemas/TransactionRequestBase' - TransactionIntent1: - title: TransactionIntent - oneOf: - - $ref: '#/components/schemas/AdaConsolidateIntent' - - $ref: '#/components/schemas/AdaPaymentIntent' - - $ref: '#/components/schemas/AdaStakeClaimRewardsIntent' - - $ref: '#/components/schemas/AdaStakeIntent' - - $ref: '#/components/schemas/AdaUnstakeIntent' - - $ref: '#/components/schemas/AdaVoteDelegationIntent' - - $ref: '#/components/schemas/AtomPaymentIntent' - - $ref: '#/components/schemas/AtomStakeIntent' - - $ref: '#/components/schemas/AtomUnstakeIntent' - - $ref: '#/components/schemas/AtomWithdrawIntent' - - $ref: '#/components/schemas/BscDelegateIntent' - - $ref: '#/components/schemas/BscUnDelegateIntent' - - $ref: '#/components/schemas/BscWithdrawUndelegateIntent' - - $ref: '#/components/schemas/CosmosPaymentIntent' - - $ref: '#/components/schemas/CosmosStakeIntent' - - $ref: '#/components/schemas/CosmosSwitchValidatorIntent' - - $ref: '#/components/schemas/CosmosUnstakeIntent' - - $ref: '#/components/schemas/CosmosWithdrawIntent' - - $ref: '#/components/schemas/DotConsolidateIntent' - - $ref: '#/components/schemas/DotCreateAccountIntent' - - $ref: '#/components/schemas/DotPaymentIntent' - - $ref: '#/components/schemas/DotStakingIntent' - - $ref: '#/components/schemas/DotUnstakingIntent' - - $ref: '#/components/schemas/DotWithdrawStakeIntent' - - $ref: '#/components/schemas/EthAccelerationIntent' - - $ref: '#/components/schemas/EthConsolidateIntent' - - $ref: '#/components/schemas/EthConsolidateTokenIntent' - - $ref: '#/components/schemas/EthFillNonceIntent' - - $ref: '#/components/schemas/EthPaymentIntent' - - $ref: '#/components/schemas/EthStakingIntent' - - $ref: '#/components/schemas/EthTransferTokenIntent' - - $ref: '#/components/schemas/LightningPaymentIntent' - - $ref: '#/components/schemas/MmiSignMessageIntent' - - $ref: '#/components/schemas/MmiSignTransactionIntent' - - $ref: '#/components/schemas/NearStakeIntent' - - $ref: '#/components/schemas/NearUnstakeIntent' - - $ref: '#/components/schemas/NearWithdrawIntent' - - $ref: '#/components/schemas/SolAuthorizeIntent' - - $ref: '#/components/schemas/SolClaimIntent' - - $ref: '#/components/schemas/SolCloseAssociatedTokenAccountIntent' - - $ref: '#/components/schemas/SolConsolidateIntent' - - $ref: '#/components/schemas/SolCreateAssociatedTokenAccountIntent' - - $ref: '#/components/schemas/SolDeactivateIntent' - - $ref: '#/components/schemas/SolDelegateIntent' - - $ref: '#/components/schemas/SolPaymentIntent' - - $ref: '#/components/schemas/SolStakeIntent' - - $ref: '#/components/schemas/SolUnstakeIntent' - - $ref: '#/components/schemas/SuiConsolidateIntent' - - $ref: '#/components/schemas/SuiCustomTxIntent' - - $ref: '#/components/schemas/SuiPaymentIntent' - - $ref: '#/components/schemas/SuiStakingIntent' - - $ref: '#/components/schemas/SuiUnstakingIntent' - - $ref: '#/components/schemas/TonConsolidateIntent' - - $ref: '#/components/schemas/TonDelegateIntent' - - $ref: '#/components/schemas/TonPaymentIntent' - - $ref: '#/components/schemas/TonUndelegateIntent' - - $ref: '#/components/schemas/WalletRecoveryIntent' - - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' - - $ref: '#/components/schemas/CoreDaoDelegateIntent' - - $ref: '#/components/schemas/CoreDaoUndelegateIntent' - - $ref: '#/components/schemas/CoreDaoClaimIntent' - - $ref: '#/components/schemas/EthLikeStakeIntent' - - $ref: '#/components/schemas/BeraDelegateIntent' - - $ref: '#/components/schemas/BaseIntent' - ExchangeEddsaCommitmentsResponse: - title: ExchangeEddsaCommitmentsResponse - type: object - properties: - commitmentShare: - allOf: - - $ref: '#/components/schemas/CommitmentShare1' - description: The commitment share. - required: - - commitmentShare - CommitmentShare1: - title: CommitmentShare - allOf: - - type: object - properties: - type: - type: string - enum: - - commitment - description: The type of the commitment share - required: - - type - - $ref: '#/components/schemas/BaseShare' - EncryptedShare: - title: EncryptedShare - allOf: - - type: object - properties: - type: - $ref: '#/components/schemas/ShareType' - required: - - type - - $ref: '#/components/schemas/BaseShare' - ShareType: - title: ShareType - type: string - enum: - - encryptedSignerShare - - encryptedRShare - TransactionRequestIdNonEmptyString: - title: TransactionRequestIdNonEmptyString - type: string - example: 123e4567-e89b-12d3-a456-426614174000 - minLength: 1 - format: uuid - CreateBitgoChallengeResponse: - title: CreateBitgoChallengeResponse - type: object - properties: - ntilde: - type: string - description: Range proof challenge value - example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 - h1: - type: string - description: Range proof challenge value - example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 - h2: - type: string - description: Range proof challenge value - example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 - 'n': - type: string - description: BitGo's paillier modulus 'n'. - example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 - p: - type: array - items: - type: string - description: Pallier proof challenge value - example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 - required: - - ntilde - - h1 - - h2 - - 'n' - - p - TransactionRequest1: - title: TransactionRequest - oneOf: - - $ref: '#/components/schemas/TransactionRequestLite2' - - $ref: '#/components/schemas/TransactionRequestFull' - ListTxRequestAwaitingSignatureForWalletResponse: - title: ListTxRequestAwaitingSignatureForWalletResponse - type: object - properties: - txRequests: - type: array - items: - allOf: - - type: object - properties: - transactions: - type: array - items: - type: object - properties: - state: - $ref: '#/components/schemas/TransactionState' - unsignedTx: - $ref: '#/components/schemas/UnsignedTransaction' - signatureShares: - type: array - items: - allOf: - - type: object - properties: - privateShareProof: - type: string - description: The private share proof - publicShare: - type: string - description: The public share - vssProof: - type: string - description: The VSS proof of the signature share - - $ref: '#/components/schemas/SignatureShareWithoutVssProof' - commitmentShares: - type: array - items: - allOf: - - type: object - properties: - type: - type: string - enum: - - commitment - description: The type of the commitment share - required: - - type - - $ref: '#/components/schemas/BaseShare' - txHash: - type: string - updatedDate: - type: string - format: date-time - title: ISO Date String - createdDate: - type: string - format: date-time - title: ISO Date String - required: - - state - - unsignedTx - description: The transactions associated with the transaction request - - $ref: '#/components/schemas/TransactionRequestBase' - bitgoRangeProofChallenge: - allOf: - - type: object - properties: - ntildeProof: - $ref: '#/components/schemas/NtildeProof' - required: - - ntildeProof - - $ref: '#/components/schemas/Challenge' - totalCount: - type: number - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. - example: 585951a5df8380e0e3063e9f - format: uuid - required: - - txRequests - Challenge: - title: Challenge - type: object - properties: - ntilde: - type: string - description: Range proof challenge value - h1: - type: string - description: Range proof challenge value - h2: - type: string - description: Range proof challenge value - required: - - ntilde - - h1 - - h2 - NtildeProof: - title: NtildeProof - type: object - description: The ntildeProof value is only required when creating the initial config. - properties: - h1WrtH2: - type: object - properties: - alpha: - type: array - items: - type: string - description: The alpha value of the range proof challenge proof is an array of 128 hex strings. - t: - type: array - items: - type: string - description: The t value of the range proof challenge proof is an array of 128 hex strings. - required: - - alpha - - t - h2WrtH1: - type: object - properties: - alpha: - type: array - items: - type: string - description: The alpha value of the range proof challenge proof is an array of 128 hex strings. - t: - type: array - items: - type: string - description: The t value of the range proof challenge proof is an array of 128 hex strings. - required: - - alpha - - t - required: - - h1WrtH2 - - h2WrtH1 - GetTransactionRequestsWithWalletPermissionsResponse: - title: GetTransactionRequestsWithWalletPermissionsResponse - type: object - properties: - nextBatchPrevId: - type: string - txRequests: - type: array - items: - allOf: - - type: object - properties: - transactions: - type: array - items: - type: object - properties: - state: - $ref: '#/components/schemas/TransactionState' - unsignedTx: - $ref: '#/components/schemas/UnsignedTransaction' - signatureShares: - type: array - items: - allOf: - - type: object - properties: - privateShareProof: - type: string - description: The private share proof - publicShare: - type: string - description: The public share - vssProof: - type: string - description: The VSS proof of the signature share - - $ref: '#/components/schemas/SignatureShareWithoutVssProof' - commitmentShares: - type: array - items: - allOf: - - type: object - properties: - type: - type: string - enum: - - commitment - description: The type of the commitment share - required: - - type - - $ref: '#/components/schemas/BaseShare' - txHash: - type: string - updatedDate: - type: string - format: date-time - title: ISO Date String - createdDate: - type: string - format: date-time - title: ISO Date String - required: - - state - - unsignedTx - description: The transactions associated with the transaction request - - $ref: '#/components/schemas/TransactionRequestBase' - required: - - txRequests - TransferAction: - title: TransferAction - type: string - enum: - - created - - approved - - rejected - - signed - - unconfirmed - - confirmed - - removed - - commented - - failed - - regenerated - - replaced - - replacing - - abandoned - TransferState1: - title: TransferState - type: string - enum: - - initialized - - pendingApproval - - rejected - - signed - - unconfirmed - - confirmed - - removed - - failed - - replaced - - deleted - TransferType: - title: TransferType - type: string - enum: - - send - - receive - NumberLike: - title: NumberLike - type: number - RegionalFeatures: - title: RegionalFeatures - type: object - properties: - trading: - type: boolean - custody: - type: boolean - lending: - type: boolean - borrowing: - type: boolean - required: - - trading - - custody - - lending - - borrowing - OrganizationRole: - title: OrganizationRole - type: string - enum: - - admin - - member - - customer - example: admin - Transfer1: - title: Transfer - type: object - properties: - baseValue: - type: number - description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. - baseValueString: - type: string - description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. - example: '2000000' - pattern: ^-?\d+$ - coin: - $ref: '#/components/schemas/CoinString' - comment: - nullable: true - type: string - description: A comment from the user - date: - type: string - description: The date this Transfer was last updated - format: date-time - title: ISO Date String - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - bitgoOrg: - type: string - enum: - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - BitGo Europe ApS - - Frankfurt DE Trust - - BitGo Singapore - - BitGo Korea - - BitGo Mena Fze - - BitGo Custody MENA FZE - - BitGo Sister Trust 1 - - BitGo Inc - entries: - type: array - items: - type: object - properties: - address: - type: string - description: An address affected by this Transfer - example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ - valueString: - type: string - description: The change (in base units) in the address' balance represented as a string - example: '20000' - pattern: '"^-?\d+$"' - isChange: - type: boolean - description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer - wallet: - type: string - description: Only visible when the user has access to the wallet - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - value: - type: number - description: The change (in base units) in the address' balance - nftSymbol: - type: string - type: - type: string - enum: - - flushForwarderTokens - - walletFunding - - walletInitialization - - addressInitialization - - importedOutput - isPayGo: - type: boolean - description: True if this address is the BitGo PayGo wallet - token: - type: string - description: If this is a token entry, the token's symbol - example: omg - failed: - type: boolean - description: True if this entry is failed - associatedNativeCoinAddress: - type: string - description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. - isFee: - type: boolean - description: Indicates if this entry is a fee - isInternal: - type: boolean - description: Indicates if this entry is internal - memo: - type: string - description: Memo associated with this entry - rewardAddress: - type: string - description: Reward address associated with this entry - subtype: - type: string - description: Subtype of this entry - backingFeeString: - type: string - description: Backing fee represented as a string - nftId: - type: string - description: NFT ID associated with this entry - tokenContractHash: - type: string - description: Token contract hash associated with this entry - isReward: - type: boolean - description: Indicates if this entry is a reward - required: - - address - description: An array of objects describing the change in address balances made as a result of this Transfer - history: - type: array - items: - type: object - properties: - action: - $ref: '#/components/schemas/TransferAction' - comment: - nullable: true - type: string - description: If this history object is of action "commented", this is the comment from the user - date: - type: string - description: The date of this history object - format: date-time - title: ISO Date String - transferId: - type: string - description: The ID of the transfer that this history object is associated with - txid: - type: string - description: The transaction ID of the transaction that this history object is associated with - user: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - action - - date - description: An audit log of events that have happened to the Transfer during its lifecycle - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - pendingApproval: - type: string - state: - $ref: '#/components/schemas/TransferState1' - stakingParams: - type: object - properties: - actionType: - type: string - coreDao: - type: object - properties: - amount: - type: string - format: number - expiration: - type: string - format: date-time - title: ISO Date String - fee: - type: number - rewardAddress: - type: string - validator: - type: string - version: - type: number - required: - - amount - - expiration - - fee - - rewardAddress - - validator - - version - requestId: - type: string - source: - type: string - enum: - - external - - internal - validator: - type: string - required: - - actionType - - requestId - txid: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - type: - allOf: - - $ref: '#/components/schemas/TransferType' - description: Defines whether or not this Transfer was sent or received by the user - usd: - type: number - description: The amount of USD of this Transfer (will be negative if it's a send) - usdRate: - type: number - description: The USD rate at the time this Transfer was created - value: - type: number - description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) - valueString: - type: string - description: The total value (in base units) sent by this Transfer represented as a String - example: '2000000' - pattern: ^-?\d+$ - wallet: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - walletType: - type: string - enum: - - backing - - cold - - custodial - - custodialPaired - - hot - - trading - description: Wallet type - replaces: - type: array - items: - type: string - description: Transaction IDs that this transfer replaces. - replacedBy: - type: array - items: - type: string - description: Transaction IDs that replace this transfer. - required: - - coin - - date - - entries - - history - - id - - state - - type - - valueString - - wallet - ListPendingApprovalsCountByEnterpriseResponse: - title: ListPendingApprovalsCountByEnterpriseResponse - type: object - properties: - enterprises: - $ref: '#/components/schemas/PendingApprovalsCountSchema' - organizations: - type: object - additionalProperties: - type: object - properties: - pendingApprovalsCount: - type: number - description: The number of pending approvals - required: - - pendingApprovalsCount - required: - - enterprises - PendingApprovalsCountSchema: - title: PendingApprovalsCountSchema - type: object - additionalProperties: - type: object - properties: - pendingApprovalsCount: - type: number - description: The number of pending approvals - required: - - pendingApprovalsCount - GetWalletBalancesByCoinResponse: - title: GetWalletBalancesByCoinResponse - allOf: - - type: object - properties: - balance: - type: number - description: The total balance of all wallets containing the given coin type. May lose precision for large values. - confirmedBalance: - type: number - description: The total balance of confirmed transactions for all wallets containing the given coin type. May lose precision for large values. - spendableBalance: - type: number - description: The total balance of all wallets containing the given coin which may be used as inputs for creating new transactions. May lose precision for large values. - stakedBalance: - type: number - description: The total balance of all wallets containing the given coin which has been staked. May lose precision for large values. - stakedBalanceString: - type: string - description: String representation of 'stakedBalance'. Guaranteed to not lose precision. - tokens: - allOf: - - $ref: '#/components/schemas/tokenBalances' - description: Object of key value pairs where the keys are the token symbols (e.g. omg) and the values are the balance data for that token symbol. - unsupportedTokens: - allOf: - - $ref: '#/components/schemas/tokenBalances' - description: Object of key value pairs where the keys are the unsupported token contracts (e.g. 0x9928e4046d7c6513326ccea028cd3e7a91c7590a) and the values are the balance data for that token contract. UnsupportedTokens will only be returned for wallets that supports Metamask Institutional and has enableMMI flag turned on - required: - - balance - - confirmedBalance - - spendableBalance - - $ref: '#/components/schemas/baseBalanceStrings' - baseBalanceStrings: - title: baseBalanceStrings - type: object - properties: - balanceString: - type: string - description: String representation of the total balance of all wallets containing the given coin type. Guaranteed to not lose precision. - confirmedBalanceString: - type: string - description: String representation of the total balance of confirmed transactions for all wallets containing the given coin type. Guaranteed to not lose precision. - spendableBalanceString: - type: string - description: String representation of the total balance of all wallets containing the given coin which may be used as inputs for creating new transactions. Guaranteed to not lose precision. - required: - - balanceString - - confirmedBalanceString - - spendableBalanceString - tokenBalances: - title: tokenBalances - type: object - additionalProperties: - allOf: - - type: object - properties: - transferCount: - type: number - description: Number of transfers for the token. - heldBalanceString: - type: string - description: The difference between the balanceString and the spendableBalanceString. - required: - - transferCount - - $ref: '#/components/schemas/baseBalanceStrings' - GetWalletBalanceResponse: - title: GetWalletBalanceResponse - type: object - properties: - balances: - type: array - items: - type: object - properties: - coin: - allOf: - - $ref: '#/components/schemas/CoinNonEmptyString' - description: A cryptocurrency or token ticker symbol. - balanceString: - type: string - description: String representation of the balance in base units. Guaranteed to not lose precision. - confirmedBalanceString: - type: string - description: String representation of the confirmed balance in base units. Guaranteed to not lose precision. - spendableBalanceString: - type: string - description: String representation of the spendable in base units. Guaranteed to not lose precision. Will not be included if 'excludeSpendableBalances=false' - required: - - coin - - balanceString - - confirmedBalanceString - required: - - balances - DeployAddressAndForwardTokenResponse: - title: DeployAddressAndForwardTokenResponse - type: object - properties: - txId: - type: string - required: - - txId - AddressProofResult: - title: AddressProofResult - type: object - description: Proof of address ownership - properties: - iou: - type: boolean - description: True if this is an IOU - address: - type: string - description: The address - signature: - type: string - description: The proof signature - prefix: - type: string - description: A 64-character random string used to generate the proof - chain: - allOf: - - $ref: '#/components/schemas/ProofChain' - description: The coin name ('BITCOIN' or 'ETHEREUM') - proofType: - allOf: - - $ref: '#/components/schemas/ProofType' - description: The type of proof - auxProofData: - type: array - items: - type: object - properties: - type: - allOf: - - $ref: '#/components/schemas/AuxProofType' - description: The type of data - data: - type: object - properties: - script: - type: string - description: The REDEEM_SCRIPT or WITNESS_SCRIPT associated with the address - nonce: - type: string - salt: - type: string - init_code_hash: - type: string - required: - - type - - data - required: - - iou - ProofChain: - title: ProofChain - type: string - enum: - - BITCOIN - - ETHEREUM - ProofType: - title: ProofType - type: string - enum: - - BITCOIN_P2SH - - BITCOIN_P2SH_P2WSH - - BITCOIN_P2WSH - - ETHEREUM_CONTRACT - AuxProofType: - title: AuxProofType - type: string - enum: - - REDEEM_SCRIPT - - WITNESS_SCRIPT - - ETH_CREATE - - ETH_CREATE2 - WalletAddressUnion: - title: WalletAddressUnion - oneOf: - - $ref: '#/components/schemas/WalletAddress' - - $ref: '#/components/schemas/LightningWalletAddress' - LightningWalletAddress: - title: LightningWalletAddress - allOf: - - type: object - properties: - coin: - $ref: '#/components/schemas/CoinString' - wallet: - type: string - required: - - coin - - wallet - - $ref: '#/components/schemas/BaseWalletAddress' - AddressWithBalanceQueryResult: - title: AddressWithBalanceQueryResult - type: object - description: Represents the result of a query for addresses with balances. This structure contains the details of a set of addresses, their associated balances, and pagination information about the query results. - properties: - coin: - allOf: - - $ref: '#/components/schemas/CoinString' - description: The coin associated with the address balances - page: - type: number - description: The current page number - totalAddressCount: - type: number - description: Total number of addresses present - totalPages: - type: number - description: Total number of pages available for pagination - addresses: - type: array - items: - type: object - properties: - address: - type: string - description: The address itself - balance: - allOf: - - $ref: '#/components/schemas/TrimmedBalance' - description: The balance associated with the address - required: - - address - - balance - description: List of addresses with their balances - message: - type: string - description: Optional message from the response - count: - type: number - description: Count of the addresses in the current response - required: - - coin - AddressQueryResult: - title: AddressQueryResult - type: object - properties: - coin: - $ref: '#/components/schemas/CoinString' - pendingAddressCount: - type: number - description: Total number of addresses pending on-chain initialization on this wallet **Note:** for wallets with many addresses (100,000 or more), this property may be omitted for performance reasons. If the pending address count is needed for a large wallet, the 'includeTotalAddressCount' query parameter can be used to force an address count to be returned with the initial page of addresses. - totalAddressCount: - type: number - description: Total number of addresses which match the provided query parameters. **Note:** for wallets with many addresses (100,000 or more), this property may be omitted for performance reasons. If the total address count is needed for a large wallet, the 'includeTotalAddressCount' query parameter can be used to force an address count to be returned with the initial page of addresses. - addresses: - type: array - items: - allOf: - - type: object - properties: - chain: - $ref: '#/components/schemas/AddressChain' - coin: - $ref: '#/components/schemas/CoinString' - index: - type: number - wallet: - type: string - required: - - chain - - coin - - index - - wallet - - $ref: '#/components/schemas/BaseWalletAddress' - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. - example: 585951a5df8380e0e3063e9f - format: uuid - count: - type: number - description: Total number of addresses returned in this response - required: - - coin - InvalidWalletId1: - title: Invalid Wallet ID - allOf: - - type: object - properties: - name: - type: string - enum: - - InvalidWalletId - required: - - name - - $ref: '#/components/schemas/InvalidId' - forwardersBalanceResponse: - title: forwardersBalanceResponse - type: object - properties: - forwarders: - type: array - items: - type: object - properties: - address: - type: string - description: The forwarder address. - balance: - type: string - description: Current balance of the forwarder address. - required: - - address - - balance - required: - - forwarders - TokenAllowanceResponse: - title: TokenAllowanceResponse - type: object - properties: - allowance: - type: string - required: - - allowance - ListWalletShareRequestResponse: - title: ListWalletShareRequestResponse - type: object - properties: - walletShareRequests: - type: array - items: - type: object - properties: - id: - type: string - walletId: - $ref: '#/components/schemas/WalletIdString' - walletLabel: - type: string - coin: - type: string - userId: - type: string - userEmail: - type: string - userFullName: - type: string - permissions: - type: array - items: - type: string - enum: - - spend - created: - type: string - format: date-time - title: ISO Date String - required: - - id - - walletId - - walletLabel - - coin - - userId - - userEmail - - userFullName - - permissions - - created - required: - - walletShareRequests - VerifyWebhookNotificationResponse: - title: VerifyWebhookNotificationResponse - type: object - properties: - webhookId: - type: string - isValid: - type: boolean - required: - - webhookId - - isValid - CreateWebhookSecretResponse: - title: CreateWebhookSecretResponse - type: object - properties: - secret: - type: string - required: - - secret - GetPinnedWalletsCountResponse: - title: GetPinnedWalletsCountResponse - type: object - properties: - pinnedWalletsCount: - type: number - required: - - pinnedWalletsCount - UpdatePinnedWalletsResponse: - title: UpdatePinnedWalletsResponse - type: object - properties: - pinnedWallets: - $ref: '#/components/schemas/PinnedWallets' - required: - - pinnedWallets - PinnedWallets: - title: PinnedWallets - type: object - properties: - enterpriseId: - type: string - userId: - type: string - wallets: - type: array - items: - type: string - required: - - enterpriseId - - userId - - wallets - WireWithdrawalConfirmationAction: - title: WireWithdrawalConfirmationAction - type: string - enum: - - approve - - reject - WireWithdrawalsPaginatedResponse: - title: WireWithdrawalsPaginatedResponse - type: object - properties: - transfers: - type: array - items: - type: object - properties: - baseValue: - type: number - description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. - baseValueString: - type: string - description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. - example: '2000000' - pattern: ^-?\d+$ - coin: - $ref: '#/components/schemas/CoinString' - comment: - nullable: true - type: string - description: A comment from the user - date: - type: string - description: The date this Transfer was last updated - format: date-time - title: ISO Date String - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - bitgoOrg: - type: string - enum: - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - BitGo Europe ApS - - Frankfurt DE Trust - - BitGo Singapore - - BitGo Korea - - BitGo Mena Fze - - BitGo Custody MENA FZE - - BitGo Sister Trust 1 - - BitGo Inc - entries: - type: array - items: - type: object - properties: - address: - type: string - description: An address affected by this Transfer - example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ - valueString: - type: string - description: The change (in base units) in the address' balance represented as a string - example: '20000' - pattern: '"^-?\d+$"' - isChange: - type: boolean - description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer - wallet: - type: string - description: Only visible when the user has access to the wallet - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - value: - type: number - description: The change (in base units) in the address' balance - nftSymbol: - type: string - type: - type: string - enum: - - flushForwarderTokens - - walletFunding - - walletInitialization - - addressInitialization - - importedOutput - isPayGo: - type: boolean - description: True if this address is the BitGo PayGo wallet - token: - type: string - description: If this is a token entry, the token's symbol - example: omg - failed: - type: boolean - description: True if this entry is failed - associatedNativeCoinAddress: - type: string - description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. - isFee: - type: boolean - description: Indicates if this entry is a fee - isInternal: - type: boolean - description: Indicates if this entry is internal - memo: - type: string - description: Memo associated with this entry - rewardAddress: - type: string - description: Reward address associated with this entry - subtype: - type: string - description: Subtype of this entry - backingFeeString: - type: string - description: Backing fee represented as a string - nftId: - type: string - description: NFT ID associated with this entry - tokenContractHash: - type: string - description: Token contract hash associated with this entry - isReward: - type: boolean - description: Indicates if this entry is a reward - required: - - address - description: An array of objects describing the change in address balances made as a result of this Transfer - history: - type: array - items: - type: object - properties: - action: - $ref: '#/components/schemas/TransferAction' - comment: - nullable: true - type: string - description: If this history object is of action "commented", this is the comment from the user - date: - type: string - description: The date of this history object - format: date-time - title: ISO Date String - transferId: - type: string - description: The ID of the transfer that this history object is associated with - txid: - type: string - description: The transaction ID of the transaction that this history object is associated with - user: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - action - - date - description: An audit log of events that have happened to the Transfer during its lifecycle - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - pendingApproval: - type: string - state: - $ref: '#/components/schemas/TransferState1' - stakingParams: - type: object - properties: - actionType: - type: string - coreDao: - type: object - properties: - amount: - type: string - format: number - expiration: - type: string - format: date-time - title: ISO Date String - fee: - type: number - rewardAddress: - type: string - validator: - type: string - version: - type: number - required: - - amount - - expiration - - fee - - rewardAddress - - validator - - version - requestId: - type: string - source: - type: string - enum: - - external - - internal - validator: - type: string - required: - - actionType - - requestId - txid: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - type: - allOf: - - $ref: '#/components/schemas/TransferType' - description: Defines whether or not this Transfer was sent or received by the user - usd: - type: number - description: The amount of USD of this Transfer (will be negative if it's a send) - usdRate: - type: number - description: The USD rate at the time this Transfer was created - value: - type: number - description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) - valueString: - type: string - description: The total value (in base units) sent by this Transfer represented as a String - example: '2000000' - pattern: ^-?\d+$ - wallet: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - walletType: - type: string - enum: - - backing - - cold - - custodial - - custodialPaired - - hot - - trading - description: Wallet type - replaces: - type: array - items: - type: string - description: Transaction IDs that this transfer replaces. - replacedBy: - type: array - items: - type: string - description: Transaction IDs that replace this transfer. - required: - - coin - - date - - entries - - history - - id - - state - - type - - valueString - - wallet - nextBatchPrevId: - type: string - required: - - transfers - ListWalletSharesCountByEnterpriseResponse: - title: ListWalletSharesCountByEnterpriseResponse - type: object - properties: - enterprises: - $ref: '#/components/schemas/WalletSharesCountSchema' - required: - - enterprises - WalletSharesCountSchema: - title: WalletSharesCountSchema - type: object - additionalProperties: - type: object - properties: - walletSharesCount: - type: number - required: - - walletSharesCount - WalletListResponse: - title: WalletListResponse - type: object - properties: - coin: - oneOf: - - type: array - items: - type: string - - type: string - wallets: - type: array - items: - type: object - properties: - allowBackupKeySigning: - type: boolean - approvalsRequired: - type: number - example: 1 - minimum: 1 - coin: - $ref: '#/components/schemas/CoinString' - coinSpecific: - $ref: '#/components/schemas/WalletSubdocument' - deleted: - type: boolean - disableTransactionNotifications: - type: boolean - hasLargeNumberOfAddresses: - type: boolean - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - isCold: - type: boolean - label: - type: string - example: My Wallet - startDate: - type: string - description: Wallet creation time - format: date-time - title: ISO Date String - admin: - type: object - properties: - policy: - $ref: '#/components/schemas/Policy' - billingEnterprise: - type: string - buildDefaults: - type: object - properties: - minFeeRate: - type: number - description: (UTXO only) Wallet-level minimum fee rate that must be greater than or equal to the default of 1000 satoshis/kvByte. Per transaction, you can override "minFeeRate" with the "feeRate" parameter. - example: 12000 - minimum: 1000 - clientFlags: - type: array - items: - type: object - properties: - name: - type: string - value: - type: boolean - config: - type: object - properties: - nodeId: {} - custodialWalletId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - customChangeKeySignatures: - type: object - properties: - user: - type: string - backup: - type: string - bitgo: - type: string - customerWalletId: - type: string - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - bitgoOrg: - type: string - freeze: - type: object - properties: - time: - type: string - format: date-time - title: ISO Date String - expires: - type: string - format: date-time - title: ISO Date String - instantProvider: - type: string - keys: - type: array - example: - - 585951a5df8380e0e304a553 - - 585951a5df8380e0e30d645c - - 585951a5df8380e0e30b6147 - items: - type: string - keySignatures: - type: object - properties: - backupPub: - type: string - bitgoPub: - type: string - m: - type: number - description: Number of signatures required. This value must be 2 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. - example: 2 - migratedFrom: - type: string - multisigType: - $ref: '#/components/schemas/MultiSigType' - multisigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion' - 'n': - type: number - description: Number of keys provided. This value must be 3 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. - example: 3 - recoverable: - type: boolean - tags: - type: array - items: - type: string - type: - allOf: - - $ref: '#/components/schemas/WalletType' - description: The type describes who owns the keys to the wallet and how they are stored. "cold" wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. "custodial" means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. "custodialPaired" means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of "hot" wallets. "trading" wallets are trading accounts where the coin is "ofc". "distributedCustody" means You manage one key and another key agent manages the second key. BitGo manages the third key - subType: - $ref: '#/components/schemas/WalletSubType' - balanceString: - type: string - description: The cleared balance of the address in base units (e.g. Satoshis). Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. - balance: - type: number - description: The cleared balance of the address in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. - confirmedBalanceString: - type: string - description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. Guaranteed to not lose precision. - confirmedBalance: - type: number - description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. - spendableBalanceString: - type: string - description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. - spendableBalance: - type: number - description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. The is only returned if the 'expandBalance' query parameter is set to 'true'. - stakingBalanceString: - type: string - description: The staked balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. - rewardBalanceString: - type: string - description: The staking reward balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. - users: - type: array - items: - type: object - properties: - needsRecovery: - type: boolean - permissions: - type: array - items: - type: string - enum: - - admin - - spend - - view - - freeze - - trade - recoverable: - type: boolean - user: - type: string - required: - - permissions - walletFlags: - type: array - items: - type: object - properties: - name: - $ref: '#/components/schemas/WalletFlag' - value: - type: string - required: - - name - - value - receiveAddress: - $ref: '#/components/schemas/WalletAddress' - required: - - allowBackupKeySigning - - approvalsRequired - - coin - - coinSpecific - - deleted - - disableTransactionNotifications - - hasLargeNumberOfAddresses - - id - - isCold - - label - - startDate - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. - example: 585951a5df8380e0e3063e9f - format: uuid - totalCount: - type: number - required: - - wallets - GetSequenceIdsResponse: - title: GetSequenceIdsResponse - type: object - properties: - sequenceIds: - type: array - items: - type: object - properties: - txid: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - minLength: 1 - contractSequenceId: - type: number - description: The contract sequence id of the transaction - required: - - txid - - contractSequenceId - required: - - sequenceIds - GetPotentialStuckTxsResponse: - title: GetPotentialStuckTxsResponse - type: array - items: - oneOf: - - $ref: '#/components/schemas/GetPotentialStuckEthTxs' - - $ref: '#/components/schemas/GetPotentialStuckUtxoTxs' - GetPotentialStuckEthTxs: - title: Potential Stuck Eth Transactions - type: object - properties: - nonce: - type: number - description: The nonce value of the potentially stuck transaction - example: 200000 - pattern: ^-?\d+$ - txHex: - type: string - description: Serialized transaction hex - example: 01000000000101d58f82d996dd872012675adadf4606734906b25a413f6e2ee535c0c10aef96020000000000ffffffff028de888000000000017a914c91aa24f65827eecec775037d886f2952b73cbe48740420f000000000017a9149304d18497b9bfe9532778a0f06d9fff3b3befaf870500473044022023d7210ba6d8bbd7a28b8af226f40f7235caab79156f93f9c9969fc459ea7f73022050fbdca788fba3de686b66b3501853695ff9d6f375867470207d233b099576e001000069522103d4788cda52f91c1f6c82eb91491ca76108c9c5f0839bc4f02eccc55fedb3311c210391bcef9dcc89570a79ba3c7514e65cd48e766a8868eca2769fa9242fdcc796662102ef3c5ebac4b54df70dea1bb2655126368be10ca0462382fcb730e55cddd2dd6a53aec8b11400 - txId: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - sendTransfer: - type: object - properties: - baseValue: - type: number - description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. - baseValueString: - type: string - description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. - example: '2000000' - pattern: ^-?\d+$ - bitgoOrg: - type: string - enum: - - BitGo Trust - - BitGo New York - - BitGo Germany - - BitGo Switzerland - - BitGo Europe ApS - - Frankfurt DE Trust - - BitGo Singapore - - BitGo Korea - - BitGo Mena Fze - - BitGo Custody MENA FZE - - BitGo Sister Trust 1 - - BitGo Inc - coin: - $ref: '#/components/schemas/CoinString' - comment: - nullable: true - type: string - description: A comment from the user - date: - type: string - description: The date this Transfer was last updated - format: date-time - title: ISO Date String - enterprise: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - entries: - type: array - items: - type: object - properties: - address: - type: string - description: An address affected by this Transfer - example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ - associatedNativeCoinAddress: - type: string - description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. - backingFeeString: - type: string - description: Backing fee represented as a string - failed: - type: boolean - description: True if this entry is failed - isChange: - type: boolean - description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer - isFee: - type: boolean - description: Indicates if this entry is a fee - isInternal: - type: boolean - description: Indicates if this entry is internal - isPayGo: - type: boolean - description: True if this address is the BitGo PayGo wallet - isReward: - type: boolean - description: Indicates if this entry is a reward - memo: - type: string - description: Memo associated with this entry - nftId: - type: string - description: NFT ID associated with this entry - nftSymbol: - type: string - rewardAddress: - type: string - description: Reward address associated with this entry - subtype: - type: string - description: Subtype of this entry - token: - type: string - description: If this is a token entry, the token's symbol - example: omg - tokenContractHash: - type: string - description: Token contract hash associated with this entry - type: - type: string - enum: - - flushForwarderTokens - - walletFunding - - walletInitialization - - addressInitialization - - importedOutput - value: - type: number - description: The change (in base units) in the address' balance - valueString: - type: string - description: The change (in base units) in the address' balance represented as a string - example: '20000' - pattern: '"^-?\d+$"' - wallet: - type: string - description: Only visible when the user has access to the wallet - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - address - description: An array of objects describing the change in address balances made as a result of this Transfer - history: - type: array - items: - type: object - properties: - action: - $ref: '#/components/schemas/TransferAction' - comment: - nullable: true - type: string - description: If this history object is of action "commented", this is the comment from the user - date: - type: string - description: The date of this history object - format: date-time - title: ISO Date String - transferId: - type: string - description: The ID of the transfer that this history object is associated with - txid: - type: string - description: The transaction ID of the transaction that this history object is associated with - user: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - required: - - action - - date - description: An audit log of events that have happened to the Transfer during its lifecycle - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - organization: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - pendingApproval: - type: string - replacedBy: - type: array - items: - type: string - description: Transaction IDs that replace this transfer. - replaces: - type: array - items: - type: string - description: Transaction IDs that this transfer replaces. - stakingParams: - type: object - properties: - actionType: - type: string - coreDao: - type: object - properties: - amount: - type: string - format: number - expiration: - type: string - format: date-time - title: ISO Date String - fee: - type: number - rewardAddress: - type: string - validator: - type: string - version: - type: number - required: - - amount - - expiration - - fee - - rewardAddress - - validator - - version - requestId: - type: string - source: - type: string - enum: - - external - - internal - validator: - type: string - required: - - actionType - - requestId - state: - $ref: '#/components/schemas/TransferState1' - txid: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - type: - allOf: - - $ref: '#/components/schemas/TransferType' - description: Defines whether or not this Transfer was sent or received by the user - usd: - type: number - description: The amount of USD of this Transfer (will be negative if it's a send) - usdRate: - type: number - description: The USD rate at the time this Transfer was created - value: - type: number - description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) - valueString: - type: string - description: The total value (in base units) sent by this Transfer represented as a String - example: '2000000' - pattern: ^-?\d+$ - wallet: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - walletType: - type: string - enum: - - backing - - cold - - custodial - - custodialPaired - - hot - - trading - description: Wallet type - required: - - coin - - date - - entries - - history - - id - - state - - type - - valueString - - wallet - cause: - type: string - description: The reason the transaction is potentially stuck - message: - type: string - description: Possible steps to remediate the stuck transaction. - transferIds: - type: array - items: - type: string - gasAccelerationFee: - type: object - description: Fee required to remediate a stuck transaction when the cause is 'fee acceleration'. - properties: - gasPrice: - type: string - example: '200000' - pattern: ^-?\d+$ - maxFeePerGas: - type: string - example: '200000' - pattern: ^-?\d+$ - maxPriorityFeePerGas: - type: string - example: '200000' - pattern: ^-?\d+$ - userActionDisabled: - type: boolean - description: True, if manual user action is disabled on this stuck transaction - required: - - cause - - message - GetPotentialStuckUtxoTxs: - title: Potential Stuck UTXO Transactions - type: object - properties: - txId: - type: string - description: The on-chain transaction id - example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - minLength: 1 - sendTransfer: - $ref: '#/components/schemas/Transfer1' - rbf: - type: boolean - required: - - txId - WalletCrossChainUnspentResponse: - title: WalletCrossChainUnspentResponse - type: array - items: - type: object - properties: - unspent: - type: object - properties: - outputID: - type: number - description: Type ID for this output. - example: 7 - amount: - type: string - description: Amount as a BigNumber string. - example: '2000000' - txid: - type: string - description: Transaction ID of this unspent. - example: 2WW4Z9R9jdUSR1uheJ1rGuLUNXjipXESGknGWrkqx7KUU1YKV5 - threshold: - type: number - description: Number of signatures required to unlock UTXO. - example: 1 - addresses: - type: array - example: - - C-fuji167u3leuup654jdea3euggkhh82ta53jer3ttf4 - - C-fuji19vy09dn76mvt55r0x2d3ch2jrr8z6lgp80vzlj - - C-fuji1idynny22nx91z7mujpwadmjy930yjqa040zdjh0w - items: - type: string - description: Addresses tied to the UTXO for the signatures. - outputidx: - type: string - description: Index of the output in the transaction. - example: '1' - locktime: - type: string - description: Time that the UTXO is unlocked. - example: '0' - required: - - outputID - - amount - - txid - - threshold - - addresses - - outputidx - - locktime - sourceChain: - type: string - description: The source chain - destinationChain: - type: string - description: The destination chain - fromWallet: - type: string - description: Public ID of the wallet (in the source chain) that created the cross-chain output. - example: 6386565affdf48cb812ca1f0ed49a621 - toWallet: - type: string - description: Public ID of the wallet (in the destination chain) that's the target recipient of the cross-chain transfer. - example: 6386565affdf48cb812ca1f0ed49a621 - toAddress: - type: string - description: Addresses (in the destination chain) that are target recipients of the cross-chain transfer. - example: '0x125c4451c870f753265b0b1af3cf6ab88ffe4657' - required: - - unspent - - sourceChain - - destinationChain - - fromWallet - - toWallet - - toAddress - WalletCountResponse: - title: WalletCountResponse - type: object - properties: - count: - type: number - description: The number of wallets that match the query. - minimum: 0 - required: - - count - ChangeFeeResponse: - title: ChangeFeeResponse - type: object - properties: - txid: - type: string - description: Transaction ID of the newly created transaction with increased fee rate. - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - TssConfigPartyChallenge: - title: TssConfigPartyChallenge - allOf: - - type: object - properties: - verifiers: - $ref: '#/components/schemas/ChallengeVerifiers' - paillierBlumProof: - $ref: '#/components/schemas/PaillierBlumProof' - ntildeProof: - $ref: '#/components/schemas/NtildeProof' - required: - - verifiers - - $ref: '#/components/schemas/Challenge' - ChallengeVerifiers: - title: ChallengeVerifiers - type: object - properties: - adminSignature: - type: string - description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. - bitgoNitroHsmSignature: - type: string - bitgoInstitutionalHsmSignature: - type: string - required: - - adminSignature - PaillierBlumProof: - title: PaillierBlumProof - type: object - description: The paillierBlumProof value is only required when creating the initial config. - properties: - w: - type: string - description: The w value of the Paillier Blum proof - x: - type: array - items: - type: string - description: The x value of the Paillier Blum proof is an array of 80 hex strings - z: - type: array - items: - type: string - description: The z value of the Paillier Blum proof is an array of 80 hex strings - required: - - w - - x - - z - RecoveryCodesResponse: - title: RecoveryCodesResponse - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - created: - type: string - description: ISO 8601 string representation of date - example: '2019-05-02T15:27:35.773Z' - format: date-time - title: ISO Date String - codes: - type: array - minItems: 10 - maxItems: 10 - items: - type: object - properties: - code: - type: string - description: The recovery code - example: uFN4wrsjdpK3 - isActive: - type: boolean - description: Whether the recovery code is active - example: true - required: - - code - - isActive - required: - - id - - created - - codes - WalletMPCv2MigrationStatus: - title: WalletMPCv2MigrationStatus - type: object - properties: - canMigrateToMPCv2: - type: boolean - disabledReason: - type: string - required: - - canMigrateToMPCv2 - TssSettings: - title: TssSettings - type: object - properties: - coinSettings: - type: object - additionalProperties: - type: object - properties: - walletCreationSettings: - $ref: '#/components/schemas/TssWalletCreationSettings' - canMigrateToMPCv2: - type: boolean - required: - - walletCreationSettings - required: - - coinSettings - TssWalletCreationSettings: - title: TssWalletCreationSettings - type: object - properties: - multiSigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion' - custodialMultiSigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion' - coldMultiSigTypeVersion: - $ref: '#/components/schemas/MultisigTypeVersion' - defaultWalletVersion: - type: number - BitgoTSSPublicKeyResponse: - title: BitgoTSSPublicKeyResponse - type: object - properties: - enterpriseId: - type: string - description: Enterprise id for the intended operation (if present in the request) - name: - type: string - description: Name of the key, used for simple identification. Matches MPC key namess in client constants - publicKey: - type: string - description: BitGo MPC public key - mpcv2PublicKey: - type: string - description: BitGo MPCv2 public key - required: - - name - ReportFormatType: - title: ReportFormatType - type: string - enum: - - csv - - pdf - ReportStatus1: - title: ReportStatus - type: string - enum: - - pending - - processing - - completed - - failed - ListReportsJSON: - title: ListReportsJSON - type: object - properties: - reports: - type: array - items: - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/ReportParams' - - $ref: '#/components/schemas/GenericReportParamsJSON' - nextBatchPrevId: - type: string - minLength: 1 - required: - - reports - ReportParams: - title: ReportParams - type: object - properties: - holdings: - type: object - description: Holdings report - properties: - byWallet: - type: boolean - enterprise: - type: string - description: ID of the enterprise - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - includeStaking: - type: boolean - snapshotDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - required: - - enterprise - - snapshotDate - transactions: - type: object - description: Transactions report - properties: - assets: - type: array - items: - type: string - minLength: 1 - endDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - enterprise: - $ref: '#/components/schemas/EnterpriseIdNonEmptyString' - isAddressReport: - type: boolean - isDetailed: - type: boolean - startDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - wallets: - type: array - items: - type: string - minLength: 1 - example: 59cd72485007a239fb00282ed480da1f - walletTypes: - type: array - items: - type: string - minLength: 1 - required: - - endDate - - enterprise - - startDate - quarterly: - type: object - description: Quarterly report - properties: - endDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - enterprise: - $ref: '#/components/schemas/EnterpriseIdNonEmptyString' - startDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - required: - - endDate - - enterprise - - startDate - trades: - type: object - description: Trades report - properties: - assets: - type: array - items: - type: string - minLength: 1 - endDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - enterprise: - $ref: '#/components/schemas/EnterpriseIdNonEmptyString' - isFillsReport: - type: boolean - startDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - required: - - endDate - - enterprise - - startDate - staking: - type: object - description: Staking report - properties: - assets: - type: array - items: - type: string - minLength: 1 - endDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - enterprise: - $ref: '#/components/schemas/EnterpriseIdNonEmptyString' - isBalanceReport: - type: boolean - startDate: - type: string - description: Date of the snapshot - format: date-time - title: ISO Date String - wallets: - type: array - items: - type: string - minLength: 1 - example: 59cd72485007a239fb00282ed480da1f - walletTypes: - type: array - items: - type: string - minLength: 1 - required: - - endDate - - enterprise - - startDate - holdingsByAddress: - type: object - description: Address-level Holdings report - properties: - assets: - type: array - items: - type: string - minLength: 1 - enterprise: - type: string - minLength: 1 - snapshotDate: - type: string - format: date-time - title: ISO Date String - wallets: - type: array - items: - type: string - minLength: 1 - example: 59cd72485007a239fb00282ed480da1f - walletTypes: - type: array - items: - type: string - minLength: 1 - required: - - enterprise - - snapshotDate - GenericReportParamsJSON: - title: GenericReportParamsJSON - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - type: - allOf: - - $ref: '#/components/schemas/SnowflakeReportType' - description: Type of report - format: - allOf: - - $ref: '#/components/schemas/ReportFormatType' - description: Format of report - status: - allOf: - - $ref: '#/components/schemas/ReportStatus1' - description: Status of report - createdAt: - type: string - description: Date report was created - format: date-time - title: ISO Date String - completedAt: - type: string - description: Date report was completed - format: date-time - title: ISO Date String - documentName: - type: string - description: Name of the report document - minLength: 1 - user: - type: string - description: ID of the user who requested the report - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - required: - - id - - type - - format - - status - - createdAt - - user - SnowflakeReportType: - title: SnowflakeReportType - type: string - enum: - - holdings - - transactions - - quarterly - - trades - - staking - - holdingsByAddress - EnterpriseIdNonEmptyString: - title: EnterpriseIdNonEmptyString - type: string - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[0-9a-f]{32}$ - ReportJSON: - title: ReportJSON - allOf: - - type: object - properties: {} - - $ref: '#/components/schemas/ReportParams' - - $ref: '#/components/schemas/GenericReportParamsJSON' - SimulateEnterpriseWebhookResponseBody: - title: SimulateEnterpriseWebhookResponseBody - type: object - properties: - webhookNotifications: - type: array - items: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - type: - allOf: - - $ref: '#/components/schemas/WebhookType' - description: Event type to listen to. - wallet: - type: string - example: cold - url: - type: string - hash: - type: string - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - coinChain: - type: string - transfer: - type: string - example: receive - state: - allOf: - - $ref: '#/components/schemas/WebhookNotificationState' - description: If "failed", webhook notification failed to connect with the target URL. If "new", webhook notification was newly generated, in response to an event. If "pending", webhook notification is awaiting processing by the webhook worker. If "processed", webhook notification successfully sent to target URL. If "unconfirmed", webhook notification is awaiting confirmation on the blockchain. - simulation: - type: boolean - retries: - type: number - webhook: - type: string - updatedAt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - nextAttempt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - version: - type: number - example: 2 - allowBlockedHosts: - type: boolean - heightToConfirm: - type: number - payload: - type: string - response: - type: object - properties: - code: - oneOf: - - type: number - - type: string - type: - type: string - body: - type: string - error: - type: string - required: - - id - required: - - webhookNotifications - WebhookNotificationState: - title: WebhookNotificationState - type: string - enum: - - unconfirmed - - new - - pending - - processed - - failed - EnterpriseWebhookType: - title: EnterpriseWebhookType - type: string - enum: - - bankAccount - - accessToken - - policyBalanceChange - ListEnterpriseWebhooksResponse: - title: ListEnterpriseWebhooksResponse - type: object - properties: - webhooks: - type: array - items: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - created: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - url: - type: string - example: https://your.server.com/webhook - format: uri - version: - type: number - description: 2 for coins running on API v2. - example: 2 - scope: - $ref: '#/components/schemas/WebhookScope' - state: - $ref: '#/components/schemas/WebhookState' - successiveFailedAttempts: - type: number - example: 0 - listenToFailureStates: - type: boolean - description: Whether or not to listen to failed transactions on chain. - label: - type: string - description: Label of the new webhook. - walletId: - type: string - enterpriseId: - type: string - organizationId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - userId: - type: string - type: - allOf: - - $ref: '#/components/schemas/WebhookType' - description: Event type to listen to. - numConfirmations: - type: number - example: 6 - lastAttempt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - failingSince: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - allToken: - type: boolean - txRequestStates: - type: array - items: - type: string - enum: - - pendingApproval - - canceled - - rejected - - initialized - - pendingDelivery - - delivered - - pendingUserSignature - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - signed - - failed - description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. - txRequestTransactionStates: - type: array - items: - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. - required: - - id - - created - - coin - - url - - version - - scope - - state - - successiveFailedAttempts - - listenToFailureStates - nextBatchPrevId: - type: string - required: - - webhooks - SimulateOrganizationWebhookResponseBody: - title: SimulateOrganizationWebhookResponseBody - type: object - properties: - webhookNotifications: - type: array - items: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - type: - allOf: - - $ref: '#/components/schemas/WebhookType' - description: Event type to listen to. - wallet: - type: string - example: cold - url: - type: string - hash: - type: string - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - coinChain: - type: string - transfer: - type: string - example: receive - state: - allOf: - - $ref: '#/components/schemas/WebhookNotificationState' - description: If "failed", webhook notification failed to connect with the target URL. If "new", webhook notification was newly generated, in response to an event. If "pending", webhook notification is awaiting processing by the webhook worker. If "processed", webhook notification successfully sent to target URL. If "unconfirmed", webhook notification is awaiting confirmation on the blockchain. - simulation: - type: boolean - retries: - type: number - webhook: - type: string - updatedAt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - nextAttempt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - version: - type: number - example: 2 - allowBlockedHosts: - type: boolean - heightToConfirm: - type: number - payload: - type: string - response: - type: object - properties: - code: - oneOf: - - type: number - - type: string - type: - type: string - body: - type: string - error: - type: string - required: - - id - required: - - webhookNotifications - VerifiedKycState1: - title: VerifiedKycState - type: string - enum: - - approved - - rejected - - pending - IdentityStatusEnum: - title: IdentityStatusEnum - type: string - enum: - - created - - approved - - declined - - needs review - - input error - - ssn error - - gov id error - - ssn verified - - gov id verified - - enrichment - - awaiting document upload - - records uploaded - - in review - - incomplete verifications - - records uploaded 2 - - awaiting signature - - signature submitted - - initiating - - additional information submitted - ListOrganizationWebhookResponseC: - title: ListOrganizationWebhookResponseC - type: object - properties: - webhooks: - type: array - items: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - created: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - coin: - type: string - description: A cryptocurrency or token ticker symbol. - example: btc - url: - type: string - example: https://your.server.com/webhook - format: uri - version: - type: number - description: 2 for coins running on API v2. - example: 2 - scope: - $ref: '#/components/schemas/WebhookScope' - state: - $ref: '#/components/schemas/WebhookState' - successiveFailedAttempts: - type: number - example: 0 - listenToFailureStates: - type: boolean - description: Whether or not to listen to failed transactions on chain. - label: - type: string - description: Label of the new webhook. - walletId: - type: string - enterpriseId: - type: string - organizationId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - userId: - type: string - type: - allOf: - - $ref: '#/components/schemas/WebhookType' - description: Event type to listen to. - numConfirmations: - type: number - example: 6 - lastAttempt: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - failingSince: - type: string - example: 2021-01-01T00:00:00.000Z - format: date-time - title: ISO Date String - allToken: - type: boolean - txRequestStates: - type: array - items: - type: string - enum: - - pendingApproval - - canceled - - rejected - - initialized - - pendingDelivery - - delivered - - pendingUserSignature - - pendingUserCommitment - - pendingUserRShare - - pendingUserGShare - - readyToSend - - signed - - failed - description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. - txRequestTransactionStates: - type: array - items: - type: string - enum: - - initialized - - pendingSignature - - eddsaPendingCommitment - - eddsaPendingRShare - - eddsaPendingGShare - - ecdsaMPCv2Round1 - - ecdsaMPCv2Round2 - - ecdsaMPCv2Round3 - - readyToCombineShares - - signed - - held - - delivered - - invalidSignature - - rejected - description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. - required: - - id - - created - - coin - - url - - version - - scope - - state - - successiveFailedAttempts - - listenToFailureStates - nextBatchPrevId: - type: string - required: - - webhooks - EnterprisesPaginatedResponse: - title: EnterprisesPaginatedResponse - type: object - properties: - enterprises: - type: array - items: - oneOf: - - $ref: '#/components/schemas/Enterprise' - - $ref: '#/components/schemas/EnterpriseStub' - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. - minLength: 1 - required: - - enterprises - CreateOrganizationEnterpriseResponse: - title: CreateOrganizationEnterpriseResponse - type: object - properties: - enterpriseId: - $ref: '#/components/schemas/EnterpriseIdNonEmptyString' - userId: - type: string - example: 59cd72485007a239fb00282ed480da1f - minLength: 1 - pattern: ^[a-f0-9]{32}$ - required: - - enterpriseId - - userId - Key1: - title: Key - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - pub: - type: string - description: Public part of a key pair - example: xpub661MyMwAqRbcGMVhmc7wqQRYMtcX9LAvSj1pjB213y5TsrkV2uuzJjWnjBrT1FUeNWGPjaVm5p7o6jdNcQJrV1cy3a1R8NQ9m7LuYKA8RpH - ethAddress: - type: string - description: Ethereum address associated with this key - derivedFromParentWithSeed: - type: string - source: - allOf: - - $ref: '#/components/schemas/KeySourceC' - example: user - hsmType: - type: string - enum: - - institutional - - nitro - - SDTrustNitro - description: The type of HSM that owns this key. - example: institutional - isBitGo: - type: boolean - description: '"true" if this key is owned by BitGo' - example: false - isTrust: - type: boolean - description: '"true" if this key is owned by Trust' - example: false - encryptedPrv: - type: string - description: The encrypted private key - aspKeyId: - type: number - coinSpecific: - type: object - additionalProperties: {} - type: - allOf: - - $ref: '#/components/schemas/KeyTypeC' - default: independent - description: A value from a string enum denoting what kind of key this is. Defaults to “independent” indicating an on-chain key is requested. If set to “tss” this tells us that a “tss” key is requested. - example: tss - commonKeychain: - type: string - description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the concatenation of the common public key (32-byte) with the common chaincode (32-byte) as a hex string. - verifiedVssProof: - type: boolean - commonPub: - type: string - description: e common public key. This value is required to be set for BLS keys when the source is either "user" or "backup". Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. - commonPubSig: - type: string - provider: - type: string - distributedCustody: - type: string - webauthnDevices: - type: array - items: - type: object - properties: - authenticatorInfo: - allOf: - - $ref: '#/components/schemas/AuthenticatorInfo' - description: The information about the authenticator - encryptedPrv: - type: string - description: The encrypted private key - otpDeviceId: - type: string - description: The OTP device ID - prfSalt: - type: string - description: The PRF salt - required: - - authenticatorInfo - - encryptedPrv - - otpDeviceId - - prfSalt - migratedFrom: - type: string - required: - - id - - pub - - source - - type - KeySourceC: - title: KeySourceC - type: string - enum: - - user - - cold - - bitgo - - backup - KeyTypeC: - title: KeyTypeC - type: string - enum: - - tss - - independent - - blsdkg - AuthenticatorInfo: - title: AuthenticatorInfo - type: object - properties: - credID: - type: string - description: The credential ID of the authenticator - fmt: - type: string - description: The format of the authenticator - publicKey: - type: string - description: The public key of the authenticator - required: - - credID - - fmt - - publicKey - ChallengePartyConfig: - title: ChallengePartyConfig - type: object - properties: - enterprise: - $ref: '#/components/schemas/TssConfigPartyChallenge' - bitgoNitroHsm: - $ref: '#/components/schemas/TssConfigPartyChallenge' - bitgoInstitutionalHsm: - $ref: '#/components/schemas/TssConfigPartyChallenge' - createdBy: - type: string - description: The ID of the user who created and verified the config - example: 5d1a3e4d2f7f9b7c0e3b7e4d2f7f9b7c - required: - - enterprise - - bitgoNitroHsm - - bitgoInstitutionalHsm - - createdBy - UpdateEnterpriseChallenge: - title: UpdateEnterpriseChallenge - type: object - properties: - ntilde: - type: string - description: Range proof challenge value. - minLength: 1 - h1: - type: string - description: Range proof challenge value. - minLength: 1 - h2: - type: string - description: Range proof challenge value. - minLength: 1 - verifiers: - type: object - properties: - adminSignature: - type: string - description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. - minLength: 1 - required: - - adminSignature - paillierBlumProof: - allOf: - - $ref: '#/components/schemas/PaillierBlumProof' - description: The paillierBlumProof value is only required when creating the initial config. - ntildeProof: - allOf: - - $ref: '#/components/schemas/NtildeProof' - description: The ntildeProof value is only required when creating the initial config. - required: - - ntilde - - h1 - - h2 - - verifiers - UpdateBitgoChallenge: - title: UpdateBitgoChallenge - type: object - properties: - verifiers: - type: object - properties: - adminSignature: - type: string - description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. - minLength: 1 - required: - - adminSignature - required: - - verifiers - LoginResponse: - title: LoginResponse - type: object - properties: - access_token: - type: string - example: 9b72c68ef394f5146f0f3efc1feafb7a971752cb00e79fafcfd8c1d2db83639c - derivationPath: - type: string - encryptedECDHXprv: - type: string - encryptedToken: - type: string - expires_at: - type: number - description: Unix timestamp - example: 1534201288 - expires_in: - type: number - noECDHKeychain: - type: boolean - scope: - type: array - example: - - crypto_compare - - user_manage - - openid - - profile - - wallet_create - - wallet_manage_all - - wallet_approve_all - - wallet_spend_all - - wallet_edit_all - - wallet_view_all - items: - type: string - token_type: - type: string - grant_type: - allOf: - - $ref: '#/components/schemas/GrantTypes' - description: Represents the login method that was used - user: - $ref: '#/components/schemas/User2' - warning: - type: string - required: - - expires_at - - expires_in - - scope - - token_type - - grant_type - - user - GrantTypes: - title: GrantTypes - type: string - enum: - - password - - passkey - - refresh_token - - authorization_code - User2: - title: User - allOf: - - type: object - properties: - agreements: - allOf: - - $ref: '#/components/schemas/Agreements' - description: The agreements the user has accepted - allowedCoins: - type: array - items: - type: string - description: The coins the user is allowed to use - bitgoEmployee: - type: boolean - description: Whether the user is a BitGo employee - currency: - allOf: - - $ref: '#/components/schemas/Currency1' - description: The user's preferred currency - disableReset2FA: - type: boolean - description: Whether the user has disabled 2FA reset - organizations: - type: array - items: - type: object - properties: - permissions: - type: array - items: - type: string - enum: - - admin - role: - $ref: '#/components/schemas/OrganizationRole' - id: - type: string - name: - type: string - required: - - permissions - - role - description: The organizations the user is a member of - featureFlags: - type: array - items: - type: string - description: Any feature flags the user has enabled - forceResetPassword: - type: boolean - description: Whether the user has forced a password reset - identity: - allOf: - - $ref: '#/components/schemas/Identity' - description: The user's identity information - otpDevices: - type: array - items: - type: object - properties: - createDate: - type: string - format: date-time - title: ISO Date String - id: - type: string - backupPhone: - type: string - label: - type: string - lastValidatedDate: - type: string - format: date-time - title: ISO Date String - phone: - type: string - registeredKey: - $ref: '#/components/schemas/U2FDetails' - type: - $ref: '#/components/schemas/OtpType' - verified: - type: boolean - scopes: - type: array - items: - type: string - enum: - - wallet_hot - extensions: - type: object - additionalProperties: - type: boolean - prfSalt: - type: string - isPasskey: - type: boolean - required: - - createDate - - id - description: The user's devices that can be used for OTP authentication - phone: - allOf: - - $ref: '#/components/schemas/Phone' - description: The user's phone number - timezone: - type: string - description: The user's timezone - apps: {} - country: - type: string - description: The country of the user - example: USA - ecdhKeychain: - nullable: true - type: string - description: The user's ECDH keychain - isActive: - type: boolean - description: Whether the user is active - isFrozen: - type: boolean - description: Whether the user is frozen - freezeReason: - type: string - description: The reason the user is frozen if they are frozen - example: Frozen due to suspicious activity - lastLogin: - type: string - description: The last login time of the user - format: date-time - title: ISO Date String - locale: - type: string - description: The user's locale - pgpKey: - type: string - description: The user's PGP key - rateLimits: {} - referrer: - allOf: - - $ref: '#/components/schemas/Referrer' - description: The referrer of the user - signupDomain: - type: string - description: The signup domain of the user - state: - type: string - description: The state of the user - example: New York - sourceVerificationRequired: - type: boolean - description: Whether source verification is required for the user - sourceVerificationRequiredForReadOnlyAccess: - type: boolean - description: Whether source verification is required for read-only access - recoveryCodeSet: - type: object - description: The recovery code set for the user - properties: - id: - type: string - description: The ID of the recovery code set - allCodesUsed: - type: boolean - description: Whether all recovery codes have been used - required: - - id - - allCodesUsed - createTime: - type: string - required: - - agreements - - allowedCoins - - bitgoEmployee - - currency - - disableReset2FA - - organizations - - featureFlags - - forceResetPassword - - identity - - otpDevices - - phone - - timezone - - $ref: '#/components/schemas/UserRequiredFields' - UserRequiredFields: - title: UserRequiredFields - type: object - description: Fields that will always be populated in accordance with the defined codec If you find other fields that will provably always be populated on a given user (even for legacy users created long ago), that field can be moved to UserRequiredFields - properties: - id: - type: string - description: The unique identifier for the user - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - username: - type: string - description: The username of the user - example: user@email.com - format: email - name: - allOf: - - $ref: '#/components/schemas/Name1' - description: The name of the user - enterprises: - type: array - items: - type: object - properties: - permissions: - type: array - items: - type: string - id: - type: string - beneficialOwner: - type: boolean - primaryContact: - type: string - kycState: - $ref: '#/components/schemas/KycState' - bitgoOrg: - type: string - name: - type: string - required: - - permissions - description: The enterprise(s) the user is a member of - email: - allOf: - - $ref: '#/components/schemas/Email1' - description: The email address of the user - required: - - id - - username - - name - - enterprises - - email - Agreements: - title: Agreements - type: object - properties: - patriotAct: - type: number - termsOfUse: - type: number - patriotActAcceptanceDate: - type: string - format: date-time - title: ISO Date String - termsOfUseAcceptanceDate: - type: string - format: date-time - title: ISO Date String - required: - - patriotAct - - termsOfUse - Currency1: - title: Currency - type: object - properties: - bitcoinUnit: - type: string - currency: - type: string - required: - - bitcoinUnit - - currency - Identity: - title: Identity - type: object - properties: - kyc: - $ref: '#/components/schemas/Kyc' - verified: - type: boolean - description: Whether the user is verified - U2FDetails: - title: U2FDetails - type: object - properties: - certificate: - type: string - keyHandle: - type: string - publicKey: - type: string - OtpType: - title: OtpType - type: string - enum: - - authy - - totp - - u2f - - webauthn - - yubikey - Phone: - title: Phone - type: object - properties: - phone: - nullable: true - type: string - example: 408-718-6885 - verified: - type: boolean - example: true - required: - - phone - - verified - Referrer: - title: Referrer - type: object - properties: - campaign: - nullable: true - type: string - source: - nullable: true - type: string - Kyc: - title: Kyc - type: object - properties: - available: - type: boolean - required: - type: boolean - data: - $ref: '#/components/schemas/KycData' - documents: - $ref: '#/components/schemas/KycDocuments' - failureCount: - type: number - fullyRequired: - type: boolean - hasVideoID: - type: boolean - overallState: - $ref: '#/components/schemas/UserKycState1' - passport: - $ref: '#/components/schemas/KycPassport' - residency: - $ref: '#/components/schemas/KycResidency' - isScreeningRequired: - type: boolean - documentsWaived: - type: boolean - enterpriseVideoCallInfo: - type: array - items: - type: object - properties: - enterpriseId: - type: string - videoCallId: - type: string - required: - - enterpriseId - - videoCallId - required: - - available - - required - KycData: - title: KycData - type: object - properties: - state: - $ref: '#/components/schemas/UserKycState1' - fields: - nullable: true - type: object - additionalProperties: {} - required: - - state - KycDocuments: - title: KycDocuments - type: object - properties: - state: - $ref: '#/components/schemas/UserKycState1' - required: - - state - UserKycState1: - title: UserKycState - type: string - enum: - - unverified - - pending - - approved - - rejected - - qrscanned - - inreview - - flagged - - flagged_retry_allowed - KycPassport: - title: KycPassport - type: object - properties: - required: - type: boolean - state: - $ref: '#/components/schemas/UserKycState1' - required: - - required - KycResidency: - title: KycResidency - type: object - properties: - state: - $ref: '#/components/schemas/UserKycState1' - required: - - state - Name1: - title: Name - type: object - properties: - first: - type: string - example: Jane - full: - type: string - example: Jane Doe - last: - type: string - example: Doe - required: - - first - - full - - last - Email1: - title: Email - type: object - properties: - email: - type: string - example: user@email.com - format: email - verified: - type: boolean - example: true - required: - - email - - verified - EcdsaConfig: - title: EcdsaConfig - type: object - properties: - challenge: - $ref: '#/components/schemas/ChallengePartyConfig' - required: - - challenge - GetEnterpriseUserSigningKeyResponse: - title: GetEnterpriseUserSigningKeyResponse - type: object - properties: - userId: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - userEmail: - type: string - example: user@email.com - format: email - derivedPubkey: - type: string - description: The derived public key of the user. - example: 0205f47704d137205ba32560e01ed182428c758760d9a05ae58cf2f66069f5d717 - derivationPath: - nullable: true - type: string - description: The derivation path used to derive derivedPubkey. Returned only if you're fetching your own signing key. - example: m/999999/51550848/191290384 - ecdhKeychain: - nullable: true - type: string - description: The bip32 public key that you can use to fetch a v1 keychain. Returned only if you're fetching your own signing key. - example: xpub661MyMwAqRbcFm7W87Qcns2ybFoSHsHEkGzNQj1KhPeLNUtV7KKiQvtLVLwPpWFaohqXrCBqCit9sM6G5kmtZHaJYSvMC65ge9HATFShe1S - required: - - userId - - userEmail - - derivedPubkey - TssConfig: - title: TssConfig - type: object - properties: - enterpriseId: - type: string - description: The enterprise ID - example: 5d1a61a5c30ae10025f9b2b3 - ecdsa: - $ref: '#/components/schemas/EcdsaConfig' - required: - - enterpriseId - - ecdsa - ListAuditLogsResponse: - title: ListAuditLogsResponse - type: object - properties: - logs: - type: array - items: - type: object - properties: - id: - type: string - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - type: - $ref: '#/components/schemas/AuditLogType1' - ip: - type: string - description: The client IP that caused the AuditLog entry to be written - example: 127.0.0.1 - format: ipv4 - user: - type: string - description: The user that caused the AuditLog entry to be written - example: 59cd72485007a239fb00282ed480da1f - pattern: ^[0-9a-f]{32}$ - requestId: - type: string - walletId: - $ref: '#/components/schemas/WalletIdString' - enterpriseId: - $ref: '#/components/schemas/EnterpriseIdString' - organizationId: - $ref: '#/components/schemas/OrganizationIdString' - coin: - $ref: '#/components/schemas/CoinString' - data: {} - date: - type: string - format: date-time - title: ISO Date String - required: - - id - - type - description: The audit logs - coin: - $ref: '#/components/schemas/CoinString' - nextBatchPrevId: - type: string - description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. - example: 59cd72485007a239fb00282ed480da1f - required: - - logs - AuditLogType1: - title: AuditLogType - type: string - enum: - - createTransaction - - approveTransaction - - rejectTransaction - - bitgoSigned - - addPolicy - - addPolicyServicePolicy - - addPolicyServiceSettlement - - changePolicy - - changePolicyServicePolicy - - removePolicy - - removePolicyServicePolicy - - approvePolicy - - approvePolicyServicePolicy - - approvePolicyServiceSettlement - - rejectPolicy - - rejectPolicyServicePolicy - - rejectPolicyServiceSettlement - - policyUpdated - - policyServicePolicyUpdated - - updatePolicyMutability - - freezeUser - - adminFreezeUser - - addUser - - removeUser - - shareUser - - shareUserAccept - - shareUserCancel - - shareUserDecline - - approveUser - - rejectUser - - userSignup - - userLogin - - userFailedLogin - - oAuthAuthorize - - userSourceVerified - - userSettingsChange - - userPasswordChange - - userPasswordReset - - user2FARemove - - user2FAAdd - - adminUnblockUserEmail - - adminUpdateUserActive - - adminResetUserOTP - - adminSetFeatureFlagsForUser - - adminAllowCoinForUser - - adminModifyRateLimit - - createWallet - - removeWallet - - freezeWallet - - unfreezeWallet - - deleteWallet - - undeleteWallet - - renameWallet - - redeployWallet - - updateWalletV1 - - updateWalletType - - fixWalletType - - addWalletUser - - removeWalletUser - - initializeWallet - - updateWalletCoinSpecific - - adminAddCustomNodeForWallet - - deleteCustomNodeForWallet - - recoverNonKRSWallet - - cloneCustodialWallet - - addWalletFlag - - deleteWalletFlag - - updateWalletFlag - - addWebhook - - adminAddWebhook - - removeWebhook - - getWebhookSecret - - createWebhookSecret - - updateNotificationSettings - - labelAddress - - unlabelAddress - - updateComment - - createSendLabel - - updateSendLabel - - deleteSendLabel - - updateTag - - updateApprovalsRequired - - createEnterprise - - starterSignupCreateEnterprise - - institutionalSignupCreateEnterprise - - updateEnterpriseUser - - approveEnterpriseUser - - rejectEnterpriseUser - - freezeEnterprise - - adminRenameEnterprise - - adminDeleteEnterprisePricingTypes - - adminUpdateEnterpriseExternalContract - - createAccessToken - - modifyAccessToken - - deleteAccessToken - - adminUpdateAccessToken - - createBankAccount - - updateBankAccount - - adminUpdateBankAccount - - removeBankAccount - - walletPasswordReset - - createPasswordReset - - deletePasswordReset - - adminUpdatePasswordReset - - adminAddCustomNode - - deleteCustomNode - - removeVideoId - - externalWithdrawalDetected - - adminUpdateKycState - - updateKycState - - updateEnterprise - - approveOrganizationUser - - rejectOrganizationUser - - bulkCreateOfcWallet - - upsertRecoveryCodes - - viewRecoveryCodes - - createReset2FA - - verifyReset2FA - - completeReset2FA - - retrofitToMPCv2 - - verifyLivenessCheck - - adminInternalTokenCreate - - adminInternalUnverifiedEmailStateReset - - routedTransactionCreate - - routedTransactionUpdate - - routedTransactionRead - - routedTransactionNoop - - transactionRouteCreate - - transactionRouteSignature - - transactionRouteDeactivate - - bitgoAdminRolesUpdate - - bitgoAdminRolesDelete - - resetWebhookNotifications - - makeUnspentReservation - - removeUnspentReservation - - createCustodialKey - - deleteCustodialKey - - createNonceAccounts - - validateReorg - - adminCreateQuery - - adminUpdateQuery - - adminRunQuery - - activateMultisigSafeMode - - activateMultisigSafeModeMultiple - - updatePricingPlan - - addPricingPlan - - createBillingTask - - handleLightningRPC - - addUserSignatureShare - - removeUserSignatureShare - - updateWalletSendQ - - fixMissingEnterpriseIdsOnTransactions - - fixSendAccountingOnTransfers - - syncMigratedKeys - - fixDuplicateWalletTxs - - fixMissingWalletTxs - - updateSendQTx - - releaseTxHold - - createVASP - - mergeVASP - - updateVASP - - cosignRecoveryTransaction - - cosignTokenRecovery - - flushTokenBalances - - flushCoinBalances - - adminRedeployAddress - - getUndeployedForwarders - - changeNonceForTx - - setNonceForWallet - - changeGasPriceForTx - - makeEmptyTransaction - - initializeAddress - - updateSendQItem - - removeSendQItem - - postAdminEvent - - adminCreateProduct - - adminUpdateProduct - - adminMergeDuplicateAddresses - - backfillEnterpriseCoinSpecific - - approveGeneric - - rejectGeneric - - updateServicesAgreement - - claimTransactionByVasp - - rejectTransactionByVasp - - freezeKey - - initiateRebalanceBackingWallet - - freezePendingApproval - - unfreezePendingApproval - - trustToSingaporeUpgrade - - adminCreateReport - - updateWalletApprovalsRequired - responses: - BadRequest: - description: Bad Request - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/GeneralError' - - $ref: '#/components/schemas/ValidationError' - example: - code: BadRequest - message: Bad Request - status: 400 - Forbidden: - description: Forbidden - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: AccessDenied - message: License not added for enterprise - status: 403 - NotFound: - description: The specified resource was not found - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: NotFound - message: Touchpoint not found - status: 404 - ServerError: - description: Server Error - Transient error please try again - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: Internal_Server_Error - message: Database is down - status: 500 - Unauthorized: - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: Unauthorized - message: Unauthorized - status: 401 - Forbidden1: - description: Forbidden - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: AccessDenied - message: Access is denied - status: 403 - NotFound1: - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: NotFound - message: The specified resource was not found - status: 404 - ServerError1: - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/GeneralError' - example: - code: InternalServerError - message: An unexpected error occurred - status: 500 - parameters: - pathWalletId: - name: walletId - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - pathCoin: - name: coin - in: path - required: true - schema: - $ref: '#/components/schemas/Coin' - pathApprovalId: - name: approvalId - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - pathShareId: - name: shareId - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - pathEnterpriseId: - name: enterpriseId - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - Base: - name: base - in: query - required: true - description: The asset or currency to compare to the quote asset or currency (case insensitive). - example: btc - schema: - type: string - End: - name: end - in: query - required: false - description: End time for the pricing data range. If not provided, defaults to the current time. - schema: - type: string - format: date-time - example: '2019-05-02T15:27:35.773Z' - Interval: - name: interval - in: query - required: true - description: Unit of time. - example: hour - schema: - type: string - enum: - - minute - - hour - - day - Quote: - name: quote - in: query - required: true - description: The asset or currency to compare to the base asset or currency (case insensitive). - example: eth - schema: - type: string - Start: - name: start - in: query - required: false - description: Start time for the pricing data range. If not provided, defaults to 1 interval before to the current time. - schema: - type: string - format: date-time - example: '2019-05-02T15:27:35.773Z' - address: - name: address - in: query - description: Filter by address string - schema: - $ref: '#/components/schemas/AddressString3' - coin: - name: coin - in: query - description: Filter by coin - schema: - $ref: '#/components/schemas/Coin' - coinArray: - name: coin - in: query - description: Filter by coin - schema: - type: array - items: - $ref: '#/components/schemas/Coin' - coinSingleOrList: - name: coin - in: query - description: Filter by coin(s) - schema: - type: array - items: - $ref: '#/components/schemas/Coin' - pathId: - name: id - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - pathBankAccountId: - name: bankAccountId - in: path - required: true - schema: - $ref: '#/components/schemas/BankAccountId' - pathUserId: - name: userId - in: path - required: true - schema: - $ref: '#/components/schemas/Id' - pathTransferId: - name: transferId - in: path - required: true - description: a transfer or transaction id - example: f5d8ee39a430901c91a5917b9f2dc19d6d1a0e9cea205b009ca73dd04470b9a5 or 585951a5df8380e0e3063e9f12345678 - schema: - oneOf: - - $ref: '#/components/schemas/Id' - - $ref: '#/components/schemas/TxId' - pathSequenceId: - name: sequenceId - in: path - required: true - schema: - type: string - description: | - A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. - pathLightningCoin: - name: coin - in: path - required: true - schema: - $ref: '#/components/schemas/LightningCoin' - pathBitcoin: - name: coin - in: path - required: true - schema: - $ref: '#/components/schemas/Bitcoin' - pathAlgorand: - name: coin - in: path - required: true - schema: - $ref: '#/components/schemas/ConsolidationCoins' - pathAddress: - name: address - in: path - required: true - schema: - $ref: '#/components/schemas/AddressString3' - pathWebhookId: - name: webhookId - required: true - in: path - schema: - $ref: '#/components/schemas/Id' - queryFederationQ: - name: q - in: query - required: true - example: test*bitgo.com - schema: - type: string - queryFederationType: - name: type - in: query - required: true - example: name - schema: - type: string - enum: - - name - - id - limit: - name: limit - in: query - schema: - type: integer - minimum: 1 - maximum: 500 - default: 25 - description: Maximum number of results to return. If the result set is truncated, use the 'nextBatchPrevId' value to get the next batch. - expandAddressLabels: - name: expandAddressLabels - description: | - If true, adds 'addressLabels' to each returned pending approval associated with recipient's addresses - in: query - schema: - type: boolean - feeRate: - name: feeRate - in: query - schema: - type: integer - minimum: 0 - enterprise: - name: enterprise - in: query - description: Filter by enterprise - schema: - $ref: '#/components/schemas/Id' - enterpriseId: - name: enterpriseId - in: query - description: Filter by enterprise - schema: - $ref: '#/components/schemas/Id' - organizationId: - name: organizationId - in: query - description: Filter by organization - schema: - $ref: '#/components/schemas/Id' - numBlocks: - name: numBlocks - in: query - schema: - type: integer - default: 2 - minimum: 1 - maximum: 1000 - description: | - (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. - - Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. - unspentIds: - name: unspentIds - in: query - schema: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/UnspentId' - maxFeeRate: - name: maxFeeRate - in: query - schema: - type: integer - minimum: 0 - enforceMinConfirmsForChange: - name: enforceMinConfirmsForChange - in: query - description: Enforces 'minConfirms' on change inputs - schema: - type: boolean - minValue: - name: minValue - in: query - description: Minimum value of each unspent in base units (e.g. satoshis). For doge, only string is allowed. - schema: - $ref: '#/components/schemas/IntegerOrIntegerString' - maxValue: - name: maxValue - in: query - description: Maximum value of each unspent in base units (e.g. satoshis). For doge, only string is allowed. - schema: - $ref: '#/components/schemas/IntegerOrIntegerString' - minHeight: - name: minHeight - in: query - description: Minimum block height of the unspents - schema: - type: number - minimum: 0 - height: - name: height - in: query - description: The block or ledger height - schema: - $ref: '#/components/schemas/IntegerString' - segwit: - name: segwit - in: query - description: DEPRECATED. Mutually exclusive with 'chains'. Returns only 'p2shP2wsh' unspents/addresses on true. Returns only 'p2sh' unspents/addresses on false. Equivalent to passing 10 and 11 as the only value in 'chains' on true, 0 and 1 on false. - schema: - type: boolean - minConfirms: - name: minConfirms - in: query - description: Minimum number of confirmations for the collected inputs. Only applies to external unspents. Use 'enforceMinConfirmsForChange' to filter change as well. - schema: - type: integer - minimum: 0 - prevId: - in: query - name: prevId - schema: - $ref: '#/components/schemas/Id' - description: Return the next batch of results, based on the 'nextBatchPrevId' value from the previous batch. - searchLabelWallets: - name: searchLabel - in: query - example: My very first wallet - description: Query for 'Wallets' with a label containing this string - schema: - type: string - type: - name: type - in: query - description: Filter on sending or receiving 'Transfers' - schema: - type: string - enum: - - send - - receive - transactionIdx: - name: transactionIdx - in: path - required: true - schema: - type: string - walletId: - name: walletId - description: Filter by wallet - in: query - schema: - $ref: '#/components/schemas/Id' - FilteringConditionParameterNameAndValue: - name: filteringConditionParameterName - in: query - description: | - You can retrieve the policy rules that match a given set of Filtering Conditions by providing the - parameter name and value of the Filtering Conditions you are interested in. See also Filtering Conditions. - In addition, you could add Dynamic parameter for filtering rules based on specific criteria. - Format: ..parameters.= - -
: (Required) The table name. Valid values are filteringCondition, action, or condition. - - : (Optional) The name of the property. - - parameters: (Fixed) Indicates parameters section. - - : (Required) The key in the table's parameters column to search against. - - : (Optional) Comma-separated list of values to match. - required: false - schema: - type: string - example: | - walletType=custodial - filteringCondition.wallet.ids.parameters.walletId=testWalletId1,testWalletId2 - filteringCondition.wallet.type.parameters.walletType=hot,cold - filteringCondition.wallet.all.parameters - condition.transfer.amount.parameters.ruleId=ruleCondition1 - condition.parameters.number=1 - condition.parameters.userIds=user1,user2 - action.approvals.always.deny.parameters.actionId=ruleAction1 - action.parameters.bool=true - action.parameters.userIds=user1,user2 - txRequestSortDirection: - name: sortDirection - in: query - description: Sorts order by field in specified sort direction, default ascending. - schema: - type: string - enum: - - ASC - - DESC - destinationTag: - name: destinationTag - required: false - in: query - schema: - type: string - description: | - Required when sending to a BitGo wallet. - allTokens: - name: allTokens - schema: - type: boolean - in: query - example: true - description: Include data for all subtokens (i.e. ERC20 Tokens, Stellar Tokens) - excludeSpendableBalance: - name: excludeSpendableBalance - schema: - type: boolean - in: query - example: true - description: | - Skip spendable balance calculations and only include confirmed balances. If absent, defaults to false. - state: - name: state - description: | - The status of the transfer. - • 'confirmed' indicates the transaction is confirmed on chain. - • 'failed' indicates the transaction failed. 'initialized' is the first state of a transaction and indicates the transaction is initialized. - • 'pendingApproval' indicates the transaction is initialized and pending approval. - • 'rejected' indicates the transaction was rejected by an approver. - • 'removed' indicates the transaction was reorganized from the mempool (it's still possible recieve confirmation in another block). - • 'replaced' indicates the transaction was replaced with a new transaction with higher fees. - • 'signed' indicates the transaction is signed and pending on-chain confirmation. - • 'unconfirmed' indicates the transaction is pending on-chain confirmation. - in: query - schema: - type: array - items: - $ref: '#/components/schemas/TransferState' - showAllWallets: - name: showAllWallets - description: Include wallets that have 'deleted' or 'creationFailed' set to **true** - in: query - schema: - type: boolean - valueGte: - name: valueGte - in: query - description: Return transfers with a 'value' that is greater than or equal to the given number - schema: - type: integer - valueLt: - name: valueLt - in: query - description: Return transfers with a 'value' that is less than the given number - schema: - type: integer - dateGte: - name: dateGte - in: query - description: Return transfers with a 'date' that is greater than or equal to the given timestamp - schema: - type: string - format: date-time - dateLt: - name: dateLt - in: query - description: Return transfers with a 'date' that is less than the given timestamp - schema: - type: string - format: date-time - sortBy: - name: sortBy - in: query - description: Customize sort order for the transfers by specifying the sort key. - schema: - type: string - enum: - - heightId - - id - reverse: - name: reverse - in: query - description: True, if returning results in reverse order. - schema: - type: boolean - CreatedDateGte: - name: createdDateGte - in: query - description: | - The date and time of the earliest policy rule creation to return. The date and time must be in ISO 8601 format. - schema: - type: string - format: date-time - example: '2023-11-13T14:49:48.830522Z' - CreatedDateLte: - name: createdDateLte - in: query - description: | - The date and time of the latest policy rule creation to return. The date and time must be in ISO 8601 format. - schema: - type: string - format: date-time - example: '2023-11-13T14:49:48.830522Z' - Enterprise: - name: enterpriseId - in: path - description: Your Enterprise Id. - required: true - schema: - type: string - example: 63c86bf4555aba000652d5c59aff2866 - EvaluationId: - name: evaluationId - in: query - description: The id of the Evaluation. - required: false - schema: - type: string - example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 - EvaluationStatus: - name: evaluationStatus - in: query - description: Status of the Evaluation - required: false - schema: - type: string - enum: - - TRIGGERED - - NOT_TRIGGERED - example: TRIGGERED - PolicyRuleId: - name: id - in: path - description: Id of the policy rule. - required: true - schema: - type: string - example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 - PolicyRuleIdQuery: - name: id - in: query - description: Id of the policy rule. - required: false - schema: - type: string - example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 - PolicyRuleName: - name: name - in: query - description: | - A string to match the names of the policy rules against. - required: false - schema: - type: string - example: My policy rule - PolicyRuleVersion: - name: version - in: query - description: Version of the policy rule to return. - required: false - schema: - type: number - example: 3 - scope: - name: scopeId - in: path - description: The id of the scope. - required: true - schema: - type: string - example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 - ScopeName: - name: scopes - in: query - description: | - scopes of the returned policy rules. One or more may be provided. For example, the All Wallets scope. - See also the List scopes API. - required: false - schema: - type: string - enum: - - wallet.segregated - - policies.management - example: wallet.segregated - PolicyRuleStatus: - name: status - in: query - description: Statuses of the returned policy rules, one or more may be provided. - required: false - schema: - type: string - enum: - - ACTIVE - - INACTIVE - - DENIED - - PENDING_APPROVAL - Touchpoints: - name: touchpoints - in: query - description: The Touchpoints of the returned policy rules. One or more may be provided. For example, the Transfer from a Wallet Touchpoint. See also the List scope Touchpoints API. - required: false - schema: - type: string - example: wallet.segregated.transfer - FilteringConditionName: - name: filteringCondition - in: path - description: The name of the Filtering condition to be used when creating or updating a policy rule. Not all Touchpoint Actions are compatible with all Filtering Conditions. - required: true - schema: - type: string - example: wallet.all - Limit: - name: limit - in: query - description: | - How many policy rules to return per page of results. Default: 20, Maximum: 100. - required: false - schema: - type: integer - example: 20 - PrevId: - name: prevId - in: query - description: The nextBatchPrevId returned by the last call to the same API. Used to retrieve the next page of results. - required: false - schema: - type: integer - example: 1 - TouchpointId: - name: touchpointId - in: path - description: The id of a Touchpoint. - required: true - schema: - type: string - example: 0441ea9f-cd66-4d60-a52a-471aecd3e54e - TouchpointName: - name: touchpointName - in: path - description: The name of the Touchpoint. - required: true - schema: - type: string - example: wallet.segregated.transfer - pathCoin1: - name: coin - in: path - description: The staking asset. - required: true - schema: - type: string - oneOf: - - type: string - enum: - - AVAXP - - DOT - - ETH - - MATIC - - NEAR - - SOL - - type: string - pathWalletId1: - name: walletId - in: path - description: The wallet ID. - required: true - schema: - $ref: '#/components/schemas/WalletId' - queryCoin: - name: coin - in: query - description: The staking asset. - required: false - schema: - type: string - oneOf: - - type: string - enum: - - AVAXP - - DOT - - ETH - - MATIC - - NEAR - - SOL - - type: string - queryLabel: - name: label - in: query - description: The label of the wallet where the staking request was created. - required: false - schema: - type: string - queryPage: - name: page - in: query - description: The page number for pagination. - required: false - schema: - type: integer - default: 1 - minimum: 1 - queryPageSize: - name: pageSize - in: query - description: The page size for pagination. - required: false - schema: - type: integer - default: 20 - minimum: 1 - maximum: 100 - querySortByCreatedDate: - name: sortBy - in: query - description: Sort By field - required: false - schema: - type: string - default: '-createdDate' - enum: - - '-createdDate' - - createdDate - querySortByDate: - name: sortBy - in: query - description: Sort By field - required: false - schema: - type: string - default: '-date' - enum: - - '-date' - - date - coin1: - name: coin - in: query - description: Filter by coin. - schema: - title: Coin - description: A cryptocurrency or token ticker symbol. - type: string - example: eth - examples: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: CONFIRMED + amount: '10000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10000000000' + DotUnStakingRequestPOSTBodyExample: + summary: Dot UnStaking Request POST Body Example + value: + clientId: d055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + type: UNSTAKE + amount: '10000000000' + DotUnStakingRequestWithTransactionsExample: + summary: Dot UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '10012000000' + status: ACTIVE + rewards: '12000000' + lockedRewards: '0' + pendingUnstake: '10012000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + amount: '1012' + transactionType: undelegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: WAITING + amount: '10012000000' + transactionType: withdraw_undelegated + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10012000000' + DotUnStakingRequestWithoutDelegationsExample: + summary: Dot UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '10012000000' + DotUnStakingRequestsListResponseExample: + summary: Dot UnStaking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: dot + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '10012000000' + status: ACTIVE + rewards: '12000000' + lockedRewards: '0' + pendingUnstake: '10012000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + amount: '1012' + transactionType: undelegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: WAITING + amount: '10012000000' + transactionType: withdraw_undelegated + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10012000000' + DotWalletStakingStateAttributesExamples: + summary: Dot Wallet Staking Attributes + value: + disclaimer: + staking: + info: + - 'Minimum staking period is: 1 day.' + - Once staked, the unstaking takes 28 eras (about 28 days). + - | + 'Unstaking requires approving 2 transactions: the transaction to unstake and the transaction to claim your staking balance plus rewards.' + transactionsNeeded: 1 + stakeWarmupPeriodDesc: '172800' + rewardPercentageRate: '13.92' + rewardsCompounding: true + unstaking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unbond and the transaction to claim your staking amount. The network has to confirm the unbonding transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + unStakeCooldownPeriodDesc: '2419200' + permission: + staking: + enabled: false + disabledReason: Wallet 63a1d3892f03840007e056e3880391ee has insufficient funds + allowClientToUseOwnValidator: false + unstaking: + enabled: true + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 0 + spendable: + staking: + fee: '12923673972' + max: '0' + min: '1000000000000' + netMax: '0' + netMin: '1012923673972' + isStakingDurationNeeded: false + minStakeMore: '0' + unstaking: + fee: '45410610588' + max: '20384805835211' + min: '1000000000000' + multipleDelegations: false + EthDelegationResultsExample: + summary: Ethereum Delegation Results Example + value: + page: 1 + totalPages: 1 + totalElements: 2 + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '100000000000000' + unstakingMin: '0' + - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '1000000000000000' + unstakingMin: '0' + EthStakingRequestPOSTBodyExample: + summary: Ethereum Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '64000000000000000000' + gasPrice: '1000000000000000' + type: STAKE + EthStakingRequestWithTransactionsExample: + summary: Ethereum Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + type: STAKE + coin: eth + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '100000000000000' + unstakingMin: '0' + - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '1000000000000000' + unstakingMin: '0' + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + EthStakingRequestWithoutDelegationsExample: + summary: Ethereum Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + type: STAKE + coin: eth + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + EthStakingRequestsListResponseExample: + summary: Ethereum Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + type: STAKE + coin: eth + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: 8.3 + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '100000000000000' + unstakingMin: '0' + - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '1000000000000000' + unstakingMin: '0' + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + EthStakingResultsExample: + summary: Ethereum Staking Request Results Example + value: + page: 1 + totalPages: 1 + totalElements: 1 + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + type: STAKE + coin: eth + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '100000000000000' + unstakingMin: '0' + - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '0' + apy: '8.3' + coin: eth + walletId: 2032e75g451052000636831abd797bd3 + unstakingFee: '1000000000000000' + unstakingMin: '0' + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: PENDING + amount: '3200000000000000000' + transactionType: delegate + delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai + buildParams: + recipients: + amount: '3200000000000000000' + address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' + data: fds0934rnnio390nw + stakingParams: + requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '3200000000000000000' + validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 + actionType: delegate + gasPrice: '1000000000000000' + gasLimit: '3000000000000000' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + EvaluationExample: + summary: Evaluation + description: A successful evaluation response. + value: + id: 7b0e0c89-180a-47d1-a855-586f480def21 + idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 + scope: wallet.segregated + touchpoint: wallet.segregated.transfer + clientRequest: + coin: tnear + amount: '2e+23' + outputs: + - value: '2e+23' + address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 + isVerified: true + walletWhitelistedAddress: true + bitgoOrg: BitGo Trust + walletId: 649dd0d990a1fd0007e6ab1b229ffe7f + initiator: 63cf101298470200073bbae71add80d5 + requestId: 9bd3c62016761e5bca6b-0000 + coinIsFiat: false + walletType: custodial + enterpriseId: 63c86bf4555aba000652d5c59aff2866 + waiveVideoId: true + usdCentAmount: '161.16' + idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 + transactionTypes: [] + hasUnvalidatedData: false + walletWhitelistExists: true + enterpriseWhitelistExists: false + status: DENIED + evaluatedPolicyRules: + - id: 73bb6587-4f4d-44ce-b189-e8f61e96e544 + status: NOT_TRIGGERED + filteringConditionInputs: + walletType: custodial + policyRuleId: 00000000-0000-0000-0000-000000000001 + version: 1 + clauses: + - id: 5c39f31d-5c16-48a1-96ec-449b3831a2d1 + policyRuleClauseId: 00000000-0000-0000-0000-000000000001 + status: NOT_TRIGGERED + conditions: + - id: 52c4c3b6-6cc5-4826-9b28-2741bde3c97f + policyConditionId: 00000000-0000-0000-0000-000000000001 + name: transfer.destination.type + status: NOT_TRIGGERED + inputs: + coin: tnear + amount: '2e+23' + ruleId: 00000000-0000-0000-0000-000000000001 + outputs: + - value: '2e+23' + address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 + isVerified: true + walletWhitelistedAddress: true + bitgoOrg: BitGo Trust + walletId: 649dd0d990a1fd0007e6ab1b229ffe7f + initiator: 63cf101298470200073bbae71add80d5 + requestId: 9bd3c62016761e5bca6b-0000 + coinIsFiat: false + walletType: custodial + enterpriseId: 63c86bf4555aba000652d5c59aff2866 + waiveVideoId: true + usdCentAmount: '161.16' + idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 + transactionTypes: [] + hasUnvalidatedData: false + walletWhitelistExists: true + enterpriseWhitelistExists: false + parameters: + type: nonWhitelistedAddress + evaluationMetadata: {} + evaluationMessage: + messageTemplate: The destination address was whitelisted on the wallet whitelist. + variables: [] + message: The destination address was whitelisted on the wallet whitelist. + actions: + - name: approvals.always.deny + parameters: {} + - id: b9f3062d-983f-4b8f-8e95-43064da22d99 + status: TRIGGERED + filteringConditionInputs: + walletType: custodial + policyRuleId: c1437a69-b701-4783-abd2-cf0a22185323 + version: 1 + clauses: + - id: 5a4fae05-022d-4633-ac93-c33348c13311 + policyRuleClauseId: d5246645-94e4-4a2d-9a9e-8b112e7c8470 + status: TRIGGERED + conditions: + - id: 4020abef-012f-4d57-9b7b-f2e102d85dd9 + policyConditionId: fb41229b-c54f-4a80-b1e7-82b9a47dc7ef + name: trust.transfer.velocity.limit + status: TRIGGERED + inputs: + coin: tnear + amount: '2e+23' + ruleId: 9d52414e-781c-4a5f-961b-1556af08abeb + outputs: + - value: '2e+23' + address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 + isVerified: true + walletWhitelistedAddress: true + bitgoOrg: BitGo Trust + walletId: 649dd0d990a1fd0007e6ab1b229ffe7f + initiator: 63cf101298470200073bbae71add80d5 + requestId: 9bd3c62016761e5bca6b-0000 + coinIsFiat: false + walletType: custodial + enterpriseId: 63c86bf4555aba000652d5c59aff2866 + waiveVideoId: true + usdCentAmount: '161.16' + idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 + transactionTypes: [] + hasUnvalidatedData: false + walletWhitelistExists: true + enterpriseWhitelistExists: false + parameters: + coin: tnear + scope: wallet + amount: '1000000000000000000000000' + timeWindow: 15 + evaluationMetadata: + spending: '1100000000000000000000000' + evaluationMessage: + messageTemplate: The velocity calculation reached {spendingAmount} with this transaction, exceeding the wallet limit of {limitAmount} over {timeWindow}. + variables: + - name: spendingAmount + value: '1100000000000000000000000' + coin: tnear + type: COIN_AMOUNT + - name: limitAmount + value: '1000000000000000000000000' + coin: tnear + type: COIN_AMOUNT + - name: timeWindow + value: '15' + unit: seconds + type: TIME_DURATION + message: The velocity calculation reached 1100000000000000000000000 tnear with this transaction, exceeding the wallet limit of 1000000000000000000000000 tnear over 15 seconds. + actions: + - name: approvals.customer.walletAdmin + parameters: + minRequired: '1' + actions: + - id: 31a68c61-f98b-49cc-9e4d-b9f5bfbf618c + status: CANCELLED + action: + name: approvals.customer.walletAdmin + parameters: + minRequired: '1' + resolution: + reason: Rejected by user + pendingApproval: 664ed267aad92c62a183ac5f28883495 + - id: aa371c4c-6adc-4039-ba88-5f9a3e807ca3 + status: CANCELLED + action: + name: approvals.bitgo.custodialSigning + parameters: {} + resolution: + reason: Rejected by user + pendingApproval: 664ed267aad92c62a183ac5f28883495 + resolutionOrder: + - actions: + - 31a68c61-f98b-49cc-9e4d-b9f5bfbf618c + - actions: + - aa371c4c-6adc-4039-ba88-5f9a3e807ca3 + createdDate: '2024-05-23T05:21:41.805829Z' + FilteringConditionsExample: + summary: Filtering Conditions + description: A successful response with two Filtering Conditions. + value: + conditions: + - name: wallet.type + label: Wallet Type + description: Allows creating a condition based on the Wallet Type + status: ACTIVE + parameters: + - name: walletType + label: Type + description: The Wallet Type + type: ENUMERATED + required: ALWAYS + allowMultiple: true + values: + - value: custodial + label: Custodial Wallet + description: A custodial wallet + - value: hot + label: Hot Wallet + description: A hot wallet + - value: cold + label: Cold Wallet + description: A cold wallet + - value: trading + label: Trading Wallet + description: A trading wallet + - value: custodialPaired + label: Hot Wallet paired with a Custodial Wallet + description: A hot wallet that is paired with a custodial wallet + - value: backing + label: Backing Wallet + description: A backing wallet + - name: wallet.ids + label: Wallet Ids + description: Allows creating a condition based on the Wallet Id + status: ACTIVE + parameters: + - name: walletId + label: Wallet Id + description: The Wallet Ids + type: BITGO_WALLET_ID + required: ALWAYS + allowMultiple: false + values: [] + InactivePolicyRuleExample: + summary: An 'INACTIVE' policy rule + value: + uniqueId: c5a818c7-1831-4fe2-8363-d469378bb106 + id: 4fa8326b-4f5f-4065-8cfc-85a08c290c49 + name: Get approval if transferring more than 2 BTC in a minute + status: INACTIVE + version: 1 + adminOnly: false + touchpointLabel: Transfer from a Segregated Wallet + scopeLabel: Wallet + clauses: + - actions: + - name: approvals.customer.walletAdmin + parameters: {} + conditions: + - name: transfer.velocity.limit + parameters: + amount: '2000000' + timeWindow: '60' + coin: btc + filteringConditions: + - parameters: + walletId: + - 643f146bb13653000765c478a384a656 + name: wallet.ids + locked: true + lockType: LOCK_AFTER_DATE + lockDate: '2023-11-13T14:49:48.830522Z' + enterpriseId: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + lastTriggeredDate: '2023-11-13T14:49:48.830522Z' + lastTriggeredEvaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 + createdBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + modifiedBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + evaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 + LicenseResultsExample: + summary: Staking License Result Example + value: + enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec + fees: + - coin: near + fee: '4' + - coin: sol + fee: '5' + defaultFee: '10' + MMIBalanceEventNoErrorExample: + value: + - type: MMI + subtype: BALANCE + timeEventOccurred: 2021-12-02T00:00:01.000Z + timeEventSent: 2021-01-10T00:00:17.000Z + source: defi-service + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: i28e44259cf048638a293e7850594e39 + AUDGroupId: g34e4425-ccf0-2863-1a29-457850594e37 + chainId: '137' + asset: SNX + amountDelta: '30289390048741049' + totalAUD: '70770742.03999998' + totalAUDCurrency: USD + object: token + objectAddress: '0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f' + objectName: Synthetix Network Token + symbol: SNX + decimals: 18 + iconUrl: https://assets.coingecko.com/coins/images/3406/large/SNX.png + coingeckoId: havven + rawBalance: '30289390048741049' + balance: 0.03028939004874105 + valueBalanceDate: 2021-12-01T23:59:59.000Z + valueBlockNumber: '13724084' + valueVsCurrency: USD + valueTokenName: Synthetix Network Token + valueTimestamp: 1638400406610 + valuePrice: 7.361103870620357 + valueError: false + valueErrorMessage: '' + MMIBalanceEventWithErrorExample: + value: + - type: MMI + subtype: BALANCE + timeEventOccurred: 2021-12-02T00:00:01.000Z + timeEventSent: 2021-01-10T00:00:17.000Z + source: defi-service + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: h28e44259cf048638a293e7850594e39 + AUDGroupId: g34e4425-ccf0-2863-1a29-457850594e37 + chainId: '137' + asset: SNX + amountDelta: '30289390048741049' + totalAUD: '70770742.03999998' + totalAUDCurrency: USD + object: token + objectAddress: '0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f' + objectName: Synthetix Network Token + symbol: SNX + decimals: 18 + iconUrl: https://assets.coingecko.com/coins/images/3406/large/SNX.png + coingeckoId: '' + rawBalance: '30289390048741049' + balance: 0.03028939004874105 + valueBalanceDate: '' + valueBlockNumber: '' + valueVsCurrency: '' + valueTokenName: '' + valueTimestamp: 0 + valuePrice: 0 + valueError: true + valueErrorMessage: Missing coingeckoId, unable to calculate price + MMIDailyRollupEventExample: + value: + - type: MMI + subtype: ROLLUP + timeEventOccurred: 2021-12-02T00:00:01.000Z + timeEventSent: 2021-01-10T00:00:17.000Z + source: defi-service + asset: USD + amountDelta: '70770742.03999998' + AUDGroupId: g28e4425-9cf0-4863-8a29-3e7850594e39 + rollupPeriod: daily + fromDate: 2021-12-01T00:00:00.000Z + toDate: 2021-12-02T00:00:00.000Z + totalAUD: '70770742.03999998' + totalAUDCurrency: USD + averageAUD: '60770742.03999998' + averageAUDCurrency: 48dd72485007a239fb00282ed480da1f + usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: g28e44259cf048638a293e7850594e39 + chainId: '137' + MMIMonthlyRollupEventExample: + value: + - type: MMI + subtype: ROLLUP + timeEventOccurred: 2021-12-02T00:00:01.000Z + timeEventSent: 2021-01-10T00:00:17.000Z + source: defi-service + asset: USD + amountDelta: '70770742.03999998' + AUDGroupId: g28e4425-9cf0-4863-8a29-3e7850594e39 + rollupPeriod: monthly + fromDate: 2021-12-01T00:00:00.000Z + toDate: 2022-01-01T00:00:00.000Z + totalAUD: '900077074.03999998' + totalAUDCurrency: USD + averageAUD: '60770742.03999998' + averageAUDCurrency: USD + walletId: 48dd72485007a239fb00282ed480da1f + usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + idempotencyKey: a28e4425-9cf0-4863-8a29-3e7850594e39 + chainId: '137' + MMITransactionEventExample: + value: + - type: MMI + subtype: TRANSACTION + timeEventOccurred: 2022-01-10T17:32:28.000Z + timeEventSent: 2022-01-10T17:33:28.000Z + source: defi-service + asset: ETH + amountDelta: '-60000003247' + decimals: 18 + marketPrice: 7.361103870620357 + usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + idempotencyKey: f28e44259cf048638a293e7850594e39 + walletId: 48dd72485007a239fb00282ed480da1f + enterpriseId: 61b8e0043daafc65a85d4bd36b4649d4 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + txState: CONFIRMED + MaticDelegationResultsExample: + summary: Matic Delegation Results Example + value: + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '0' + coin: matic + walletId: 63110fc78b108e00071df2d3c3879dd0 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '1000' + apy: '6.5100' + unstakeable: false + page: 1 + totalPages: 1 + totalElements: 1 + MaticStakingRequestPOSTBodyExample: + summary: Matic Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '10000000000000000000' + gasPrice: '50000000000000' + type: STAKE + MaticStakingRequestWithTransactionsExample: + summary: Matic Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestingUserId: 6092e75c451052000636831deb797bd1 + type: STAKE + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + coin: matic + status: NEW + statusModifiedDate: 2022-01-10T14:32:28.000Z + createdDate: 2022-01-10T14:32:28.000Z + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + coin: matic + walletId: 2032e75g451052000636831abd797bd3 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '1000' + apy: '8.3' + unstakeable: false + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + transactionType: delegate + status: PENDING + statusModifiedDate: 2022-01-10T14:32:28.000Z + amount: '3200000000000000000' + gasPrice: '1000000000000000' + totalStaked: '0' + amount: '3200000000000000000' + gasPrice: '1000000000000000' + MaticStakingRequestWithoutDelegationsExample: + summary: Matic Staking Request Example + value: + id: 0b7e6e7e-5041-49d8-9598-0a4a3f3f234e + clientId: e055adbc-66a3-4ccd-9b9d-726b05dca0cf + requestingUserId: 61c0ee3803715c00088d2c85b533b732 + type: STAKE + enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec + walletId: 63110fc78b108e00071df2d3c3879dd0 + walletType: hot + withdrawalAddress: '0xf5b9becc5e7e68173a5fc1906a2a5574e884da40' + coin: matic + status: NEW + statusModifiedDate: '2022-12-05T17:11:30.748165Z' + createdDate: '2022-12-05T17:11:30.748159Z' + delegations: [] + transactions: [] + totalStaked: '0' + amount: '1000000000000' + gasPrice: '500000000000' + MaticStakingRequestsListResponseExample: + summary: Matic Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestingUserId: 6092e75c451052000636831deb797bd1 + type: STAKE + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + coin: matic + status: NEW + statusModifiedDate: 2022-01-10T14:32:28.000Z + createdDate: 2022-01-10T14:32:28.000Z + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '3200000000000000000' + coin: matic + walletId: 2032e75g451052000636831abd797bd3 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '3200000000000000000' + pendingStake: '1000' + apy: '8.3' + unstakeable: false + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + transactionType: delegate + status: PENDING + statusModifiedDate: 2022-01-10T14:32:28.000Z + amount: '3200000000000000000' + gasPrice: '1000000000000000' + totalStaked: '0' + amount: '3200000000000000000' + gasPrice: '1000000000000000' + MaticUnStakingRequestWithTransactionsExample: + summary: Matic UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestingUserId: 6092e75c451052000636831deb797bd1 + type: UNSTAKE + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + coin: matic + status: NEW + statusModifiedDate: 2022-01-10T14:32:28.000Z + createdDate: 2022-01-10T14:32:28.000Z + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '1600000000000000000' + coin: matic + walletId: 2032e75g451052000636831abd797bd3 + status: PENDING + rewards: '1000000000000000' + lockedRewards: '0' + pendingUnstake: '4800000000000000000' + pendingStake: '1000' + apy: '8.3' + unstakeable: false + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + transactionType: delegate + status: PENDING + statusModifiedDate: 2022-01-10T14:32:28.000Z + amount: '3200000000000000000' + gasPrice: '1000000000000000' + totalStaked: '0' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + MaticUnStakingRequestWithoutDelegationsExample: + summary: Matic UnStaking Request Example + value: + id: 0b7e6e7e-5041-49d8-9598-0a4a3f3f234e + clientId: e055adbc-66a3-4ccd-9b9d-726b05dca0cf + requestingUserId: 61c0ee3803715c00088d2c85b533b732 + type: UNSTAKE + enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec + walletId: 63110fc78b108e00071df2d3c3879dd0 + walletType: hot + withdrawalAddress: '0xf5b9becc5e7e68173a5fc1906a2a5574e884da40' + coin: matic + status: NEW + statusModifiedDate: '2022-12-05T17:11:30.748165Z' + createdDate: '2022-12-05T17:11:30.748159Z' + delegations: [] + transactions: [] + totalStaked: '0' + amount: '500000000000' + gasPrice: '200000000000' + MaticUnStakingRequestsListResponseExample: + summary: Matic Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestingUserId: 6092e75c451052000636831deb797bd1 + type: UNSTAKE + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + walletType: custodial + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + coin: matic + status: NEW + statusModifiedDate: 2022-01-10T14:32:28.000Z + createdDate: 2022-01-10T14:32:28.000Z + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '1600000000000000000' + coin: matic + walletId: 2032e75g451052000636831abd797bd3 + status: PENDING + rewards: '1000000000000000' + lockedRewards: '0' + pendingUnstake: '4800000000000000000' + pendingStake: '1000' + apy: '8.3' + unstakeable: false + transactions: + - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + transactionType: delegate + status: PENDING + statusModifiedDate: 2022-01-10T14:32:28.000Z + amount: '3200000000000000000' + gasPrice: '1000000000000000' + totalStaked: '0' + amount: '6400000000000000000' + gasPrice: '1000000000000000' + MaticUnstakingRequestPOSTBodyExample: + summary: Matic UnStaking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '2000000000000000000' + gasPrice: '50000000000000' + type: UNSTAKE + MaticWalletStakingStateAttributesExamples: + summary: Matic Wallet Staking Attributes + value: + disclaimer: + staking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + stakeWarmupPeriodDesc: tbd + rewardPercentageRate: '6.5100' + rewardsCompounding: false + unstaking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + unStakeCooldownPeriodDesc: tbd + permission: + staking: + enabled: true + allowClientToUseOwnValidator: false + unstaking: + enabled: true + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 2 + spendable: + staking: + fee: '888546618800000' + max: '2010492598925385321' + min: '1' + netMax: '2009604052306585321' + netMin: '888546618800001' + isStakingDurationNeeded: false + minStakeMore: '0' + unstaking: + multipleDelegations: true + NearDelegationResultsExample: + summary: Near Delegation Results Example + value: + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '0' + coin: near + walletId: 63110fc78b108e00071df2d3c3879dd0 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '1000' + apy: '6.5100' + unstakeable: false + page: 1 + totalPages: 1 + totalElements: 1 + NearStakingRequestPOSTBodyExample: + summary: Near Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '12000000000000000000' + type: STAKE + NearStakingRequestWithTransactionsExample: + summary: Near Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: STAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + delegated: '1300000000000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '1300000000000000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '100000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1300000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1300000000000000000' + NearStakingRequestWithoutDelegationsExample: + summary: Near Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: STAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1300000000000000000' + NearStakingRequestsListResponseExample: + summary: Near Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: STAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + delegated: '1300000000000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '1300000000000000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '100000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1300000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1300000000000000000' + NearUnStakingRequestPOSTBodyExample: + summary: Near UnStaking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '12000000000000000000' + type: UNSTAKE + NearUnStakingRequestWithTransactionsExample: + summary: Near UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: UNSTAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + delegated: '1310000000000000000' + status: ACTIVE + rewards: '100000000000000000' + lockedRewards: '0' + pendingUnstake: '1310000000000000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '100000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1300000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1300000000000000000' + NearUnStakingRequestWithoutDelegationsExample: + summary: Near UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: UNSTAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1310000000000000000' + NearUnStakingRequestsListResponseExample: + summary: Near UnStaking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + walletType: custodial + type: UNSTAKE + coin: near + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 + delegated: '1310000000000000000' + status: ACTIVE + rewards: '100000000000000000' + lockedRewards: '0' + pendingUnstake: '1310000000000000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '100000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1300000000000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1300000000000000000' + NearWalletStakingStateAttributesExamples: + summary: Near Wallet Staking Attributes + value: + disclaimer: + staking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + stakeWarmupPeriodDesc: tbd + rewardPercentageRate: '6.5100' + rewardsCompounding: false + unstaking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + unStakeCooldownPeriodDesc: tbd + permission: + staking: + enabled: true + allowClientToUseOwnValidator: false + unstaking: + enabled: true + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 2 + spendable: + staking: + fee: '888546618800000' + max: '2010492598925385321' + min: '1' + netMax: '2009604052306585321' + netMin: '888546618800001' + isStakingDurationNeeded: false + minStakeMore: '0' + unstaking: + multipleDelegations: true + PolicyRuleExample: + summary: A policy rule + description: A successful policy rule details response. + value: + uniqueId: c3ff569e-e30a-4405-8b76-38de240c724a + id: 4fa8326b-4f5f-4065-8cfc-85a08c290c49 + name: Get approval if transferring more than 2 BTC in a minute + status: ACTIVE + version: 1 + adminOnly: false + touchpointLabel: Transfer from a Segregated Wallet + scopeLabel: Wallet + clauses: + - actions: + - name: approvals.customer.walletAdmin + parameters: {} + conditions: + - name: transfer.velocity.limit + parameters: + amount: '2000000' + timeWindow: '60' + coin: btc + filteringConditions: + - parameters: + walletId: + - 643f146bb13653000765c478a384a656 + name: wallet.ids + locked: true + lockType: PERMANENT + enterpriseId: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + lastTriggeredDate: '2023-11-13T14:49:48.830522Z' + lastTriggeredEvaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 + createdBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + modifiedBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + evaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 PolicyRulesResultsExample: summary: Policy Rules. description: A successful response with 3 Policy Rules. @@ -52929,277 +29038,27 @@ components: walletId: - 643f146bb13653000765c478a384a656 name: wallet.ids - - id: 4bbe1f5c-12e3-4648-aab1-c1dc1da4cdb5 - name: Test Rule - status: ACTIVE - version: 1 - adminOnly: false - touchpointLabel: Get approval when transferring to a non enterprise whitelisted destination - scopeLabel: Wallet - clauses: - - actions: - - name: approvals.customer.walletAdmin - parameters: {} - conditions: - - name: transfer.destination.type - parameters: - type: nonWhitelistedAddress - filteringConditions: - - parameters: - walletId: - - 643f146bb13653000765c478a384a656 - name: wallet.ids - nextBatchPrevId: 3 - MMIBalanceEventNoErrorExample: - value: - - type: MMI - subtype: BALANCE - timeEventOccurred: 2021-12-02T00:00:01.000Z - timeEventSent: 2021-01-10T00:00:17.000Z - source: defi-service - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: i28e44259cf048638a293e7850594e39 - AUDGroupId: g34e4425-ccf0-2863-1a29-457850594e37 - chainId: '137' - asset: SNX - amountDelta: '30289390048741049' - totalAUD: '70770742.03999998' - totalAUDCurrency: USD - object: token - objectAddress: '0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f' - objectName: Synthetix Network Token - symbol: SNX - decimals: 18 - iconUrl: https://assets.coingecko.com/coins/images/3406/large/SNX.png - coingeckoId: havven - rawBalance: '30289390048741049' - balance: 0.03028939004874105 - valueBalanceDate: 2021-12-01T23:59:59.000Z - valueBlockNumber: '13724084' - valueVsCurrency: USD - valueTokenName: Synthetix Network Token - valueTimestamp: 1638400406610 - valuePrice: 7.361103870620357 - valueError: false - valueErrorMessage: '' - MMIBalanceEventWithErrorExample: - value: - - type: MMI - subtype: BALANCE - timeEventOccurred: 2021-12-02T00:00:01.000Z - timeEventSent: 2021-01-10T00:00:17.000Z - source: defi-service - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: h28e44259cf048638a293e7850594e39 - AUDGroupId: g34e4425-ccf0-2863-1a29-457850594e37 - chainId: '137' - asset: SNX - amountDelta: '30289390048741049' - totalAUD: '70770742.03999998' - totalAUDCurrency: USD - object: token - objectAddress: '0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f' - objectName: Synthetix Network Token - symbol: SNX - decimals: 18 - iconUrl: https://assets.coingecko.com/coins/images/3406/large/SNX.png - coingeckoId: '' - rawBalance: '30289390048741049' - balance: 0.03028939004874105 - valueBalanceDate: '' - valueBlockNumber: '' - valueVsCurrency: '' - valueTokenName: '' - valueTimestamp: 0 - valuePrice: 0 - valueError: true - valueErrorMessage: Missing coingeckoId, unable to calculate price - MMIDailyRollupEventExample: - value: - - type: MMI - subtype: ROLLUP - timeEventOccurred: 2021-12-02T00:00:01.000Z - timeEventSent: 2021-01-10T00:00:17.000Z - source: defi-service - asset: USD - amountDelta: '70770742.03999998' - AUDGroupId: g28e4425-9cf0-4863-8a29-3e7850594e39 - rollupPeriod: daily - fromDate: 2021-12-01T00:00:00.000Z - toDate: 2021-12-02T00:00:00.000Z - totalAUD: '70770742.03999998' - totalAUDCurrency: USD - averageAUD: '60770742.03999998' - averageAUDCurrency: 48dd72485007a239fb00282ed480da1f - usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: g28e44259cf048638a293e7850594e39 - chainId: '137' - MMIMonthlyRollupEventExample: - value: - - type: MMI - subtype: ROLLUP - timeEventOccurred: 2021-12-02T00:00:01.000Z - timeEventSent: 2021-01-10T00:00:17.000Z - source: defi-service - asset: USD - amountDelta: '70770742.03999998' - AUDGroupId: g28e4425-9cf0-4863-8a29-3e7850594e39 - rollupPeriod: monthly - fromDate: 2021-12-01T00:00:00.000Z - toDate: 2022-01-01T00:00:00.000Z - totalAUD: '900077074.03999998' - totalAUDCurrency: USD - averageAUD: '60770742.03999998' - averageAUDCurrency: USD - walletId: 48dd72485007a239fb00282ed480da1f - usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - idempotencyKey: a28e4425-9cf0-4863-8a29-3e7850594e39 - chainId: '137' - MMITransactionEventExample: - value: - - type: MMI - subtype: TRANSACTION - timeEventOccurred: 2022-01-10T17:32:28.000Z - timeEventSent: 2022-01-10T17:33:28.000Z - source: defi-service - asset: ETH - amountDelta: '-60000003247' - decimals: 18 - marketPrice: 7.361103870620357 - usersAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - idempotencyKey: f28e44259cf048638a293e7850594e39 - walletId: 48dd72485007a239fb00282ed480da1f - enterpriseId: 61b8e0043daafc65a85d4bd36b4649d4 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - txState: CONFIRMED - StakingClaimEventExample: - value: - - type: STAKING - subtype: CLAIM - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '30000000000000000000' - stakedDelta: '0' - totalStaked: '0' - rewardsBalance: '0' - apy: '8.2' - address: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - validatorAddress: '' - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: a28e44259cf048638a293e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - StakingDelegateEventExample: - value: - - type: STAKING - subtype: DELEGATE - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '-32000000000000000000' - stakedDelta: '32000000000000000000' - totalStaked: '32000000000000000000' - rewardsBalance: '0' - apy: '8.2' - address: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - stakingRequestId: a28e4425-9cf0-4863-8a29-3e7850594e39 - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: p28e44259cf048638a293e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - StakingRewardEventExample: - value: - - type: STAKING - subtype: REWARD - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '0' - stakedDelta: '50000000000000000000' - totalStaked: '32000000000000000000' - rewardsBalance: '50000000000000000000' - apy: '8.2' - address: '' - validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - uuid: q28e44259cf048638a293e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - StakingSlashEventExample: - value: - - type: STAKING - subtype: SLASH - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '0' - stakedDelta: '-4000000000000000000' - totalStaked: '32000000000000000000' - rewardsBalance: '1000000000000000000' - apy: '8.2' - address: '' - validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: s28e44259cf048638a293e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - StakingSlashEventNegativeBalanceExample: - value: - - type: STAKING - subtype: SLASH - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '0' - stakedDelta: '-3000000000000000000' - totalStaked: '32000000000000000000' - rewardsBalance: '-2000000000000000000' - apy: '8.2' - address: '' - validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: f28e4425-9cf0-4863-8a29-3e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 - StakingUndelegateEventExample: - value: - - type: STAKING - subtype: UNDELEGATE - timeEventOccurred: 2022-01-10T14:32:28.000Z - timeEventSent: 2022-01-10T15:32:28.000Z - source: staking-service - asset: eth - unit: wei - amountDelta: '0' - stakedDelta: '-30000000000000000000' - totalStaked: '0' - rewardsBalance: '0' - apy: '8.2' - address: '' - validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' - delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e - txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b - walletId: 48dd72485007a239fb00282ed480da1f - idempotencyKey: v28e44259cf048638a293e7850594e39 - txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + - id: 4bbe1f5c-12e3-4648-aab1-c1dc1da4cdb5 + name: Test Rule + status: ACTIVE + version: 1 + adminOnly: false + touchpointLabel: Get approval when transferring to a non enterprise whitelisted destination + scopeLabel: Wallet + clauses: + - actions: + - name: approvals.customer.walletAdmin + parameters: {} + conditions: + - name: transfer.destination.type + parameters: + type: nonWhitelistedAddress + filteringConditions: + - parameters: + walletId: + - 643f146bb13653000765c478a384a656 + name: wallet.ids + nextBatchPrevId: 3 PolicyRulesResultsExample1: summary: policy rules. description: A successful response with 3 policy rules. @@ -53295,6 +29154,20 @@ components: modifiedBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 evaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 nextBatchPrevId: 5 + ScopeTouchpointsExample: + summary: scope Touchpoints + description: A successful response with one Touchpoint. + value: + touchpoints: + - id: 0441ea9f-cd66-4d60-a52a-471aecd3e54e + name: wallet.segregated.transfer + status: ACTIVE + label: Transfer from a Segregated Wallet + description: When transferring from a BitGo Segregated Wallet + adminOnly: false + page: 1 + totalPages: 1 + totalElements: 1 ScopesExample: summary: scopes description: A successful response with one scope. @@ -53335,67 +29208,455 @@ components: required: ALWAYS allowMultiple: true values: [] - FilteringConditionsExample: - summary: Filtering Conditions - description: A successful response with two Filtering Conditions. + SolDelegationResultsExample: + summary: Sol Delegation Results Example value: - conditions: - - name: wallet.type - label: Wallet Type - description: Allows creating a condition based on the Wallet Type + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 + withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + delegated: '0' + coin: sol + walletId: 63110fc78b108e00071df2d3c3879dd0 + status: PENDING + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '1000' + apy: '6.5100' + unstakeable: false + page: 1 + totalPages: 1 + totalElements: 1 + SolStakingRequestPOSTBodyExample: + summary: Sol Staking Request POST Body Example + value: + clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1000' + type: STAKE + SolStakingRequestWithTransactionsExample: + summary: Sol Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '1000000000' status: ACTIVE - parameters: - - name: walletType - label: Type - description: The Wallet Type - type: ENUMERATED - required: ALWAYS - allowMultiple: true - values: - - value: custodial - label: Custodial Wallet - description: A custodial wallet - - value: hot - label: Hot Wallet - description: A hot wallet - - value: cold - label: Cold Wallet - description: A cold wallet - - value: trading - label: Trading Wallet - description: A trading wallet - - value: custodialPaired - label: Hot Wallet paired with a Custodial Wallet - description: A hot wallet that is paired with a custodial wallet - - value: backing - label: Backing Wallet - description: A backing wallet - - name: wallet.ids - label: Wallet Ids - description: Allows creating a condition based on the Wallet Id + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: CONFIRMED + amount: '1000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1000000000' + SolStakingRequestWithoutDelegationsExample: + summary: Sol Staking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1000000000' + SolStakingRequestsListResponseExample: + summary: Sol Staking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: STAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '1000000000' + status: ACTIVE + rewards: '0' + lockedRewards: '0' + pendingUnstake: '0' + pendingStaking: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: CONFIRMED + amount: '1000000000' + transactionType: delegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1000000000' + SolStakingValidatorsResultsExample: + summary: Solana Staking Validators Results Example + value: + page: 1 + totalPages: 1 + totalElements: 1 + validators: + delegationAddress: BAGUCfvdwdioWSR8rqJKqJXHk4ZkQcUfvMLfM9QinZFY + coin: sol + delegated: '40026861' + rewards: '26861' + apy: '5.71' + type: Unknown + SolUnStakingRequestPOSTBodyExample: + summary: Sol UnStaking Request POST Body Example + value: + clientId: d055adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + type: UNSTAKE + SolUnStakingRequestWithTransactionsExample: + summary: Sol UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '1012000000' status: ACTIVE - parameters: - - name: walletId - label: Wallet Id - description: The Wallet Ids - type: BITGO_WALLET_ID - required: ALWAYS - allowMultiple: false - values: [] - ScopeTouchpointsExample: - summary: scope Touchpoints - description: A successful response with one Touchpoint. + rewards: '12000000' + lockedRewards: '0' + pendingUnstake: '1012000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + amount: '1012' + transactionType: undelegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: WAITING + amount: '1012000000' + transactionType: withdraw_undelegated + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1012000000' + SolUnStakingRequestWithoutDelegationsExample: + summary: Sol UnStaking Request Example + value: + id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + amount: '1012000000' + SolUnStakingRequestsListResponseExample: + summary: Sol UnStaking Request List Response Example + value: + requests: + - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr + requestUserId: 6092e75c451052000636831deb797bd1 + enterpriseId: 1032e75c451052000436831deb797af1 + walletId: 2032e75g451052000636831abd797bd3 + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + walletType: custodial + type: UNSTAKE + coin: sol + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: NEW + delegations: + - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + delegationAddress: string + withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i + delegated: '1012000000' + status: ACTIVE + rewards: '12000000' + lockedRewards: '0' + pendingUnstake: '1012000000' + pendingStake: '0' + apy: '8.3' + unstakingFee: '1000000' + unstakingMin: '0' + transactions: + - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: READY + amount: '1012' + transactionType: undelegate + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr + stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf + createdDate: 2022-01-10T14:32:28.000Z + statusModifiedDate: 2022-01-10T14:32:28.000Z + status: WAITING + amount: '1012000000' + transactionType: withdraw_undelegated + delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf + amount: '1012000000' + SolWalletStakingStateAttributesExamples: + summary: Sol Wallet Staking Attributes + value: + disclaimer: + staking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 1 + stakeWarmupPeriodDesc: 3 to 6 days + rewardPercentageRate: '2' + rewardsCompounding: false + unstaking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + unStakeCooldownPeriodDesc: 3 to 6 days + permission: + staking: + enabled: false + disabledReason: Wallet 62fba335ff37ad00079d56a8b4fd3ebe has insufficient funds + allowClientToUseOwnValidator: false + unstaking: + enabled: false + disabledReason: Wallet 62fba335ff37ad00079d56a8b4fd3ebe doesn't have active delegation + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 1 + spendable: + staking: + fee: '10000' + max: '0' + min: '2282880' + netMax: '0' + netMin: '2292880' + isStakingDurationNeeded: false + minStakeMore: '0' + unstaking: + fee: '10000' + max: '0' + min: '0' + multipleDelegations: false + StakeableCoinsResultExample: + summary: Stakeable Coins Result Example + value: + coins: + - symbol: tmatic + baseUnit: wei + isToken: true + isMultiSig: true + isTss: false + l1Chain: gteth + - symbol: gteth + baseUnit: wei + isToken: false + isMultiSig: true + isTss: false + page: 1 + totalPages: 1 + totalElements: 2 + StakingClaimEventExample: + value: + - type: STAKING + subtype: CLAIM + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '30000000000000000000' + stakedDelta: '0' + totalStaked: '0' + rewardsBalance: '0' + apy: '8.2' + address: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + validatorAddress: '' + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: a28e44259cf048638a293e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + StakingDelegateEventExample: + value: + - type: STAKING + subtype: DELEGATE + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '-32000000000000000000' + stakedDelta: '32000000000000000000' + totalStaked: '32000000000000000000' + rewardsBalance: '0' + apy: '8.2' + address: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + stakingRequestId: a28e4425-9cf0-4863-8a29-3e7850594e39 + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: p28e44259cf048638a293e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + StakingRewardEventExample: + value: + - type: STAKING + subtype: REWARD + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '0' + stakedDelta: '50000000000000000000' + totalStaked: '32000000000000000000' + rewardsBalance: '50000000000000000000' + apy: '8.2' + address: '' + validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + uuid: q28e44259cf048638a293e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + StakingSlashEventExample: + value: + - type: STAKING + subtype: SLASH + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '0' + stakedDelta: '-4000000000000000000' + totalStaked: '32000000000000000000' + rewardsBalance: '1000000000000000000' + apy: '8.2' + address: '' + validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: s28e44259cf048638a293e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + StakingSlashEventNegativeBalanceExample: + value: + - type: STAKING + subtype: SLASH + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '0' + stakedDelta: '-3000000000000000000' + totalStaked: '32000000000000000000' + rewardsBalance: '-2000000000000000000' + apy: '8.2' + address: '' + validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: f28e4425-9cf0-4863-8a29-3e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + StakingUndelegateEventExample: + value: + - type: STAKING + subtype: UNDELEGATE + timeEventOccurred: 2022-01-10T14:32:28.000Z + timeEventSent: 2022-01-10T15:32:28.000Z + source: staking-service + asset: eth + unit: wei + amountDelta: '0' + stakedDelta: '-30000000000000000000' + totalStaked: '0' + rewardsBalance: '0' + apy: '8.2' + address: '' + validatorAddress: '0x71C7656EC7ab88b098defB751B7401B5f6d8976F' + delegationId: 4c8b80da-8d26-4481-83fe-5ea7f4744f2e + txRequestId: c22769a4-731a-411e-a7fc-4a0ab87f6d5b + walletId: 48dd72485007a239fb00282ed480da1f + idempotencyKey: v28e44259cf048638a293e7850594e39 + txid: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + SuiStakingPartneredValidatorsResultsExample: + summary: SUI Staking Partnered Validators Results Example value: - touchpoints: - - id: 0441ea9f-cd66-4d60-a52a-471aecd3e54e - name: wallet.segregated.transfer - status: ACTIVE - label: Transfer from a Segregated Wallet - description: When transferring from a BitGo Segregated Wallet - adminOnly: false page: 1 totalPages: 1 totalElements: 1 + validators: + delegationAddress: '0x22b35a7481fb136e5585c43421cf8ab49d0e219e902dedc40c2778acdcc7bc9c' + type: FIGMENT + totalStaked: '100000000' + reward: '300000000' + apy: '9.999' + commission: '0.999' + coin: tsui TouchpointConditionsExample: summary: Touchpoint Conditions description: A successful response with 5 Touchpoint Conditions. @@ -53514,1975 +29775,25714 @@ components: - value: '>=' label: Greater than or equal to description: The transfer amount must be greater than or equal to the given limit for the condition to trigger - - value: < - label: Less than - description: The transfer amount must be less than the given limit for the condition to trigger - - value: <= - label: Less than or equal to - description: The transfer amount must be less than or equal to the given limit for the condition to trigger - - name: amount - label: The amount to compare to - description: The transfer amount will be compared with this limit - type: NON_NEGATIVE_NUMBER - required: ALWAYS - allowMultiple: false - values: [] - - name: coin - label: Currency - description: This condition only applies to transfers of this currency (USD applies to all transfers) - type: COIN_OR_USD - required: ALWAYS - allowMultiple: false - values: [] - EvaluationExample: - summary: Evaluation - description: A successful evaluation response. - value: - id: 7b0e0c89-180a-47d1-a855-586f480def21 - idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 - scope: wallet.segregated - touchpoint: wallet.segregated.transfer - clientRequest: - coin: tnear - amount: '2e+23' - outputs: - - value: '2e+23' - address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 - isVerified: true - walletWhitelistedAddress: true - bitgoOrg: BitGo Trust - walletId: 649dd0d990a1fd0007e6ab1b229ffe7f - initiator: 63cf101298470200073bbae71add80d5 - requestId: 9bd3c62016761e5bca6b-0000 - coinIsFiat: false - walletType: custodial - enterpriseId: 63c86bf4555aba000652d5c59aff2866 - waiveVideoId: true - usdCentAmount: '161.16' - idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 - transactionTypes: [] - hasUnvalidatedData: false - walletWhitelistExists: true - enterpriseWhitelistExists: false - status: DENIED - evaluatedPolicyRules: - - id: 73bb6587-4f4d-44ce-b189-e8f61e96e544 - status: NOT_TRIGGERED - filteringConditionInputs: - walletType: custodial - policyRuleId: 00000000-0000-0000-0000-000000000001 - version: 1 - clauses: - - id: 5c39f31d-5c16-48a1-96ec-449b3831a2d1 - policyRuleClauseId: 00000000-0000-0000-0000-000000000001 - status: NOT_TRIGGERED - conditions: - - id: 52c4c3b6-6cc5-4826-9b28-2741bde3c97f - policyConditionId: 00000000-0000-0000-0000-000000000001 - name: transfer.destination.type - status: NOT_TRIGGERED - inputs: - coin: tnear - amount: '2e+23' - ruleId: 00000000-0000-0000-0000-000000000001 - outputs: - - value: '2e+23' - address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 - isVerified: true - walletWhitelistedAddress: true - bitgoOrg: BitGo Trust - walletId: 649dd0d990a1fd0007e6ab1b229ffe7f - initiator: 63cf101298470200073bbae71add80d5 - requestId: 9bd3c62016761e5bca6b-0000 - coinIsFiat: false - walletType: custodial - enterpriseId: 63c86bf4555aba000652d5c59aff2866 - waiveVideoId: true - usdCentAmount: '161.16' - idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 - transactionTypes: [] - hasUnvalidatedData: false - walletWhitelistExists: true - enterpriseWhitelistExists: false - parameters: - type: nonWhitelistedAddress - evaluationMetadata: {} - evaluationMessage: - messageTemplate: The destination address was whitelisted on the wallet whitelist. - variables: [] - message: The destination address was whitelisted on the wallet whitelist. - actions: - - name: approvals.always.deny - parameters: {} - - id: b9f3062d-983f-4b8f-8e95-43064da22d99 - status: TRIGGERED - filteringConditionInputs: - walletType: custodial - policyRuleId: c1437a69-b701-4783-abd2-cf0a22185323 - version: 1 - clauses: - - id: 5a4fae05-022d-4633-ac93-c33348c13311 - policyRuleClauseId: d5246645-94e4-4a2d-9a9e-8b112e7c8470 - status: TRIGGERED - conditions: - - id: 4020abef-012f-4d57-9b7b-f2e102d85dd9 - policyConditionId: fb41229b-c54f-4a80-b1e7-82b9a47dc7ef - name: trust.transfer.velocity.limit - status: TRIGGERED - inputs: - coin: tnear - amount: '2e+23' - ruleId: 9d52414e-781c-4a5f-961b-1556af08abeb - outputs: - - value: '2e+23' - address: 35baf313ddabd2904c4bf0f26153201f62d3bf3fb542893c4518214bad72c0a3 - isVerified: true - walletWhitelistedAddress: true - bitgoOrg: BitGo Trust - walletId: 649dd0d990a1fd0007e6ab1b229ffe7f - initiator: 63cf101298470200073bbae71add80d5 - requestId: 9bd3c62016761e5bca6b-0000 - coinIsFiat: false - walletType: custodial - enterpriseId: 63c86bf4555aba000652d5c59aff2866 - waiveVideoId: true - usdCentAmount: '161.16' - idempotencyKey: 744d7578-a921-47b5-8259-2fb8d04f0427 - transactionTypes: [] - hasUnvalidatedData: false - walletWhitelistExists: true - enterpriseWhitelistExists: false - parameters: - coin: tnear - scope: wallet - amount: '1000000000000000000000000' - timeWindow: 15 - evaluationMetadata: - spending: '1100000000000000000000000' - evaluationMessage: - messageTemplate: The velocity calculation reached {spendingAmount} with this transaction, exceeding the wallet limit of {limitAmount} over {timeWindow}. - variables: - - name: spendingAmount - value: '1100000000000000000000000' - coin: tnear - type: COIN_AMOUNT - - name: limitAmount - value: '1000000000000000000000000' - coin: tnear - type: COIN_AMOUNT - - name: timeWindow - value: '15' - unit: seconds - type: TIME_DURATION - message: The velocity calculation reached 1100000000000000000000000 tnear with this transaction, exceeding the wallet limit of 1000000000000000000000000 tnear over 15 seconds. - actions: - - name: approvals.customer.walletAdmin - parameters: - minRequired: '1' - actions: - - id: 31a68c61-f98b-49cc-9e4d-b9f5bfbf618c - status: CANCELLED - action: - name: approvals.customer.walletAdmin - parameters: - minRequired: '1' - resolution: - reason: Rejected by user - pendingApproval: 664ed267aad92c62a183ac5f28883495 - - id: aa371c4c-6adc-4039-ba88-5f9a3e807ca3 - status: CANCELLED - action: - name: approvals.bitgo.custodialSigning - parameters: {} - resolution: - reason: Rejected by user - pendingApproval: 664ed267aad92c62a183ac5f28883495 - resolutionOrder: - - actions: - - 31a68c61-f98b-49cc-9e4d-b9f5bfbf618c - - actions: - - aa371c4c-6adc-4039-ba88-5f9a3e807ca3 - createdDate: '2024-05-23T05:21:41.805829Z' - ActionsExample: - summary: Touchpoint Actions - description: A successful response with 3 Touchpoint Actions. - value: - actions: - - name: approvals.always.deny - label: Deny - description: Automatically reject - status: ACTIVE - adminOnly: false - parameters: [] - - name: approvals.customer.walletAdmin - label: Wallet Admin - description: Require approval from wallet admins - status: ACTIVE - adminOnly: false - parameters: - - name: minRequired - label: Approvals Required - description: Minimum required number of approvers - type: NON_NEGATIVE_NUMBER - required: OPTIONAL - allowMultiple: false - values: [] - - name: approvals.customer.finalApproval - label: Require final approval from wallet users - description: Require final approval from wallet users - status: ACTIVE - adminOnly: false - parameters: - - name: userIds - label: Users - description: List of users for final approval - type: BITGO_ID - required: ONE_OR_MORE - allowMultiple: true - values: [] - PolicyRuleExample: - summary: A policy rule - description: A successful policy rule details response. - value: - uniqueId: c3ff569e-e30a-4405-8b76-38de240c724a - id: 4fa8326b-4f5f-4065-8cfc-85a08c290c49 - name: Get approval if transferring more than 2 BTC in a minute - status: ACTIVE - version: 1 - adminOnly: false - touchpointLabel: Transfer from a Segregated Wallet - scopeLabel: Wallet - clauses: - - actions: - - name: approvals.customer.walletAdmin - parameters: {} - conditions: - - name: transfer.velocity.limit - parameters: - amount: '2000000' - timeWindow: '60' - coin: btc - filteringConditions: - - parameters: - walletId: - - 643f146bb13653000765c478a384a656 - name: wallet.ids - locked: true - lockType: PERMANENT - enterpriseId: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - lastTriggeredDate: '2023-11-13T14:49:48.830522Z' - lastTriggeredEvaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 - createdBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - modifiedBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - evaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 - InactivePolicyRuleExample: - summary: An 'INACTIVE' policy rule - value: - uniqueId: c5a818c7-1831-4fe2-8363-d469378bb106 - id: 4fa8326b-4f5f-4065-8cfc-85a08c290c49 - name: Get approval if transferring more than 2 BTC in a minute - status: INACTIVE - version: 1 - adminOnly: false - touchpointLabel: Transfer from a Segregated Wallet - scopeLabel: Wallet - clauses: - - actions: - - name: approvals.customer.walletAdmin - parameters: {} - conditions: - - name: transfer.velocity.limit - parameters: - amount: '2000000' - timeWindow: '60' - coin: btc - filteringConditions: - - parameters: - walletId: - - 643f146bb13653000765c478a384a656 - name: wallet.ids - locked: true - lockType: LOCK_AFTER_DATE - lockDate: '2023-11-13T14:49:48.830522Z' - enterpriseId: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - lastTriggeredDate: '2023-11-13T14:49:48.830522Z' - lastTriggeredEvaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 - createdBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - modifiedBy: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 - evaluationId: 306258df-dcab-489e-a9fe-ff28ce9fa312 - CreatePolicyRuleExample: - summary: A create policy rule request - value: - name: Get approval if transferring more than 2 BTC in a minute - adminOnly: false - clauses: - - conditions: - - name: transfer.velocity.limit - parameters: - amount: '2000000' - timeWindow: '60' - coin: btc - actions: - - name: approvals.customer.walletAdmin - parameters: {} - filteringConditions: - - name: wallet.ids - parameters: - walletId: - - 643f146bb13653000765c478a384a656 - lockType: LOCK_AFTER_DATE - lockDate: '2023-11-13T14:49:48.830522Z' - EthStakingRequestPOSTBodyExample: - summary: Ethereum Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '64000000000000000000' - gasPrice: '1000000000000000' - type: STAKE - MaticStakingRequestPOSTBodyExample: - summary: Matic Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10000000000000000000' - gasPrice: '50000000000000' - type: STAKE - MaticUnstakingRequestPOSTBodyExample: - summary: Matic UnStaking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '2000000000000000000' - gasPrice: '50000000000000' - type: UNSTAKE - NearStakingRequestPOSTBodyExample: - summary: Near Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '12000000000000000000' - type: STAKE - AvaxPStakingRequestPOSTBodyExample: - summary: AvaxP Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1000' - type: STAKE - durationSeconds: 604800 - SolStakingRequestPOSTBodyExample: - summary: Sol Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1000' - type: STAKE - DotStakingRequestPOSTBodyExample: - summary: Dot Staking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10000000000' - type: STAKE - NearUnStakingRequestPOSTBodyExample: - summary: Near UnStaking Request POST Body Example - value: - clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '12000000000000000000' - type: UNSTAKE - SolUnStakingRequestPOSTBodyExample: - summary: Sol UnStaking Request POST Body Example - value: - clientId: d055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - type: UNSTAKE - DotUnStakingRequestPOSTBodyExample: - summary: Dot UnStaking Request POST Body Example - value: - clientId: d055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - type: UNSTAKE - amount: '10000000000' - EthStakingRequestWithoutDelegationsExample: - summary: Ethereum Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - type: STAKE - coin: eth - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - EthStakingResultsExample: - summary: Ethereum Staking Request Results Example - value: - page: 1 - totalPages: 1 - totalElements: 1 - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - type: STAKE - coin: eth - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '100000000000000' - unstakingMin: '0' - - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '1000000000000000' - unstakingMin: '0' - transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - EthStakingRequestsListResponseExample: - summary: Ethereum Staking Request List Response Example + - value: < + label: Less than + description: The transfer amount must be less than the given limit for the condition to trigger + - value: <= + label: Less than or equal to + description: The transfer amount must be less than or equal to the given limit for the condition to trigger + - name: amount + label: The amount to compare to + description: The transfer amount will be compared with this limit + type: NON_NEGATIVE_NUMBER + required: ALWAYS + allowMultiple: false + values: [] + - name: coin + label: Currency + description: This condition only applies to transfers of this currency (USD applies to all transfers) + type: COIN_OR_USD + required: ALWAYS + allowMultiple: false + values: [] + WalletStakingStateAttributesExamples: + summary: Wallet Staking Attributes value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - type: STAKE - coin: eth - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: 8.3 - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '100000000000000' - unstakingMin: '0' - - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '1000000000000000' - unstakingMin: '0' + disclaimer: + staking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 1 + stakeWarmupPeriodDesc: 3 to 6 days + rewardPercentageRate: '2' + rewardsCompounding: false + unstaking: + info: + - | + 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' + transactionsNeeded: 2 + unStakeCooldownPeriodDesc: 3 to 6 days + permission: + staking: + enabled: true + allowClientToUseOwnValidator: false + unstaking: + enabled: false + disabledReason: Wallet 62f502fbd19a040007cae8d3fa0e6660 doesn't have active delegation + wallet: + hasEnoughAdmins: true + numberOfRequiredAdmins: 1 + spendable: + staking: + fee: '10000' + max: '997547864' + min: '2282880' + netMax: '997537864' + netMin: '2292880' + isStakingDurationNeeded: false + minStakeMore: '0' + unstaking: + fee: '10000' + max: '0' + min: '0' + multipleDelegations: false + headers: {} + links: {} + parameters: + Base: + name: base + in: query + required: true + description: The asset or currency to compare to the quote asset or currency (case insensitive). + example: btc + schema: + type: string + CreatedDateGte: + name: createdDateGte + in: query + description: | + The date and time of the earliest policy rule creation to return. The date and time must be in ISO 8601 format. + schema: + type: string + format: date-time + example: '2023-11-13T14:49:48.830522Z' + CreatedDateLte: + name: createdDateLte + in: query + description: | + The date and time of the latest policy rule creation to return. The date and time must be in ISO 8601 format. + schema: + type: string + format: date-time + example: '2023-11-13T14:49:48.830522Z' + End: + name: end + in: query + required: false + description: End time for the pricing data range. If not provided, defaults to the current time. + schema: + type: string + format: date-time + example: '2019-05-02T15:27:35.773Z' + Enterprise: + name: enterpriseId + in: path + description: Your Enterprise Id. + required: true + schema: + type: string + example: 63c86bf4555aba000652d5c59aff2866 + EvaluationId: + name: evaluationId + in: query + description: The id of the Evaluation. + required: false + schema: + type: string + example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 + EvaluationStatus: + name: evaluationStatus + in: query + description: Status of the Evaluation + required: false + schema: + type: string + enum: + - TRIGGERED + - NOT_TRIGGERED + example: TRIGGERED + FilteringConditionName: + name: filteringCondition + in: path + description: The name of the Filtering condition to be used when creating or updating a policy rule. Not all Touchpoint Actions are compatible with all Filtering Conditions. + required: true + schema: + type: string + example: wallet.all + FilteringConditionParameterNameAndValue: + name: filteringConditionParameterName + in: query + description: | + You can retrieve the policy rules that match a given set of Filtering Conditions by providing the + parameter name and value of the Filtering Conditions you are interested in. See also Filtering Conditions. + In addition, you could add Dynamic parameter for filtering rules based on specific criteria. + Format:
..parameters.= + -
: (Required) The table name. Valid values are filteringCondition, action, or condition. + - : (Optional) The name of the property. + - parameters: (Fixed) Indicates parameters section. + - : (Required) The key in the table's parameters column to search against. + - : (Optional) Comma-separated list of values to match. + required: false + schema: + type: string + example: | + walletType=custodial + filteringCondition.wallet.ids.parameters.walletId=testWalletId1,testWalletId2 + filteringCondition.wallet.type.parameters.walletType=hot,cold + filteringCondition.wallet.all.parameters + condition.transfer.amount.parameters.ruleId=ruleCondition1 + condition.parameters.number=1 + condition.parameters.userIds=user1,user2 + action.approvals.always.deny.parameters.actionId=ruleAction1 + action.parameters.bool=true + action.parameters.userIds=user1,user2 + Interval: + name: interval + in: query + required: true + description: Unit of time. + example: hour + schema: + type: string + enum: + - minute + - hour + - day + Limit: + name: limit + in: query + description: | + How many policy rules to return per page of results. Default: 20, Maximum: 100. + required: false + schema: + type: integer + example: 20 + PolicyRuleId: + name: id + in: path + description: Id of the policy rule. + required: true + schema: + type: string + example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 + PolicyRuleIdQuery: + name: id + in: query + description: Id of the policy rule. + required: false + schema: + type: string + example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 + PolicyRuleName: + name: name + in: query + description: | + A string to match the names of the policy rules against. + required: false + schema: + type: string + example: My policy rule + PolicyRuleStatus: + name: status + in: query + description: Statuses of the returned policy rules, one or more may be provided. + required: false + schema: + type: string + enum: + - ACTIVE + - INACTIVE + - DENIED + - PENDING_APPROVAL + PolicyRuleVersion: + name: version + in: query + description: Version of the policy rule to return. + required: false + schema: + type: number + example: 3 + PrevId: + name: prevId + in: query + description: The nextBatchPrevId returned by the last call to the same API. Used to retrieve the next page of results. + required: false + schema: + type: integer + example: 1 + Quote: + name: quote + in: query + required: true + description: The asset or currency to compare to the base asset or currency (case insensitive). + example: eth + schema: + type: string + ScopeName: + name: scopes + in: query + description: | + scopes of the returned policy rules. One or more may be provided. For example, the All Wallets scope. + See also the List scopes API. + required: false + schema: + type: string + enum: + - wallet.segregated + - policies.management + example: wallet.segregated + Start: + name: start + in: query + required: false + description: Start time for the pricing data range. If not provided, defaults to 1 interval before to the current time. + schema: + type: string + format: date-time + example: '2019-05-02T15:27:35.773Z' + TouchpointId: + name: touchpointId + in: path + description: The id of a Touchpoint. + required: true + schema: + type: string + example: 0441ea9f-cd66-4d60-a52a-471aecd3e54e + TouchpointName: + name: touchpointName + in: path + description: The name of the Touchpoint. + required: true + schema: + type: string + example: wallet.segregated.transfer + Touchpoints: + name: touchpoints + in: query + description: The Touchpoints of the returned policy rules. One or more may be provided. For example, the Transfer from a Wallet Touchpoint. See also the List scope Touchpoints API. + required: false + schema: + type: string + example: wallet.segregated.transfer + address: + name: address + in: query + description: Filter by address string + schema: + $ref: '#/components/schemas/AddressString3' + allTokens: + name: allTokens + schema: + type: boolean + in: query + example: true + description: Include data for all subtokens (i.e. ERC20 Tokens, Stellar Tokens) + coin: + name: coin + in: query + description: Filter by coin + schema: + $ref: '#/components/schemas/Coin' + coin1: + name: coin + in: query + description: Filter by coin. + schema: + title: Coin + description: A cryptocurrency or token ticker symbol. + type: string + example: eth + coinArray: + name: coin + in: query + description: Filter by coin + schema: + type: array + items: + $ref: '#/components/schemas/Coin' + coinSingleOrList: + name: coin + in: query + description: Filter by coin(s) + schema: + type: array + items: + $ref: '#/components/schemas/Coin' + dateGte: + name: dateGte + in: query + description: Return transfers with a 'date' that is greater than or equal to the given timestamp + schema: + type: string + format: date-time + dateLt: + name: dateLt + in: query + description: Return transfers with a 'date' that is less than the given timestamp + schema: + type: string + format: date-time + destinationTag: + name: destinationTag + required: false + in: query + schema: + type: string + description: | + Required when sending to a BitGo wallet. + enforceMinConfirmsForChange: + name: enforceMinConfirmsForChange + in: query + description: Enforces 'minConfirms' on change inputs + schema: + type: boolean + enterprise: + name: enterprise + in: query + description: Filter by enterprise + schema: + $ref: '#/components/schemas/Id' + enterpriseId: + name: enterpriseId + in: query + description: Filter by enterprise + schema: + $ref: '#/components/schemas/Id' + excludeSpendableBalance: + name: excludeSpendableBalance + schema: + type: boolean + in: query + example: true + description: | + Skip spendable balance calculations and only include confirmed balances. If absent, defaults to false. + expandAddressLabels: + name: expandAddressLabels + description: | + If true, adds 'addressLabels' to each returned pending approval associated with recipient's addresses + in: query + schema: + type: boolean + feeRate: + name: feeRate + in: query + schema: + type: integer + minimum: 0 + height: + name: height + in: query + description: The block or ledger height + schema: + $ref: '#/components/schemas/IntegerString' + limit: + name: limit + in: query + schema: + type: integer + minimum: 1 + maximum: 500 + default: 25 + description: Maximum number of results to return. If the result set is truncated, use the 'nextBatchPrevId' value to get the next batch. + maxFeeRate: + name: maxFeeRate + in: query + schema: + type: integer + minimum: 0 + maxValue: + name: maxValue + in: query + description: Maximum value of each unspent in base units (e.g. satoshis). For doge, only string is allowed. + schema: + $ref: '#/components/schemas/IntegerOrIntegerString' + minConfirms: + name: minConfirms + in: query + description: Minimum number of confirmations for the collected inputs. Only applies to external unspents. Use 'enforceMinConfirmsForChange' to filter change as well. + schema: + type: integer + minimum: 0 + minHeight: + name: minHeight + in: query + description: Minimum block height of the unspents + schema: + type: number + minimum: 0 + minValue: + name: minValue + in: query + description: Minimum value of each unspent in base units (e.g. satoshis). For doge, only string is allowed. + schema: + $ref: '#/components/schemas/IntegerOrIntegerString' + numBlocks: + name: numBlocks + in: query + schema: + type: integer + default: 2 + minimum: 1 + maximum: 1000 + description: | + (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. + + Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. + organizationId: + name: organizationId + in: query + description: Filter by organization + schema: + $ref: '#/components/schemas/Id' + pathAddress: + name: address + in: path + required: true + schema: + $ref: '#/components/schemas/AddressString3' + pathAlgorand: + name: coin + in: path + required: true + schema: + $ref: '#/components/schemas/ConsolidationCoins' + pathApprovalId: + name: approvalId + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathBankAccountId: + name: bankAccountId + in: path + required: true + schema: + $ref: '#/components/schemas/BankAccountId' + pathBitcoin: + name: coin + in: path + required: true + schema: + $ref: '#/components/schemas/Bitcoin' + pathCoin: + name: coin + in: path + required: true + schema: + $ref: '#/components/schemas/Coin' + pathCoin1: + name: coin + in: path + description: The staking asset. + required: true + schema: + type: string + oneOf: + - type: string + enum: + - AVAXP + - DOT + - ETH + - MATIC + - NEAR + - SOL + - type: string + pathEnterpriseId: + name: enterpriseId + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathId: + name: id + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathLightningCoin: + name: coin + in: path + required: true + schema: + $ref: '#/components/schemas/LightningCoin' + pathSequenceId: + name: sequenceId + in: path + required: true + schema: + type: string + description: | + A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. + pathShareId: + name: shareId + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathTransferId: + name: transferId + in: path + required: true + description: a transfer or transaction id + example: f5d8ee39a430901c91a5917b9f2dc19d6d1a0e9cea205b009ca73dd04470b9a5 or 585951a5df8380e0e3063e9f12345678 + schema: + oneOf: + - $ref: '#/components/schemas/Id' + - $ref: '#/components/schemas/TxId' + pathUserId: + name: userId + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathWalletId: + name: walletId + in: path + required: true + schema: + $ref: '#/components/schemas/Id' + pathWalletId1: + name: walletId + in: path + description: The wallet ID. + required: true + schema: + $ref: '#/components/schemas/WalletId' + pathWebhookId: + name: webhookId + required: true + in: path + schema: + $ref: '#/components/schemas/Id' + prevId: + in: query + name: prevId + schema: + $ref: '#/components/schemas/Id' + description: Return the next batch of results, based on the 'nextBatchPrevId' value from the previous batch. + queryCoin: + name: coin + in: query + description: The staking asset. + required: false + schema: + type: string + oneOf: + - type: string + enum: + - AVAXP + - DOT + - ETH + - MATIC + - NEAR + - SOL + - type: string + queryFederationQ: + name: q + in: query + required: true + example: test*bitgo.com + schema: + type: string + queryFederationType: + name: type + in: query + required: true + example: name + schema: + type: string + enum: + - name + - id + queryLabel: + name: label + in: query + description: The label of the wallet where the staking request was created. + required: false + schema: + type: string + queryPage: + name: page + in: query + description: The page number for pagination. + required: false + schema: + type: integer + default: 1 + minimum: 1 + queryPageSize: + name: pageSize + in: query + description: The page size for pagination. + required: false + schema: + type: integer + default: 20 + minimum: 1 + maximum: 100 + querySortByCreatedDate: + name: sortBy + in: query + description: Sort By field + required: false + schema: + type: string + default: '-createdDate' + enum: + - '-createdDate' + - createdDate + querySortByDate: + name: sortBy + in: query + description: Sort By field + required: false + schema: + type: string + default: '-date' + enum: + - '-date' + - date + reverse: + name: reverse + in: query + description: True, if returning results in reverse order. + schema: + type: boolean + scope: + name: scopeId + in: path + description: The id of the scope. + required: true + schema: + type: string + example: c8234a0f-7722-44d7-bedc-bfded7bd24a7 + searchLabelWallets: + name: searchLabel + in: query + example: My very first wallet + description: Query for 'Wallets' with a label containing this string + schema: + type: string + segwit: + name: segwit + in: query + description: DEPRECATED. Mutually exclusive with 'chains'. Returns only 'p2shP2wsh' unspents/addresses on true. Returns only 'p2sh' unspents/addresses on false. Equivalent to passing 10 and 11 as the only value in 'chains' on true, 0 and 1 on false. + schema: + type: boolean + showAllWallets: + name: showAllWallets + description: Include wallets that have 'deleted' or 'creationFailed' set to **true** + in: query + schema: + type: boolean + sortBy: + name: sortBy + in: query + description: Customize sort order for the transfers by specifying the sort key. + schema: + type: string + enum: + - heightId + - id + state: + name: state + description: | + The status of the transfer. + • 'confirmed' indicates the transaction is confirmed on chain. + • 'failed' indicates the transaction failed. 'initialized' is the first state of a transaction and indicates the transaction is initialized. + • 'pendingApproval' indicates the transaction is initialized and pending approval. + • 'rejected' indicates the transaction was rejected by an approver. + • 'removed' indicates the transaction was reorganized from the mempool (it's still possible recieve confirmation in another block). + • 'replaced' indicates the transaction was replaced with a new transaction with higher fees. + • 'signed' indicates the transaction is signed and pending on-chain confirmation. + • 'unconfirmed' indicates the transaction is pending on-chain confirmation. + in: query + schema: + type: array + items: + $ref: '#/components/schemas/TransferState' + transactionIdx: + name: transactionIdx + in: path + required: true + schema: + type: string + txRequestSortDirection: + name: sortDirection + in: query + description: Sorts order by field in specified sort direction, default ascending. + schema: + type: string + enum: + - ASC + - DESC + type: + name: type + in: query + description: Filter on sending or receiving 'Transfers' + schema: + type: string + enum: + - send + - receive + unspentIds: + name: unspentIds + in: query + schema: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/UnspentId' + valueGte: + name: valueGte + in: query + description: Return transfers with a 'value' that is greater than or equal to the given number + schema: + type: integer + valueLt: + name: valueLt + in: query + description: Return transfers with a 'value' that is less than the given number + schema: + type: integer + walletId: + name: walletId + description: Filter by wallet + in: query + schema: + $ref: '#/components/schemas/Id' + requestBodies: {} + responses: + BadRequest: + description: Bad Request + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/GeneralError' + - $ref: '#/components/schemas/ValidationError' + example: + code: BadRequest + message: Bad Request + status: 400 + Forbidden: + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: AccessDenied + message: License not added for enterprise + status: 403 + Forbidden1: + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: AccessDenied + message: Access is denied + status: 403 + NotFound: + description: The specified resource was not found + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: NotFound + message: Touchpoint not found + status: 404 + NotFound1: + description: Not Found + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: NotFound + message: The specified resource was not found + status: 404 + ServerError: + description: Server Error - Transient error please try again + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: Internal_Server_Error + message: Database is down + status: 500 + ServerError1: + description: Internal Server Error + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: InternalServerError + message: An unexpected error occurred + status: 500 + Unauthorized: + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralError' + example: + code: Unauthorized + message: Unauthorized + status: 401 + schemas: + AccelerationIntent: + title: AccelerationIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - acceleration + txid: + type: string + required: + - intentType + - txid + - $ref: '#/components/schemas/BaseIntent' + AccessTokenResponse: + title: AccessTokenResponse + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + isExtensible: + type: boolean + bitgoAdminPermissions: + type: array + items: + type: string + client: + type: string + created: + type: string + format: date-time + title: ISO Date String + enterprise: + type: string + expires: + type: string + format: date-time + title: ISO Date String + extensionAddress: + type: string + ip: + type: string + description: IP address of the client that requested this access token + example: 127.0.0.1 + format: ipv4 + ipRestrict: + type: array + items: + type: string + description: IP addresses of clients that are allowed to use this token + label: + type: string + origin: + type: string + description: BitGo environment that issued this token + example: test.bitgo.com + token: + type: string + scope: + type: array + example: + - crypto_compare + - user_manage + - openid + - profile + - wallet_create + - wallet_manage_all + - wallet_approve_all + - wallet_spend_all + - wallet_edit_all + - wallet_view_all + items: + type: string + description: Session permissions + unlock: + allOf: + - type: object + properties: + spendingLimits: + type: object + additionalProperties: + type: object + properties: + txCount: + type: number + description: The transaction count limit for the coin + txValue: + type: number + description: The transaction value limit for the coin + txValueLimit: + type: number + description: The maximum transaction value limit for the coin + allErc20TokensLimit: + $ref: '#/components/schemas/AllErc20TokenLimit' + - $ref: '#/components/schemas/Unlock' + user: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + oauth: + type: object + properties: + oauthRequired: + type: boolean + expires: + type: string + format: date-time + title: ISO Date String + required: + - id + - isExtensible + Account1: + required: + - id + - name + type: object + properties: + id: + type: string + format: uuid + name: + type: string + example: + id: f230fdebfa084ffebc7e00515f54603f + name: Uncle MoneyPenny's Trading Wallet + AccountBalance: + required: + - currency + - balance + - heldBalance + - tradableBalance + - withdrawableBalance + type: object + properties: + currency: + type: string + description: Currency symbol + balance: + type: string + format: decimal + description: The total balance in the account + heldBalance: + type: string + format: decimal + description: The total balance reserved for some purpose, e.g. a pending withdrawal + tradableBalance: + type: string + format: decimal + description: The total balance available for trading + withdrawableBalance: + type: string + format: decimal + description: The total balance available for withdrawal + example: + currencyId: 6016e0a9-545a-45fb-8370-caab1680956a + currency: BTC + balance: '100.0' + heldBalance: '10.0' + tradableBalance: '90.0' + AccountBalanceRecord: + title: AccountBalanceRecord + type: object + additionalProperties: + type: object + properties: + available: + type: string + held: + type: string + required: + - available + - held + AccountBalances: + type: array + items: + $ref: '#/components/schemas/AccountBalance' + AccountBaseBuildOptions: + title: AccountBaseBuildOptions + type: object + properties: + nonce: + oneOf: + - type: string + - type: number + AccountBaseBuildOptions2: + type: object + properties: + nonce: + type: string + AccountBaseConsolidateIntent: + title: AccountBaseConsolidateIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - consolidate + receiveAddress: + type: string + senderAddressIndex: + $ref: '#/components/schemas/optionalNumber' + consolidateId: + $ref: '#/components/schemas/optionalString' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + keepAlive: + $ref: '#/components/schemas/optionalBoolean' + required: + - intentType + - receiveAddress + - $ref: '#/components/schemas/AccountBaseBuildOptions' + AccountBaseCreateAccountIntent: + title: AccountBaseCreateAccountIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - createAccount + name: + $ref: '#/components/schemas/optionalString' + required: + - intentType + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/AccountBaseBuildOptions' + AccountType: + title: AccountType + type: string + enum: + - individual + - entity + Accounts: + type: array + items: + $ref: '#/components/schemas/Account1' + ActionType: + title: ActionType + type: string + enum: + - deny + - getApproval + - getEnterpriseUserApproval + - getAnyApproval + - getGroupApproval + - getFinalApproval + - getVideoApproval + - getIdVerification + - verifyWalletRebalance + - getCustodianApproval + - getCustodialSignature + - noop + - triggerWebhookNotification + - performLivenessVerification + - recommendBackingWalletRouting + - getManualTrustReview + Actions: + type: object + description: | + Wrapper object for a list of Actions. Not paginated. + required: + - actions + properties: + actions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/AlwaysDenyAction' + - $ref: '#/components/schemas/WalletAdminAction' + - $ref: '#/components/schemas/FinalApprovalAction' + - $ref: '#/components/schemas/EnterpriseAdminAction' + - $ref: '#/components/schemas/EnterpriseUserAction' + ActiveDateRange: + title: ActiveDateRange + type: object + properties: + startDate: + oneOf: + - type: string + format: date-time + title: ISO Date String + - type: string + format: date + title: Date String + description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the start date of a new auditable item. If not present, will use the current date to create a new auditable item. Start date is inclusive, i.e. we will start billing/functionality at this instant and afterwards. + startReason: + type: string + description: An optional note describing the reason the auditable item was added/created. + id: + type: string + description: Unique identifier for the date range. + endDate: + nullable: true + oneOf: + - type: string + format: date-time + title: ISO Date String + - type: string + format: date + title: Date String + description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the end date of a new auditable item. If not present, we will set the endDate to null, and we will assume an indefinite range. endDate is exclusive, i.e. we will end billing/functionality up to but not at this particular time. + endReason: + type: string + description: An optional note describing the reason the auditable item was ended. + required: + - startDate + - startReason + AdaConsolidateIntent: + title: ADA Consolidate Intent + allOf: + - type: object + properties: + unspents: + $ref: '#/components/schemas/optionalStringArray' + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + AdaPaymentIntent: + title: ADA Payment Intent + allOf: + - type: object + properties: + unspents: + $ref: '#/components/schemas/optionalStringArray' + required: + - unspents + - $ref: '#/components/schemas/PaymentIntent' + AdaStakeClaimRewardsIntent: + title: ADA Stake Claim Rewards Intent + allOf: + - $ref: '#/components/schemas/StakeClaimRewardsIntent' + AdaStakeIntent: + title: ADA Stake Intent + allOf: + - type: object + properties: + poolKeyHash: + type: string + dRepId: + type: string + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + required: + - poolKeyHash + - dRepId + - $ref: '#/components/schemas/StakeIntent' + AdaStakeIntent1: + title: Ada Stake + allOf: + - $ref: '#/components/schemas/StakeIntent2' + - type: object + properties: + poolKeyHash: + type: string + description: | + The pool key hash to which the coins will be delegated to. + required: + - poolKeyHash + AdaUnstakeIntent: + title: ADA Unstake Intent + allOf: + - type: object + properties: + poolKeyHash: + type: string + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + required: + - poolKeyHash + - $ref: '#/components/schemas/UnstakeIntent' + AdaVoteDelegationIntent: + title: ADA Vote Delegation Intent + allOf: + - type: object + properties: + dRepId: + type: string + required: + - dRepId + - $ref: '#/components/schemas/VoteDelegationIntent' + AdaWallet: + title: Ada Wallet + type: object + properties: + rootAddress: + type: string + addressCount: + type: string + pendingChainInitialization: + type: boolean + rewardAddress: + type: string + lastChainIndex: + type: object + additionalProperties: + type: number + required: + - rootAddress + - addressCount + - pendingChainInitialization + - rewardAddress + AdditionalEnterpriseInfo: + title: AdditionalEnterpriseInfo + type: object + properties: + contact: + $ref: '#/components/schemas/GeographicAddress' + Address: + title: Address + type: object + properties: + address: + $ref: '#/components/schemas/optionalString' + option: + $ref: '#/components/schemas/optionalUnknownObject' + Address1: + title: Address + type: object + properties: + address: + $ref: '#/components/schemas/optionalString' + option: + $ref: '#/components/schemas/optionalUnknownObject' + Address2: + type: object + properties: + id: + allOf: + - $ref: '#/components/schemas/Id' + description: platform public id for an address + address: + $ref: '#/components/schemas/AddressString3' + chain: + $ref: '#/components/schemas/Chain' + index: + type: integer + coin: + type: string + lastNonce: + type: integer + default: -1 + wallet: + allOf: + - $ref: '#/components/schemas/Id' + description: The wallet which contains this address + coinSpecific: + type: object + description: Properties which are specific to certain coin types + properties: + xlm: + $ref: '#/components/schemas/AddressCoinSpecificXlm' + txlm: + $ref: '#/components/schemas/AddressCoinSpecificXlm' + balance: + allOf: + - type: object + - $ref: '#/components/schemas/AddressBalance' + description: Balance of the address. In case of Eth and Celo, if returnBalancesForToken is passed with includeBalances, then it will return token balance in the address object. This field will be present only when 'includeBalances' query param is passed as true. + label: + $ref: '#/components/schemas/AddressLabel' + addressType: + $ref: '#/components/schemas/AddressType' + AddressBalance: + type: object + properties: + updated: + type: string + description: The last time a transaction affected the balance of this address + format: date-time + balance: + type: integer + description: The cleared balance of the address + example: 50000 + balanceString: + type: string + description: String representation of 'balance'. Guaranteed to not lose precision. + example: '50000' + totalReceived: + type: integer + description: The total amount received on this address (in the chain's base unit) + totalSent: + type: integer + description: The total amount send from this address (in the chain's base unit) + confirmedBalanceString: + type: string + description: | + The total balance of confirmed transactions for the address (in the chain's base unit). + Guaranteed to not lose precision. + example: '40000' + spendableBalanceString: + type: string + description: | + The total balance of the address (in the chain's base unit) which may + be used as inputs for creating new transactions in string representation. + Guaranteed to not lose precision. + example: '40000' + AddressChain: + title: AddressChain + type: number + enum: + - 0 + - 1 + - 10 + - 11 + - 20 + - 21 + - 30 + - 31 + - 40 + - 41 + AddressCoinSpecificXlm: + type: object + properties: + memoId: + allOf: + - $ref: '#/components/schemas/IntegerString' + - example: '1' + description: Latest memo id generated for the wallet + rootAddress: + type: string + description: Root address of the wallet + example: GCTTCPH4IIDK7P72FFAEJ3ZFN6WDHJH6GGMRPHPM56ZWGIQ7B3XTIJAM + AddressLabel: + type: string + nullable: true + example: Bob's Hot Wallet Address + maxLength: 250 + description: A human-readable label for the address. + AddressLabelString: + title: AddressLabelString + type: string + description: A human-readable label for the address + example: Bob's Hot Wallet Address + maxLength: 250 + AddressListCondition: + title: AddressListCondition + type: object + properties: + addresses: + type: array + items: + type: string + metaData: + type: object + additionalProperties: + type: object + additionalProperties: {} + required: + - addresses + - metaData + AddressListRuleUpdateCondition: + title: AddressListRuleUpdateCondition + type: object + properties: + add: + type: string + remove: + type: string + metaData: + type: object + additionalProperties: + type: object + additionalProperties: {} + AddressProofResult: + title: AddressProofResult + type: object + description: Proof of address ownership + properties: + iou: + type: boolean + description: True if this is an IOU + address: + type: string + description: The address + signature: + type: string + description: The proof signature + prefix: + type: string + description: A 64-character random string used to generate the proof + chain: + allOf: + - $ref: '#/components/schemas/ProofChain' + description: The coin name ('BITCOIN' or 'ETHEREUM') + proofType: + allOf: + - $ref: '#/components/schemas/ProofType' + description: The type of proof + auxProofData: + type: array + items: + type: object + properties: + type: + allOf: + - $ref: '#/components/schemas/AuxProofType' + description: The type of data + data: + type: object + properties: + script: + type: string + description: The REDEEM_SCRIPT or WITNESS_SCRIPT associated with the address + nonce: + type: string + salt: + type: string + init_code_hash: + type: string + required: + - type + - data + required: + - iou + AddressQueryResult: + title: AddressQueryResult + type: object + properties: + coin: + $ref: '#/components/schemas/CoinString' + pendingAddressCount: + type: number + description: Total number of addresses pending on-chain initialization on this wallet **Note:** for wallets with many addresses (100,000 or more), this property may be omitted for performance reasons. If the pending address count is needed for a large wallet, the 'includeTotalAddressCount' query parameter can be used to force an address count to be returned with the initial page of addresses. + totalAddressCount: + type: number + description: Total number of addresses which match the provided query parameters. **Note:** for wallets with many addresses (100,000 or more), this property may be omitted for performance reasons. If the total address count is needed for a large wallet, the 'includeTotalAddressCount' query parameter can be used to force an address count to be returned with the initial page of addresses. + addresses: + type: array + items: + allOf: + - type: object + properties: + chain: + $ref: '#/components/schemas/AddressChain' + coin: + $ref: '#/components/schemas/CoinString' + index: + type: number + wallet: + type: string + required: + - chain + - coin + - index + - wallet + - $ref: '#/components/schemas/BaseWalletAddress' + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. + example: 585951a5df8380e0e3063e9f + format: uuid + count: + type: number + description: Total number of addresses returned in this response + required: + - coin + AddressString: + title: AddressString + type: string + example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS + maxLength: 250 + AddressString3: + title: Address + type: string + example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS + maxLength: 250 + AddressSubdocument: + title: AddressSubdocument + oneOf: + - $ref: '#/components/schemas/AlgorandAddress' + - $ref: '#/components/schemas/AtomAddress' + - $ref: '#/components/schemas/AvaxPAddress' + - $ref: '#/components/schemas/UtxoAddress' + - $ref: '#/components/schemas/BitcoinCashAddress' + - $ref: '#/components/schemas/CasperAddress' + - $ref: '#/components/schemas/DotAddress' + - $ref: '#/components/schemas/EosAddress' + - $ref: '#/components/schemas/EthereumAddress' + - $ref: '#/components/schemas/Ethereum2Address' + - $ref: '#/components/schemas/FiatAddress' + - $ref: '#/components/schemas/HederaAddress' + - $ref: '#/components/schemas/OffchainAddressSubdocument' + - $ref: '#/components/schemas/SilvergateUSDAddress' + - $ref: '#/components/schemas/SolAddress' + - $ref: '#/components/schemas/StacksAddress' + - $ref: '#/components/schemas/StellarAddress' + - $ref: '#/components/schemas/TestcoinAddress' + - $ref: '#/components/schemas/TezosAddress' + - $ref: '#/components/schemas/TronAddress' + - $ref: '#/components/schemas/XRPAddress' + - $ref: '#/components/schemas/TonAddress' + AddressType: + type: string + example: p2sh + enum: + - p2sh + - p2shP2wsh + - p2wsh + - p2tr + - p2trMusig2 + AddressWithBalanceQueryResult: + title: AddressWithBalanceQueryResult + type: object + description: Represents the result of a query for addresses with balances. This structure contains the details of a set of addresses, their associated balances, and pagination information about the query results. + properties: + coin: + allOf: + - $ref: '#/components/schemas/CoinString' + description: The coin associated with the address balances + page: + type: number + description: The current page number + totalAddressCount: + type: number + description: Total number of addresses present + totalPages: + type: number + description: Total number of pages available for pagination + addresses: + type: array + items: + type: object + properties: + address: + type: string + description: The address itself + balance: + allOf: + - $ref: '#/components/schemas/TrimmedBalance' + description: The balance associated with the address + required: + - address + - balance + description: List of addresses with their balances + message: + type: string + description: Optional message from the response + count: + type: number + description: Count of the addresses in the current response + required: + - coin + AdvancedListCondition: + title: AdvancedListCondition + type: object + properties: + entries: + type: array + items: + type: object + properties: + item: + type: string + description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. + metaData: + type: object + additionalProperties: {} + description: Any data about this entry that is not used to determine when to enforce the policy + type: + allOf: + - $ref: '#/components/schemas/AdvancedListType' + description: the kind of resource a list rule entry refers to + verificationState: + type: string + enum: + - unverified + - verified + required: + - item + - type + description: Entries specifying which addresses/ wallets/ enterprises are on the whitelist + required: + - entries + AdvancedListRuleEntry: + title: AdvancedListRuleEntry + type: object + properties: + item: + type: string + description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. + metaData: + type: object + additionalProperties: {} + description: Any data about this entry that is not used to determine when to enforce the policy + type: + allOf: + - $ref: '#/components/schemas/AdvancedListType' + description: the kind of resource a list rule entry refers to + verificationState: + type: string + enum: + - unverified + - verified + required: + - item + - type + AdvancedListRuleEntry1: + title: Advanced whitelist rule entry + type: object + properties: + item: + allOf: + - oneOf: + - $ref: '#/components/schemas/AddressString3' + - $ref: '#/components/schemas/Id' + description: Either a valid address or a wallet or enterprise id. Must be unique in this whitelist. + metaData: + type: object + description: Any data about this entry that is not used to determine when to enforce the policy + properties: + label: + type: string + description: A client-specified label for this entry. Label must be unique or not set. + owner: + type: string + description: The legal owner of the address/ wallet/ enterprise + example: Legal Owner LLC + address: + type: string + description: The address of the receiver wallet if the whitelist is of type 'walletId'. + additionalProperties: true + type: + $ref: '#/components/schemas/ListRuleEntryType' + required: + - item + - type + AdvancedListRuleUpdateCondition: + title: AdvancedListRuleUpdateCondition + type: object + properties: + add: + $ref: '#/components/schemas/AdvancedListRuleEntry' + remove: + type: object + properties: + item: + type: string + type: + type: string + enum: + - address + - enterpriseId + - walletId + required: + - item + verifyItems: + type: object + properties: + items: + type: array + items: + type: string + required: + - items + AdvancedListType: + title: AdvancedListType + type: string + enum: + - address + - enterpriseId + - walletId + AggregatorSourceType: + title: AggregatorSourceType + type: string + enum: + - bitcoinBuilder + - ftx + - ftx-retail + - ftx-bahamas + - ftx-bahamas-retail + - sofi + - bitcoinWell + - lucid + - wlf + - walrus + Agreements: + title: Agreements + type: object + properties: + patriotAct: + type: number + termsOfUse: + type: number + patriotActAcceptanceDate: + type: string + format: date-time + title: ISO Date String + termsOfUseAcceptanceDate: + type: string + format: date-time + title: ISO Date String + required: + - patriotAct + - termsOfUse + AlgorandAddress: + title: Algorand Address + type: object + properties: + rootAddress: + type: string + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + addressVersion: + type: number + threshold: + type: number + bitgoKey: {} + bitgoPubKey: + type: string + required: + - rootAddress + AlgorandWallet: + title: Algorand Wallet + type: object + properties: + addressVersion: + type: number + rootAddress: + type: string + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + required: + - addressVersion + - rootAddress + AllErc20TokenLimit: + title: AllErc20TokenLimit + type: object + properties: + enabled: + type: boolean + description: Indicates if the limit is enabled for all ERC20 tokens + txCount: + type: number + description: The transaction count limit for all ERC20 tokens + txValue: + type: string + description: The transaction value limit for all ERC20 tokens + txValueLimitInSmallUnits: + type: string + description: The transaction value limit in small units for all ERC20 tokens + maxLimit: + type: boolean + description: Indicates if the maximum limit is enabled + required: + - enabled + - txCount + - txValue + AllWalletsScope: + type: object + description: | + A policy rule scope. For example the All Wallets scope. + required: + - id + - name + - label + - description + - conditions + properties: + id: + type: string + description: Unique id of the scope. A UUID. + example: 306258df-dcab-489e-a9fe-ff28ce9fa312 + name: + type: string + description: Name of the scope. + enum: + - wallet.segregated + example: wallet.segregated + label: + type: string + description: A label for the scope which can be shown to an end user. + example: Wallet + description: + type: string + description: A description for the scope which can be shown to an end user. + example: A BitGo Wallet + conditions: + type: array + description: A list of Filtering Conditions the scope supports. For example the Wallet Type Filtering condition. + items: + anyOf: + - $ref: '#/components/schemas/WalletTypeCondition' + - $ref: '#/components/schemas/WalletIdsCondition' + - $ref: '#/components/schemas/WalletAllCondition' + AllocationStatus: + title: AllocationStatus + type: string + enum: + - cleared + - released + - reserved + AllocationType: + title: AllocationType + type: string + enum: + - allocation + - deallocation + AlwaysDenyAction: + title: Automatically reject + type: object + description: Automatically denies a transfer. + required: + - name + - label + - description + - status + - adminOnly + properties: + name: + type: string + description: The name of the action. + enum: + - approvals.always.deny + example: approvals.always.deny + label: + type: string + description: A label for the action which can be shown to an end user. + example: Deny + description: + type: string + description: A description for the action which can be shown to an end user. + example: Automatically reject + status: + type: string + description: | + Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The action is available for use. + * 'INACTIVE' - The action is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal action, false otherwise. + example: false + AlwaysDenyActionRequest: + title: Automatically reject + type: object + description: Automatically reject. + required: + - name + properties: + name: + type: string + description: Name of the associated Action. + enum: + - approvals.always.deny + example: approvals.always.deny + Amount: + title: Amount + type: object + properties: + value: + type: string + symbol: + type: string + required: + - value + - symbol + Amount1: + title: Amount + type: object + properties: + value: + type: string + symbol: + type: string + required: + - value + - symbol + Amount2: + type: object + properties: + value: + type: string + description: The value should be a valid number. + example: '100' + symbol: + type: string + description: The coin or token the value is referring to. + example: usdc + required: + - value + - symbol + Amount4: + type: object + required: + - quantity + - currency + properties: + quantity: + type: string + format: decimal + description: The specified quantity. + currency: + type: string + description: The specified quantity currency. + example: + quantity: '100.0' + currency: USD + AmountConditionParameter: + title: Amount + type: object + description: The amount incoming transfers will be compared with. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - amount + example: amount + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The amount to compare to + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The transfer amount will be compared with this limit + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - NON_NEGATIVE_NUMBER + example: NON_NEGATIVE_NUMBER + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + AnchorType: + title: AnchorType + type: string + enum: + - policyRuleId + - settlementId + AnnotatedTransfer: + allOf: + - $ref: '#/components/schemas/Transfer' + - type: object + properties: + confirmations: + type: integer + description: The number of blocks that have been confirmed since this Transfer's block was confirmed + entries: + type: array + items: + type: object + properties: + label: + type: string + description: If this address was labeled by the user, this is the label + AnnotatedTransferWithInputsOutputs: + allOf: + - $ref: '#/components/schemas/AnnotatedTransfer' + - type: object + properties: + inputs: + type: array + description: If this is a Transfer on a UTXO coin, the array of inputs + items: + $ref: '#/components/schemas/Unspent' + outputs: + type: array + description: If this is a Transfer on a UTXO coin, the array of outputs + items: + $ref: '#/components/schemas/Unspent' + PlatformError: + title: Api Error + allOf: + - type: object + properties: + name: + type: string + description: Error code + context: + type: object + additionalProperties: {} + description: Properties that apply to a specific error name + required: + - context + - $ref: '#/components/schemas/PlatformErrorNoName' + PlatformError2: + title: PlatformError + allOf: + - type: object + properties: + name: + type: string + context: + type: object + additionalProperties: {} + status: + type: number + additionalDetails: + type: object + properties: + retryAfter: + type: number + required: + - retryAfter + required: + - context + - $ref: '#/components/schemas/PlatformErrorNoName2' + PlatformError3: + title: API error + allOf: + - $ref: '#/components/schemas/PlatformErrorNoName3' + - properties: + context: + type: object + description: Properties that apply to a specific error name + name: + type: string + description: Error code + required: + - name + PlatformErrorNoName: + title: PlatformErrorNoName + type: object + properties: + error: + type: string + description: Human-readable error message + requestId: + type: string + description: Client request id + required: + - error + - requestId + PlatformErrorNoName2: + title: PlatformErrorNoName + type: object + properties: + error: + type: string + requestId: + type: string + required: + - error + - requestId + PlatformErrorNoName3: + type: object + properties: + error: + type: string + description: Human-readable error message + requestId: + type: string + description: Client request id + required: + - error + - requestId + ApiKeyAndSecretConnectionKey: + title: ApiKeyAndSecretConnectionKey + type: object + properties: + schema: + type: string + enum: + - apiKeyAndSecret + apiKey: + type: string + minLength: 1 + apiSecret: + type: string + minLength: 1 + required: + - schema + - apiKey + - apiSecret + ApiRuleType: + title: ApiRuleType + type: string + enum: + - advancedWhitelist + - allTx + - coinAddressWhitelist + - coinAddressBlacklist + - trustUsdVelocityLimit + - txUsdThreshold + - usdVelocityLimit + - velocityLimit + - webhook + ApprovalsRequired: + type: integer + minimum: 1 + example: 1 + AtomAddress: + title: Atom Address + type: object + properties: + rootAddress: + type: string + memoId: + type: string + required: + - rootAddress + - memoId + AtomPaymentIntent: + title: Atom Payment Intent + allOf: + - type: object + properties: + memo: + $ref: '#/components/schemas/optionalString' + required: + - memo + - $ref: '#/components/schemas/PaymentIntent' + AtomStakeIntent: + title: Atom Stake Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - validatorAddress + - amount + - $ref: '#/components/schemas/StakeIntent' + AtomStakingDelegation: + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + AtomStakingRequest: + title: ATOM + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: + delegations: + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/AtomStakingDelegation' + transactions: + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/AtomStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + AtomStakingRequestPOSTBody: + title: ATOM stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + AtomStakingRequestWithTransactions: + title: ATOM + allOf: + - $ref: '#/components/schemas/AtomStakingRequest' + - type: object + properties: transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - EthStakingRequestWithTransactionsExample: - summary: Ethereum Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - type: STAKE - coin: eth - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' + type: array + items: + oneOf: + - $ref: '#/components/schemas/AtomStakingTransaction' + AtomStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + AtomUnStakingRequestPOSTBody: + title: ATOM unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to unstake in base units. + type: string + example: '10000000000' + required: + - amount + AtomUnstakeIntent: + title: Atom Unstake Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - validatorAddress + - amount + - $ref: '#/components/schemas/UnstakeIntent' + AtomWallet: + title: Atom Wallet + type: object + properties: + rootAddress: + type: string + lastMemoId: + type: string + lastChainIndex: {} + pendingEcdsaTssInitialization: + type: boolean + required: + - rootAddress + - lastMemoId + AtomWithdrawIntent: + title: Atom Withdraw Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + required: + - validatorAddress + - amount + - $ref: '#/components/schemas/WithdrawIntent' + AuditLogType1: + title: AuditLogType + type: string + enum: + - createTransaction + - approveTransaction + - rejectTransaction + - bitgoSigned + - addPolicy + - addPolicyServicePolicy + - addPolicyServiceSettlement + - changePolicy + - changePolicyServicePolicy + - removePolicy + - removePolicyServicePolicy + - approvePolicy + - approvePolicyServicePolicy + - approvePolicyServiceSettlement + - rejectPolicy + - rejectPolicyServicePolicy + - rejectPolicyServiceSettlement + - policyUpdated + - policyServicePolicyUpdated + - updatePolicyMutability + - freezeUser + - adminFreezeUser + - addUser + - removeUser + - shareUser + - shareUserAccept + - shareUserCancel + - shareUserDecline + - approveUser + - rejectUser + - userSignup + - userLogin + - userFailedLogin + - oAuthAuthorize + - userSourceVerified + - userSettingsChange + - userPasswordChange + - userPasswordReset + - user2FARemove + - user2FAAdd + - adminUnblockUserEmail + - adminUpdateUserActive + - adminResetUserOTP + - adminSetFeatureFlagsForUser + - adminAllowCoinForUser + - adminModifyRateLimit + - createWallet + - removeWallet + - freezeWallet + - unfreezeWallet + - deleteWallet + - undeleteWallet + - renameWallet + - redeployWallet + - updateWalletV1 + - updateWalletType + - fixWalletType + - addWalletUser + - removeWalletUser + - initializeWallet + - updateWalletCoinSpecific + - adminAddCustomNodeForWallet + - deleteCustomNodeForWallet + - recoverNonKRSWallet + - cloneCustodialWallet + - addWalletFlag + - deleteWalletFlag + - updateWalletFlag + - addWebhook + - adminAddWebhook + - removeWebhook + - getWebhookSecret + - createWebhookSecret + - updateNotificationSettings + - labelAddress + - unlabelAddress + - updateComment + - createSendLabel + - updateSendLabel + - deleteSendLabel + - updateTag + - updateApprovalsRequired + - createEnterprise + - starterSignupCreateEnterprise + - institutionalSignupCreateEnterprise + - updateEnterpriseUser + - approveEnterpriseUser + - rejectEnterpriseUser + - freezeEnterprise + - adminRenameEnterprise + - adminDeleteEnterprisePricingTypes + - adminUpdateEnterpriseExternalContract + - createAccessToken + - modifyAccessToken + - deleteAccessToken + - adminUpdateAccessToken + - createBankAccount + - updateBankAccount + - adminUpdateBankAccount + - removeBankAccount + - walletPasswordReset + - createPasswordReset + - deletePasswordReset + - adminUpdatePasswordReset + - adminAddCustomNode + - deleteCustomNode + - removeVideoId + - externalWithdrawalDetected + - adminUpdateKycState + - updateKycState + - updateEnterprise + - approveOrganizationUser + - rejectOrganizationUser + - bulkCreateOfcWallet + - upsertRecoveryCodes + - viewRecoveryCodes + - createReset2FA + - verifyReset2FA + - completeReset2FA + - retrofitToMPCv2 + - verifyLivenessCheck + - adminInternalTokenCreate + - adminInternalUnverifiedEmailStateReset + - routedTransactionCreate + - routedTransactionUpdate + - routedTransactionRead + - routedTransactionNoop + - transactionRouteCreate + - transactionRouteSignature + - transactionRouteDeactivate + - bitgoAdminRolesUpdate + - bitgoAdminRolesDelete + - resetWebhookNotifications + - makeUnspentReservation + - removeUnspentReservation + - createCustodialKey + - deleteCustodialKey + - createNonceAccounts + - validateReorg + - adminCreateQuery + - adminUpdateQuery + - adminRunQuery + - activateMultisigSafeMode + - activateMultisigSafeModeMultiple + - updatePricingPlan + - addPricingPlan + - createBillingTask + - handleLightningRPC + - addUserSignatureShare + - removeUserSignatureShare + - updateWalletSendQ + - fixMissingEnterpriseIdsOnTransactions + - fixSendAccountingOnTransfers + - syncMigratedKeys + - fixDuplicateWalletTxs + - fixMissingWalletTxs + - updateSendQTx + - releaseTxHold + - createVASP + - mergeVASP + - updateVASP + - cosignRecoveryTransaction + - cosignTokenRecovery + - flushTokenBalances + - flushCoinBalances + - adminRedeployAddress + - getUndeployedForwarders + - changeNonceForTx + - setNonceForWallet + - changeGasPriceForTx + - makeEmptyTransaction + - initializeAddress + - updateSendQItem + - removeSendQItem + - postAdminEvent + - adminCreateProduct + - adminUpdateProduct + - adminMergeDuplicateAddresses + - backfillEnterpriseCoinSpecific + - approveGeneric + - rejectGeneric + - updateServicesAgreement + - claimTransactionByVasp + - rejectTransactionByVasp + - freezeKey + - initiateRebalanceBackingWallet + - freezePendingApproval + - unfreezePendingApproval + - trustToSingaporeUpgrade + - adminCreateReport + - updateWalletApprovalsRequired + AuditableItem: + type: object + properties: + id: + type: string + description: Unique identifier for the date range. + startDate: + type: string + description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the start date of a new auditable item. If not present, will use the current date to create a new auditable item. Start date is inclusive, i.e. we will start billing/functionality at this instant and afterwards. + startReason: + type: string + description: An optional note describing the reason the auditable item was added/created. + endDate: + type: string + description: ISO 8601 Datetime (example at https://datatracker.ietf.org/doc/html/rfc3339#section-5.8). If present, will use as the end date of a new auditable item. If not present, we will set the endDate to null, and we will assume an indefinite range. endDate is exclusive, i.e. we will end billing/functionality up to but not at this particular time. + endReason: + type: string + description: An optional note describing the reason the auditable item was ended. + AuthenticatorInfo: + title: AuthenticatorInfo + type: object + properties: + credID: + type: string + description: The credential ID of the authenticator + fmt: + type: string + description: The format of the authenticator + publicKey: + type: string + description: The public key of the authenticator + required: + - credID + - fmt + - publicKey + AuxProofType: + title: AuxProofType + type: string + enum: + - REDEEM_SCRIPT + - WITNESS_SCRIPT + - ETH_CREATE + - ETH_CREATE2 + AvailableUI: + title: AvailableUI + type: string + enum: + - bg23 + - '' + AvaxPAddress: + title: AvaxP Address + type: object + properties: + threshold: + type: number + addresses: + type: array + items: + type: string + required: + - threshold + - addresses + AvaxPStakingDelegation: + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + AvaxPStakingRequest: + title: AVAXP + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: + delegations: + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/AvaxPStakingDelegation' + transactions: + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/AvaxPStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + durationSeconds: + description: The length of time in seconds to complete a staking period. + type: integer + AvaxPStakingRequestPOSTBody: + title: AVAXP stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to stake in base units. + type: string + example: '1000' + type: + description: Staking Request type = 'STAKE'. + type: string + example: STAKE + durationSeconds: + description: The length of time in seconds to complete a staking period. + type: integer + example: 604800 + required: + - amount + - type + - durationSeconds + AvaxPStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + AvaxPWallet: + title: AvaxP Wallet + type: object + properties: + unlockAddresses: + type: array + items: + type: string + threshold: + type: number + required: + - unlockAddresses + - threshold + AvaxpWalletStakingStateAttributes: + type: object + properties: + stakingSpendableAttributes: + allOf: + - $ref: '#/components/schemas/StakingSpendableAttributes' + type: object + properties: + minDuration: + description: The minimum duration in seconds for staking period. + type: integer + maxDuration: + description: The maximum duration in seconds for staking period. + type: integer + unstakingSpendableAttributes: + $ref: '#/components/schemas/UnStakingSpendableAttributes' + AverageFee: + type: object + properties: + averageFee: + type: number + description: Calculated by summing the fees of the blocks over the number of blocks. + example: 16000000 + required: + - averageFee + BNMetadata: + title: BNMetadata + type: object + properties: + partnerNames: + type: array + items: + type: string + minLength: 1 + required: + - partnerNames + BNSupportedCurrency: + title: BNSupportedCurrency + type: string + BackingValue: + title: Backing hot wallet + type: object + description: Backing hot wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - backing + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Backing Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A backing wallet + BackupKeyType: + type: string + description: Coin name used to choose correct KRS public key for the given provider. Possible valid values are "btc", "eth", "bitcoin" + example: eth + BalanceReserve: + type: object + properties: + baseFee: + type: string + description: base fee used in transaction fees + example: '100' + baseReserve: + type: string + description: base reserve used in minimum account balances + example: '5000000' + reserve: + type: string + description: minimum account balance, calculated using base reserve + example: '25000000' + minimumFunding: + type: string + description: minimum funding balance, calculated using reserve and base fee + example: '25000500' + height: + type: integer + description: the height of the block that provides the base values + example: 11228504 + BalanceStaked: + type: array + items: + type: object + properties: + address: + allOf: + - type: string + - $ref: '#/components/schemas/AddressString3' + description: the address of the wallet + balances: + type: array + items: + type: object + description: an object containing of validators and the current staked amount + properties: + validator: + allOf: + - type: string + - $ref: '#/components/schemas/AddressString3' + description: the validator + staked_amount: + type: string + description: the amount delegated to the validator + example: '5000000000' + BalanceTotalRewards: + type: array + items: + type: object + properties: + address: + allOf: + - type: string + - $ref: '#/components/schemas/AddressString3' + description: the address of the wallet + rewards: + type: array + items: + type: object + description: an object containing the reward recipient address and the total rewards received + properties: + reward_recipient: + allOf: + - type: string + - $ref: '#/components/schemas/AddressString3' + description: the receiving address + reward_amount: + type: string + description: the total rewards received + example: '5000000000' + BankAccountCurrency: + title: BankAccountCurrency + description: | + The currency of the bank account. If null, defaults to 'fiatusd'. + type: string + nullable: true + enum: + - fiatusd + - fiateur + - null + example: fiatusd + BankAccountFee: + type: object + description: | + A fee that's associated with a bank account. + properties: + feeInfo: + type: object + properties: + bank: + type: string + enum: + - customers_sftp + - customers_api + - bcbgroup + description: | + The bank that the fee is associated with. + type: + type: string + enum: + - static + - variable + description: | + The type of fee. + amount: + type: string + description: | + The fee amount. + coin: + $ref: '#/components/schemas/BankAccountCurrency' + BankAccountId: + title: ID + type: string + pattern: ^[0-9a-f]{32}$ OR UUID + example: 59cd72485007a239fb00282ed480da1f + BankAccountIdHash: + type: string + example: 5c645791cf8eb19304292a8e3365fee3 + description: | + Unique identifier for this account, derived from 'accountNumber', + 'routingNumber', and 'swiftCode' + BankAccountJson: + title: BankAccountJson + type: object + properties: + accountNumber: + type: string + address1: + type: string + name: + type: string + owner: + type: object + properties: + name: + type: string + address1: + type: string + address2: + type: string + address3: + type: string + required: + - name + - address1 + idHash: + type: string + verificationState: + type: string + address2: + type: string + address3: + type: string + enterpriseId: + type: string + id: + type: string + routingNumber: + type: string + shortCountryCode: + type: string + swiftCode: + type: string + type: + type: string + required: + - accountNumber + - address1 + - name + - owner + - idHash + - verificationState + BankAccountPendingActivity: + type: string + enum: + - trust + BankAccountRequest: + anyOf: + - $ref: '#/components/schemas/DomesticWireBankAccount' + - $ref: '#/components/schemas/InternationalWireBankAccount' + - $ref: '#/components/schemas/CBITBankAccount' + BankAccountResponse: + type: object + description: | + An external bank account. 'routingNumber' must be set for US bank accounts. + 'swiftCode' must be set for banks outside the US. + properties: + accountNumber: + description: Bank account number or IBAN. + type: string + minLength: 1 + maxLength: 34 + example: 114584906 + enterpriseId: + $ref: '#/components/schemas/Id' + address: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + address1: + type: string + example: 2390 El Camino Real + address2: + type: string + example: Palo Alto, CA 94306 + address3: + type: string + example: '' + id: + $ref: '#/components/schemas/Id' + name: + type: string + example: America California Bank + ownerName: + type: string + example: Donald E. Knuth + ownerAddress: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + owner: + type: object + description: Bank account owner + properties: + name: + type: string + example: Donald E. Knuth + address1: + type: string + example: Computer Science Department + address2: + type: string + example: Stanford University + address3: + type: string + example: Stanford, CA 94305-9045 + required: + - name + - address1 + routingNumber: + description: US bank routing number + type: string + example: '129131673' + minLength: 9 + maxLength: 9 + pattern: ^[0-9]+$ + shortCountryCode: + $ref: '#/components/schemas/ShortCountryCode' + swiftCode: + description: Bank identifier code, as specified by ISO 9362. Used by banks outside the US. + type: string + example: DEUTDEFF500 + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{6}[0-9A-Z]{2}([0-9A-Z]{3})?$ + type: + $ref: '#/components/schemas/BankAccountType' + currency: + $ref: '#/components/schemas/BankAccountCurrency' + externalId: + type: string + example: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 + furtherCreditTo: + type: string + example: Donald E. Knuth + intermediaryBankName: + type: string + example: America California Bank + intermediaryBankId: + type: string + example: 59cd72485007a239fb00282ed480da1f + idHash: + $ref: '#/components/schemas/BankAccountIdHash' + trustOrg: + $ref: '#/components/schemas/BitgoOrg1' + token: + type: string + example: fiat + verificationState: + $ref: '#/components/schemas/BankAccountVerificationState' + pendingActivity: + $ref: '#/components/schemas/BankAccountPendingActivity' + fee: + $ref: '#/components/schemas/BankAccountFee' + BankAccountType: + title: BankAccountType + description: | + The type of bank account. If null, defaults 'wire'. + type: string + nullable: true + enum: + - wire + - cbit + - null + example: wire + BankAccountVerificationState: + type: string + enum: + - pending + - approved + - rejected + - removed + BaseIntent: + title: Intent + type: object + properties: + intentType: + $ref: '#/components/schemas/IntentType' + sequenceId: + $ref: '#/components/schemas/optionalString' + comment: + $ref: '#/components/schemas/optionalString' + nonce: + oneOf: + - type: string + - type: number + required: + - intentType + BaseIntent1: + title: Intent + type: object + properties: + intentType: + $ref: '#/components/schemas/IntentType1' + sequenceId: + $ref: '#/components/schemas/optionalString' + comment: + $ref: '#/components/schemas/optionalString' + nonce: + oneOf: + - type: string + - type: number + required: + - intentType + BaseIntent2: + type: object + properties: + intentType: + type: string + sequenceId: + type: string + description: | + A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because BitGo only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. It is the responsibility of the caller to keep track of this ID. + example: abc123 + comment: + type: string + description: The 'comment' is only visible to users on the wallet and is not shared publicly. + nonce: + type: string + description: The 'nonce' of a transaction (optional) + memo: + type: string + description: | + A 'memo' is an additional address feature necessary for identifying a transaction recipient beyond wallet address. + required: + - intentType + BaseIntentWithoutNonce: + title: BaseIntentWithoutNonce + type: object + properties: + intentType: + $ref: '#/components/schemas/IntentType' + sequenceId: + $ref: '#/components/schemas/optionalString' + comment: + $ref: '#/components/schemas/optionalString' + required: + - intentType + BaseShare: + title: BaseShare + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/SignatureShareType' + description: The source of the commitment share + example: user + to: + allOf: + - $ref: '#/components/schemas/SignatureShareType' + description: The recipient of the commitment share. + example: bitgo + share: + type: string + description: The commitment share. + required: + - from + - to + - share + BaseStakeIntent: + title: BaseStakeIntent + allOf: + - type: object + properties: + stakingRequestId: + type: string + required: + - stakingRequestId + - $ref: '#/components/schemas/BaseIntent' + BaseStakeIntent2: + allOf: + - $ref: '#/components/schemas/BaseIntent2' + - type: object + properties: + stakingRequestId: + type: string + required: + - stakingRequestId + BaseStakeIntentWithCalldata: + title: Base Stake Intent with Calldata + allOf: + - type: object + properties: + calldata: + type: string + required: + - calldata + - $ref: '#/components/schemas/BaseStakeIntent' + BaseWalletAddress: + title: BaseWalletAddress + type: object + properties: + id: + type: string + description: Platform public ID for an address + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + address: + $ref: '#/components/schemas/AddressString' + balance: + $ref: '#/components/schemas/TrimmedBalance' + coinSpecific: + allOf: + - $ref: '#/components/schemas/AddressSubdocument' + description: Properties specific to certain coin types + label: + $ref: '#/components/schemas/AddressLabelString' + lastNonce: + type: number + default: -1 + token: + type: string + proof: + type: string + signature: + type: string + lastConsolidatedTime: + type: string + format: date + title: Date String + needsConsolidation: + type: boolean + tokenConsolidationState: {} + tokenAddress: {} + BeraDelegateIntent: + title: Bera Delegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + Bitcoin: + type: string + enum: + - btc + - tbtc4 + description: This route is only available for Bitcoin. + BitcoinCashAddress: + title: Bitcoin Cash Address + allOf: + - type: object + properties: + format: + $ref: '#/components/schemas/SupportedAddressFormat' + - $ref: '#/components/schemas/UtxoAddress' + BitgoOrg: + title: BitgoOrg + type: string + enum: + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - BitGo Europe ApS + - Frankfurt DE Trust + - BitGo Singapore + - BitGo Korea + - BitGo Mena Fze + - BitGo Custody MENA FZE + - BitGo Sister Trust 1 + - BitGo Inc + BitgoOrg1: + type: string + description: BitGo Organization related to this entity + enum: + - BitGo Inc + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - Frankfurt DE Trust + - BitGo Sister Trust 1 + - BitGo Korea + - BitGo Singapore + - BitGo Europe ApS + - BitGo Mena Fze + - BitGo Custody MENA FZE + BitgoTSSPublicKeyResponse: + title: BitgoTSSPublicKeyResponse + type: object + properties: + enterpriseId: + type: string + description: Enterprise id for the intended operation (if present in the request) + name: + type: string + description: Name of the key, used for simple identification. Matches MPC key namess in client constants + publicKey: + type: string + description: BitGo MPC public key + mpcv2PublicKey: + type: string + description: BitGo MPCv2 public key + required: + - name + BlockHash: + type: string + example: 0000000000000296ed56abee6cb78e40b00c47a03d92e71dd92c4862ca636b95 + BscDelegateIntent: + title: BSC Delegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + relayerFee: + type: string + delegateVotePower: + type: string + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntent' + BscUnDelegateIntent: + title: BSC UnDelegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - undelegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + relayerFee: + type: string + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntent' + BscWithdrawUndelegateIntent: + title: BSC Withdraw Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + requestNumber: + type: number + required: + - validatorAddress + - requestNumber + - $ref: '#/components/schemas/WithdrawIntent' + BuildParams: + type: object + properties: + type: + type: string + description: | + Required for transactions from MPC wallets. "acceleration" speeds up transactions with a certain nonce by adjusting the gas setting. "accountSet" is for XRP AccountSet transactions. "enabletoken" is for SOL. "stakingLock" and "stakingUnlock" are for Stacks delegations. "transfer" is for native-asset transfers. "trustline" is for Stellar trustline transactions. Possible types include: [acceleration, accountSet, enabletoken, stakingLock, stakingUnlock, transfer, transfertoken, trustline] + + For AVAX, possible types include: 'addValidator', 'export', and 'import'. + + For XRP, possible types include: 'payment' and 'accountSet'. The default is 'payment'. + + For STX, type is required. + numBlocks: + type: integer + description: | + (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. + + Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. + minimum: 2 + maximum: 1000 + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + maxFeeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - example: 20000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The 'feeRate' overrides the 'maxFeeRate'. + feeMultiplier: + allOf: + - $ref: '#/components/schemas/NumberOrString' + - example: 1.5 + description: | + (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. + + Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. + minConfirms: + type: integer + description: | + The unspent selection for the transaction will only consider unspents with at least this many confirmations to be used as inputs. Does not apply to change outputs unless used in combination with 'enforceMinConfirmsForChange'. + enforceMinConfirmsForChange: + type: boolean + description: When set to true, will enforce minConfirms for change outputs. Defaults to false. + default: false + gasPrice: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Custom gas price to be used for sending the transaction. Only for ETH and ERC20 tokens. + eip1559: + properties: + maxPriorityFeePerGas: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - maximum: 100000000000 + description: Max priority tip price for EIP1559 transactions. Only for ETH and ERC20 tokens. + maxFeePerGas: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Max total gasPrice for EIP1559 transactions. Only for ETH and ERC20 tokens. + gasLimit: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Custom gas limit to be used for sending the transaction. Only for ETH and ERC20 tokens. + targetWalletUnspents: + type: integer + description: | + Specifies the minimum count of good-sized unspents to maintain in the wallet. Change splitting ceases when the + wallet has 'targetWalletUnspents' good-sized unspents. + + **Note**: Wallets that continuously send a high count of transactions will automatically split large change amounts + into multiple good-sized change outputs while they have fewer than 'targetWalletUnspents' good-sized unspents in + their unspent pool. Breaking up large unspents helps to reduce the amount of unconfirmed funds in flight in future + transactions, and helps to avoid long chains of unconfirmed transactions. This is especially useful for newly + funded wallets or recently refilled send-only wallets. + default: 1000 + minValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Ignore unspents smaller than this amount of base units (e.g. satoshis). For doge, only string is allowed. + maxValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Ignore unspents larger than this amount of base units (e.g. satoshis). For doge, only string is allowed. + sequenceId: + type: string + description: | + A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. + nonce: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: | + (DOT only) A nonce ID is a number used to protect private communications by preventing replay attacks. + This is an advanced option where users can manually input a new nonce value + in order to correct or fill in a missing nonce ID value. + noSplitChange: + type: boolean + description: | + Set 'true' to disable automatic change splitting. + + Also see: 'targetWalletUnspents' + default: false + unspents: + type: array + items: + example: 12b147dd8b4f73c01f72bdbf5b589eea614f3de609ffdbdac84852d6505cf8a3:1 + type: string + description: | + Used to explicitly specify the unspents to be used in the input set in the transaction. Each unspent should be in the form 'prevTxId:nOutput'. + changeAddress: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: Specifies a custom destination address for the transaction's change output(s) + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + instant: + type: boolean + description: (DASH only) Specifies whether or not to use Dash's "InstantSend" feature when sending a transaction. + memo: + type: object + properties: + type: + type: string + value: + type: string + description: | + Memo for Stellar or EOS. Type is only required for memos in Stellar transactions. The memo contains optional extra information that can also be used to identify payments in Stellar or EOS. + comment: + type: string + description: | + Optional metadata (only persisted in BitGo) to be applied to the transaction. Use this to add transaction-specific information such as the transaction's purpose or another identifier that you want to reference later. The value is shown in the UI in the transfer listing page. + maxLength: 256 + destinationChain: + type: string + description: (AVAXC and AVAXP only) Destination chain for an AVAX import/export transaction. One of [P, C]. + sourceChain: + type: string + description: (AVAXC and AVAXP only) Source chain for an AVAX import/export transaction. One of [P, C]. + addressType: + type: string + deprecated: true + description: |- + DEPRECATED - use 'changeAddressType'. + The type of address to create for change. One of 'p2sh', 'p2shP2wsh', 'p2wsh', or 'p2tr'. + changeAddressType: + anyOf: + - $ref: '#/components/schemas/AddressType' + - $ref: '#/components/schemas/ChangeAddressTypes' + description: The address type for the change address. One of 'p2sh', 'p2shP2wsh', 'p2wsh', 'p2tr' or 'p2trMusig2'. + startTime: + type: string + description: Unix timestamp in seconds.nanoseconds format, denoting the start of the validity window. Only for HBAR transactions. + example: 1714067129.1020603 + consolidateId: + allOf: + - $ref: '#/components/schemas/Id' + description: (ALGO/TEZOS only) Consolidation ID of this consolidation transaction. + lastLedgerSequence: + type: integer + description: (XRP only) Absolute max ledger the transaction should be accepted in, whereafter it will be rejected + ledgerSequenceDelta: + type: integer + description: (XRP only) Relative ledger height (in relation to the current ledger) that the transaction should be accepted in, whereafter it will be rejected + rbfTxIds: + type: array + items: + type: string + description: The list of transactions to accelerate using Replace-By-Fee (RBF) for UTXO coins (currently accelerating only one tx is supported). + isReplaceableByFee: + type: boolean + description: It is used to mark an UTXO transaction eligible for Replace-By-Fee (RBF) later. + validFromBlock: + type: integer + description: Optional block this transaction is valid from + validToBlock: + type: integer + description: Optional block this transaction is valid until + trustlines: + type: array + items: + $ref: '#/components/schemas/Trustline' + description: List of trustlines to manage on the account. Available for Stellar. + stakingOptions: + anyOf: + - $ref: '#/components/schemas/CSPRStakingOptions' + - $ref: '#/components/schemas/STXStakingOptions' + description: Required object for staking. Only for CSPR and STX. + messageKey: + type: string + description: Optional parameter that takes a hexadecimal value to set 'messagekey' for an XRP 'accountSet' transaction. Recipients field should be empty when 'messageKey' is set. + reservation: + type: object + properties: + expireTime: + type: string + format: date-time + description: Required. The time that the unspent reservations should expire. + description: Optional parameter for UTXO coins to automatically reserve the unspents that are used in the build. Useful for Cold wallets. If using, must set expireTime. + BusinessModel: + title: BusinessModel + type: string + enum: + - bitgoAsAService + CBITBankAccount: + title: CBIT Bank Account + type: object + description: | + An external bank account. 'routingNumber' must be set for US bank accounts. + 'swiftCode' must be set for banks outside the US. + properties: + accountNumber: + description: Bank account number or IBAN. + type: string + minLength: 1 + maxLength: 34 + example: 114584906 + enterpriseId: + $ref: '#/components/schemas/Id' + address: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + address1: + type: string + example: 2390 El Camino Real + address2: + type: string + example: Palo Alto, CA 94306 + address3: + type: string + example: '' + name: + type: string + example: America California Bank + ownerName: + type: string + example: Donald E. Knuth + ownerAddress: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + owner: + type: object + description: Bank account owner + properties: + name: + type: string + example: Donald E. Knuth + address1: + type: string + example: Computer Science Department + address2: + type: string + example: Stanford University + address3: + type: string + example: Stanford, CA 94305-9045 + required: + - name + - address1 + externalId: + description: Required for CBIT transfers. + type: string + example: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 + shortCountryCode: + $ref: '#/components/schemas/ShortCountryCode' + type: + $ref: '#/components/schemas/BankAccountType' + currency: + $ref: '#/components/schemas/BankAccountCurrency' + furtherCreditTo: + type: string + example: Donald E. Knuth + intermediaryBankName: + type: string + example: America California Bank + intermediaryBankId: + type: string + example: 59cd72485007a239fb00282ed480da1f + required: + - accountNumber + - address1 + - shortCountryCode + - name + - owner + - enterpriseId + - externalId + CSPRStakingOptions: + title: CSPR + type: object + properties: + amount: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Required for CSPR. String representation of the amount to stake or unstake in base units (motes). + validator: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: Required for CSPR. The validator address used to delegate or undelegate. + CannotRemoveAdmin: + title: Can't remove admin + allOf: + - $ref: '#/components/schemas/PlatformErrorNoName3' + - properties: + context: + type: object + properties: + adminCount: + type: integer + description: | + Current number of admins on the wallet. This number must be + greater than 'approvalsRequired', since an admin cannot approve + his/her own operation. + approvalsRequired: + description: Number of admins that must approve a wallet operation + type: integer + required: + - adminCount + - approvalsRequired + name: + type: string + description: Error code + enum: + - CannotRemoveAdmin + required: + - context + - name + CasperAddress: + title: Casper Address + type: object + properties: + accountHash: + type: string + rootAddress: + type: string + transferId: + type: string + required: + - accountHash + - rootAddress + - transferId + CasperWallet: + title: Casper Wallet + type: object + properties: + accountHash: + type: string + creationFailure: + type: array + items: + type: string + lastTransferId: + type: string + pendingChainInitialization: + type: boolean + rootAddress: + type: string + required: + - accountHash + - creationFailure + - lastTransferId + - pendingChainInitialization + - rootAddress + Chain: + type: integer + example: 1 + enum: + - 0 + - 1 + - 10 + - 11 + - 20 + - 21 + - 30 + - 31 + - 40 + - 41 + Challenge: + title: Challenge + type: object + properties: + ntilde: + type: string + description: Range proof challenge value + h1: + type: string + description: Range proof challenge value + h2: + type: string + description: Range proof challenge value + required: + - ntilde + - h1 + - h2 + ChallengePartyConfig: + title: ChallengePartyConfig + type: object + properties: + enterprise: + $ref: '#/components/schemas/TssConfigPartyChallenge' + bitgoNitroHsm: + $ref: '#/components/schemas/TssConfigPartyChallenge' + bitgoInstitutionalHsm: + $ref: '#/components/schemas/TssConfigPartyChallenge' + createdBy: + type: string + description: The ID of the user who created and verified the config + example: 5d1a3e4d2f7f9b7c0e3b7e4d2f7f9b7c + required: + - enterprise + - bitgoNitroHsm + - bitgoInstitutionalHsm + - createdBy + ChallengeVerifiers: + title: ChallengeVerifiers + type: object + properties: + adminSignature: + type: string + description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. + bitgoNitroHsmSignature: + type: string + bitgoInstitutionalHsmSignature: + type: string + required: + - adminSignature + ChangeAddressTypes: + type: array + items: + $ref: '#/components/schemas/AddressType' + description: The address types for the change address. Order by preference and BitGo uses the first available. Any subset of 'p2sh', 'p2shP2wsh', 'p2wsh', 'p2tr' or 'p2trMusig2'. + ChangeFeeResponse: + title: ChangeFeeResponse + type: object + properties: + txid: + type: string + description: Transaction ID of the newly created transaction with increased fee rate. + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + ChangeType: + title: ChangeType + type: string + enum: + - create + - update + - delete + Clause: + type: object + description: | + A combination of Conditions and Actions. + properties: + actions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/AlwaysDenyActionRequest' + - $ref: '#/components/schemas/EnterpriseAdminActionRequest' + - $ref: '#/components/schemas/WalletAdminActionRequest' + - $ref: '#/components/schemas/FinalApprovalActionRequest' + - $ref: '#/components/schemas/EnterpriseUsersActionRequest' + conditions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/TransferAmountConditionRequest' + - $ref: '#/components/schemas/TransferVelocityLimitConditionRequest' + - $ref: '#/components/schemas/TransferDestinationTypeConditionRequest' + - $ref: '#/components/schemas/TransferInitiatorsConditionRequest' + ClearLoopConnectionKey: + title: ClearLoopConnectionKey + type: object + properties: + schema: + type: string + enum: + - clearloop + apiKey: + type: string + minLength: 1 + apiSecret: + type: string + minLength: 1 + clientAccountId: + type: string + minLength: 1 + companyRegistrationNumber: + type: string + minLength: 1 + required: + - schema + - apiKey + - apiSecret + - clientAccountId + - companyRegistrationNumber + Coin: + title: Coin + description: A cryptocurrency or token ticker symbol. + type: string + example: btc + CoinConditionParameter: + title: Coin + type: object + description: The asset the amount is expressed in. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - coin + example: coin + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Currency + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: This condition only applies to transfers of this currency (USD applies to all transfers) + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - COIN_OR_USD + example: COIN_OR_USD + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + CoinNonEmptyString: + title: CoinNonEmptyString + type: string + description: A cryptocurrency symbol or token ticker symbol + example: btc + minLength: 1 + CoinString: + title: CoinString + type: string + description: A cryptocurrency symbol or token ticker symbol + example: btc + CoinsUnauthorizedError: + type: object + properties: + error: + type: string + errorName: + type: string + reqId: + type: string + context: + type: object + properties: + errorName: + type: string + ColdValue: + title: Self-managed cold wallet + type: object + description: Self-managed cold wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - cold + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Cold Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A cold wallet + CommitmentShare: + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The source of the commitment share. + to: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The recipient of the commitment share. + share: + type: string + description: The commitment share. + type: + allOf: + - $ref: '#/components/schemas/CommitmentType' + - default: commitment + description: The type of the commitment share. + required: + - from + - to + - share + - type + CommitmentShare1: + title: CommitmentShare + allOf: + - type: object + properties: + type: + type: string + enum: + - commitment + description: The type of the commitment share + required: + - type + - $ref: '#/components/schemas/BaseShare' + CommitmentType: + type: string + enum: + - commitment + example: commitment + Condition: + title: Condition + oneOf: + - type: object + properties: {} + - $ref: '#/components/schemas/AddressListCondition' + - $ref: '#/components/schemas/AdvancedListCondition' + - $ref: '#/components/schemas/LimitRuleCondition' + - $ref: '#/components/schemas/TxUsdThresholdRuleCondition' + - $ref: '#/components/schemas/WebhookRuleCondition' + Conditions: + type: object + description: | + Wrapper object for a list of Conditions. Not paginated. + properties: + conditions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/TransferDestinationTypeCondition' + - $ref: '#/components/schemas/TransferVelocityLimitCondition' + - $ref: '#/components/schemas/TransferAmountCondition' + - $ref: '#/components/schemas/TransferInitiatorsCondition' + - $ref: '#/components/schemas/TransferWebhookCondition' + ConnectionKey: + title: ConnectionKey + oneOf: + - $ref: '#/components/schemas/TokenConnectionKey' + - $ref: '#/components/schemas/TokenAndSignatureConnectionKey' + - $ref: '#/components/schemas/ApiKeyAndSecretConnectionKey' + - $ref: '#/components/schemas/ClearLoopConnectionKey' + ConnectionStatus: + title: ConnectionStatus + type: string + enum: + - PENDING_DEACTIVATION + - PENDING_ACTIVATION + - ACTIVE + - INACTIVE + description: codec for valid connection statuses + ConnectionType: + title: ConnectionType + type: string + enum: + - DVP + - WHITELIST + description: codec for valid connection statuses + ConsolidateAccountBuildRequest: + type: object + properties: + consolidateAddresses: + description: | + Optional: restrict the consolidation to the specified receive addresses. If not provided, will consolidate the + funds from all receive addresses up to 500 addresses. + type: array + items: + type: string + apiVersion: + description: | + The Trasaction Request API version to use for MPC EdDSA Hot Wallets. + Defaults based on the wallet type and asset curve. + type: string + enum: + - full + - lite + ConsolidateAccountBuildResponse: + type: object + properties: + keyDerivationPath: + type: string + ConsolidateTokenIntent1: + title: Consolidate Token + allOf: + - $ref: '#/components/schemas/BaseIntent2' + - $ref: '#/components/schemas/EthBuildOptions' + - type: object + properties: + intentType: + type: string + enum: + - consolidateToken + recipients: + type: array + items: + $ref: '#/components/schemas/RecipientEntry1' + consolidateId: + type: string + description: Consolidation ID of this consolidation transaction + keepAlive: + type: string + description: True, if excluding the minimum-funding amounts in an address during consolidation. + required: + - intentType + - recipients + ConsolidateUnspentsRequest: + type: object + properties: + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + maxFeeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - example: 20000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The 'feeRate' overrides the 'maxFeeRate'. + maxFeePercentage: + type: integer + description: Maximum relative portion that can be spent towards fees + feeTxConfirmTarget: + type: integer + description: Block target for fee estimation + bulk: + type: boolean + description: Build multiple transactions at the same time. This enables you to increase the maximum number of unspents on the 'limit' parameter up to 2,000. If true, you must pass the 'txFormat' as 'psbt' and you can't pass the 'targetAddress' or 'numUnspentsToMake' parameters. + minValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Minimum value of unspents to use in base units (e.g. satoshis). Can be used to skip very small unspents when consolidating at higher fee rates. For doge, only string is allowed. + maxValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: | + Maximum value of unspents to use in base units (e.g. satoshis). Should be used to prevent larger unspents from being consolidated needlessly, and that some funds remain available for spending while the consolidation transactions are in flight. For doge, only string is allowed. + minHeight: + type: integer + description: Minimum height of unspents on the block chain to use + minConfirms: + type: integer + description: Minimum confirmation threshold for external inputs + enforceMinConfirmsForChange: + type: boolean + description: Flag for enforcing minConfirms for change inputs + limit: + type: integer + description: Maximum number of unspents to use in the transaction + numUnspentsToMake: + type: integer + description: Number of new unspents to make + targetAddress: + type: string + description: address to use for generated outputs. Must be wallet address. + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + ConsolidationCoins: + type: string + enum: + - algo + - talgo + - xtz + - txtz + - eth + - hteth + description: This route is only available for Algorand, Tezos, and Eth. + ContractType: + title: ContractType + type: string + enum: + - csa + - mpa + - mic + - wvr + ContractTypes: + title: ContractTypes + type: array + items: + type: string + enum: + - csa + - mpa + - mic + - wvr + CoreDaoClaimIntent: + title: CoreDAO Claim Rewards Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - stakeClaimRewards + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' + CoreDaoDelegateIntent: + title: CoreDAO Delegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' + CoreDaoUndelegateIntent: + title: CoreDAO Undelegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - undelegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' + CosmosContractCallIntent: + title: Cosmos Contract Call + allOf: + - $ref: '#/components/schemas/BaseIntent2' + - type: object + properties: + intentType: + type: string + enum: + - contractCall + contract: + type: string + description: The address of the contract to call. + msgHex: + type: string + description: The binary message data to send to the contract in hex format. + required: + - intentType + - contract + - msgHex + CosmosLikeStakingDelegation: + title: ATOM like + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + CosmosLikeStakingRequest: + title: ATOM like + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '100000000000000' - unstakingMin: '0' - - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '1000000000000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/CosmosLikeStakingDelegation' transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: PENDING - amount: '3200000000000000000' - transactionType: delegate - delegationId: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - buildParams: - recipients: - amount: '3200000000000000000' - address: '0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b' - data: fds0934rnnio390nw - stakingParams: - requestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '3200000000000000000' - validator: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - actionType: delegate - gasPrice: '1000000000000000' - gasLimit: '3000000000000000' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - MaticStakingRequestWithoutDelegationsExample: - summary: Matic Staking Request Example - value: - id: 0b7e6e7e-5041-49d8-9598-0a4a3f3f234e - clientId: e055adbc-66a3-4ccd-9b9d-726b05dca0cf - requestingUserId: 61c0ee3803715c00088d2c85b533b732 - type: STAKE - enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec - walletId: 63110fc78b108e00071df2d3c3879dd0 - walletType: hot - withdrawalAddress: '0xf5b9becc5e7e68173a5fc1906a2a5574e884da40' - coin: matic - status: NEW - statusModifiedDate: '2022-12-05T17:11:30.748165Z' - createdDate: '2022-12-05T17:11:30.748159Z' - delegations: [] - transactions: [] - totalStaked: '0' - amount: '1000000000000' - gasPrice: '500000000000' - MaticUnStakingRequestWithoutDelegationsExample: - summary: Matic UnStaking Request Example - value: - id: 0b7e6e7e-5041-49d8-9598-0a4a3f3f234e - clientId: e055adbc-66a3-4ccd-9b9d-726b05dca0cf - requestingUserId: 61c0ee3803715c00088d2c85b533b732 - type: UNSTAKE - enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec - walletId: 63110fc78b108e00071df2d3c3879dd0 - walletType: hot - withdrawalAddress: '0xf5b9becc5e7e68173a5fc1906a2a5574e884da40' - coin: matic - status: NEW - statusModifiedDate: '2022-12-05T17:11:30.748165Z' - createdDate: '2022-12-05T17:11:30.748159Z' - delegations: [] - transactions: [] - totalStaked: '0' - amount: '500000000000' - gasPrice: '200000000000' - MaticStakingRequestsListResponseExample: - summary: Matic Staking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestingUserId: 6092e75c451052000636831deb797bd1 - type: STAKE - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - coin: matic - status: NEW - statusModifiedDate: 2022-01-10T14:32:28.000Z - createdDate: 2022-01-10T14:32:28.000Z - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - coin: matic - walletId: 2032e75g451052000636831abd797bd3 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '1000' - apy: '8.3' - unstakeable: false + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/CosmosLikeStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + CosmosLikeStakingRequestPOSTBody: + title: ATOM-like stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + validator: + description: The validator to delegate to. + type: string + example: 017234b285929170324e1051ccd887dc08adf049650ecf5d383985b0b0048ab39b + required: + - validator + CosmosLikeStakingRequestWithTransactions: + title: ATOM like + allOf: + - $ref: '#/components/schemas/CosmosLikeStakingRequest' + - type: object + properties: transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - transactionType: delegate - status: PENDING - statusModifiedDate: 2022-01-10T14:32:28.000Z - amount: '3200000000000000000' - gasPrice: '1000000000000000' - totalStaked: '0' - amount: '3200000000000000000' - gasPrice: '1000000000000000' - MaticStakingRequestWithTransactionsExample: - summary: Matic Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestingUserId: 6092e75c451052000636831deb797bd1 - type: STAKE - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - coin: matic - status: NEW - statusModifiedDate: 2022-01-10T14:32:28.000Z - createdDate: 2022-01-10T14:32:28.000Z + type: array + items: + oneOf: + - $ref: '#/components/schemas/CosmosLikeStakingTransaction' + CosmosLikeStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + CosmosLikeUnStakingRequestPOSTBody: + title: ATOM-like unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + delegationId: + description: Optional delegation ID representing the delegation to unstake. + type: string + amount: + description: Amount to unstake in base units. + type: string + example: '10000000000' + required: + - amount + CosmosPaymentIntent: + title: Cosmos Payment Intent + allOf: + - type: object + properties: + memo: + $ref: '#/components/schemas/optionalString' + required: + - memo + - $ref: '#/components/schemas/PaymentIntent' + CosmosStakeIntent: + title: Cosmos Stake Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntent' + CosmosSwitchValidatorIntent: + title: Cosmos Switch Validator Intent + allOf: + - $ref: '#/components/schemas/StakeSwitchValidatorIntent' + CosmosUnstakeIntent: + title: Cosmos Unstake Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - undelegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intentType + - validatorAddress + - amount + - $ref: '#/components/schemas/BaseStakeIntent' + CosmosWithdrawIntent: + title: Cosmos Withdraw Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + required: + - validatorAddress + - $ref: '#/components/schemas/WithdrawIntent' + CounterpartyPartySettlementAmountsRecord: + title: CounterpartyPartySettlementAmountsRecord + type: object + additionalProperties: + type: object + additionalProperties: + type: object + additionalProperties: + type: string + description: Record> + description: Record> For exchange-style settlements, where the exchange is always the source and client owned connections are the destination. + description: Record>> For broker-style settlements, where the source and destination are both client owned connections. + CreateBitgoChallengeResponse: + title: CreateBitgoChallengeResponse + type: object + properties: + ntilde: + type: string + description: Range proof challenge value + example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 + h1: + type: string + description: Range proof challenge value + example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 + h2: + type: string + description: Range proof challenge value + example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 + 'n': + type: string + description: BitGo's paillier modulus 'n'. + example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 + p: + type: array + items: + type: string + description: Pallier proof challenge value + example: e8be92b67d852d83c4e57a4c25139cbab1801654408c4260ca21d480ea5425a7a7778b30d52c24eed11363a6f7bf1efa986747a2016b91e84b9a7d49b723644f4488ec15c64d83289b1fa73a6607544a2c1964d31931ae9c0f4b5c66a0099f82d52a73d4d7a251a29f279c7f053cc0064989479d9b6d900e92641555683efadad5f08a68a6763102a7a14d4d5aecc6620587ceedb28db338858326fdad35e1b2db54b8a7679d8cad36d88c63c61aff15121c6ec06a724e16980fd334cdbbea8885f88e8a509a42b093361e3152bcf391e3a723ceb4786362fcad9c4945a372d617bebe077e1c7ee49ac81701c06ef126e1178b779f1f4be4b1a3616c3c1821b26ead5cc7b1442216162077fb125a4c9250001797e3a224c79f5cd5a78226a9192000bc584bf479aa1dd83d56628860619778a0c6d9801e2680349ccde39e604af6f1e75226c58d6f608c420eb8091def8d3c7a9a59414e9b9a1df542929c81165a46555f5f51c1cb080f04a9ccc74a5d1e3b053e1e2e4b8566d1a7995478a589 + required: + - ntilde + - h1 + - h2 + - 'n' + - p + CreateBlockWebhook: + type: object + properties: + type: + $ref: '#/components/schemas/WebhookTypeBlock' + url: + type: string + format: uri + example: http://your.server.com/webhook + description: URL to fire the webhook to. + label: + type: string + description: Label of the new webhook. + numConfirmations: + type: integer + minimum: 0 + example: 6 + description: Number of confirmations before triggering the webhook. If 0 or unspecified, requests will be sent to the callback endpoint when the transfer is first seen and when it is confirmed. + required: + - type + - url + CreateKey: + type: object + properties: + coinSpecific: + $ref: '#/components/schemas/KeyCreateCoinSpecific' + encryptedPrv: + type: string + description: Private part of this key pair, encrypted with a passphrase that only the client knows. Required for all sources except 'bitgo'. + source: + $ref: '#/components/schemas/KeySource' + enterprise: + allOf: + - $ref: '#/components/schemas/Id' + description: The Enterprise that will own this key + newFeeAddress: + type: boolean + description: Create a new keychain instead of fetching enterprise key (only for Ethereum) + pub: + allOf: + - $ref: '#/components/schemas/Pub' + description: Public part of this key pair. If the key type is "independent" (default) it is required for user key and is optional for backup key. If key type is "tss" this field is not required. + isDistributedCustody: + type: boolean + description: Set to true if you want to create a key for distributed custody. This parameter is only valid if you have the distributed custody enterprise license enabled and are creating a BitGo key. Otherwise it will throw an error. + example: false + commonPub: + type: string + description: The commonPub for the key. This value is necessary for BLS keys when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. + commonKeychain: + type: string + description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the common pub concatenated with the common chaincode. + keyShares: + type: array + items: + $ref: '#/components/schemas/KeyShare' + description: Only required for BitGo MPC keys. Those will be the shares from the user and the backup provider that BitGo will end up generating the BitGo key (share) from. + type: + $ref: '#/components/schemas/BackupKeyType' + keyType: + allOf: + - $ref: '#/components/schemas/KeyType' + - default: tss + userGPGPublicKey: + type: string + description: User's public key in ASCII armored format. Only required for BitGo MPC keys. + backupGPGPublicKey: + type: string + description: Backup public key in ASCII armored format (may be managed by user or KRS). Only required for BitGo MPC keys. + isMPCv2: + type: boolean + description: Whether a key or wallet is using the Multi-Party Computation version 2 protocol. Optional field. + CreateOrganizationEnterpriseResponse: + title: CreateOrganizationEnterpriseResponse + type: object + properties: + enterpriseId: + $ref: '#/components/schemas/EnterpriseIdNonEmptyString' + userId: + type: string + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[a-f0-9]{32}$ + required: + - enterpriseId + - userId + CreatePolicyRule: + type: object + properties: + coin: + type: string + example: zrx + description: | + If set, the rule will only apply to the given coin or ERC20 token in an + Ethereum wallet. It is generally recommended to not set a coin for policy rules of the following types: + 'advancedWhitelist', 'allTx', 'coinAddressWhitelist', 'coinAddressBlacklist', 'webhook'. + id: + type: string + description: The id of the rule, must be unique among rules in the policy + type: + $ref: '#/components/schemas/CreatePolicyRuleTriggers' + condition: + $ref: '#/components/schemas/PolicyRuleUpdateConditions' + action: + $ref: '#/components/schemas/PolicyRuleActions' + required: + - id + - type + - action + CreatePolicyRuleRequest: + type: object + description: Create or Update policy rule Request. + required: + - name + - adminOnly + - clauses + - filteringConditions + properties: + name: + type: string + maxLength: 256 + description: Human readable name of the rule. + example: Get approval if transferring more than 2 BTC in a minute + adminOnly: + type: boolean + description: true, if the policy rule is a BitGo internal rule, false otherwise. + example: false + clauses: + type: array + description: | + List of policy rule Clauses: a combination of Conditions and Actions. + items: + type: object + description: | + A combination of Conditions and Actions. + required: + - conditions + - actions + properties: + conditions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/TransferAmountConditionRequest' + - $ref: '#/components/schemas/TransferVelocityLimitConditionRequest' + - $ref: '#/components/schemas/TransferDestinationTypeConditionRequest' + - $ref: '#/components/schemas/TransferInitiatorsConditionRequest' + - $ref: '#/components/schemas/TransferWebhookConditionRequest' + actions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/AlwaysDenyActionRequest' + - $ref: '#/components/schemas/WalletAdminActionRequest' + - $ref: '#/components/schemas/FinalApprovalActionRequest' + - $ref: '#/components/schemas/EnterpriseUsersActionRequest' + filteringConditions: + type: array + description: List of Filtering Conditions that must trigger for the policy rule to be Evaluated. + items: + anyOf: + - $ref: '#/components/schemas/WalletIdsFilteringCondition' + - $ref: '#/components/schemas/WalletTypeFilteringCondition' + - $ref: '#/components/schemas/WalletAllFilteringCondition' + lockType: + type: string + description: | + Indicates how the policy rule is locked. + + * 'LOCK_AFTER_DATE' - Will lock after the lockDate set on the policy rule. + * 'PERMANENT' - Is permanently locked. + enum: + - LOCK_AFTER_DATE + - PERMANENT + example: PERMANENT + lockDate: + type: string + description: | + The date after which the policy rule will be locked. Only applicable if the policy rule is locked with + 'LOCK_AFTER_DATE'. + format: date-time + example: '2023-11-13T14:49:48.830522Z' + CreatePolicyRuleTriggers: + type: string + enum: + - advancedWhitelist + - allTx + - allTxNoFiat + - coinAddressWhitelist + - coinAddressBlacklist + - velocityLimit + - webhook + description: What causes this rule to trigger + CreateSendLabel: + type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + address: + $ref: '#/components/schemas/AddressString3' + enterpriseId: + $ref: '#/components/schemas/Id' + label: + type: string + maxLength: 250 + required: + - coin + - address + - enterpriseId + - label + CreateSignatureShareRequest: + type: object + properties: + signatureShare: + allOf: + - $ref: '#/components/schemas/SignatureShare' + description: A user-provided share to be used in the ECDSA or EDDSA MPC signing flow. Please use signatureShares instead + signatureShares: + type: array + items: + $ref: '#/components/schemas/SignatureShare' + description: User-provided shares to be used in the ECDSA or EDDSA MPC signing flow. + signerShare: + type: string + description: | + An openPGP ascii armored message (encrypted to the known HSM public key) containing the + previous signer’s offset secret share as a 128 character hex string (64 bytes) consisting of + the new offset “u” private component from the user [or backup] new offset Y-share as a 64 character + hex string (32 bytes) concatenated with the new offset “chaincode” component of the new offset Y-share + as a 64 character hex string (32 bytes). Must be provided when uploading an R share. + userPublicGpgKey: + type: string + description: User’s public key of the gpg key. + CreateTransactionRequest: + type: object + properties: + idempotencyKey: + type: string + description: The combination of the idempotencyKey, version and walletId has to be unique. If no idempotencyKey is specified then it remains undefined for the txRequest. Note, version is an internal field that is auto incremented on every update to a txRequest. + intent: + $ref: '#/components/schemas/TransactionRequestIntent' + videoApprovers: + allOf: + - $ref: '#/components/schemas/IdArray' + description: (Custodial) Specify who should perform the Video ID with Trust if one should be required. + apiVersion: + type: string + description: Full or Light to differentiate between the different transaction request flows. + enum: + - lite + - full + default: full + preview: + type: boolean + description: | + When set to true, the transaction request is returned without being stored in the DB. + default: false + required: + - intent + CreateWallet: + type: object + properties: + coinSpecific: + $ref: '#/components/schemas/WalletCreateCoinSpecific' + enterprise: + allOf: + - $ref: '#/components/schemas/Id' + description: This is required for Ethereum wallets since they can only be created as part of an enterprise. + keys: + allOf: + - $ref: '#/components/schemas/Keys' + description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. + keySignatures: + type: object + properties: + backup: + type: string + description: a signature of the backup pub key using the user key (useful for change address verification) + bitgo: + type: string + description: a signature of the bitgo pub key using the user key (useful for change address verification) + label: + $ref: '#/components/schemas/WalletLabel' + multisigType: + $ref: '#/components/schemas/WalletMultisigType' + address: + $ref: '#/components/schemas/WalletCustomAddress' + m: + allOf: + - $ref: '#/components/schemas/NumSignatures' + description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. + 'n': + allOf: + - $ref: '#/components/schemas/NumKeychains' + description: This is required for all wallets where the client supplies the keys to be used. The only case where this is not required is when the type is set to 'custodial'. + tags: + type: array + items: + $ref: '#/components/schemas/Id' + type: + $ref: '#/components/schemas/WalletTypePublic' + walletVersion: + type: integer + default: 1 + description: (ETH only) Specify the wallet creation contract version used when creating a wallet contract. Use 0 for the old wallet creation, 1 for the new wallet creation, where it is only deployed upon receiving funds. 2 for wallets with the same functionality as v1 but with NFT support. 3 for MPC wallets. 4 is same as v2 but with some changes related to network identifier and encoding of tx data. v4 is applicable for Arbitrum, Optimism, ZkSync, and other EVM-compatible chains that we will onboard in the future. 5 for MPC MPCv2 wallets. 6 for EVM MPCv2 wallets with receive addresses. + minimum: 0 + maximum: 6 + eip1559: + type: object + description: '(ETH walletVersion: 0 wallets only) Specify eip1559 fee parameters in wallet creation transactions.' + properties: + maxPriorityFeePerGas: + type: string + description: Max priority tip price for EIP1559 transactions. Only for ETH and ERC20 tokens. + maxFeePerGas: + type: string + description: Max total gasPrice for EIP1559 transactions. Only for ETH and ERC20 tokens. + required: + - maxPriorityFeePerGas + - maxFeePerGas + required: + - label + CreateWebhookSecretResponse: + title: CreateWebhookSecretResponse + type: object + properties: + secret: + type: string + required: + - secret + Currencies: + type: array + items: + $ref: '#/components/schemas/Currency' + Currency: + required: + - id + - name + - symbol + type: object + properties: + id: + type: string + format: uuid + symbol: + type: string + name: + type: string + example: + id: 6016e0a9-545a-45fb-8370-caab1680956a + symbol: BTC + name: Bitcoin + Currency1: + title: Currency + type: object + properties: + bitcoinUnit: + type: string + currency: + type: string + required: + - bitcoinUnit + - currency + CustodialPairedValue: + title: Custodial-paired wallet + type: object + description: Custodial-paired wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - custodialPaired + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Custodial Paired Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A custodial paired wallet + CustodialValue: + title: Custodial cold wallet + type: object + description: Custodial cold wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - custodial + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Custodial Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A custodial wallet + CustodialWalletSubType: + title: CustodialWalletSubType + type: string + enum: + - custodialCold + - custodialHot + CustomChangeKeySignatures: + type: object + properties: + user: + type: string + backup: + type: string + bitgo: + type: string + description: | + Signatures for the keys which will be used to derive custom change addresses. + + **Note:** These signatures may only be set once for each wallet and are not modifiable after being set. + DOTBuildOptions: + allOf: + - $ref: '#/components/schemas/AccountBaseBuildOptions2' + - type: object + properties: + fee: + $ref: '#/components/schemas/DOTFeeOptions' + DOTClaimIntent: + title: Dot Claim Unstake + allOf: + - $ref: '#/components/schemas/DOTBuildOptions' + - $ref: '#/components/schemas/WithdrawIntent2' + DOTFeeOptions: + type: object + properties: + amount: + type: string + unit: + type: string + enum: + - baseUnit + - cpu + - ram + formula: + type: string + enum: + - fixed + - feeRate + - perKB + - custom + type: + type: string + enum: + - base + - max + - tip + required: + - amount + DateTime: + type: string + format: date-time + example: {} + DefaultChangeAddressType: + type: string + example: p2wsh + enum: + - p2sh + - p2shP2wsh + - p2wsh + - p2tr + - p2trMusig2 + - default + description: | + (UTXO only) The default script type to use for change for this wallet. Per transaction, you override the default with the 'changeAddressType' parameter. If 'default' is provided, it will clear the 'changeAddressType' default on the wallet. Note that each UTXO coin has different address types available. For example, Only BTC supports 'p2tr'. + DelegationAccrual: + type: object + properties: + rewardsReceived: + description: The total rewards received over the lifetime of the wallet. + type: string + delegated: + description: The total rewards delegated (staked). + type: string + pendingDelegated: + description: The total amount pending to be delegated (staked). + type: string + pendingUndelegated: + description: Total amount pending to be undelegated (unstaked). + type: string + spendable: + description: Total spendable (withdrawable) amount in the wallet. + type: string + locked: + description: The total amount locked but not delegated (staked). Example is staking rewards that are not re-staked and compounding. + type: string + delegationId: + description: The delegation ID. + type: string + delegationAddress: + description: The delegation address. + type: string + withdrawalAddress: + description: The withdrawal address. + type: string + walletId: + description: The wallet ID. + type: string + enterpriseId: + description: The enterprise ID. + type: string + coin: + description: The staking asset. + type: string + date: + description: The date and time of the accrual record. + type: string + format: date-time + DelegationAccruals: + type: object + properties: + accruals: + description: An array of delegation accruals. + type: array + items: + $ref: '#/components/schemas/DelegationAccrual' + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + DelegationResults: + type: object + properties: delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - coin: matic - walletId: 2032e75g451052000636831abd797bd3 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '1000' - apy: '8.3' - unstakeable: false - transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - transactionType: delegate - status: PENDING - statusModifiedDate: 2022-01-10T14:32:28.000Z - amount: '3200000000000000000' - gasPrice: '1000000000000000' - totalStaked: '0' - amount: '3200000000000000000' - gasPrice: '1000000000000000' - MaticUnStakingRequestsListResponseExample: - summary: Matic Staking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestingUserId: 6092e75c451052000636831deb797bd1 - type: UNSTAKE - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - coin: matic - status: NEW - statusModifiedDate: 2022-01-10T14:32:28.000Z - createdDate: 2022-01-10T14:32:28.000Z - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '1600000000000000000' - coin: matic - walletId: 2032e75g451052000636831abd797bd3 - status: PENDING - rewards: '1000000000000000' - lockedRewards: '0' - pendingUnstake: '4800000000000000000' - pendingStake: '1000' - apy: '8.3' - unstakeable: false - transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - transactionType: delegate - status: PENDING - statusModifiedDate: 2022-01-10T14:32:28.000Z - amount: '3200000000000000000' - gasPrice: '1000000000000000' - totalStaked: '0' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - MaticUnStakingRequestWithTransactionsExample: - summary: Matic UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestingUserId: 6092e75c451052000636831deb797bd1 - type: UNSTAKE - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - walletType: custodial - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - coin: matic - status: NEW - statusModifiedDate: 2022-01-10T14:32:28.000Z - createdDate: 2022-01-10T14:32:28.000Z + type: array + minItems: 1 + maxItems: 500 + items: + oneOf: + - $ref: '#/components/schemas/CosmosLikeStakingDelegation' + - $ref: '#/components/schemas/DotStakingDelegation' + - $ref: '#/components/schemas/EthStakingDelegation' + - $ref: '#/components/schemas/MaticStakingDelegation' + - $ref: '#/components/schemas/NearStakingDelegation' + - $ref: '#/components/schemas/SolStakingDelegation' + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + DeleteEnterpriseUser: + type: object + properties: + username: + type: string + format: email + required: + - username + DeployAddressAndForwardTokenResponse: + title: DeployAddressAndForwardTokenResponse + type: object + properties: + txId: + type: string + required: + - txId + DestinationTypeCoinConditionParameter: + title: Asset + type: object + description: The asset this condition applies to. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - coin + example: coin + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Asset + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The asset this condition applies to. Optional. + type: + type: string + description: A cryptocurrency asset. + enum: + - COIN + example: COIN + required: + type: string + description: A value is not required. + enum: + - OPTIONAL + example: OPTIONAL + allowMultiple: + type: boolean + description: Only one value can be provided. + example: 'false' + DestinationTypeTypeConditionParameter: + title: Destination + type: object + description: The type of destination this condition will match. + required: + - name + - label + - description + - type + - required + - allowMultiple + - values + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - type + example: type + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Type + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The type of destination this condition will match + type: + type: string + description: Accepts only enumerated values as listed in the 'values' property of this condition. + enum: + - ENUMERATED + example: ENUMERATED + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + values: + type: array + description: A list of valid values, only values from this list will be accepted. + items: + anyOf: + - $ref: '#/components/schemas/WhitelistedAddressValue' + - $ref: '#/components/schemas/NonWhitelistedAddressValue' + DistributedCustody: + title: DistributedCustody + type: object + properties: + signingBitgoOrg: + $ref: '#/components/schemas/BitgoOrg' + required: + - signingBitgoOrg + DistributedCustodyUpdateEnterprise: + type: object + description: Parameters associated with distributed custody enterprises. If you want to remove 'signingBitgoOrg', set it to null. + properties: + signingBitgoOrg: + type: string + description: BitGo Organization related to this entity. Allowed values are BitGo Inc, BitGo Trust, BitGo New York, BitGo Germany, BitGo Switzerland, Frankfurt DE Trust, BitGo Sister Trust 1, BitGo Korea, BitGo Singapore, null + nullable: true + DomesticWireBankAccount: + title: Domestic Wire Bank Account + type: object + description: | + An external bank account. 'routingNumber' must be set for US bank accounts. + 'swiftCode' must be set for banks outside the US. + properties: + accountNumber: + description: Bank account number or IBAN. + type: string + minLength: 1 + maxLength: 34 + example: 114584906 + enterpriseId: + $ref: '#/components/schemas/Id' + address: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + address1: + type: string + example: 2390 El Camino Real + address2: + type: string + example: Palo Alto, CA 94306 + address3: + type: string + example: '' + name: + type: string + example: America California Bank + ownerName: + type: string + example: Donald E. Knuth + ownerAddress: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + owner: + type: object + description: Bank account owner + properties: + name: + type: string + example: Donald E. Knuth + address1: + type: string + example: Computer Science Department + address2: + type: string + example: Stanford University + address3: + type: string + example: Stanford, CA 94305-9045 + required: + - name + - address1 + routingNumber: + description: US bank routing number. Required for domestic wire transfers within the US. + type: string + example: '129131673' + minLength: 9 + maxLength: 9 + pattern: ^[0-9]+$ + shortCountryCode: + $ref: '#/components/schemas/ShortCountryCode' + type: + $ref: '#/components/schemas/BankAccountType' + currency: + $ref: '#/components/schemas/BankAccountCurrency' + furtherCreditTo: + type: string + example: Donald E. Knuth + intermediaryBankName: + type: string + example: America California Bank + intermediaryBankId: + type: string + example: 59cd72485007a239fb00282ed480da1f + required: + - accountNumber + - address1 + - shortCountryCode + - name + - owner + - enterpriseId + - routingNumber + DotAccountBaseBuildOptions: + title: DotAccountBaseBuildOptions + allOf: + - type: object + properties: + fee: + type: object + properties: + amount: + oneOf: + - type: string + - type: number + formula: + type: string + enum: + - fixed + - feeRate + - perKB + - custom + type: + type: string + enum: + - base + - max + - tip + unit: + type: string + enum: + - baseUnit + - cpu + - ram + required: + - amount + - $ref: '#/components/schemas/AccountBaseBuildOptions' + DotAddress: + title: Dot Address + type: object + properties: + rootAddress: + type: string + nonceTracker: + type: object + properties: + lastReservedNonce: + type: number + lastExecutedNonce: + type: number + detectedMissingNonces: + type: array + items: + type: object + properties: + nonce: + type: number + isNonceLocked: + type: boolean + nonceLockExpireTime: + type: string + format: date + title: Date String + required: + - nonce + - isNonceLocked + detecMissingNoncesData: + type: array + items: + type: object + properties: + nonce: + type: number + isNonceLocked: + type: boolean + nonceLockExpireTime: + type: string + format: date + title: Date String + required: + - nonce + - isNonceLocked + required: + - lastReservedNonce + - lastExecutedNonce + - detectedMissingNonces + - detecMissingNoncesData + required: + - rootAddress + - nonceTracker + DotConsolidateIntent: + title: DOT Consolidate Intent + allOf: + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + DotCreateAccountIntent: + title: DOT Create Account Intent + allOf: + - type: object + properties: + delayBlocks: + type: string + proxyType: + type: string + index: + $ref: '#/components/schemas/optionalNumber' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - delayBlocks + - proxyType + - $ref: '#/components/schemas/AccountBaseCreateAccountIntent' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DotPaymentIntent: + title: DOT Payment Intent + allOf: + - type: object + properties: + proxy: + $ref: '#/components/schemas/DotProxy' + owner: + $ref: '#/components/schemas/optionalString' + required: + - proxy + - owner + - $ref: '#/components/schemas/PaymentIntent' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DotPaymentIntent1: + title: DOT Payment Intent + allOf: + - type: object + properties: + proxy: + $ref: '#/components/schemas/DotProxy' + owner: + $ref: '#/components/schemas/optionalString' + required: + - proxy + - owner + - $ref: '#/components/schemas/PaymentIntent1' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DotProxy: + title: DotProxy + type: object + properties: + name: + $ref: '#/components/schemas/optionalString' + addressString: + $ref: '#/components/schemas/optionalString' + asset: + $ref: '#/components/schemas/optionalString' + amountString: + $ref: '#/components/schemas/optionalString' + DotStakingDelegation: + title: DOT + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + DotStakingIntent: + title: DOT Staking Intent + allOf: + - type: object + properties: + amount: + $ref: '#/components/schemas/Amount' + stakingProxy: + type: string + addToStake: + $ref: '#/components/schemas/optionalBoolean' + addProxy: + $ref: '#/components/schemas/optionalBoolean' + required: + - amount + - stakingProxy + - $ref: '#/components/schemas/StakeIntent' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DotStakingRequest: + title: DOT + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '1600000000000000000' - coin: matic - walletId: 2032e75g451052000636831abd797bd3 - status: PENDING - rewards: '1000000000000000' - lockedRewards: '0' - pendingUnstake: '4800000000000000000' - pendingStake: '1000' - apy: '8.3' - unstakeable: false + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/DotStakingDelegation' transactions: - - id: d0355adbc-55b43-5tta-9a9d-726a05bca0ai - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - transactionType: delegate - status: PENDING - statusModifiedDate: 2022-01-10T14:32:28.000Z - amount: '3200000000000000000' - gasPrice: '1000000000000000' - totalStaked: '0' - amount: '6400000000000000000' - gasPrice: '1000000000000000' - NearStakingRequestsListResponseExample: - summary: Near Staking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: STAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - delegated: '1300000000000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '1300000000000000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '100000000' - unstakingMin: '0' - transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1300000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1300000000000000000' - NearUnStakingRequestsListResponseExample: - summary: Near UnStaking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: UNSTAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - delegated: '1310000000000000000' - status: ACTIVE - rewards: '100000000000000000' - lockedRewards: '0' - pendingUnstake: '1310000000000000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '100000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/DotStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + DotStakingRequestPOSTBody: + title: DOT stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to stake in base units. + type: string + example: '10000000000' + DotStakingRequestWithTransactions: + title: DOT + allOf: + - $ref: '#/components/schemas/DotStakingRequest' + - type: object + properties: transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1300000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1300000000000000000' - NearStakingRequestWithoutDelegationsExample: - summary: Near Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: STAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1300000000000000000' - NearStakingRequestWithTransactionsExample: - summary: Near Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: STAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - delegated: '1300000000000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '1300000000000000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '100000000' - unstakingMin: '0' - transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1300000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1300000000000000000' - NearUnStakingRequestWithoutDelegationsExample: - summary: Near UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: UNSTAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1310000000000000000' - NearUnStakingRequestWithTransactionsExample: - summary: Near UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - walletType: custodial - type: UNSTAKE - coin: near - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW + type: array + items: + oneOf: + - $ref: '#/components/schemas/DotStakingTransaction' + DotStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + DotUnStakingRequestPOSTBody: + title: DOT unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + type: + description: Staking Request type = 'UNSTAKE'. + type: string + example: UNSTAKE + delegationId: + description: The delegation ID representing the delegation to unstake. + type: string + amount: + description: Amount to unstake in base units. + type: string + example: '10000000000' + required: + - type + DotUnstakingIntent: + title: DOT Unstaking Intent + allOf: + - type: object + properties: + amount: + $ref: '#/components/schemas/Amount' + stakingProxy: + type: string + stopStaking: + $ref: '#/components/schemas/optionalBoolean' + required: + - amount + - stakingProxy + - $ref: '#/components/schemas/UnstakeIntent' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DotWallet: + title: Dot Wallet + type: object + properties: + rootAddress: + type: string + pendingChainInitialization: + type: boolean + nonceAddress: + type: string + required: + - rootAddress + - pendingChainInitialization + DotWalletStakingSpendableAttributes: + type: object + properties: + stakingSpendableAttributes: + $ref: '#/components/schemas/StakingSpendableAttributes' + unstakingSpendableAttributes: + $ref: '#/components/schemas/UnStakingSpendableAttributes' + DotWalletStakingStateAttributes: + type: object + properties: + spendableAttributes: + $ref: '#/components/schemas/DotWalletStakingSpendableAttributes' + permissionAttributes: + $ref: '#/components/schemas/WalletStakingPermissionAttributes' + disclaimerAttributes: + $ref: '#/components/schemas/WalletStakingDisclaimerAttributes' + DotWithdrawStakeIntent: + title: DOT Withdraw Stake Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/WithdrawIntent' + - $ref: '#/components/schemas/DotAccountBaseBuildOptions' + DuplicateSequenceId: + title: Duplicate SequenceId + allOf: + - $ref: '#/components/schemas/PlatformPlatformError' + - properties: + name: + type: string + description: Error code + enum: + - DuplicateSequenceId + required: + - name + DuplicateSequenceId1: + title: Duplicate SequenceId + allOf: + - $ref: '#/components/schemas/PlatformError3' + - properties: + name: + type: string + description: Error code + enum: + - DuplicateSequenceId + required: + - name + EIP1559FeeOptions: + title: EIP1559FeeOptions + type: object + properties: + gasLimit: + $ref: '#/components/schemas/optionalNumber' + maxFeePerGas: + $ref: '#/components/schemas/optionalNumber' + maxPriorityFeePerGas: + $ref: '#/components/schemas/optionalNumber' + ESignatures: + title: ESignatures + type: array + items: + type: object + properties: + contractSignerNameFull: + type: string + minLength: 1 + contractSignedDate: + type: string + format: date-time + title: ISO Date String + contractSignedIPAddress: + type: string + minLength: 1 + contractType: + $ref: '#/components/schemas/ContractType' + contractVersion: + type: string + minLength: 1 + userAgreesToTerms: + type: boolean + required: + - contractSignerNameFull + - contractSignedDate + - contractSignedIPAddress + - contractType + - contractVersion + - userAgreesToTerms + ETHSignMessageIntent: + title: Eth sign message + allOf: + - $ref: '#/components/schemas/BaseIntent2' + - type: object + properties: + intentType: + type: string + enum: + - signMessage + required: + - intentType + EcdsaConfig: + title: EcdsaConfig + type: object + properties: + challenge: + $ref: '#/components/schemas/ChallengePartyConfig' + required: + - challenge + Email: + type: string + format: email + example: user@example.com + Email1: + title: Email + type: object + properties: + email: + type: string + example: user@email.com + format: email + verified: + type: boolean + example: true + required: + - email + - verified + EmergencyPhone: + type: string + description: Phone number for emergencies + example: '+11234567890' + EnableTokenIntent: + title: EnableTokenIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - enableToken + enableTokens: + type: array + items: + type: object + properties: + name: + type: string + address: + $ref: '#/components/schemas/optionalString' + required: + - name + required: + - intentType + - enableTokens + - $ref: '#/components/schemas/BaseIntent' + EncryptedShare: + title: EncryptedShare + allOf: + - type: object + properties: + type: + $ref: '#/components/schemas/ShareType' + required: + - type + - $ref: '#/components/schemas/BaseShare' + Enterprise: + title: Enterprise + type: object + properties: + id: + $ref: '#/components/schemas/EnterpriseIdString' + name: + type: string + example: Small Company + additionalEnterpriseInfo: + $ref: '#/components/schemas/AdditionalEnterpriseInfo' + bitgoOrg: + allOf: + - $ref: '#/components/schemas/BitgoOrg' + description: BitGo Organization related to this entity + kycState: + $ref: '#/components/schemas/KycState' + legalIdentifiers: + $ref: '#/components/schemas/LegalIdentifiers' + type: + type: string + latestSAVersionSigned: + type: number + example: 0 + travelRule: + type: boolean + productLicenses: + type: array + items: + type: string + canAccessBorrowing: + type: boolean + description: whether the enterprise has the licence for BitGo Prime Borrowing + canAccessLending: + type: boolean + description: whether the enterprise has the licence for BitGo Prime Lending + canAccessSettlement: + type: boolean + description: whether the enterprise has the licence to utilize settlement functionality + canAccessTrading: + type: boolean + description: whether the enterprise has the licence to access BitGo Trading + canCreateColdWallet: + type: boolean + description: whether the enterprise has the license to create cold wallets + canCreateHotWallet: + type: boolean + description: whether the enterprise has the license to create hot wallets + canCreateCustodialWallet: + type: boolean + description: whether the enterprise has the license to create custodial wallets + canCreateOffchainWallet: + type: boolean + description: whether the enterprise has the license to create trading accounts + oneTimeFees: + type: array + items: + type: string + upfrontPaymentStatus: + type: string + ethAlwaysUseHop: + type: boolean + description: Always use hop address for ETH transactions + usersViewAllWallets: + type: boolean + description: All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself + example: true + videoIdWaived: + type: boolean + description: Whether the customer has waived the need for Video ID on low risk withdrawals. + example: false + tradeOnboardingAgreement: + allOf: + - $ref: '#/components/schemas/OnboardingAgreement' + description: Who & when the MPA license was ack'd + stakingServicesAgreement: + $ref: '#/components/schemas/OnboardingAgreement' + custodyServicesAgreement: + $ref: '#/components/schemas/OnboardingAgreement' + accountType: + allOf: + - $ref: '#/components/schemas/AccountType' + description: Indicates which type of KYC process the enterprise has to complete + businessModel: + $ref: '#/components/schemas/BusinessModel' + salesforceAccountId: + type: string + description: Opportunity ID from Salesforce + salesforceOpportunityId: + type: string + opportunityName: + type: string + description: Opportunity Name from Salesforce + salesEmail: + type: string + cheetahAccountId: + type: string + description: CheetahAccountID is the unique ID for a BitGo Trust enterprise in Cheetah, which is the accounting system used by Trust. + primaryContact: + type: string + description: The Id of the User who is the primary contact + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + organizationId: + $ref: '#/components/schemas/OrganizationIdString' + emergencyPhone: + type: string + description: Phone number for emergencies + example: '+11234567890' + pricingPlan: + type: string + description: The pricing plan of the enterprise + approvalsRequired: + type: number + description: How many Enterprise Admins are required for action to fire + example: 1 + mutablePolicyWindow: + type: number + description: Time in seconds after which policies on this Enterprise cannot be updated + example: 172800 + freeze: + $ref: '#/components/schemas/Freeze' + bitgoEthKey: + type: string + description: The public portion of the ethererum key generated for the enterprise fee address + ethFeeAddress: + type: string + description: The eth fee address used to pay for network transaction fees of this enterprise + walletLimit: + type: object + additionalProperties: + type: number + preferredUi: + allOf: + - $ref: '#/components/schemas/AvailableUI' + description: The UI that this enterprise prefers to use + custodialWalletLimit: + nullable: true + type: object + additionalProperties: + type: number + featureFlags: + type: array + items: + type: string + labels: + type: array + items: + type: string + publicLabels: + type: array + items: + type: string + description: Subset of labels that are OK to return back to client in GetEnterpriseResponse + licenses: + type: array + items: + type: string + description: New licences that are not stored as flags. Tax requires Portfolio Professional or Institutional + ellipticId: + type: string + description: Identifier for environment variables for a customer's Elliptic API credentials + ellipticHotWallets: + type: boolean + description: Hot wallet transactions on this enterprise are monitored in Elliptic + vaspId: + type: string + bitgoVaspId: + type: string + coinSpecific: + type: object + additionalProperties: {} + walletCounts: + type: object + description: Number of wallets per coin + properties: + enterpriseWallets: + type: object + additionalProperties: + type: number + required: + - enterpriseWallets + activePricingType: + nullable: true + allOf: + - $ref: '#/components/schemas/FlattenedPricingType' + source: + $ref: '#/components/schemas/AggregatorSourceType' + totalWalletsCount: + type: number + description: The total number of wallets in the enterprise + example: 1 + internal: + $ref: '#/components/schemas/EnterpriseInternal' + distributedCustody: + $ref: '#/components/schemas/DistributedCustody' + migratedToNewPolicyService: + type: boolean + description: Whether the enterprise has been migrated to the new policy service + videoIdUsers: + type: array + items: + type: object + properties: + email: + type: string + description: The email of the user + minLength: 1 + userId: + type: string + description: The user ID + minLength: 1 + inviter: + type: string + description: The inviter of the user + minLength: 1 + state: + allOf: + - $ref: '#/components/schemas/VideoIdUserState' + description: The state of the user + videoCallId: + type: string + description: The user's video call ID + approvalDate: + type: string + description: The date the user was approved + archivedDate: + type: string + description: The date the user was archived + pendingApprovalId: + type: string + description: The ID if the user is pending approval + videoLink: + type: string + description: The user's video link + enterpriseId: + type: string + description: EnterpriseId of enterprise this video users belongs to + enterpriseName: + type: string + description: EnterpriseName of enterprise this video users belongs to + required: + - email + - userId + - inviter + - state + description: IDs of users on the enterprise that are approved for custodial video ID + sourceConfig: + type: array + items: + type: object + properties: + source: + $ref: '#/components/schemas/AggregatorSourceType' + metadata: + type: object + description: 'The following fields: source, showBanner, readyForDistribution, showVideoIdBanner, ftxCreditorId were added for FTX insitutional distribution. Reference: https://bitgoinc.atlassian.net/browse/COPS-2695' + properties: + showBanner: + type: boolean + readyForDistribution: + type: boolean + showVideoIdBanner: + type: boolean + ftxCreditorId: + type: string + ftxHost: + type: string + required: + - source + description: Array to store configs, upon which certain actions are taken, per source + videoIdRequired: + type: boolean + description: Check for video ID Users + contract: + allOf: + - $ref: '#/components/schemas/EnterpriseContract' + description: Contract information + referralCode: + allOf: + - $ref: '#/components/schemas/ReferralCodeString' + description: Referral code + oauthSetting: + allOf: + - $ref: '#/components/schemas/OAuthSetting' + description: oauth setting of the enterprise * + optOutOfPoints: + type: boolean + description: Opt Out of Points System Flag + required: + - id + - name + - additionalEnterpriseInfo + - bitgoOrg + - kycState + - legalIdentifiers + - type + - latestSAVersionSigned + - travelRule + - productLicenses + - canAccessBorrowing + - canAccessLending + - canAccessSettlement + - canAccessTrading + - canCreateColdWallet + - canCreateHotWallet + - canCreateCustodialWallet + - canCreateOffchainWallet + - oneTimeFees + - upfrontPaymentStatus + - ethAlwaysUseHop + - usersViewAllWallets + - videoIdWaived + EnterpriseAccountType: + type: string + description: Indicates which type of KYC process the enterprise has to complete + enum: + - individual + - entity + EnterpriseActiveKits: + type: array + items: + allOf: + - $ref: '#/components/schemas/AuditableItem' + - $ref: '#/components/schemas/EnterpriseKitName' + EnterpriseActivePricingType: + allOf: + - $ref: '#/components/schemas/AuditableItem' + - $ref: '#/components/schemas/EnterprisePricingType' + EnterpriseAdminAction: + title: Require enterprise-admin approval + type: object + description: Requires approval from an enterprise admin. + required: + - name + - label + - description + - status + - adminOnly + properties: + name: + type: string + description: The name of the action. + enum: + - approvals.customer.enterpriseAdmin + example: approvals.customer.enterpriseAdmin + label: + type: string + description: A label for the action which can be shown to an end user. + example: Enterprise Admin + description: + type: string + description: A description for the action which can be shown to an end user. + example: Enterprise admin approval + status: + type: string + description: | + Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The action is available for use. + * 'INACTIVE' - The action is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal action, false otherwise. + example: false + EnterpriseAdminActionRequest: + title: Require enterprise-admin approval + type: object + description: Require enterprise-admin approval. + required: + - name + properties: + name: + type: string + description: Name of the associated Action. + enum: + - approvals.customer.enterpriseAdmin + example: approvals.customer.enterpriseAdmin + operator: + $ref: '#/components/schemas/OperatorType' + EnterpriseAvailableUI: + type: string + enum: + - bg23 + EnterpriseContract: + title: EnterpriseContract + type: object + properties: + startDate: + oneOf: + - type: string + format: date + title: Date String + - type: string + format: date-time + title: ISO Date String + endDate: + oneOf: + - type: string + format: date + title: Date String + - type: string + format: date-time + title: ISO Date String + isExternal: + type: boolean + EnterpriseIdNonEmptyString: + title: EnterpriseIdNonEmptyString + type: string + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + EnterpriseIdString: + title: EnterpriseIdString + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + EnterpriseInternal: + title: EnterpriseInternal + type: object + properties: + migratedToNewPolicyService: + nullable: true + type: boolean + description: Whether the enterprise has been migrated to the new policy service + policiesLocked: + type: boolean + umsMappingComplete: + nullable: true + type: boolean + required: + - migratedToNewPolicyService + - policiesLocked + - umsMappingComplete + EnterpriseKitName: + type: object + properties: + name: + type: string + enum: + - default + - wallet + - custody + - liquidity + - cryptoCompare + EnterpriseKits: + type: array + items: + type: object + properties: + name: + $ref: '#/components/schemas/EnterpriseKitName' + datesActive: + type: array + items: + $ref: '#/components/schemas/AuditableItem' + EnterprisePermission: + type: string + enum: + - admin + EnterprisePricingType: + type: object + properties: + name: + type: string + enum: + - starter + - growth + EnterprisePricingTypes: + type: array + items: + type: object + properties: + name: + $ref: '#/components/schemas/EnterprisePricingType' + datesActive: + type: array + items: + $ref: '#/components/schemas/AuditableItem' + EnterpriseStub: + title: Enterprise Stub + type: object + properties: + id: + $ref: '#/components/schemas/EnterpriseIdString' + name: + type: string + example: Small Company + minLength: 1 + pricingPlan: + type: string + ethFeeAddress: + type: string + description: The eth fee address used to pay for network transaction fees of this enterprise + required: + - id + - name + EnterpriseUser: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + username: + $ref: '#/components/schemas/Email' + firstName: + type: string + description: User first name + example: Jane + lastName: + type: string + description: User last name + example: Doe + fullName: + type: string + description: User full name + example: Jane Doe + isActive: + type: boolean + email: + type: object + properties: + email: + $ref: '#/components/schemas/Email' + verified: + type: boolean + description: User has verified their email + verified: + type: boolean + description: User has verified their email + identity: + type: object + properties: + kyc: + type: object + properties: + hasVideoID: + type: boolean + example: true + description: User has done initial video ID + overallState: + $ref: '#/components/schemas/UserKycState' + required: + type: boolean + example: true + description: Sanction screening is required for this User + EnterpriseUserAction: + title: Require approval from a set of enterprise users + type: object + description: Requires approval from a set of enterprise users. + required: + - name + - label + - description + - status + - adminOnly + - parameters + properties: + name: + type: string + description: The name of the action. + enum: + - approvals.customer.enterpriseUser + example: approvals.customer.enterpriseUser + label: + type: string + description: A label for the action which can be shown to an end user. + example: Require approval from a set of users + description: + type: string + description: A description for the action which can be shown to an end user. + example: Enterprise users approval + status: + type: string + description: | + Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The action is available for use. + * 'INACTIVE' - The action is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal action, false otherwise. + example: false + parameters: + type: array + description: A list of Parameters to control how the action behaves. + items: + anyOf: + - $ref: '#/components/schemas/EnterpriseUserIdsActionParameter' + - $ref: '#/components/schemas/MinRequireActionParameter' + - $ref: '#/components/schemas/InitiatorIsAllowedToApproveActionParameter' + EnterpriseUserIdsActionParameter: + title: Approvers user ids + type: object + description: The set of enterprise users approvers. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the action parameter. + enum: + - userIds + example: userIds + label: + type: string + description: A label for the action parameter which can be shown to an end user. + example: Users + description: + type: string + description: A description for the action parameter which can be shown to an end user. + example: List of enterprise users for approval + type: + type: string + description: The type of acceptable values for this action parameter. + enum: + - BITGO_USER_ID + example: BITGO_USER_ID + required: + type: string + description: A value must be always provided for exactly one or more of the action Parameters with a 'required' value of 'ONE_OR_MORE'. In other words, all the action Parameters with a 'required' of 'ONE_OR_MORE' form a group, and a value must be provided for one or more of the action Parameters in the group. + enum: + - ONE_OR_MORE + example: ONE_OR_MORE + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: true + EnterpriseUserRole: + title: EnterpriseUserRole + type: string + enum: + - admin + - member + EnterpriseUsersActionRequest: + title: Require approval from a set of enterprise users + type: object + description: Require approval from a set of enterprise users. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the associated Action. + enum: + - approvals.customer.enterpriseUser + example: approvals.customer.enterpriseUser + parameters: + type: object + description: Required data needed to configure the Action. + required: + - userIds + - minRequired + properties: + userIds: + type: array + items: + type: string + example: 63cf101298470200073bbae71add80d5 + description: List of enterprise users for approval + example: + - 63cf101298470200073bbae71add80d5 + minRequired: + type: number + description: Minimum required number of approvers + example: 1 + initiatorIsAllowedToApprove: + type: boolean + description: Whether the initiator is allowed to approve this action. false by default. + example: false + default: false + operator: + $ref: '#/components/schemas/OperatorType' + EnterpriseUsersResponse: + type: object + properties: + adminUsers: + type: array + items: + $ref: '#/components/schemas/EnterpriseUser' + nonAdminUsers: + type: array + items: + $ref: '#/components/schemas/EnterpriseUser' + count: + type: integer + description: The total number of Users returned. + incomplete: + type: boolean + description: Set to true if the Enterprise has at least 500 v1 or v2 wallets. If there are more than 500 wallets (either v1 or v2) it could mean that some Wallets were not considered for finding all Users. + EnterpriseValue: + title: Enterprise + type: object + description: Applies to the entire enterprise. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - enterprise + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Enterprise + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: Spending from the entire transferring wallet's enterprise will be included + EnterpriseWebhookType: + title: EnterpriseWebhookType + type: string + enum: + - bankAccount + - accessToken + - policyBalanceChange + EnterprisesPaginatedResponse: + title: EnterprisesPaginatedResponse + type: object + properties: + enterprises: + type: array + items: + oneOf: + - $ref: '#/components/schemas/Enterprise' + - $ref: '#/components/schemas/EnterpriseStub' + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. + minLength: 1 + required: + - enterprises + EnterprisesResponse: + title: EnterprisesResponse + type: object + properties: + enterprises: + type: array + items: + oneOf: + - $ref: '#/components/schemas/Enterprise' + - $ref: '#/components/schemas/EnterpriseStub' + required: + - enterprises + EntryType: + title: EntryType + type: string + enum: + - GO_ACCOUNT + description: codec for entry type + EosAddress: + title: Eos Address + type: object + properties: + rootAddress: + type: string + memoId: + type: string + required: + - rootAddress + - memoId + EosWallet: + title: Eos Wallet + type: object + properties: + rootAddress: + type: string + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + lastMemoId: + type: string + required: + - rootAddress + - pendingChainInitialization + - creationFailure + - lastMemoId + Error: + required: + - error + - errorName + - reqId + type: object + properties: + error: + type: string + errorName: + type: string + reqId: + type: string + example: + error: invalid permission + errorName: backend:common:forbidden + reqId: d41d4d21e63d63b293caf55f2a739a79 + ErrorPayload: + type: object + properties: + error: + type: string + errorName: + type: string + required: + - error + - errorName + EstimateTransactionFees: + title: Bitcoin + type: object + properties: + feePerKb: + type: integer + description: (BTC only) The fee (in base units) per kilobyte (or virtual kilobyte) required to confirm a transaction on 2 or more blocks. + example: 15902 + cpfpFeePerKb: + type: integer + description: | + (BTC only) Child-Pays-For-Parent (CPFP) fee (in base units) per kilobyte (or virtual kilobyte). Includes the fees for all unconfirmed transactions dependent on the CPFP transaction. + numBlocks: + type: integer + description: | + (BTC only) The number of blocks required to confirm a transaction. You can use 'numBlocks' to estimate the fee rate by targeting confirmation within a given number of blocks. If both 'feeRate' and 'numBlocks' are absent, the transaction defaults to 2 blocks for confirmation. + + Note: The 'maxFeeRate' limits the fee rate generated by 'numBlocks'. + example: 2 + confidence: + type: integer + minimum: 0 + maximum: 100 + description: (BTC only) The confidence (as a percentage) in the accuracy of the fee estimate. + example: 80 + feeByBlockTarget: + type: object + description: | + (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. + + Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. + example: + '1': 50536 + '2': 15902 + '3': 1579 + required: + - feePerKb + - numBlocks + EstimateTransactionFeesAccountCoin: + title: Account-based + type: object + properties: + feeEstimate: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: fee estimate for a transaction for the given account-based coin, denominated in the base units of that coin (i.e. Drops for XRP, Stroops for XLM, etc) + required: + - feeEstimate + EstimateTransactionFeesAlgo: + title: ALGO + type: object + properties: + feeRate: + description: Calculated by transaction size. Fee rate is in microAlgo (base unit). + type: integer + example: 1 + minimumFee: + description: Always 1000. + type: integer + default: 1000 + example: 1000 + required: + - feeRate + - minimumFee + EstimateTransactionFeesEth: + title: ETH + type: object + properties: + feeEstimate: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: fee estimate for a transaction for the given account-based coin, denominated in base units (i.e. Wei) + gasLimitEstimate: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The amount of gas that the transaction will use, if recipient is provided in the request + minGasPrice: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: minimum gas price that can be provided in base units + minGasLimit: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: minimum gas limit that can be provided in base units + maxGasLimit: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: maximum gas limit that can be provided in base units + minGasIncreaseBy: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: gas price must not be increased by less than this after being introduced to the network + eip1559: + allOf: + - $ref: '#/components/schemas/EstimateTransactionFeesEthEip1559' + description: EIP 1559 fee estimates + required: + - feeEstimate + - minGasPrice + - minGasLimit + - maxGasLimit + - minGasIncreaseBy + EstimateTransactionFeesEthEip1559: + type: object + properties: + baseFee: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: Block base fees, in base units (i.e. Wei), per gas. Zeroes are returned for pre-EIP-1559 blocks + gasUsedRatio: + description: Block gas used ratio. Calculated as the ratio of gasUsed and gasLimit + type: string + safeLowMinerTip: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: 25th percentile of the tips spent in the last block + normalMinerTip: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: 35th percentile of the tips spent in the last block + standardMinerTip: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: 50th percentile of the tips spent in the last block + fastestMinerTip: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: 75th percentile of the tips spent in the last block + ludicrousMinerTip: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: 97th percentile of the tips spent in the last block + required: + - baseFee + - gasUsedRatio + EstimateTransactionFeesTrx: + title: TRX + type: object + properties: + fee: + description: Maximum fee for a payment transaction, denominated in base units (i.e. sun). It varies for TRX and TRC20 Token based on the coin parameter + type: integer + example: 100000000 + newAccountFee: + description: Fee for wallet initialization + type: integer + example: 100000000 + netFee: + description: Fee rate per unit of tx size. Not used currently ('fee' is a maximum limit, the network charges the cost of the transaction) + type: integer + example: 1000 + required: + - fee + - newAccountFee + - netFee + EthAccelerationIntent: + title: ETH Acceleration Intent + allOf: + - type: object + properties: + feeOptions: + oneOf: + - $ref: '#/components/schemas/FeeOption' + - $ref: '#/components/schemas/EIP1559FeeOptions' + required: + - feeOptions + - $ref: '#/components/schemas/AccelerationIntent' + - $ref: '#/components/schemas/EthBuildOptionsWithoutFeeOptions' + EthBuildOptions: + title: EthBuildOptions + allOf: + - type: object + properties: + feeOptions: + oneOf: + - $ref: '#/components/schemas/FeeOption' + - $ref: '#/components/schemas/EIP1559FeeOptions' + hopParams: + type: object + properties: + gasPriceMax: + $ref: '#/components/schemas/optionalNumber' + paymentId: + $ref: '#/components/schemas/optionalString' + userReqSig: + $ref: '#/components/schemas/optionalString' + required: + - gasPriceMax + - paymentId + - userReqSig + receiveAddress: + $ref: '#/components/schemas/optionalString' + senderAddressIndex: + $ref: '#/components/schemas/optionalNumber' + - $ref: '#/components/schemas/AccountBaseBuildOptions' + EthBuildOptionsWithoutFeeOptions: + title: EthBuildOptionsWithoutFeeOptions + allOf: + - type: object + properties: + hopParams: + type: object + properties: + gasPriceMax: + $ref: '#/components/schemas/optionalNumber' + paymentId: + $ref: '#/components/schemas/optionalString' + userReqSig: + $ref: '#/components/schemas/optionalString' + required: + - gasPriceMax + - paymentId + - userReqSig + receiveAddress: + $ref: '#/components/schemas/optionalString' + senderAddressIndex: + $ref: '#/components/schemas/optionalNumber' + - $ref: '#/components/schemas/AccountBaseBuildOptions' + EthConsolidateIntent: + title: ETH Consolidate Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + - $ref: '#/components/schemas/EthBuildOptions' + EthConsolidateTokenIntent: + title: ETH Consolidate Token Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - consolidateToken + recipients: + type: array + items: + allOf: + - type: object + properties: + tokenData: + $ref: '#/components/schemas/TokenData' + required: + - tokenData + - $ref: '#/components/schemas/RecipientEntry' + consolidateId: + $ref: '#/components/schemas/optionalString' + keepAlive: + $ref: '#/components/schemas/optionalBoolean' + required: + - intentType + - recipients + - consolidateId + - keepAlive + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/EthBuildOptions' + EthFillNonceBuildOptions: + title: EthFillNonceBuildOptions + type: object + properties: + feeOptions: + oneOf: + - $ref: '#/components/schemas/FeeOption' + - $ref: '#/components/schemas/EIP1559FeeOptions' + receiveAddress: + $ref: '#/components/schemas/optionalString' + senderAddressIndex: + $ref: '#/components/schemas/optionalNumber' + EthFillNonceIntent: + title: ETH Fill Nonce Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/FillNonceIntent' + - $ref: '#/components/schemas/EthFillNonceBuildOptions' + EthLikeStakeIntent: + title: EthLike Stake Intent + allOf: + - type: object + properties: + intentType: + $ref: '#/components/schemas/IntentType' + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + EthPaymentIntent: + title: ETH Payment Intent + allOf: + - type: object + properties: + selfSend: + $ref: '#/components/schemas/optionalBoolean' + required: + - selfSend + - $ref: '#/components/schemas/PaymentIntent' + - $ref: '#/components/schemas/EthBuildOptions' + EthStakingDelegation: + title: ETH + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + EthStakingIntent: + title: ETH Staking Intent + allOf: + - type: object + properties: + pubkey: + type: string + withdrawalCredentials: + type: string + signature: + type: string + depositDataRoot: + type: string + required: + - pubkey + - withdrawalCredentials + - signature + - depositDataRoot + - $ref: '#/components/schemas/StakeIntent' + - $ref: '#/components/schemas/EthBuildOptions' + EthStakingRequest: + title: ETH + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: + gasPrice: + type: string + description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: b80db6c80057404d4ed82f8e007a007192aac2499563af81909212a6a2c33d55 - delegated: '1310000000000000000' - status: ACTIVE - rewards: '100000000000000000' - lockedRewards: '0' - pendingUnstake: '1310000000000000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '100000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/EthStakingDelegation' transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1300000000000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1300000000000000000' - SolStakingRequestsListResponseExample: - summary: Sol Staking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '1000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStaking: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' - transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: CONFIRMED - amount: '1000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1000000000' - SolUnStakingRequestsListResponseExample: - summary: Sol UnStaking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '1012000000' - status: ACTIVE - rewards: '12000000' - lockedRewards: '0' - pendingUnstake: '1012000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/EthStakingTransaction' + amount: + description: Amount to stake in base units (i.e. Wei for ETH). For Ethereum the amount needs to be a multiple of 32 ETH (32000000000000000000 Wei). For Testnet the 32 ETH multiple restriction does not apply. + type: string + EthStakingRequestPOSTBody: + title: ETH stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + gasPrice: + type: string + description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. + EthStakingRequestWithTransactions: + title: ETH + allOf: + - $ref: '#/components/schemas/EthStakingRequest' + - type: object + properties: transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY - amount: '1012' - transactionType: undelegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: WAITING - amount: '1012000000' - transactionType: withdraw_undelegated - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1012000000' - SolStakingRequestWithoutDelegationsExample: - summary: Sol Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1000000000' - SolStakingRequestWithTransactionsExample: - summary: Sol Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '1000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' - transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: CONFIRMED - amount: '1000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1000000000' - SolUnStakingRequestWithoutDelegationsExample: - summary: Sol UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '1012000000' - SolUnStakingRequestWithTransactionsExample: - summary: Sol UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: sol - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW + type: array + items: + oneOf: + - $ref: '#/components/schemas/EthStakingTransaction' + EthStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + properties: + buildParams: + $ref: '#/components/schemas/TransactionBuildParams' + EthStakingTransactionSendRequest: + type: object + properties: + halfSigned: + description: A half-signed transaction object. + type: object + properties: + contractSequenceId: + description: The contract sequence ID of the transaction. + type: string + eip1559: + description: Eip1559 Params + type: object + properties: + maxPriorityFeePerGas: + type: string + maxFeePerGas: + type: string + operationHash: + type: string + expireTime: + type: string + signature: + type: string + comment: + type: string + EthTransferTokenIntent: + title: ETH Transfer Token Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/TransferTokenIntent' + - $ref: '#/components/schemas/EthBuildOptions' + Ethereum2Address: + title: Ethereum2 Address + type: object + properties: + feeAddress: + type: string + Ethereum2Wallet: + title: Ethereum2 Wallet + type: object + properties: + pendingChainInitialization: + type: boolean + baseAddress: + type: string + feeAddress: + type: string + required: + - pendingChainInitialization + EthereumAddress: + title: Ethereum Address + type: object + properties: + creationFailure: + type: array + items: + type: string + forwarderVersion: + type: number + nonce: + type: number + feeAddress: + type: string + pendingChainInitialization: + type: boolean + pendingDeployment: + type: boolean + txCount: + type: number + updateTime: + type: string + format: date + title: Date String + hopTxid: + type: string + salt: + type: string + usdtBug: + type: boolean + isTss: + type: boolean + isNonceLocked: + type: boolean + nonceLockExpireTime: + type: string + format: date + title: Date String + previousLowBalanceEmailSentAt: + type: string + format: date + title: Date String + required: + - creationFailure + - forwarderVersion + - nonce + - feeAddress + - pendingChainInitialization + - pendingDeployment + - txCount + - updateTime + EthereumWallet: + title: Ethereum Wallet + type: object + properties: + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + gasPriceTier: + type: string + tokenFlushThresholds: + type: object + additionalProperties: + oneOf: + - type: string + - type: number + walletVersion: + type: number + pendingDeployment: + type: boolean + deployForwardersManually: + type: boolean + flushForwardersManually: + type: boolean + enableMMI: + type: boolean + enableNFT: + type: boolean + deployedInBlock: + oneOf: + - type: number + - type: boolean + deployTxHash: + type: string + lastChainIndex: {} + baseAddress: + type: string + feeAddress: + type: string + nonce: + type: string + token: + type: string + pendingEcdsaTssInitialization: + type: boolean + safeModeActivated: + type: string + lowPriorityFeeAddress: + type: string + salt: + type: string + required: + - pendingChainInitialization + - creationFailure + - gasPriceTier + - tokenFlushThresholds + - walletVersion + - pendingDeployment + - deployForwardersManually + - flushForwardersManually + - enableMMI + - enableNFT + EvaluatedPolicyActionStatus: + title: EvaluatedPolicyActionStatus + type: string + enum: + - SKIPPED + - PENDING + - NOT_NEEDED + - COMPLETE + - CANCELLED + - FAILED + ExchangeEddsaCommitmentsResponse: + title: ExchangeEddsaCommitmentsResponse + type: object + properties: + commitmentShare: + allOf: + - $ref: '#/components/schemas/CommitmentShare1' + description: The commitment share. + required: + - commitmentShare + ExpressAccelerateTxRequest: + type: object + properties: + cpfpTxIds: + type: array + description: | + txids of the transactions to bump + + **Notes**: + Each target unconfirmed transaction must be sending funds to the calling wallet. + Accepts only a single txid at this stage. + items: + $ref: '#/components/schemas/TxId' + cpfpFeeRate: + type: integer + description: Desired effective feerate of the bumped transactions and the CPFP transaction in satoshi per kilobyte + maxFee: + type: integer + description: | + Maximum allowed fee for the CPFP transaction in satoshi + + **Note**: + A CPFP transaction accelerates the target transactions and all of the unconfirmed transactions the target transactions depends on. + As it can be difficult to discern the complete transaction ancestry at times, we recommend limiting the total fee for each CPFP attempt as a safety net to prevent CPFP transactions that exceed your cost expectations. + rbfTxIds: + type: array + items: + type: string + description: The list of transactions to accelerate using Replace-By-Fee (RBF) for UTXO coins (currently accelerating only one tx is supported). + feeMultiplier: + allOf: + - type: number + minimum: 1 + - example: 1.5 + description: | + (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. + + Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. + ExpressAcceptShareRequest: + type: object + properties: + userPassword: + type: string + description: User's password to decrypt the shared wallet (required if the wallet was shared with spend permission) + newWalletPassphrase: + type: string + description: New wallet passphrase for saving the shared wallet private key If not provided and the wallet was shared with spend permission, then the userPassword is used + overrideEncryptedPrv: + type: string + description: Encrypted private key received out-of-band + ExpressAcceptShareResponse: + type: object + properties: + state: + type: string + allOf: + - $ref: '#/components/schemas/WalletShareState1' + description: State of the share + changed: + type: boolean + description: Indicates if the share changed + ExpressCalculateMinerFeeInfoRequest: + type: object + properties: + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom minimum fee rate in a coin's base unit per kilobyte (or virtual kilobyte)--for example, satoshis per kvByte or microAlgos per kByte. If the applied 'feeRate' does not meet a coin's required minimum transaction fee amount, the minimum is still applied (for example, 1000 sat/kvByte or a flat 1000 microAlgos). + nP2shInputs: + type: integer + description: Number of P2SH (multi-signature) inputs + example: 2 + nP2pkhInputs: + type: integer + description: Number of P2PKH (single-signature) inputs + example: 0 + nP2shP2wshInputs: + type: integer + description: Number of P2SH_P2WSH (wrapped segwit multi-signature) inputs + example: 1 + nOutputs: + type: integer + description: Number of outputs + example: 2 + required: + - nOutputs + ExpressCalculateMinerFeeInfoResponse: + type: object + properties: + size: + type: integer + description: Estimated size of the transaction in bytes + example: 776 + fee: + type: integer + description: Estimated fee in base units for the transaction + example: 38800 + feeRate: + type: integer + description: The fee rate in base units per kB used to estimate the fee for the transaction + example: 50000 + ExpressCanonicalAddressRequest: + type: object + properties: + address: + type: string + description: Address to canonicalize + version: + oneOf: + - type: string + default: base58 + description: Version of the desired BCH address. + enum: + - base58 + - bech32 + - type: integer + description: Version of the desired LTC address. + enum: + - 1 + - 2 + ExpressConsolidateAccountRequest: + type: object + properties: + consolidateAddresses: + description: | + Optional: restrict the consolidation to the specified receive addresses. If not provided, will consolidate the + funds from all receive addresses up to 500 addresses. + type: array + items: + type: string + walletPassphrase: + description: | + Passphrase to decrypt the user key on the wallet. + Required if External Signer is not used to sign the transactions. + type: string + prv: + description: | + The un-encrypted user private key in string form. + If the key is a JSON object it must be stringified. + Required if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. + type: string + apiVersion: + description: | + The Trasaction Request API version to use for MPC EdDSA Hot Wallets. + Defaults based on the wallet type and asset curve. + type: string + enum: + - full + - lite + ExpressConsolidateUnspentsRequest: + type: object + properties: + walletPassphrase: + type: string + description: Passphrase to decrypt the user key on the wallet + xprv: + type: string + description: Private key in string form, if walletPassphrase is not available + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + maxFeeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - example: 20000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The 'feeRate' overrides the 'maxFeeRate'. + maxFeePercentage: + type: integer + description: Maximum relative portion that can be spent towards fees + feeTxConfirmTarget: + type: integer + description: Block target for fee estimation + bulk: + type: boolean + description: Build multiple transactions at the same time. This enables you to increase the maximum number of unspents on the 'limit' parameter up to 2,000. If true, you must pass the 'txFormat' as 'psbt' and you can't pass the 'targetAddress' or 'numUnspentsToMake' parameters. + minValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Minimum value of unspents to use in base units (e.g. satoshis). Can be used to skip very small unspents when consolidating at higher fee rates. For doge, only string is allowed. + maxValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: | + Maximum value of unspents to use in base units (e.g. satoshis). Should be used to prevent larger unspents from being consolidated needlessly, and that some funds remain available for spending while the consolidation transactions are in flight. For doge, only string is allowed. + minHeight: + type: integer + description: Minimum height of unspents on the block chain to use + minConfirms: + type: integer + description: Minimum confirmation threshold for external inputs + enforceMinConfirmsForChange: + type: boolean + description: Flag for enforcing minConfirms for change inputs + limit: + type: integer + description: Maximum number of unspents to use in the transaction + numUnspentsToMake: + type: integer + description: Number of new unspents to make + targetAddress: + type: string + description: address to use for generated outputs. Must be wallet address. + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + ExpressCreateKeychainResponse: + type: object + description: Generated key pair + properties: + prv: + type: string + description: Private key + example: xprv9s21ZrQH143K2Y4th5Bn8sCRCMNjVr3sm9TLj9yw9SRKxYbJdB18bpc7cZFHKKWKuWZUBATfbDVE26u7w2iUhmWD8Gsp8UkaemhLEfopC35 + pub: + $ref: '#/components/schemas/Pub' + ExpressDecryptRequest: + type: object + properties: + input: + type: string + description: Ciphertext to decrypt + password: + type: string + description: Key which is used for decryption + ExpressDecryptResponse: + type: object + properties: + decrypted: + type: string + ExpressEncryptRequest: + type: object + properties: + input: + type: string + description: Plaintext message which should be encrypted + password: + type: string + description: Password which should be used to encrypt message + ExpressEncryptResponse: + type: object + properties: + encrypted: + type: string + ExpressFanOutUnspentsRequest: + type: object + properties: + walletPassphrase: + type: string + description: Passphrase to decrypt the user key on the wallet + xprv: + type: string + description: Private key in string form, if walletPassphrase is not available + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + maxFeeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - example: 20000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The 'feeRate' overrides the 'maxFeeRate'. + maxFeePercentage: + type: integer + description: Maximum relative portion that can be spent towards fees + feeTxConfirmTarget: + type: integer + description: Block target for fee estimation + minValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Minimum value of unspents to use in base units (e.g. satoshis). For doge, only string is allowed. + maxValue: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Maximum value of unspents to use in base units (e.g. satoshis). For doge, only string is allowed. + minHeight: + type: integer + description: Minimum height of unspents on the block chain to use + minConfirms: + type: integer + description: Minimum confirmation threshold for external inputs + enforceMinConfirmsForChange: + type: boolean + description: Flag for enforcing minConfirms for change inputs + unspents: + type: array + items: + type: string + description: Unspents to fan out in the transaction. Mutually exclusive with maxNumInputsToUse. + maxNumInputsToUse: + type: integer + description: Maximum number of unspents to use in the transaction. Mutually exclusive with unspents. + numUnspentsToMake: + type: integer + description: Number of new unspents to make + targetAddress: + type: string + description: address to use for generated outputs. Must be wallet address. + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + ExpressGenerateSignerMacaroonRequest: + type: object + properties: + passphrase: + type: string + description: Passphrase to decrypt the admin macaroon of the signer node. + addIpCaveatToMacaroon: + type: boolean + description: If true, adds an IP caveat to the generated signer macaroon. + ExpressGenerateWalletRequest: + type: object + properties: + label: + $ref: '#/components/schemas/WalletLabel' + multisigType: + type: string + enum: + - onchain + - tss + - blsdkg + description: If absent, BitGo uses the default wallet type for the asset. For Solana wallets, this parameter is required and must be set to 'tss'. + type: + type: string + enum: + - hot + - cold + - custodial + description: The type of wallet, defined by key management and signing protocols. 'hot' and 'cold' are both self-managed wallets. If absent, defaults to 'hot'. + passphrase: + type: string + description: Passphrase to be used to encrypt the user key on the wallet + userKey: + type: string + description: User provided public key + backupXpub: + $ref: '#/components/schemas/Pub' + backupXpubProvider: + type: string + enum: + - dai + description: Optional key recovery service to provide and store the backup key + enterprise: + allOf: + - $ref: '#/components/schemas/Id' + description: Enterprise id. This is required for Ethereum wallets since they can only be created as part of an enterprise + disableTransactionNotifications: + type: boolean + description: Flag for disabling wallet transaction notifications + passcodeEncryptionCode: + type: string + description: The passphrase used for decrypting the encrypted wallet passphrase during wallet recovery + coldDerivationSeed: + type: string + description: Seed that derives an extended user key or common keychain for a cold wallet. + gasPrice: + type: integer + description: Gas price to use when deploying an Ethereum wallet + disableKRSEmail: + type: boolean + description: Flag for preventing KRS from sending email after creating backup key + walletVersion: + type: integer + default: 1 + description: (ETH only) Specify the wallet creation contract version used when creating a wallet contract. Use 0 for the old wallet creation, 1 for the new wallet creation, where it is only deployed upon receiving funds. 2 for wallets with the same functionality as v1 but with NFT support. 3 for MPC wallets. + minimum: 0 + maximum: 3 + isDistributedCustody: + type: boolean + description: True, if the wallet type is a distributed-custodial. If passed, you must also pass the 'enterprise' parameter. + bitgoKeyId: + allOf: + - $ref: '#/components/schemas/Id' + description: BitGo key ID for self-managed cold MPC wallets. + commonKeychain: + type: string + description: Common keychain for self-managed cold MPC wallets. + required: + - label + - enterprise + ExpressGenerateWalletResponse: + oneOf: + - $ref: '#/components/schemas/ExpressWallet' + - title: Wallet (including keychains) + type: object + description: Wallet with user, bitgo and backup keychains (when 'includeKeychains' query param is 'true'). + properties: + wallet: + $ref: '#/components/schemas/ExpressWallet' + encryptedWalletPassphrase: + type: string + description: Encrypted wallet passphrase. Used only with 'passcodeEncryptionCode'. You can use the encrypted wallet passphrase in the BitGo web app during password recovery for the wallet. + example: '"{\"iv\":\"IpwAFi0+TDsLJCV4pg8T6w==\",\"v\":1,\"iter\":10000,\"ks\":256,\"ts\":64,\"mode\":\"ccm\",\"adata\":\"\",\"cipher\":\"aes\",\"salt\":\"3lkIc47rjzo=\",\"ct\":\"/m6JL/ttTJWXNmHm+dzI\"}"' + userKeychain: + type: object + description: User keychain + properties: + id: + $ref: '#/components/schemas/Id' + encryptedPrv: + type: string + description: User private key encrypted with the user passphrase + example: '{"iv":"TEd5eouui6hKashuVi5WHQ==","v":1,"iter":10000,"ks":256,"ts":64,"mode":"ccm","adata":"","cipher":"aes","salt":"dHu4PWoX2M8=","ct":"fYr9Y/6kU40AosONkV0xi+fWsyhpYSew0L2YKH/qEZjOlxeDjpC2aTJ0Yc/KdmXheUGolcAxGSx93ykN21Zim1DGc/UGa25IUA/3ARgX7gBsYnYEy5e5Ol0YZYb9pa7KFeaDZSLMXrxxoahg5zL4AJsUx90Pwcg="}' + prv: + type: string + description: User private key + example: xprv9s21ZrQH143K3e1981rUcbKjJ9G57SDCDZ9HY4Sqhx5ZqMoyK1j49kAf1vuM1G9nhRr6kzqbUQb3gj5zuzrsvNRQ84tYf32EcyapRgBNpp4 + pub: + $ref: '#/components/schemas/Pub' + ethAddress: + type: string + description: Ethereum address corresponding to this keychain + example: '0xf5b7cca8621691f9dde304cb7128b6bb3d409363' + source: + type: string + description: Party that created the key + example: user + coinSpecific: + type: object + description: Coin specific key data + backupKeychain: + type: object + description: Backup keychain + properties: + id: + $ref: '#/components/schemas/Id' + prv: + type: string + description: Backup private key + example: xprv9s21ZrQH143K47iEnAFZRJz36E5ZxuEDBJETFYxJTsTVxuPc9z7oGWADUK6icX5P3ruoe244yxMt9uZ2LjWhddvnJJ4zB7zK93qBtxYrmN6 + pub: + $ref: '#/components/schemas/Pub' + source: + type: string + description: Party that created the key + example: backup + ethAddress: + type: string + description: Ethereum address corresponding to this keychain + example: '0xf5b7cca8621691f9dde304cb7128b6bb3d409363' + coinSpecific: + type: object + description: Coin specific key data + bitgoKeychain: + type: object + description: BitGo keychain + properties: + id: + $ref: '#/components/schemas/Id' + pub: + $ref: '#/components/schemas/Pub' + isBitGo: + type: boolean + description: Flag for identifying keychain as created by BitGo + example: true + source: + type: string + description: Party that created the key + example: bitgo + ethAddress: + type: string + description: Ethereum address corresponding to this keychain + example: '0xa487900d0de75107b1cc7ade0e2662980e5ce940' + coinSpecific: + type: object + description: Coin specific key data + warning: + type: string + description: If the backup key is held by the user, this is a message warning the user to securely backup their backup keychain. + example: Be sure to backup the backup keychain -- it is not stored anywhere else! + ExpressInitWalletRequest: + type: object + properties: + passphrase: + type: string + description: Passphrase to encrypt the admin macaroon of the signer node. + ExpressLightningNodeStateResponse: + type: object + properties: + state: + description: Current state of the node + type: string + enum: + - NON_EXISTING + - LOCKED + - UNLOCKED + - RPC_ACTIVE + - SERVER_ACTIVE + - WAITING_TO_START + ExpressPingResponse: + type: object + properties: + status: + type: string + ExpressResolvePendingApprovalRequest: + type: object + properties: + state: + type: string + description: New state for the pending approval + enum: + - approved + - rejected + walletPassphrase: + type: string + description: Passphrase to decrypt the user key on the wallet + xprv: + type: string + description: Private key in string form, if walletPassphrase is not available + otp: + $ref: '#/components/schemas/Otp' + ExpressSendCoinsRequest: + allOf: + - type: object + properties: + address: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: Destination address + amount: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: Amount in base units (e.g. satoshi, wei, drops, stroops). For doge, only string is allowed. + walletPassphrase: + type: string + description: Passphrase to decrypt the user key on the wallet + prv: + type: string + description: Optional, private key in string form, if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. + - $ref: '#/components/schemas/BuildParams' + - type: object + properties: + data: + type: string + description: (ETH only) Optional data to pass to the transaction + hop: + type: boolean + description: (ETH, AVAXC and POLYGON) Set to true if funds to destination need to come from single sig address + tokenName: + type: string + description: Token name, defined in the BitGoJS Statics package. + ExpressSendCoinsResponse: + type: object + properties: + transfer: + allOf: + - $ref: '#/components/schemas/Transfer' + description: New transfer + txid: + type: string + description: Unique transaction identifier + tx: + oneOf: + - type: string + description: Encoded transaction hex (or base64 for XLM) + - $ref: '#/components/schemas/PsbtHex' + status: + type: string + description: Transfer status + enum: + - signed + - signed (suppressed) + - pendingApproval + ExpressSendConsolidationResponse: + type: object + properties: + success: + description: An Array of TransactionRequest or Transfers. + type: array + items: + oneOf: + - $ref: '#/components/schemas/TransactionRequestLite1' + - $ref: '#/components/schemas/TransactionRequestFull1' + - $ref: '#/components/schemas/Transfer' + failure: + type: array + description: An Array of Error messages. + items: + type: string + required: + - success + - failure + ExpressSendManyRequest: + allOf: + - type: object + properties: + recipients: + type: array + items: + type: object + description: List of recipient addresses and amounts to send + properties: + address: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: Destination address + amount: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + description: The amount in base units (e.g. satoshis) to send. For doge, only string is allowed. + tokenName: + type: string + description: The token name. Required for MPC wallets token transactions. + example: sol:natix + tokenData: + allOf: + - $ref: '#/components/schemas/RecipientTokenData' + description: Data set to build a transaction that involves a token interaction. + description: A list of recipient addresses and amounts. Must be present but empty for CPFP transactions. + otp: + type: string + description: Two factor auth code to enable sending the transaction. Not necessary if using a long lived access token within the spending limit. + walletPassphrase: + type: string + description: | + Passphrase to decrypt the user key on the wallet. + Required if External Signer is not used to sign the transactions. + prv: + type: string + description: | + The un-encrypted user private key in string form. + If the key is a JSON object it must be stringified. + Required if 'walletPassphrase' is not available or encrypted private key is not stored by BitGo. + - $ref: '#/components/schemas/BuildParams' + - type: object + properties: + data: + type: string + description: (ETH only) Optional data to pass to the transaction + ExpressShareWalletRequest: + type: object + properties: + email: + type: string + description: Email address of the user being invited + example: foo@bar.com + permissions: + type: string + allOf: + - $ref: '#/components/schemas/WalletPermission' + walletPassphrase: + type: string + description: Wallet passphrase of the user sharing the wallet + message: + type: string + description: User readable message to display to the share recipient + reshare: + type: boolean + description: Flag for reinviting a user to the wallet. This is required if the invitee has already been invited to the wallet, but has changed their password and needs a new invite + skipKeychain: + type: boolean + description: If true, skips using a shared key (for when the wallet is shared without spend permission). + disableEmail: + type: boolean + description: Flag for disabling invite notification email + required: + - email + - permissions + ExpressSignTssTx: + anyOf: + - $ref: '#/components/schemas/TransactionRequestLite1' + - $ref: '#/components/schemas/ExpressSignTssTxFull' + ExpressSignTssTxFull: + title: Full + type: object + properties: + txRequestId: + description: | + The transaction request ID. + This is the ID returned by the Create Transaction Request API. + type: string + walletPassphrase: + description: | + The wallet passphrase. + Required if External Signer is not used to sign the transactions. + type: string + prv: + description: | + The un-encrypted user private key of the wallet. + If the key is a JSON object it must be stringified. + Required for Self-Managed Cold wallets when External Signer is not used to sign the transactions. + type: string + required: + - txRequestId + ExpressSignTxRequest: + type: object + properties: + prv: + type: string + description: user private key + example: xprv9s21ZrQH143K3xQwj4yx3fHjDieEdqFDweBvFxn28qGvfQGvweUWuUuDRpepDu6opq3jiWHU9h3yYTKk5vvu4ykRuGA4i4Kz1vmFMPLTsoC + txPrebuild: + type: object + properties: + wallet: + $ref: '#/components/schemas/Id' + txHex: + type: string + description: Serialized transaction hex + txBase64: + type: string + description: Serialized transaction base64 (applies to XLM only) The request must include this or a txHex + txInfo: + oneOf: + - $ref: '#/components/schemas/UtxoTxInfo' + - $ref: '#/components/schemas/XlmTxInfo' + feeInfo: + type: object + properties: + size: + type: integer + description: Estimated size of the transaction in bytes + example: 776 + fee: + type: integer + description: Estimated fee in base units for the transaction + example: 38800 + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + payGoFee: + type: integer + description: BitGo fee of the transaction (in base units) + example: 0 + payGoFeeString: + type: integer + description: BitGo fee of the transaction (in base units) represented as a String + example: '0' + isLastSignature: + type: boolean + description: Should be set to true if you are signing the second time, attaching the final signature. Default to false. + pubs: + type: array + description: Public Keys (user, backup, bitgo) for the wallet (UTXO coins only) + items: + type: string + example: + - string + - string + - string + ExpressSignTxResponse: + type: object + properties: + txInfo: + oneOf: + - title: Hex + type: object + properties: + txHex: + $ref: '#/components/schemas/TxHex' + - title: Base64 + type: object + properties: + halfSigned: + type: object + properties: + txBase64: + $ref: '#/components/schemas/TxBase64' + ExpressSweepRequest: + type: object + properties: + address: + type: string + description: The destination address for the sweep transaction + walletPassphrase: + type: string + description: Passphrase to decrypt the user key on the wallet + xprv: + type: string + description: Private key in string form, if walletPassphrase is not available + otp: + type: string + description: Two factor auth code to enable sending the transaction + feeTxConfirmTarget: + type: string + description: Number of blocks to wait to confirm the transaction + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. + + If the 'feeRate' is less than the minimum required network fee, then the minimum fee applies. For example, 1000 sat/kvByte, a flat 1000 microAlgos, or a flat 10 drops of xrp. For XRP, the actual fee is usually 4.5 times the open ledger fee. + + Note: The 'feeRate' overrides the 'maxFeeRate' and 'minFeeRate'. + maxFeeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrIntegerString' + - example: 20000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The 'feeRate' overrides the 'maxFeeRate'. + allowPartialSweep: + type: boolean + default: false + description: | + Use 'allowPartialSweep: true' to sweep part of a wallet when there are too many unspents to empty the wallet in a + single transaction. While the expected outcome of a single sweep call would usually be an empty wallet, using the + allowPartialSweep option may leave some funds in the wallet. Making repeated calls with the allowPartialSweep + option allows emptying wallets with many unspents without consolidating first. + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + ExpressUnlockLightningWalletRequest: + type: object + properties: + passphrase: + type: string + description: Passphrase to decrypt the unlock the node. + ExpressUnlockLightningWalletResponse: + type: object + properties: + message: + type: string + example: ok + ExpressVerifyCoinAddressRequest: + type: object + properties: + address: + type: string + allOf: + - $ref: '#/components/schemas/AddressString3' + description: Address which should be verified for correct format + ExpressWallet: + title: Wallet + type: object + properties: + id: + $ref: '#/components/schemas/Id' + users: + type: array + description: Ids of users with access to the wallet + items: + type: object + properties: + user: + $ref: '#/components/schemas/Id' + permissions: + type: array + description: Array of permissions for the user + items: + type: string + example: + - admin + - view + - spend + coin: + type: string + description: Name of the blockchain the wallet is on + example: tbtc4 + label: + type: string + description: Name the user assigned to the wallet + example: My TBTC4 Wallet + m: + type: integer + description: Number of signatures required for the wallet to send + example: 2 + 'n': + type: integer + description: Number of signers on the wallet + example: 3 + keys: + type: array + description: Ids of wallet keys + items: + $ref: '#/components/schemas/Id' + keySignatures: + type: object + description: Signatures for the backup and BitGo public keys signed by the user key + properties: + backupPub: + type: string + description: Signature for the backup pub + example: 1fe81d0c91457d89993b01475bfb9e5809067ae046926faeab6e63beea009d8dd460387e0c3843034570798a9c2bcc1dbbea2988ee5a36979e0bbe6e02f7840af2 + bitgoPub: + type: string + description: Signature for the BitGo pub + example: 209d0e9a6d4352b66fae0a35ce62c1059bcc4db9e2883abc4f1b3d20481c5cebb7299c581efd9e0151abaf2496da7c6d75d276de36ed3de37c94e9cc5a2ea77e59 + tags: + type: array + description: Tags set on the wallet + items: + $ref: '#/components/schemas/Id' + receiveAddress: + $ref: '#/components/schemas/Address2' + balance: + type: integer + description: Wallet balance as number + example: 0 + balanceString: + type: string + description: Wallet balance as string + example: '0' + confirmedBalance: + type: integer + description: Confirmed wallet balance as number + example: 0 + confirmedBalanceString: + type: string + description: Confirmed wallet balance as string + example: '0' + spendableBalance: + type: integer + description: Spendable wallet balance as number + example: 0 + spendableBalanceString: + type: string + description: Spendable wallet balance as string + example: '0' + deleted: + type: boolean + description: Flag which indicates the wallet has been deleted + example: false + isCold: + type: boolean + description: Flag for identifying cold wallets + example: false + freeze: + type: object + description: Freeze state (used to stop the wallet from spending) + properties: + time: + type: string + format: date-time + description: Time when the wallet becomes frozen + expires: + type: string + format: date-time + description: Time when the wallet is unfrozen and allowed to spend + example: {} + disableTransactionNotifications: + type: boolean + description: Flag for disabling wallet transaction notifications + example: false + admin: + type: object + description: Admin data (wallet policies) + example: {} + approvalsRequired: + type: integer + description: Number of admin approvals required for an action to fire + example: 1 + pendingApprovals: + type: array + description: Pending approvals on the wallet + items: + $ref: '#/components/schemas/PendingApproval1' + example: [] + allowBackupKeySigning: + type: boolean + description: Flag for allowing signing with backup key + example: false + coinSpecific: + type: object + description: Coin-specific data + clientFlags: + type: array + items: + type: string + recoverable: + type: boolean + description: Flag indicating whether this wallet's user key is recoverable with the passphrase held by the user. + startDate: + type: string + format: date-time + description: Time when this wallet was created + hasLargeNumberOfAddresses: + type: boolean + description: | + Flag indicating that this wallet is large (more than 100,000 addresses). If this is set, some APIs may omit + properties which are expensive to calculate for wallets with many addresses (for example, the total address + counts returned by the List Addresses API). + config: + type: object + description: Custom configuration options for this wallet + ExpressWalletRecoverTokenRequest: + type: object + properties: + tokenContractAddress: + type: string + description: Contract address of the unsupported token + recipient: + type: string + description: Destination address recovered tokens should be sent to + walletPassphrase: + type: string + description: Wallet passphrase + prv: + type: string + description: User private key + broadcast: + type: boolean + description: Whether to send to BitGo for cosigning and broadcast the transaction. If false, a half-siged transaction will be returned. + ExpressWalletRecoverTokenResponse: + type: object + properties: + halfSigned: + type: object + properties: + contractSequenceId: + type: integer + example: 1101 + expireTime: + type: integer + example: 1550088020 + gasLimit: + type: integer + example: 500000 + gasPrice: + type: integer + example: 20000000000 + operationHash: + type: string + example: 9.44792020725999e+76 + recipient: + type: object + properties: + address: + type: string + example: 4.7261295088313645e+47 + amount: + type: string + example: '2400' + signature: + type: string + example: 1.9519588812712557e+156 + tokenContractAddress: + type: string + example: 3.8941146273864216e+46 + walletId: + $ref: '#/components/schemas/Id' + ExpressWalletSignTxRequest: + type: object + properties: + keychain: + type: object + properties: + encryptedPrv: + type: string + description: Encrypted user private key + description: | + The user's keychain object with an 'encryptedPrv' property. The 'walletPassphrase' parameter is required when using 'keychain'. Any request must include either 'keychain' or 'prv'. + prv: + type: string + description: | + User private key + + Note: The request must include either 'prv' or 'keychain' + example: xprv9s21ZrQH143K3xQwj4yx3fHjDieEdqFDweBvFxn28qGvfQGvweUWuUuDRpepDu6opq3jiWHU9h3yYTKk5vvu4ykRuGA4i4Kz1vmFMPLTsoC + txPrebuild: + type: object + properties: + wallet: + $ref: '#/components/schemas/Id' + txHex: + type: string + description: Serialized transaction hex + txBase64: + type: string + description: Serialized transaction base64 (applies to XLM only). The request must include this or a txHex + txInfo: + oneOf: + - $ref: '#/components/schemas/UtxoTxInfo' + - $ref: '#/components/schemas/XlmTxInfo' + feeInfo: + oneOf: + - $ref: '#/components/schemas/UtxoFeeInfo' + - $ref: '#/components/schemas/XlmFeeInfo' + description: The transaction description object as created by 'Build Transaction' + coldDerivationSeed: + type: string + description: | + A seed used to create a deterministic BIP-32 path which is then used to derive a private key. This is useful when one wants to create multiple BitGo cold wallets but only protect a single master private key. Using the seed one can create a child key for a specific wallet, for instance an Ethereum wallet could use the "eth" seed while an XRP wallet could use "xrp" as a seed. Both of these child keys would be derived from a single master key and so only the master key needs to be stored and protected. + walletPassphrase: + type: string + description: | + Passphrase to decrypt the user keychain. 'walletPassphrase' is a required parameter when the parameter 'keychain' is provided. + recipients: + type: array + items: + type: object + description: Array of objects describing the recipients. See buildTransaction for more detail. Required on ETH. + ExtDepositsResp: + title: ExtDepositsResp + type: array + items: + type: object + properties: + onChainTxId: + type: string + minLength: 1 + transferId: + type: string + currency: + type: string + minLength: 1 + quantity: + type: number + id: + type: string + title: uuid + settlementId: + type: string + title: uuid + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + externalSettlementId: + type: string + minLength: 1 + required: + - onChainTxId + - currency + - id + - settlementId + - createdAt + - updatedAt + - externalSettlementId + FederationError: + type: object + properties: + status: + type: number + description: HTTP status code + detail: + type: string + description: Human-readable error message + error: + type: string + description: Human-readable error message + name: + type: string + description: Error code + requestId: + type: string + description: Client request id + required: + - status + - detail + - error + - name + - requestId + FeeAddressBalanceResponse: + type: object + properties: + balance: + type: string + description: | + Total balance in enterprise gas tank. + FeeOption: + title: FeeOption + type: object + properties: + unit: + type: string + enum: + - baseUnit + - cpu + - ram + formula: + type: string + enum: + - fixed + - feeRate + - perKB + - custom + - perVKB + feeType: + type: string + enum: + - base + - max + - tip + gasLimit: + $ref: '#/components/schemas/optionalNumber' + gasPrice: + $ref: '#/components/schemas/optionalNumber' + FiatAddress: + title: Fiat Address + type: object + properties: + bankAccountId: + type: string + faBankAccountId: + type: string + bankAccount: + $ref: '#/components/schemas/BankAccountJson' + FiatWallet: + title: Fiat Wallet + type: object + properties: + backingBankAccountId: {} + backingSENBankAccountId: {} + lastUsedNonce: + type: number + required: + - backingBankAccountId + - backingSENBankAccountId + - lastUsedNonce + FillNonceIntent: + title: FillNonceIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - fillNonce + nonce: + oneOf: + - type: string + - type: number + required: + - intentType + - nonce + - $ref: '#/components/schemas/BaseIntentWithoutNonce' + FilteringConditions: + type: object + description: | + Wrapper object for a list of Filtering Conditions. Not paginated. + required: + - conditions + properties: + conditions: + type: array + items: + anyOf: + - $ref: '#/components/schemas/WalletTypeCondition' + - $ref: '#/components/schemas/WalletIdsCondition' + - $ref: '#/components/schemas/WalletAllCondition' + FinalApprovalAction: + title: Require final approval from wallet users + type: object + description: Requires final approval from wallet users after wallet-admin approval. Final approvers don't have to be wallet admins. + required: + - name + - label + - description + - status + - adminOnly + - parameters + properties: + name: + type: string + description: The name of the action. + enum: + - approvals.customer.finalApproval + example: approvals.customer.finalApproval + label: + type: string + description: A label for the action which can be shown to an end user. + example: Require final approval from wallet users + description: + type: string + description: A description for the action which can be shown to an end user. + example: Require final approval from wallet users + status: + type: string + description: | + Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The action is available for use. + * 'INACTIVE' - The action is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal action, false otherwise. + example: false + parameters: + type: array + description: A list of Parameters to control how the action behaves. + items: + anyOf: + - $ref: '#/components/schemas/FinalApproversUserIdsActionParameter' + - $ref: '#/components/schemas/InitiatorIsAllowedToApproveActionParameter' + FinalApprovalActionRequest: + title: Require final approval from wallet users + type: object + description: Require final approval from wallet users. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the associated Action. + enum: + - approvals.customer.finalApproval + example: approvals.customer.finalApproval + parameters: + type: object + description: Required data needed to configure the Action. + required: + - userIds + properties: + userIds: + type: array + items: + type: string + example: 63cf101298470200073bbae71add80d5 + description: The final approvers + example: + - 63cf101298470200073bbae71add80d5 + initiatorIsAllowedToApprove: + type: boolean + description: Whether the initiator is allowed to approve this action. true by default. + example: true + default: true + operator: + $ref: '#/components/schemas/OperatorType' + FinalApproversUserIdsActionParameter: + title: Final approvers user ids + type: object + description: The final approvers. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the action parameter. + enum: + - userIds + example: userIds + label: + type: string + description: A label for the action parameter which can be shown to an end user. + example: Users + description: + type: string + description: A description for the action parameter which can be shown to an end user. + example: List of users for final approval + type: + type: string + description: The type of acceptable values for this action parameter. + enum: + - BITGO_USER_ID + example: BITGO_USER_ID + required: + type: string + description: A value must be always provided for exactly one or more of the action Parameters with a 'required' value of 'ONE_OR_MORE'. In other words, all the action Parameters with a 'required' of 'ONE_OR_MORE' form a group, and a value must be provided for one or more of the action Parameters in the group. + enum: + - ONE_OR_MORE + example: ONE_OR_MORE + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: true + FlattenedPricingType: + title: FlattenedPricingType + allOf: + - type: object + properties: + name: + $ref: '#/components/schemas/PricingTypeName' + required: + - name + - $ref: '#/components/schemas/ActiveDateRange' + Freeze: + title: Freeze + type: object + properties: + time: + oneOf: + - type: string + format: date + title: Date String + - type: string + format: date-time + title: ISO Date String + description: When the freeze started + format: date-time + expires: + oneOf: + - type: string + format: date + title: Date String + - type: string + format: date-time + title: ISO Date String + description: When the freeze will end + format: date-time + reason: + type: string + description: The reason the entity was frozen + frozenBy: + type: string + description: The user that froze the entity + unFrozenBy: + type: string + description: The user that unfroze the entity + Freeze1: + type: object + properties: + time: + type: string + format: date-time + description: When the freeze started + expires: + type: string + format: date-time + description: When the freeze will end + FundingType: + type: string + enum: + - margin + - funded + description: The funding type of the order. Funded orders will be placed with the user's available balance. Margin orders will be placed with the user's margin balance. + default: funded + GeneralError: + type: object + properties: + code: + type: string + message: + type: string + status: + type: integer + GenericReportParamsJSON: + title: GenericReportParamsJSON + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + type: + allOf: + - $ref: '#/components/schemas/SnowflakeReportType' + description: Type of report + format: + allOf: + - $ref: '#/components/schemas/ReportFormatType' + description: Format of report + status: + allOf: + - $ref: '#/components/schemas/ReportStatus1' + description: Status of report + createdAt: + type: string + description: Date report was created + format: date-time + title: ISO Date String + completedAt: + type: string + description: Date report was completed + format: date-time + title: ISO Date String + documentName: + type: string + description: Name of the report document + minLength: 1 + user: + type: string + description: ID of the user who requested the report + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + required: + - id + - type + - format + - status + - createdAt + - user + GeographicAddress: + title: GeographicAddress + type: object + properties: + addressType: + type: string + name: + type: string + description: Legal name of the enterprise, not necessarily the same as the display name + street: + type: string + description: Address line + street2: + nullable: true + type: string + description: Optional second address line + suite: + nullable: true + type: string + description: Optional suite number + city: + type: string + description: City name + state: + type: string + description: State or region + postalCode: + type: string + description: Postal code + country: + type: string + description: ISO 3166-1 Alpha-3 country code + GetEnterpriseResponse: + title: GetEnterpriseResponse + allOf: + - type: object + properties: + wallets: + type: array + items: + type: string + minLength: 1 + tags: + type: array + items: + type: object + properties: + name: + type: string + id: + type: string + required: + - name + - id + required: + - wallets + - tags + - $ref: '#/components/schemas/Enterprise' + GetEnterpriseUserSigningKeyResponse: + title: GetEnterpriseUserSigningKeyResponse + type: object + properties: + userId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + userEmail: + type: string + example: user@email.com + format: email + derivedPubkey: + type: string + description: The derived public key of the user. + example: 0205f47704d137205ba32560e01ed182428c758760d9a05ae58cf2f66069f5d717 + derivationPath: + nullable: true + type: string + description: The derivation path used to derive derivedPubkey. Returned only if you're fetching your own signing key. + example: m/999999/51550848/191290384 + ecdhKeychain: + nullable: true + type: string + description: The bip32 public key that you can use to fetch a v1 keychain. Returned only if you're fetching your own signing key. + example: xpub661MyMwAqRbcFm7W87Qcns2ybFoSHsHEkGzNQj1KhPeLNUtV7KKiQvtLVLwPpWFaohqXrCBqCit9sM6G5kmtZHaJYSvMC65ge9HATFShe1S + required: + - userId + - userEmail + - derivedPubkey + GetPinnedWalletsCountResponse: + title: GetPinnedWalletsCountResponse + type: object + properties: + pinnedWalletsCount: + type: number + required: + - pinnedWalletsCount + GetPotentialStuckEthTxs: + title: Potential Stuck Eth Transactions + type: object + properties: + nonce: + type: number + description: The nonce value of the potentially stuck transaction + example: 200000 + pattern: ^-?\d+$ + txHex: + type: string + description: Serialized transaction hex + example: 01000000000101d58f82d996dd872012675adadf4606734906b25a413f6e2ee535c0c10aef96020000000000ffffffff028de888000000000017a914c91aa24f65827eecec775037d886f2952b73cbe48740420f000000000017a9149304d18497b9bfe9532778a0f06d9fff3b3befaf870500473044022023d7210ba6d8bbd7a28b8af226f40f7235caab79156f93f9c9969fc459ea7f73022050fbdca788fba3de686b66b3501853695ff9d6f375867470207d233b099576e001000069522103d4788cda52f91c1f6c82eb91491ca76108c9c5f0839bc4f02eccc55fedb3311c210391bcef9dcc89570a79ba3c7514e65cd48e766a8868eca2769fa9242fdcc796662102ef3c5ebac4b54df70dea1bb2655126368be10ca0462382fcb730e55cddd2dd6a53aec8b11400 + txId: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + sendTransfer: + type: object + properties: + baseValue: + type: number + description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. + baseValueString: + type: string + description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. + example: '2000000' + pattern: ^-?\d+$ + bitgoOrg: + type: string + enum: + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - BitGo Europe ApS + - Frankfurt DE Trust + - BitGo Singapore + - BitGo Korea + - BitGo Mena Fze + - BitGo Custody MENA FZE + - BitGo Sister Trust 1 + - BitGo Inc + coin: + $ref: '#/components/schemas/CoinString' + comment: + nullable: true + type: string + description: A comment from the user + date: + type: string + description: The date this Transfer was last updated + format: date-time + title: ISO Date String + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + entries: + type: array + items: + type: object + properties: + address: + type: string + description: An address affected by this Transfer + example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ + associatedNativeCoinAddress: + type: string + description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. + backingFeeString: + type: string + description: Backing fee represented as a string + failed: + type: boolean + description: True if this entry is failed + isChange: + type: boolean + description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer + isFee: + type: boolean + description: Indicates if this entry is a fee + isInternal: + type: boolean + description: Indicates if this entry is internal + isPayGo: + type: boolean + description: True if this address is the BitGo PayGo wallet + isReward: + type: boolean + description: Indicates if this entry is a reward + memo: + type: string + description: Memo associated with this entry + nftId: + type: string + description: NFT ID associated with this entry + nftSymbol: + type: string + rewardAddress: + type: string + description: Reward address associated with this entry + subtype: + type: string + description: Subtype of this entry + token: + type: string + description: If this is a token entry, the token's symbol + example: omg + tokenContractHash: + type: string + description: Token contract hash associated with this entry + type: + type: string + enum: + - flushForwarderTokens + - walletFunding + - walletInitialization + - addressInitialization + - importedOutput + value: + type: number + description: The change (in base units) in the address' balance + valueString: + type: string + description: The change (in base units) in the address' balance represented as a string + example: '20000' + pattern: '"^-?\d+$"' + wallet: + type: string + description: Only visible when the user has access to the wallet + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - address + description: An array of objects describing the change in address balances made as a result of this Transfer + history: + type: array + items: + type: object + properties: + action: + $ref: '#/components/schemas/TransferAction' + comment: + nullable: true + type: string + description: If this history object is of action "commented", this is the comment from the user + date: + type: string + description: The date of this history object + format: date-time + title: ISO Date String + transferId: + type: string + description: The ID of the transfer that this history object is associated with + txid: + type: string + description: The transaction ID of the transaction that this history object is associated with + user: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - action + - date + description: An audit log of events that have happened to the Transfer during its lifecycle + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + pendingApproval: + type: string + replacedBy: + type: array + items: + type: string + description: Transaction IDs that replace this transfer. + replaces: + type: array + items: + type: string + description: Transaction IDs that this transfer replaces. + stakingParams: + type: object + properties: + actionType: + type: string + coreDao: + type: object + properties: + amount: + type: string + format: number + expiration: + type: string + format: date-time + title: ISO Date String + fee: + type: number + rewardAddress: + type: string + validator: + type: string + version: + type: number + required: + - amount + - expiration + - fee + - rewardAddress + - validator + - version + requestId: + type: string + source: + type: string + enum: + - external + - internal + validator: + type: string + required: + - actionType + - requestId + state: + $ref: '#/components/schemas/TransferState1' + txid: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + type: + allOf: + - $ref: '#/components/schemas/TransferType' + description: Defines whether or not this Transfer was sent or received by the user + usd: + type: number + description: The amount of USD of this Transfer (will be negative if it's a send) + usdRate: + type: number + description: The USD rate at the time this Transfer was created + value: + type: number + description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) + valueString: + type: string + description: The total value (in base units) sent by this Transfer represented as a String + example: '2000000' + pattern: ^-?\d+$ + wallet: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + walletType: + type: string + enum: + - backing + - cold + - custodial + - custodialPaired + - hot + - trading + description: Wallet type + required: + - coin + - date + - entries + - history + - id + - state + - type + - valueString + - wallet + cause: + type: string + description: The reason the transaction is potentially stuck + message: + type: string + description: Possible steps to remediate the stuck transaction. + transferIds: + type: array + items: + type: string + gasAccelerationFee: + type: object + description: Fee required to remediate a stuck transaction when the cause is 'fee acceleration'. + properties: + gasPrice: + type: string + example: '200000' + pattern: ^-?\d+$ + maxFeePerGas: + type: string + example: '200000' + pattern: ^-?\d+$ + maxPriorityFeePerGas: + type: string + example: '200000' + pattern: ^-?\d+$ + userActionDisabled: + type: boolean + description: True, if manual user action is disabled on this stuck transaction + required: + - cause + - message + GetPotentialStuckTxsResponse: + title: GetPotentialStuckTxsResponse + type: array + items: + oneOf: + - $ref: '#/components/schemas/GetPotentialStuckEthTxs' + - $ref: '#/components/schemas/GetPotentialStuckUtxoTxs' + GetPotentialStuckUtxoTxs: + title: Potential Stuck UTXO Transactions + type: object + properties: + txId: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + minLength: 1 + sendTransfer: + $ref: '#/components/schemas/Transfer1' + rbf: + type: boolean + required: + - txId + GetSequenceIdsResponse: + title: GetSequenceIdsResponse + type: object + properties: + sequenceIds: + type: array + items: + type: object + properties: + txid: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + minLength: 1 + contractSequenceId: + type: number + description: The contract sequence id of the transaction + required: + - txid + - contractSequenceId + required: + - sequenceIds + GetTransactionRequestsResponse: + title: GetTransactionRequestsResponse + type: object + properties: + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. + format: uuid + txRequests: + type: array + items: + oneOf: + - $ref: '#/components/schemas/TransactionRequestLite2' + - $ref: '#/components/schemas/TransactionRequestFull' + required: + - txRequests + GetTransactionRequestsWithWalletPermissionsResponse: + title: GetTransactionRequestsWithWalletPermissionsResponse + type: object + properties: + nextBatchPrevId: + type: string + txRequests: + type: array + items: + allOf: + - type: object + properties: + transactions: + type: array + items: + type: object + properties: + state: + $ref: '#/components/schemas/TransactionState' + unsignedTx: + $ref: '#/components/schemas/UnsignedTransaction' + signatureShares: + type: array + items: + allOf: + - type: object + properties: + privateShareProof: + type: string + description: The private share proof + publicShare: + type: string + description: The public share + vssProof: + type: string + description: The VSS proof of the signature share + - $ref: '#/components/schemas/SignatureShareWithoutVssProof' + commitmentShares: + type: array + items: + allOf: + - type: object + properties: + type: + type: string + enum: + - commitment + description: The type of the commitment share + required: + - type + - $ref: '#/components/schemas/BaseShare' + txHash: + type: string + updatedDate: + type: string + format: date-time + title: ISO Date String + createdDate: + type: string + format: date-time + title: ISO Date String + required: + - state + - unsignedTx + description: The transactions associated with the transaction request + - $ref: '#/components/schemas/TransactionRequestBase' + required: + - txRequests + GetWalletBalanceResponse: + title: GetWalletBalanceResponse + type: object + properties: + balances: + type: array + items: + type: object + properties: + coin: + allOf: + - $ref: '#/components/schemas/CoinNonEmptyString' + description: A cryptocurrency or token ticker symbol. + balanceString: + type: string + description: String representation of the balance in base units. Guaranteed to not lose precision. + confirmedBalanceString: + type: string + description: String representation of the confirmed balance in base units. Guaranteed to not lose precision. + spendableBalanceString: + type: string + description: String representation of the spendable in base units. Guaranteed to not lose precision. Will not be included if 'excludeSpendableBalances=false' + required: + - coin + - balanceString + - confirmedBalanceString + required: + - balances + GetWalletBalancesByCoinResponse: + title: GetWalletBalancesByCoinResponse + allOf: + - type: object + properties: + balance: + type: number + description: The total balance of all wallets containing the given coin type. May lose precision for large values. + confirmedBalance: + type: number + description: The total balance of confirmed transactions for all wallets containing the given coin type. May lose precision for large values. + spendableBalance: + type: number + description: The total balance of all wallets containing the given coin which may be used as inputs for creating new transactions. May lose precision for large values. + stakedBalance: + type: number + description: The total balance of all wallets containing the given coin which has been staked. May lose precision for large values. + stakedBalanceString: + type: string + description: String representation of 'stakedBalance'. Guaranteed to not lose precision. + tokens: + allOf: + - $ref: '#/components/schemas/tokenBalances' + description: Object of key value pairs where the keys are the token symbols (e.g. omg) and the values are the balance data for that token symbol. + unsupportedTokens: + allOf: + - $ref: '#/components/schemas/tokenBalances' + description: Object of key value pairs where the keys are the unsupported token contracts (e.g. 0x9928e4046d7c6513326ccea028cd3e7a91c7590a) and the values are the balance data for that token contract. UnsupportedTokens will only be returned for wallets that supports Metamask Institutional and has enableMMI flag turned on + required: + - balance + - confirmedBalance + - spendableBalance + - $ref: '#/components/schemas/baseBalanceStrings' + GrantTypes: + title: GrantTypes + type: string + enum: + - password + - passkey + - refresh_token + - authorization_code + GreaterThanOrEqualToValue: + title: Greater than or equal to + type: object + description: The greater than or equal to (>=) operator. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - '>=' + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Greater than or equal to + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The transfer amount must be greater than or equal to the given limit for the condition to trigger + GreaterThanValue: + title: Greater than + type: object + description: The greater than (>) operator. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - '>' + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Greater than + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The transfer amount must be greater than the given limit for the condition to trigger + GroupApprovalRequirementOperator: + title: GroupApprovalRequirementOperator + type: string + enum: + - and + - or + HederaAddress: + title: Hedera Address + type: object + properties: + baseAddress: + type: string + memoId: + type: string + required: + - baseAddress + - memoId + HederaWallet: + title: Hedera Wallet + type: object + properties: + addressCount: + type: number + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + deployTxHash: + type: string + baseAddress: + type: string + confirmedTransactionId: + type: string + required: + - addressCount + - pendingChainInitialization + - creationFailure + - trustedTokens + HistoricalPrice: + type: object + required: + - time + - open + - high + - low + - close + - base_volume + - quote_volume + properties: + time: + type: string + format: date-time + open: + type: number + format: float + high: + type: number + format: float + low: + type: number + format: float + close: + type: number + format: float + base_volume: + type: number + format: float + quote_volume: + type: number + format: float + example: + time: '2014-11-07T22:19:28.578Z' + open: 576.0590066 + high: 576.0590066 + low: 575.8330204 + close: 575.978887 + base_volume: 296.23 + quote_volume: 170627.62385 + HistoricalPriceResult: + type: object + required: + - data + properties: + data: + type: object + required: + - prices + - nextBatchPrevId + properties: + prices: + type: object + additionalProperties: + type: array + items: + $ref: '#/components/schemas/HistoricalPrice' + nextBatchPrevId: + type: string + example: + data: + prices: + BTC-USD: + - time: '2014-11-07T22:19:28.578Z' + open: 576.0590066 + high: 576.0590066 + low: 575.8330204 + close: 575.978887 + base_volume: 296.23 + quote_volume: 170627.62385 + nextBatchPrevId: a0dbb6aad06d9a37c9882231d8dc32ef + HotValue: + title: Self-managed hot wallet + type: object + description: Self-managed hot wallet wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - hot + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Hot Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A hot wallet + Id: + title: ID + type: string + pattern: ^[0-9a-f]{32}$ + example: 59cd72485007a239fb00282ed480da1f + IdArray: + type: array + items: + $ref: '#/components/schemas/Id' + example: + - 585951a5df8380e0e3063e9f + - 585951a5df8380e0e304a553 + Identity: + title: Identity + type: object + properties: + kyc: + $ref: '#/components/schemas/Kyc' + verified: + type: boolean + description: Whether the user is verified + IdentityCreateResponse: + title: IdentityCreateResponse + type: object + properties: + id: + type: string + title: uuid + status: + type: string + minLength: 1 + required: + - id + - status + IdentityDocumentGetResponse: + title: IdentityDocumentGetResponse + type: object + properties: + documents: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + identityId: + type: string + title: uuid + status: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + fileUploads: + type: array + items: + type: object + properties: + fileName: + type: string + minLength: 1 + fileSize: + type: number + uploadStatus: + type: string + minLength: 1 + documentType: + $ref: '#/components/schemas/IdentityDocumentType' + required: + - fileName + - fileSize + - uploadStatus + - documentType + selectedIdClass: + $ref: '#/components/schemas/PersonaIdClass' + required: + - id + - identityId + - status + - createdAt + - updatedAt + required: + - documents + IdentityDocumentType: + title: IdentityDocumentType + type: string + enum: + - frontPhoto + - backPhoto + - proofOfResidency + IdentityGetResponse: + title: IdentityGetResponse + type: object + properties: + identities: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + status: + type: string + minLength: 1 + organizationId: + type: string + minLength: 1 + enterpriseId: + type: string + minLength: 1 + userId: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + errorDescription: + type: string + minLength: 1 + occupation: + type: string + countryOfCitizenship: + type: string + govIdCountryOfIssuance: + type: string + politicallyExposedPerson: + type: boolean + debugStatus: + type: string + country: + type: string + countryOfResidence: + type: string + addressCity: + type: string + addressPostalCode: + type: string + addressStreet1: + type: string + addressStreet2: + type: string + addressSubdivision: + type: string + birthDate: + type: string + format: date-time + title: ISO Date String + identificationNumber: + type: string + nameFirst: + type: string + nameLast: + type: string + nameMiddle: + type: string + phoneNumber: + type: string + selectedIdClass: + type: string + debugFailureReason: + type: string + emailAddress: + type: string + contractSignerNameFull: + type: string + contractSignedDate: + type: string + format: date-time + title: ISO Date String + contractSignedIPAddress: + type: string + contractVersion: + type: string + userAgreesToTerms: + type: string + signatureSubmitted: + type: string + signaturesSubmitted: + type: array + items: + type: string + enum: + - csa + - mpa + - mic + - wvr + signaturesRequired: + type: array + items: + type: string + enum: + - csa + - mpa + - mic + - wvr + required: + - id + - status + - organizationId + required: + - identities + IdentityOccupation: + title: IdentityOccupation + type: string + enum: + - Agriculture + - Art Dealer / Auctioneer / Import / Export Company + - Financial Services (Asset Mgmt., Bank, Broker Dealer, Commodities, Mutual Fund, Ins. Co) + - Casinos and Gambling Establishments + - Charity/NGO/Non-Profit/Foundation/Endowment + - Computer Programmer / Administrator / Software Engineer / IT or Software / Technology Company + - Crypto Services (ATM, Exchange, Lender, Coins/Token) + - Education / Teacher + - Extractive Industry (Oil, Gas, etc.) / Jewels / Gemstones / Precious Metals + - Family Office + - Film / TV / Entertainment (not adult) + - Government/State owned/Political Org. (i.e. Sovereign Wealth Fund) + - Healthcare + - Law Enforcement / Military / Protective Services + - Miner / Mining Pool + - Money Service Business + - Other + - Private Equity / Venture Capital + - Professional Service Providers (lawyers accountants etc.) + - Real estate brokers developers and appraisers + - Recreation / Hospitality + - Student / Unemployed / Retired + - Traders / Trading (High Frequency, Proprietary, Market Maker) + - Other - Default + - Weapons Dealers + IdentityStatus: + type: string + enum: + - approved + - declined + - input error + - ssn error + - gov id error + - ssn verified + - gov id verified + - evaluating submission + - awaiting document upload + - records uploaded + - in review + - incomplete verifications + - awaiting signature + - signature submitted + - initiating + - additional information submitted + IdentityStatusEnum: + title: IdentityStatusEnum + type: string + enum: + - created + - approved + - declined + - needs review + - input error + - ssn error + - gov id error + - ssn verified + - gov id verified + - enrichment + - awaiting document upload + - records uploaded + - in review + - incomplete verifications + - records uploaded 2 + - awaiting signature + - signature submitted + - initiating + - additional information submitted + IdentityUpdateResponse: + title: IdentityUpdateResponse + type: object + properties: + id: + type: string + title: uuid + status: + type: string + minLength: 1 + organizationId: + type: string + minLength: 1 + enterpriseId: + type: string + minLength: 1 + userId: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + errorDescription: + type: string + minLength: 1 + signaturesSubmitted: + $ref: '#/components/schemas/ContractTypes' + signaturesRequired: + $ref: '#/components/schemas/ContractTypes' + required: + - id + - status + - organizationId + InitiateTrustlineParams: + type: object + properties: + memo: + type: object + properties: + type: + type: string + value: + type: string + description: | + The memo contains optional extra information that can also be used to identify payments in Stellar. + comment: + type: string + description: | + Optional metadata (only persisted in BitGo) to be applied to the transaction. Use this to add transaction-specific information such as the transaction's purpose or another identifier that you want to reference later. The value is shown in the UI in the transfer listing page. + maxLength: 256 + trustlines: + type: array + items: + $ref: '#/components/schemas/Trustline' + description: List of trustlines to manage on the account. + required: + - trustlines + InitiatorIsAllowedToApproveActionParameter: + title: Initiator is allowed to approve + type: object + description: Whether the initiator is allowed to approve this action. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the action parameter. + enum: + - initiatorIsAllowedToApprove + example: initiatorIsAllowedToApprove + label: + type: string + description: A label for the action parameter which can be shown to an end user. + example: Initiator Is Allowed To Approve + description: + type: string + description: A description for the action parameter which can be shown to an end user. + example: Whether the initiator is allowed to approve this action + type: + type: string + description: The type of acceptable values for this action parameter. + enum: + - BOOLEAN + example: BOOLEAN + required: + type: string + description: A value is not required. + enum: + - OPTIONAL + example: OPTIONAL + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: false + InscriptionId: + type: string + description: The ID of the inscription in the form i + example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8i2 + pattern: ^[\da-f]{64}i[\d]+$ + IntegerOrIntegerString: + oneOf: + - type: string + pattern: ^-?\d+$ + example: '2000000' + - type: integer + IntegerOrString: + oneOf: + - type: string + example: '2000000' + - type: integer + IntegerString: + type: string + pattern: ^-?\d+$ + example: '2000000' + IntentType: + title: IntentType + type: string + enum: + - payment + - transferToken + - consolidate + - consolidateToken + - fanout + - stake + - unstake + - delegate + - undelegate + - switchValidator + - claim + - stakeClaimRewards + - pledge + - voteDelegation + - vote + - createAccount + - updateAccount + - addTrustLine + - removeTrustLine + - signMessage + - signTypedStructuredData + - enableToken + - authorize + - acceleration + - fillNonce + - walletRecovery + - contractCall + - deactivate + - customTx + - closeAssociatedTokenAccount + IntentType1: + title: IntentType + type: string + enum: + - payment + - transferToken + - consolidate + - consolidateToken + - fanout + - stake + - unstake + - delegate + - undelegate + - switchValidator + - claim + - stakeClaimRewards + - pledge + - vote + - createAccount + - updateAccount + - addTrustLine + - removeTrustLine + - signMessage + - signTypedStructuredData + - enableToken + - authorize + - acceleration + - fillNonce + - walletRecovery + - contractCall + - deactivate + - customTx + - closeAssociatedTokenAccount + InternationalWireBankAccount: + title: International Wire Bank Account + type: object + description: | + An external bank account. 'routingNumber' must be set for US bank accounts. + 'swiftCode' must be set for banks outside the US. + properties: + accountNumber: + description: Bank account number or IBAN. + type: string + minLength: 1 + maxLength: 34 + example: 114584906 + enterpriseId: + $ref: '#/components/schemas/Id' + address: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + address1: + type: string + example: 2390 El Camino Real + address2: + type: string + example: Palo Alto, CA 94306 + address3: + type: string + example: '' + name: + type: string + example: America California Bank + ownerName: + type: string + example: Donald E. Knuth + ownerAddress: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + owner: + type: object + description: Bank account owner + properties: + name: + type: string + example: Donald E. Knuth + address1: + type: string + example: Computer Science Department + address2: + type: string + example: Stanford University + address3: + type: string + example: Stanford, CA 94305-9045 + required: + - name + - address1 + swiftCode: + description: Bank identifier code, as specified by ISO 9362. Required for international wire transfers. + type: string + example: DEUTDEFF500 + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{6}[0-9A-Z]{2}([0-9A-Z]{3})?$ + shortCountryCode: + $ref: '#/components/schemas/ShortCountryCode' + type: + $ref: '#/components/schemas/BankAccountType' + currency: + $ref: '#/components/schemas/BankAccountCurrency' + furtherCreditTo: + type: string + example: Donald E. Knuth + intermediaryBankName: + type: string + example: America California Bank + intermediaryBankId: + type: string + example: 59cd72485007a239fb00282ed480da1f + required: + - accountNumber + - address1 + - shortCountryCode + - name + - owner + - enterpriseId + - swiftCode + InvalidAddress: + title: Invalid Address + allOf: + - type: object + properties: + name: + type: string + enum: + - InvalidAddress + required: + - name + - $ref: '#/components/schemas/InvalidId' + InvalidAddress1: + title: Invalid address + allOf: + - $ref: '#/components/schemas/PlatformErrorNoName3' + - properties: + context: + type: object + properties: + address: + type: string + coin: + $ref: '#/components/schemas/Coin' + required: + - address + - coin + name: + type: string + description: Error code + enum: + - InvalidAddress + required: + - coin + - context + - address + - name + InvalidEnterpriseId: + title: Invalid Enterprise ID + allOf: + - type: object + properties: + name: + type: string + enum: + - InvalidEnterpriseId + required: + - name + - $ref: '#/components/schemas/InvalidId' + InvalidEnterpriseId1: + title: Invalid enterprise ID + allOf: + - $ref: '#/components/schemas/InvalidId1' + - properties: + name: + type: string + description: Error code + enum: + - InvalidEnterpriseId + required: + - name + InvalidId: + title: InvalidId + allOf: + - type: object + properties: + context: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - id + required: + - context + - $ref: '#/components/schemas/PlatformErrorNoName' + InvalidId1: + allOf: + - $ref: '#/components/schemas/PlatformErrorNoName3' + - properties: + context: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + required: + - context + InvalidOFAC: + title: Address error + allOf: + - $ref: '#/components/schemas/PlatformErrorNoName3' + - properties: + name: + type: string + description: Error code + enum: + - AddressError + error: + type: string + description: Human-readable error message + example: Address cannot be used + required: + - name + InvalidOrganizationId: + title: Invalid Organization ID + allOf: + - type: object + properties: + name: + type: string + enum: + - InvalidOrganizationId + required: + - name + - $ref: '#/components/schemas/InvalidId' + InvalidTransferId: + title: Invalid transfer ID + allOf: + - $ref: '#/components/schemas/InvalidId1' + - properties: + name: + type: string + description: Error code + enum: + - InvalidTransferId + required: + - name + InvalidUserId: + title: Invalid user ID + allOf: + - $ref: '#/components/schemas/InvalidId1' + - properties: + name: + type: string + description: Error code + enum: + - InvalidUserId + required: + - name + InvalidWalletId: + title: Invalid wallet id + allOf: + - $ref: '#/components/schemas/InvalidId1' + - properties: + name: + type: string + description: Error code + enum: + - InvalidWalletId + required: + - name + InvalidWalletId1: + title: Invalid Wallet ID + allOf: + - type: object + properties: + name: + type: string + enum: + - InvalidWalletId + required: + - name + - $ref: '#/components/schemas/InvalidId' + Ip: + type: string + format: ipv4 + example: 127.0.0.1 + Key: + title: Multisig + allOf: + - $ref: '#/components/schemas/KeyCommon' + - type: object + properties: + pub: + $ref: '#/components/schemas/Pub' + required: + - id + - type + Key1: + title: Key + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + pub: + type: string + description: Public part of a key pair + example: xpub661MyMwAqRbcGMVhmc7wqQRYMtcX9LAvSj1pjB213y5TsrkV2uuzJjWnjBrT1FUeNWGPjaVm5p7o6jdNcQJrV1cy3a1R8NQ9m7LuYKA8RpH + ethAddress: + type: string + description: Ethereum address associated with this key + derivedFromParentWithSeed: + type: string + source: + allOf: + - $ref: '#/components/schemas/KeySourceC' + example: user + hsmType: + type: string + enum: + - institutional + - nitro + - SDTrustNitro + description: The type of HSM that owns this key. + example: institutional + isBitGo: + type: boolean + description: '"true" if this key is owned by BitGo' + example: false + isTrust: + type: boolean + description: '"true" if this key is owned by Trust' + example: false + encryptedPrv: + type: string + description: The encrypted private key + aspKeyId: + type: number + coinSpecific: + type: object + additionalProperties: {} + type: + allOf: + - $ref: '#/components/schemas/KeyTypeC' + default: independent + description: A value from a string enum denoting what kind of key this is. Defaults to “independent” indicating an on-chain key is requested. If set to “tss” this tells us that a “tss” key is requested. + example: tss + commonKeychain: + type: string + description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the concatenation of the common public key (32-byte) with the common chaincode (32-byte) as a hex string. + verifiedVssProof: + type: boolean + commonPub: + type: string + description: e common public key. This value is required to be set for BLS keys when the source is either "user" or "backup". Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. + commonPubSig: + type: string + provider: + type: string + distributedCustody: + type: string + webauthnDevices: + type: array + items: + type: object + properties: + authenticatorInfo: + allOf: + - $ref: '#/components/schemas/AuthenticatorInfo' + description: The information about the authenticator + encryptedPrv: + type: string + description: The encrypted private key + otpDeviceId: + type: string + description: The OTP device ID + prfSalt: + type: string + description: The PRF salt + required: + - authenticatorInfo + - encryptedPrv + - otpDeviceId + - prfSalt + migratedFrom: + type: string + required: + - id + - pub + - source + - type + KeyCommon: + type: object + properties: + encryptedPrv: + type: string + description: The encrypted private key + id: + $ref: '#/components/schemas/Id' + isBitGo: + type: boolean + description: True, if this key is owned by BitGo + example: false + source: + $ref: '#/components/schemas/KeySource' + type: + $ref: '#/components/schemas/KeyType' + required: + - id + - type + KeyCreateCoinSpecific: + type: object + properties: + lnbtc: + $ref: '#/components/schemas/KeyCreateCoinSpecificLnbtc' + tlnbtc: + $ref: '#/components/schemas/KeyCreateCoinSpecificLnbtc' + KeyCreateCoinSpecificLnbtc: + type: object + properties: + purpose: + allOf: + - $ref: '#/components/schemas/KeyPurpose' + description: The purpose of the key. + KeyPurpose: + type: string + enum: + - userAuth + - nodeAuth + example: userAuth + KeyShare: + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The source of the key share. + to: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The recipient of the key share. + publicShare: + type: string + description: Public part of the share concatenated with chain code (64+64 characters hex string). + privateShare: + type: string + description: Private part of the share concatenated with chain code (64+64 characters hex string). Depending on who the source and the recipient are, the share might be encrypted against the recipient's public key. + privateShareProof: + type: string + description: The certificate of the private share, signed by the source of the key share. + vssProof: + type: string + description: The verifiable shamir share verification value + required: + - from + - to + - publicShare + - privateShare + KeyShareResponse: + allOf: + - $ref: '#/components/schemas/KeyShare' + - type: object + properties: + hsmSig: + type: string + description: openPGP ASCII armored public key format string. Can be used to ensure that the "u" value came from the HSM. This contains the HSM signature/certification (signed by bitgo GPG key pair) of the public form of the "u" value and notation packets that indicate the commonPublicKey and the key ids of the two GPG keys used to share wrapping (userGPGPublicKey and backupGPGPublicKey). + required: + - hsmSig + KeyShareSource: + type: string + enum: + - user + - backup + - bitgo + example: user + KeySource: + type: string + enum: + - backup + - bitgo + - cold + - user + example: user + KeySourceC: + title: KeySourceC + type: string + enum: + - user + - cold + - bitgo + - backup + KeyTSS: + title: MPC + allOf: + - $ref: '#/components/schemas/KeyCommon' + - type: object + properties: + commonKeychain: + type: string + description: The commonKeychain for the key if this is a MPC key. This value is required to be set when the type is set to “tss” and when the source is either “user” or “backup”. Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. This value is the concatenation of the common public key (32-byte) with the common chaincode (32-byte) as a hex string. + commonPub: + type: string + description: The common public key. This value is required to be set for BLS keys when the source is either "user" or "backup". Setting this indicates to BitGo that the owner of the key has received all key shares they needed for generating their key. + required: + - id + - type + - source + KeyTSSCreated: + title: MPC key + description: This schema contains KeyTSS attributes and several ephemeral fileds which are only available during the key creation since they are not stored. + allOf: + - $ref: '#/components/schemas/KeyTSS' + - type: object + properties: + commonKeychainSig: + type: string + description: openPGP ASCII armored pubkey format string. This contains the HSM signature/certification (signed by BitGo MPC GPG key pair) of the commonKeychain. This is necessary for verification purposes to ensure that the commonKeychain value came from BitGo's HSM. Used for full custody/OVC operations. + commonPublicKeySig: + type: string + description: OpenPGP ASCII pubkey armoured string containing HSM signature certification. Allows to ensure that commonPublicKey came from the HSM + keyShares: + type: array + items: + $ref: '#/components/schemas/KeyShareResponse' + walletHSMGPGPublicKeySigs: + type: string + description: GPG ASCII armored public key format that consists of HSM signature/certification and GPG notation data appended to the key signature subpackets + required: + - id + - type + - source + KeyType: + type: string + enum: + - tss + - independent + - blsdkg + default: independent + description: A value from a string enum denoting what kind of key this is. Defaults to “independent” indicating an on-chain key is requested. If set to “tss” this tells us that a “tss” key is requested. + example: tss + KeyTypeC: + title: KeyTypeC + type: string + enum: + - tss + - independent + - blsdkg + Keys: + type: array + items: + $ref: '#/components/schemas/Id' + example: + - 585951a5df8380e0e304a553 + - 585951a5df8380e0e30d645c + - 585951a5df8380e0e30b6147 + KeysResponse: + type: object + properties: + keys: + type: array + items: + oneOf: + - $ref: '#/components/schemas/Key' + - $ref: '#/components/schemas/KeyTSS' + required: + - keys + Kyc: + title: Kyc + type: object + properties: + available: + type: boolean + required: + type: boolean + data: + $ref: '#/components/schemas/KycData' + documents: + $ref: '#/components/schemas/KycDocuments' + failureCount: + type: number + fullyRequired: + type: boolean + hasVideoID: + type: boolean + overallState: + $ref: '#/components/schemas/UserKycState1' + passport: + $ref: '#/components/schemas/KycPassport' + residency: + $ref: '#/components/schemas/KycResidency' + isScreeningRequired: + type: boolean + documentsWaived: + type: boolean + enterpriseVideoCallInfo: + type: array + items: + type: object + properties: + enterpriseId: + type: string + videoCallId: + type: string + required: + - enterpriseId + - videoCallId + required: + - available + - required + KycData: + title: KycData + type: object + properties: + state: + $ref: '#/components/schemas/UserKycState1' + fields: + nullable: true + type: object + additionalProperties: {} + required: + - state + KycDocuments: + title: KycDocuments + type: object + properties: + state: + $ref: '#/components/schemas/UserKycState1' + required: + - state + KycPassport: + title: KycPassport + type: object + properties: + required: + type: boolean + state: + $ref: '#/components/schemas/UserKycState1' + required: + - required + KycResidency: + title: KycResidency + type: object + properties: + state: + $ref: '#/components/schemas/UserKycState1' + required: + - state + KycState: + title: KycState + type: string + enum: + - unverified + - approved + - rejected + - pending + LegalIdentifiers: + title: LegalIdentifiers + type: object + properties: + legalPersonNameIdentifierType: + $ref: '#/components/schemas/LegalPersonNameIdentifierType' + legalPersonName: + type: string + required: + - legalPersonNameIdentifierType + LegalPersonNameIdentifierType: + title: LegalPersonNameIdentifierType + type: string + enum: + - LEGL + LessThanOrEqualToValue: + title: Less than or equal to + type: object + description: The less than or equal to (<=) operator. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - <= + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Less than or equal to + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The transfer amount must be less than or equal to the given limit for the condition to trigger + LessThanValue: + title: Less than + type: object + description: The less than (>) operator. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - < + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Less than + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The transfer amount must be less than the given limit for the condition to trigger + Level1OrderBookSnapshot: + required: + - askPrice + - askSize + - bidPrice + - bidSize + - product + - time + type: object + properties: + time: + type: string + format: date-time + product: + type: string + description: Product name e.g. BTC + bidPrice: + type: string + format: decimal + bidSize: + type: string + format: decimal + askPrice: + type: string + format: decimal + askSize: + type: string + format: decimal + example: + time: {} + product: BTC-USD + bidPrice: '7090.96' + bidSize: '1.253433' + askPrice: '7090.97' + askSize: '25.23881' + Level2OrderBookSnapshot: + required: + - asks + - bids + - product + - time + type: object + properties: + time: + type: string + format: date-time + product: + type: string + description: Product name e.g. BTC + bids: + type: array + description: An array of levels of [price, size] + items: + type: string + format: decimal + asks: + type: array + description: An array of levels of [price, size] + items: + type: string + format: decimal + example: + time: {} + product: BTC-USD + bids: + - - '7090.96' + - '1.253433' + asks: + - - '7090.97' + - '25.23881' + LightningCoin: + title: Coin + description: A lightning coin name. + type: string + example: lnbtc + LightningCoinWallet: + title: Lightning Coin Wallet + type: object + properties: + keys: + type: array + items: + type: string + required: + - keys + LightningPaymentIntent: + title: Lightning Payment Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - payment + required: + - intentType + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/LightningPaymentRequestWithSig' + LightningPaymentRequest: + title: LightningPaymentRequest + type: object + properties: + invoice: + type: string + amountMsat: + type: string + format: number + feeLimitMsat: + type: string + format: number + feeLimitRatio: + type: number + required: + - invoice + LightningPaymentRequestWithSig: + title: LightningPaymentRequestWithSig + type: object + properties: + request: + $ref: '#/components/schemas/LightningPaymentRequest' + signature: + type: string + required: + - request + - signature + LightningWalletAddress: + title: LightningWalletAddress + allOf: + - type: object + properties: + coin: + $ref: '#/components/schemas/CoinString' + wallet: + type: string + required: + - coin + - wallet + - $ref: '#/components/schemas/BaseWalletAddress' + LimitRuleCondition: + title: LimitRuleCondition + type: object + properties: + amountString: + type: string + example: '2000000' + pattern: ^-?\d+$ + timeWindow: + type: number + description: Time window in seconds for a velocity limit, between 1 and 30 days + minimum: 0 + maximum: 2678400 + groupTags: + type: array + items: + type: string + startDate: + type: string + format: date-time + title: ISO Date String + required: + - amountString + - timeWindow + ListAuditLogsResponse: + title: ListAuditLogsResponse + type: object + properties: + logs: + type: array + items: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + type: + $ref: '#/components/schemas/AuditLogType1' + ip: + type: string + description: The client IP that caused the AuditLog entry to be written + example: 127.0.0.1 + format: ipv4 + user: + type: string + description: The user that caused the AuditLog entry to be written + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + requestId: + type: string + walletId: + $ref: '#/components/schemas/WalletIdString' + enterpriseId: + $ref: '#/components/schemas/EnterpriseIdString' + organizationId: + $ref: '#/components/schemas/OrganizationIdString' + coin: + $ref: '#/components/schemas/CoinString' + data: {} + date: + type: string + format: date-time + title: ISO Date String + required: + - id + - type + description: The audit logs + coin: + $ref: '#/components/schemas/CoinString' + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. + example: 59cd72485007a239fb00282ed480da1f + required: + - logs + ListBankAccountsResponse: + type: object + properties: + bankAccounts: + type: array + items: + $ref: '#/components/schemas/BankAccountResponse' + ListEnterpriseWebhooksResponse: + title: ListEnterpriseWebhooksResponse + type: object + properties: + webhooks: + type: array + items: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + created: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + url: + type: string + example: https://your.server.com/webhook + format: uri + version: + type: number + description: 2 for coins running on API v2. + example: 2 + scope: + $ref: '#/components/schemas/WebhookScope' + state: + $ref: '#/components/schemas/WebhookState' + successiveFailedAttempts: + type: number + example: 0 + listenToFailureStates: + type: boolean + description: Whether or not to listen to failed transactions on chain. + label: + type: string + description: Label of the new webhook. + walletId: + type: string + enterpriseId: + type: string + organizationId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + userId: + type: string + type: + allOf: + - $ref: '#/components/schemas/WebhookType' + description: Event type to listen to. + numConfirmations: + type: number + example: 6 + lastAttempt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + failingSince: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + allToken: + type: boolean + txRequestStates: + type: array + items: + type: string + enum: + - pendingApproval + - canceled + - rejected + - initialized + - pendingDelivery + - delivered + - pendingUserSignature + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - signed + - failed + description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. + txRequestTransactionStates: + type: array + items: + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. + required: + - id + - created + - coin + - url + - version + - scope + - state + - successiveFailedAttempts + - listenToFailureStates + nextBatchPrevId: + type: string + required: + - webhooks + ListOrganizationWebhookResponseC: + title: ListOrganizationWebhookResponseC + type: object + properties: + webhooks: + type: array + items: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + created: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + url: + type: string + example: https://your.server.com/webhook + format: uri + version: + type: number + description: 2 for coins running on API v2. + example: 2 + scope: + $ref: '#/components/schemas/WebhookScope' + state: + $ref: '#/components/schemas/WebhookState' + successiveFailedAttempts: + type: number + example: 0 + listenToFailureStates: + type: boolean + description: Whether or not to listen to failed transactions on chain. + label: + type: string + description: Label of the new webhook. + walletId: + type: string + enterpriseId: + type: string + organizationId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + userId: + type: string + type: + allOf: + - $ref: '#/components/schemas/WebhookType' + description: Event type to listen to. + numConfirmations: + type: number + example: 6 + lastAttempt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + failingSince: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + allToken: + type: boolean + txRequestStates: + type: array + items: + type: string + enum: + - pendingApproval + - canceled + - rejected + - initialized + - pendingDelivery + - delivered + - pendingUserSignature + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - signed + - failed + description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. + txRequestTransactionStates: + type: array + items: + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. + required: + - id + - created + - coin + - url + - version + - scope + - state + - successiveFailedAttempts + - listenToFailureStates + nextBatchPrevId: + type: string + required: + - webhooks + ListPendingApprovalsCountByEnterpriseResponse: + title: ListPendingApprovalsCountByEnterpriseResponse + type: object + properties: + enterprises: + $ref: '#/components/schemas/PendingApprovalsCountSchema' + organizations: + type: object + additionalProperties: + type: object + properties: + pendingApprovalsCount: + type: number + description: The number of pending approvals + required: + - pendingApprovalsCount + required: + - enterprises + ListReportsJSON: + title: ListReportsJSON + type: object + properties: + reports: + type: array + items: + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/ReportParams' + - $ref: '#/components/schemas/GenericReportParamsJSON' + nextBatchPrevId: + type: string + minLength: 1 + required: + - reports + ListRuleEntryType: + type: string + enum: + - address + - walletId + - enterpriseId + description: the kind of resource a list rule entry refers to + ListTxRequestAwaitingSignatureForWalletResponse: + title: ListTxRequestAwaitingSignatureForWalletResponse + type: object + properties: + txRequests: + type: array + items: + allOf: + - type: object + properties: + transactions: + type: array + items: + type: object + properties: + state: + $ref: '#/components/schemas/TransactionState' + unsignedTx: + $ref: '#/components/schemas/UnsignedTransaction' + signatureShares: + type: array + items: + allOf: + - type: object + properties: + privateShareProof: + type: string + description: The private share proof + publicShare: + type: string + description: The public share + vssProof: + type: string + description: The VSS proof of the signature share + - $ref: '#/components/schemas/SignatureShareWithoutVssProof' + commitmentShares: + type: array + items: + allOf: + - type: object + properties: + type: + type: string + enum: + - commitment + description: The type of the commitment share + required: + - type + - $ref: '#/components/schemas/BaseShare' + txHash: + type: string + updatedDate: + type: string + format: date-time + title: ISO Date String + createdDate: + type: string + format: date-time + title: ISO Date String + required: + - state + - unsignedTx + description: The transactions associated with the transaction request + - $ref: '#/components/schemas/TransactionRequestBase' + bitgoRangeProofChallenge: + allOf: + - type: object + properties: + ntildeProof: + $ref: '#/components/schemas/NtildeProof' + required: + - ntildeProof + - $ref: '#/components/schemas/Challenge' + totalCount: + type: number + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. + example: 585951a5df8380e0e3063e9f + format: uuid + required: + - txRequests + ListWalletShareRequestResponse: + title: ListWalletShareRequestResponse + type: object + properties: + walletShareRequests: + type: array + items: + type: object + properties: + id: + type: string + walletId: + $ref: '#/components/schemas/WalletIdString' + walletLabel: + type: string + coin: + type: string + userId: + type: string + userEmail: + type: string + userFullName: + type: string + permissions: + type: array + items: + type: string + enum: + - spend + created: + type: string + format: date-time + title: ISO Date String + required: + - id + - walletId + - walletLabel + - coin + - userId + - userEmail + - userFullName + - permissions + - created + required: + - walletShareRequests + ListWalletSharesCountByEnterpriseResponse: + title: ListWalletSharesCountByEnterpriseResponse + type: object + properties: + enterprises: + $ref: '#/components/schemas/WalletSharesCountSchema' + required: + - enterprises + ListWalletSharesResponse: + type: object + properties: + incoming: + type: array + items: + $ref: '#/components/schemas/WalletShare1' + outgoing: + type: array + items: + $ref: '#/components/schemas/WalletShare1' + LivenessVerificationParameter: + title: LivenessVerificationParameter + type: string + enum: + - transactionInitiator + - walletAdmins + - videoIdUsers + LockedSession: + type: object + properties: + created: + type: string + format: date-time + expires: + type: string + format: date-time + id: + $ref: '#/components/schemas/Id' + ip: + allOf: + - $ref: '#/components/schemas/Ip' + description: IP address of the client that requested this access token + ipRestrict: + type: array + items: + type: string + format: ipv4 + description: IP addresses of clients that are allowed to use this token + origin: + type: string + example: test.bitgo.com + description: BitGo environment that issued this token. The token is only valid in this environment. + scope: + allOf: + - $ref: '#/components/schemas/Scope' + description: Session permissions + user: + $ref: '#/components/schemas/Id' + required: + - created + - expires + - id + - origin + - scope + - user + LoginResponse: + title: LoginResponse + type: object + properties: + access_token: + type: string + example: 9b72c68ef394f5146f0f3efc1feafb7a971752cb00e79fafcfd8c1d2db83639c + derivationPath: + type: string + encryptedECDHXprv: + type: string + encryptedToken: + type: string + expires_at: + type: number + description: Unix timestamp + example: 1534201288 + expires_in: + type: number + noECDHKeychain: + type: boolean + scope: + type: array + example: + - crypto_compare + - user_manage + - openid + - profile + - wallet_create + - wallet_manage_all + - wallet_approve_all + - wallet_spend_all + - wallet_edit_all + - wallet_view_all + items: + type: string + token_type: + type: string + grant_type: + allOf: + - $ref: '#/components/schemas/GrantTypes' + description: Represents the login method that was used + user: + $ref: '#/components/schemas/User2' + warning: + type: string + required: + - expires_at + - expires_in + - scope + - token_type + - grant_type + - user + MarginNetOpenPosition: + type: object + required: + - currency + - enterpriseId + - netOpenPosition + - netOpenPositionValue + - shortMarginPositionNotionalLimit + - longMarginPositionNotionalLimit + - unrealizedPnL + - lastModified + properties: + currency: + type: string + enterpriseId: + type: string + format: uuid + netOpenPosition: + type: number + format: decimal + netOpenPositionValue: + type: number + format: decimal + shortMarginPositionNotionalLimit: + $ref: '#/components/schemas/Amount4' + longMarginPositionNotionalLimit: + $ref: '#/components/schemas/Amount4' + unrealizedPnL: + $ref: '#/components/schemas/Amount4' + lastModified: + type: string + format: date-time + example: + currency: BTC + enterpriseId: 63925f940c259a00061853808ffea830 + netOpenPosition: -2.3242 + netOpenPositionValue: -124017.22 + shortMarginPositionNotionalLimit: + quantity: 1000000 + currency: USD + longMarginPositionNotionalLimit: + quantity: 1000000 + currency: USD + unrealizedPnL: + quantity: 1200 + currency: USD + lastModified: '2024-07-29T21:13:09.000Z' + MarginNetOpenPositionLimit: + type: object + required: + - enterpriseId + - currency + - shortMarginPositionNotionalLimit + - longMarginPositionNotionalLimit + properties: + enterpriseId: + type: string + currency: + type: string + shortMarginPositionNotionalLimit: + $ref: '#/components/schemas/Amount4' + longMarginPositionNotionalLimit: + $ref: '#/components/schemas/Amount4' + example: + enterpriseId: enterprise-123 + currency: BTC + shortMarginPositionNotionalLimit: + quantity: '1000000' + currency: USD + longMarginPositionNotionalLimit: + quantity: '2000000' + currency: USD + MarketDataError: + type: object + description: Market Data Error + properties: + error: + type: string + errorName: + type: string + required: + - error + - errorName + example: + errorName: backend:common:invalidArgument + error: backend:common:invalidArgument key=instrument + MaskedV1SettlementTransfersOutput: + title: MaskedV1SettlementTransfersOutput + type: array + items: + type: object + properties: + sourceTradingAccountId: + type: string + minLength: 1 + sourceNetworkAccountId: + type: string + title: uuid + destinationTradingAccountId: + type: string + minLength: 1 + destinationNetworkAccountId: + type: string + title: uuid + currency: + type: string + minLength: 1 + settlementId: + type: string + title: uuid + quantity: + $ref: '#/components/schemas/NonNegativeBigAmount' + txIds: + type: array + items: + type: string + minLength: 1 + status: + $ref: '#/components/schemas/SettlementTransferStatus' + usdValue: + nullable: true + oneOf: + - type: string + format: number + - type: number + id: + type: string + title: uuid + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + settlementStatus: + $ref: '#/components/schemas/SettlementStatuses' + settlementNotes: + type: string + minLength: 1 + sourceClientName: + type: string + minLength: 1 + destinationClientName: + type: string + minLength: 1 + sourceConnectionName: + type: string + minLength: 1 + destinationConnectionName: + type: string + minLength: 1 + required: + - currency + - settlementId + - quantity + - txIds + - status + - usdValue + - id + - createdAt + - updatedAt + - settlementStatus + MaticStakingDelegation: + title: MATIC + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + properties: + unstakeable: + description: True if unable to unstake. + type: boolean + MaticStakingRequest: + title: MATIC + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: + gasPrice: + type: string + description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '1012000000' - status: ACTIVE - rewards: '12000000' - lockedRewards: '0' - pendingUnstake: '1012000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/MaticStakingDelegation' transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY - amount: '1012' - transactionType: undelegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: WAITING - amount: '1012000000' - transactionType: withdraw_undelegated - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '1012000000' - AvaxPStakingRequestWithoutDelegationsExample: - summary: AvaxP Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - durationSeconds: 604800 - walletType: hot - type: STAKE - coin: avaxp - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '10000000000' - AvaxPStakingRequestWithTransactionsExample: - summary: AvaxP UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - durationSeconds: 604800 - walletType: custodial - type: STAKE - coin: avaxp - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/MaticStakingTransaction' + amount: + description: Amount to stake in base units (i.e. Wei for MATIC) + type: string + MaticStakingRequestPOSTBody: + title: MATIC stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + gasPrice: + type: string + description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. + MaticStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + properties: + gasPrice: + description: The gas limit in base units. + type: string + MaticUnStakingRequestPOSTBody: + title: MATIC unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + gasPrice: + type: string + description: User overridden gas price to apply for the generated transactions for this request. GasPrice is in base units. + MemoObject: + type: object + properties: + type: + type: string + value: + type: string + description: | + Memo for Stellar or EOS. Type is only required for memos in Stellar transactions. The memo contains optional extra information that can also be used to identify payments in Stellar or EOS. + MemoString: + type: string + maxLength: 100 + description: A memo for this specific transaction. This format is only available for Stacks. + Message: + type: object + properties: + coin: + type: string + description: The coin associated with the wallet. + combineSigShare: + type: string + createdDate: + description: The date the message was created. + type: string + format: date-time + messageEncoded: + description: The message encoded as a hex string. + type: string + messageRaw: + description: The message as human readable text. + type: string + signatureShares: + type: array + items: + $ref: '#/components/schemas/PlatformSignatureShare' + state: + $ref: '#/components/schemas/PlatformTransactionRequestState' + txHash: + type: string + description: The signed hex of the message. + updatedDate: + description: The date when the message state was updated. + type: string + format: date-time + required: + - messageRaw + - state + Message1: + type: object + properties: + coin: + type: string + description: The coin associated with the wallet. + combineSigShare: + type: string + createdDate: + description: The date the message was created. + type: string + format: date-time + messageEncoded: + description: The message encoded as a hex string. + type: string + messageRaw: + description: The message as human readable text. + type: string + signatureShares: + type: array + items: + $ref: '#/components/schemas/SignatureShare' + state: + $ref: '#/components/schemas/TransactionRequestState1' + txHash: + type: string + description: The signed hex of the message. + updatedDate: + description: The date when the message state was updated. + type: string + format: date-time + required: + - messageRaw + - state + MinRequireActionParameter: + title: Minimum number of approvals required + type: object + description: Minimum required number of approvers. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the action parameter. + enum: + - minRequired + example: minRequired + label: + type: string + description: A label for the action parameter which can be shown to an end user. + example: Approvals Required + description: + type: string + description: A description for the action parameter which can be shown to an end user. + example: Minimum required number of approvers + type: + type: string + description: The type of acceptable values for this action parameter. + enum: + - POSITIVE_NUMBER + example: POSITIVE_NUMBER + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: false + MmiSignMessageIntent: + title: MMI Sign Message Intent + allOf: + - type: object + properties: + custodianMessageId: + type: string + required: + - custodianMessageId + - $ref: '#/components/schemas/SignMessageIntent' + MmiSignTransactionIntent: + title: MMI Sign Transaction Intent + allOf: + - type: object + properties: + custodianTransactionId: + type: string + required: + - custodianTransactionId + - $ref: '#/components/schemas/PaymentIntent' + MultiSigType: + title: MultiSigType + type: string + enum: + - onchain + - tss + - blsdkg + MultisigTypeVersion: + title: MultisigTypeVersion + type: string + enum: + - MPCv2 + MultisigTypeVersion1: + type: string + enum: + - MPCv2 + MutabilityConstraint: + title: MutabilityConstraint + type: string + enum: + - unlocked + - permanent + - sticky + - managed + MutabilityConstraint1: + type: string + description: | + Specifies whether a BitGo admin can change 'lockDate' + * 'managed' - Not locked, but requires approval from a BitGo admin to change + * 'permanent' - 'lockDate' cannot be changed + * 'sticky' - Not included in bulk unlock, but 'lockDate' can be individually changed + enum: + - managed + - permanent + - sticky + Name: + type: object + properties: + first: + type: string + example: Jane + full: + type: string + example: Jane Doe + last: + type: string + example: Doe + Name1: + title: Name + type: object + properties: + first: + type: string + example: Jane + full: + type: string + example: Jane Doe + last: + type: string + example: Doe + required: + - first + - full + - last + NearStakeIntent: + title: Near Stake Intent + allOf: + - type: object + properties: + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - recipients + - $ref: '#/components/schemas/StakeIntent' + NearStakeIntent1: + title: Near Stake + allOf: + - $ref: '#/components/schemas/StakeIntent2' + - type: object + properties: + recipients: + type: array + items: + $ref: '#/components/schemas/RecipientEntry1' + required: + - recipients + NearStakingDelegation: + title: NEAR + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + NearStakingRequest: + title: NEAR + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '10012000000' - status: ACTIVE - rewards: '12000000' - lockedRewards: '0' - pendingUnstake: '10012000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/NearStakingDelegation' transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY - amount: '1012' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: WAITING - amount: '10012000000' - transactionType: withdraw_undelegated - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10012000000' - DotStakingRequestsListResponseExample: - summary: Dot Staking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '10000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStaking: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/NearStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + NearStakingRequestPOSTBody: + title: NEAR stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to stake in base units. + type: string + example: '12000000000000000000' + NearStakingRequestWithTransactions: + title: NEAR + allOf: + - $ref: '#/components/schemas/NearStakingRequest' + - type: object + properties: transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: CONFIRMED - amount: '10000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10000000000' - DotUnStakingRequestsListResponseExample: - summary: Dot UnStaking Request List Response Example - value: - requests: - - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '10012000000' - status: ACTIVE - rewards: '12000000' - lockedRewards: '0' - pendingUnstake: '10012000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + items: + oneOf: + - $ref: '#/components/schemas/NearStakingTransaction' + NearStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + NearUnStakingRequestPOSTBody: + title: NEAR unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to stake in base units. + type: string + example: '12000000000000000000' + type: + description: Staking Request type = 'UNSTAKE'. + type: string + example: UNSTAKE + required: + - amount + - type + NearUnstakeIntent: + title: Near Unstake Intent + allOf: + - type: object + properties: + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - recipients + - $ref: '#/components/schemas/UnstakeIntent' + NearUnstakeIntent1: + title: Near Unstake + allOf: + - $ref: '#/components/schemas/UnstakeIntent2' + - type: object + properties: + recipients: + type: array + items: + $ref: '#/components/schemas/RecipientEntry1' + required: + - recipients + NearWallet: + title: Near Wallet + type: object + properties: + nonceAddress: + type: string + lastNonce: + type: number + addressCount: + type: number + pendingChainInitialization: + type: boolean + rootAddrss: + type: string + lastChainIndex: + type: object + additionalProperties: + type: number + required: + - nonceAddress + - lastNonce + - addressCount + - pendingChainInitialization + NearWithdrawIntent: + title: Near Withdraw Intent + allOf: + - type: object + properties: + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - recipients + - $ref: '#/components/schemas/WithdrawIntent' + NearWithdrawIntent1: + title: Near Claim Unstake + allOf: + - $ref: '#/components/schemas/WithdrawIntent2' + - type: object + properties: + recipients: + type: array + items: + $ref: '#/components/schemas/RecipientEntry1' + required: + - recipients + NetworkAccountBalanceRecordForClient: + title: NetworkAccountBalanceRecordForClient + type: object + additionalProperties: + type: object + properties: + partnerId: + type: string + title: uuid + partnersConnectionId: + type: string + minLength: 1 + name: + type: string + minLength: 1 + balances: + $ref: '#/components/schemas/AccountBalanceRecord' + partnerInstitutionIdentifier: + type: string + minLength: 1 + required: + - partnerId + - partnersConnectionId + - name + - balances + NetworkAccountBalanceRecordForPartner: + title: NetworkAccountBalanceRecordForPartner + type: object + additionalProperties: + type: object + properties: + clientId: + type: string + title: uuid + partnerId: + type: string + title: uuid + partnersConnectionId: + type: string + minLength: 1 + balances: + $ref: '#/components/schemas/AccountBalanceRecord' + required: + - clientId + - partnerId + - partnersConnectionId + - balances + NewLimitOrderRequest: + title: Limit + required: + - product + - quantity + - quantityCurrency + - side + - type + - limitPrice + type: object + properties: + clientOrderId: + type: string + description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. + maxLength: 256 + product: + type: string + description: Product name e.g. BTC-USD + type: + type: string + description: Must be set to "limit" + fundingType: + $ref: '#/components/schemas/FundingType' + side: + $ref: '#/components/schemas/Side' + quantity: + type: string + format: decimal + quantityCurrency: + type: string + description: The quantity currency must be in the base currency for both buy and sell. e.g. If product is BTC-USD, the base currency will be BTC. + limitPrice: + type: string + format: decimal + duration: + type: integer + description: Duration of the limit order in minutes. For orders that are good till cancelled, skip duration and use timeInForce=GTC. + timeInForce: + type: string + description: Time in force for the order. GTC (Good Till Cancelled) is the only allowed value. + enum: + - GTC + example: + clientOrderId: myorder1 + type: limit + product: BTC-USD + side: buy + quantity: '1' + quantityCurrency: BTC + limitPrice: '10005' + duration: 60 + NewMarketOrderRequest: + title: Market + required: + - product + - quantity + - quantityCurrency + - side + - type + - fundingType + type: object + properties: + clientOrderId: + type: string + description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. + maxLength: 256 + product: + type: string + description: Product name e.g. BTC-USD + type: + type: string + description: Must be set to "market" + fundingType: + $ref: '#/components/schemas/FundingType' + side: + $ref: '#/components/schemas/Side' + quantity: + type: string + format: decimal + quantityCurrency: + type: string + description: The quantity currency must be in quote currency for buy and base currency for sell. e.g. If product is BTC-USD, the base currency will be BTC. + example: + clientOrderId: myorder1 + type: market + product: BTC-USD + side: buy + quantity: '10000' + quantityCurrency: USD + NewOrderRequest: + oneOf: + - $ref: '#/components/schemas/NewMarketOrderRequest' + - $ref: '#/components/schemas/NewLimitOrderRequest' + - $ref: '#/components/schemas/NewTWAPOrderRequest' + NewTWAPOrderRequest: + title: TWAP + required: + - product + - quantity + - quantityCurrency + - side + - type + - duration + - interval + type: object + properties: + clientOrderId: + type: string + description: Custom order ID. This must be a unique ID associated with an order and cannot be the same across multiple requests. + maxLength: 256 + product: + type: string + description: Product name e.g. BTC-USD + type: + type: string + description: Must be set to "twap" + fundingType: + $ref: '#/components/schemas/FundingType' + side: + $ref: '#/components/schemas/Side' + quantity: + type: string + format: decimal + quantityCurrency: + type: string + description: The quantity currency must be in quote currency for buy unless a limit price is specified, in which case buy orders can only be placed in the base currency. For sell, the quantity currency must be in base. e.g. If product is BTC-USD, the base currency will be BTC. + limitPrice: + type: string + format: decimal + duration: + type: integer + description: Duration of the TWAP order in minutes. + interval: + type: integer + description: Interval of the TWAP order in minutes. + scheduledDate: + type: string + format: date-time + example: + clientOrderId: myorder1 + type: twap + product: BTC-USD + side: buy + quantity: '100000' + quantityCurrency: USD + duration: 60 + interval: 5 + NextBatchPrevId: + type: string + format: uuid + example: 585951a5df8380e0e3063e9f + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the 'prevId' query parameter. + NonNegativeBigAmount: + title: NonNegativeBigAmount + type: string + NonParticipationTransactionBuildRequest: + title: Non participation transaction + allOf: + - $ref: '#/components/schemas/BuildParams' + - type: object + properties: + nonParticipation: + type: boolean + required: + - nonParticipation + NonWhitelistedAddressValue: + title: Not whitelisted + type: object + description: The destination is not whitelisted. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - nonWhitelistedAddress + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Non-whitelisted address + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The destination is not whitelisted + NtildeProof: + title: NtildeProof + type: object + description: The ntildeProof value is only required when creating the initial config. + properties: + h1WrtH2: + type: object + properties: + alpha: + type: array + items: + type: string + description: The alpha value of the range proof challenge proof is an array of 128 hex strings. + t: + type: array + items: + type: string + description: The t value of the range proof challenge proof is an array of 128 hex strings. + required: + - alpha + - t + h2WrtH1: + type: object + properties: + alpha: + type: array + items: + type: string + description: The alpha value of the range proof challenge proof is an array of 128 hex strings. + t: + type: array + items: + type: string + description: The t value of the range proof challenge proof is an array of 128 hex strings. + required: + - alpha + - t + required: + - h1WrtH2 + - h2WrtH1 + NumKeychains: + description: | + Number of keys provided. This value must be 3 for hot wallets, + 1 for **ofc** wallets, and not specified for custodial wallets. + type: integer + example: 3 + NumSignatures: + description: | + Number of signatures required. This value must be 2 for + hot wallets, 1 for **ofc** wallets, and not specified for custodial + wallets. + type: integer + example: 2 + NumberLike: + title: NumberLike + type: number + NumberOrString: + oneOf: + - type: string + pattern: ^-?[\d\.]+$ + example: '1.5' + - type: number + OAuthAccessToken: + title: OAuthAccessToken + type: object + properties: + bitgoAdminPermissions: + type: array + items: + type: string + description: The BitGo admin permissions associated with the access token + client: + type: string + description: The client associated with the access token + created: + type: string + description: The creation date of the access token + format: date-time + title: ISO Date String + enterprise: + type: string + description: The enterprise associated with the access token + expires: + type: string + description: The expiration date of the access token + format: date-time + title: ISO Date String + extensionAddress: + type: string + description: The extension address associated with the access token + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + internal: + type: boolean + ip: + type: string + description: IP address of the client that requested this access token + example: 127.0.0.1 + format: ipv4 + ipRestrict: + type: array + items: + type: string + description: IP addresses of clients that are allowed to use this token + isExtensible: + type: boolean + description: Indicates if the access token is extensible + label: + type: string + description: The label associated with the access token + organizations: + type: array + items: + type: string + description: The organizations associated with the access token + origin: + type: string + description: BitGo environment that issued this token + example: test.bitgo.com + token: + type: string + description: The token value + scope: + type: array + example: + - crypto_compare + - user_manage + - openid + - profile + - wallet_create + - wallet_manage_all + - wallet_approve_all + - wallet_spend_all + - wallet_edit_all + - wallet_view_all + items: + type: string + description: Session permissions + unlock: + allOf: + - type: object + properties: + spendingLimits: + type: object + additionalProperties: + $ref: '#/components/schemas/PerCoinLimit' + - $ref: '#/components/schemas/Unlock' + description: The unlock object, returned if this session is currently unlocked + user: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - id + - isExtensible + OAuthProvider: + title: OAuthProvider + type: string + enum: + - msEntra + OAuthSetting: + title: OAuthSetting + type: object + properties: + clientId: + type: string + clientSecret: + type: string + tenantId: + type: string + oauthProvider: + $ref: '#/components/schemas/OAuthProvider' + required: + - clientId + - clientSecret + - tenantId + - oauthProvider + Offchain: + title: Offchain + type: object + properties: + needsKeyReshareAfterPasswordReset: + type: boolean + pendingSystemInitialization: + type: boolean + description: If true, this wallet is waiting for the system to finish initializing. In this state, users cannot create addresses or initiate withdrawals. + required: + - needsKeyReshareAfterPasswordReset + OffchainAddressSubdocument: + title: Offchain Address + type: object + additionalProperties: {} + OnboardingAgreement: + title: OnboardingAgreement + type: object + description: For users doing self-service onboarding, they just need to click a checkbox to agree to the terms. we will track who & when that happened on a feature-by-feature basis. + properties: + user: + type: string + date: + type: string + format: date-time + title: ISO Date String + ip: + type: string + required: + - user + - date + OperatorConditionParameter: + title: Operator + type: object + description: The boolean operator used when comparing the transfer amount with the limit defined in this condition. + required: + - name + - label + - description + - type + - required + - allowMultiple + - values + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - operator + example: operator + label: + type: string + description: A label for the condition parameter that you can display to users. + example: Comparison Operator + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The comparison operator to use when comparing the transfer amount with the given amount + type: + type: string + description: Accepts only enumerated values as listed in the 'values' property of this condition. + enum: + - ENUMERATED + example: ENUMERATED + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + values: + $ref: '#/components/schemas/ValidValues' + OperatorType: + type: string + description: Boolean operators that join Conditions, and/or Actions. Must be null on the last Condition or Action, or if there is only one Condition or Action, must be non-null on all others. + enum: + - AND + - OR + example: AND + Order: + required: + - id + - accountId + - time + - creationDate + - completionDate + - type + - fundingType + - status + - product + - side + - quantity + - quantityCurrency + - filledQuantity + - filledQuoteQuantity + - averagePrice + type: object + properties: + id: + type: string + format: uuid + accountId: + type: string + clientOrderId: + type: string + time: + type: string + format: date-time + description: DEPRECATED + creationDate: + type: string + format: date-time + scheduledDate: + type: string + format: date-time + lastFillDate: + type: string + format: date-time + completionDate: + type: string + format: date-time + settleDate: + type: string + format: date-time + type: + type: string + fundingType: + $ref: '#/components/schemas/FundingType' + status: + $ref: '#/components/schemas/OrderStatus' + product: + type: string + description: Product name e.g. BTC-USD + side: + $ref: '#/components/schemas/Side' + quantity: + type: string + format: decimal + description: The specified quantity. + quantityCurrency: + type: string + description: The specified quantity currency. + filledQuantity: + type: string + format: decimal + description: The base quantity that was filled. + filledQuoteQuantity: + type: string + format: decimal + description: The quote quantity that was filled. + averagePrice: + type: string + format: decimal + limitPrice: + type: string + format: decimal + duration: + type: integer + description: Duration of the order in minutes. + twapInterval: + type: integer + description: Interval length of the TWAP order in minutes. + reason: + description: Reason for order cancellation. 'internalError' indicates an error occurred within the server while processing the order, resulting in an order cancellation. 'insufficientFunds' indicates that the order was cancelled due to shortage of funds to complete the transaction. + type: string + enum: + - internalError + - insufficientFunds + example: insufficientFunds + example: + id: 67fd640c-cb6c-4218-80ae-49e79ec15646 + accountId: 60e740e7898f7d00064d43769a73dc48 + clientOrderId: myorderid1 + time: {} + creationDate: {} + scheduledDate: {} + lastFillDate: {} + completionDate: {} + settleDate: {} + fundingType: funded + type: market + status: completed + product: BTC-USD + side: buy + quantity: '1000' + quantityCurrency: USD + filledQuantity: '0.02457152' + filledQuoteQuantity: '1000' + averagePrice: '40697.32' + OrderStatus: + type: string + enum: + - pending_open + - open + - completed + - pending_cancel + - canceled + - error + - scheduled + Orders: + type: array + items: + $ref: '#/components/schemas/Order' + OrganizationIdString: + title: OrganizationIdString + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + OrganizationRole: + title: OrganizationRole + type: string + enum: + - admin + - member + - customer + example: admin + Otp: + type: string + example: '123456' + description: Second factor authentication token + OtpType: + title: OtpType + type: string + enum: + - authy + - totp + - u2f + - webauthn + - yubikey + PaginatedResults: + type: object + description: Common fields of a paginated result. + required: + - page + - totalPages + - totalElements + properties: + page: + type: integer + description: Page number. Page numbers start at 1. + totalPages: + type: integer + description: Total number of pages. Total pages start at 1. + totalElements: + type: integer + description: Total number of elements across all pages. + PaginatedResultsWithNextBatchPrevId: + type: object + description: Common fields of a paginated result paged with a nextBatchPrevId. + required: + - nextBatchPrevId + properties: + nextBatchPrevId: + type: string + description: The value to pass as the prevId to the API for getting the next page. + PaillierBlumProof: + title: PaillierBlumProof + type: object + description: The paillierBlumProof value is only required when creating the initial config. + properties: + w: + type: string + description: The w value of the Paillier Blum proof + x: + type: array + items: + type: string + description: The x value of the Paillier Blum proof is an array of 80 hex strings + z: + type: array + items: + type: string + description: The z value of the Paillier Blum proof is an array of 80 hex strings + required: + - w + - x + - z + ParsedTx: + title: ParsedTx + type: object + properties: + inputs: + type: array + items: + type: object + properties: + valueString: + type: string + _id: + type: string + address: + type: string + chain: + type: number + derivationIndex: + type: number + index: + type: number + value: + oneOf: + - type: number + - type: number + required: + - valueString + minerFee: + oneOf: + - type: string + - type: number + outputs: + type: array + items: + type: object + properties: + valueString: + type: string + address: + type: string + change: + type: boolean + coinName: + type: string + data: + type: string + isPayGo: + type: boolean + value: + oneOf: + - type: number + - type: number + wallet: + type: string + walletV1: + type: string + baseAddress: + type: string + enterprise: + type: string + required: + - valueString + spendAmount: + oneOf: + - type: string + - type: number + gasPrice: + type: number + hasUnvalidatedData: + type: boolean + payGoFee: + oneOf: + - type: string + - type: number + spendAmounts: + type: array + items: + type: object + additionalProperties: {} + type: + type: string + required: + - inputs + - minerFee + - outputs + - spendAmount + PartnerConnectionKeySchema: + title: PartnerConnectionKeySchema + type: string + enum: + - token + - tokenAndSignature + - apiKeyAndSecret + - clearloop + PartySettlementAmountsRecord: + title: PartySettlementAmountsRecord + type: object + additionalProperties: + type: object + additionalProperties: + type: string + description: Record> + description: Record> For exchange-style settlements, where the exchange is always the source and client owned connections are the destination. + PaymentIntent: + title: PaymentIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - payment + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intentType + - recipients + - $ref: '#/components/schemas/BaseIntent' + PaymentIntent1: + title: PaymentIntent + allOf: + - type: object + properties: + intent: + type: string + enum: + - payment + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address1' + amount: + $ref: '#/components/schemas/Amount1' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + required: + - intent + - recipients + - $ref: '#/components/schemas/BaseIntent1' + PendingApproval: + title: PendingApproval + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + wallet: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + wallets: + type: array + items: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + description: The wallets of the pending approval + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organizationName: + type: string + description: The organization name + bitgoOrg: + type: string + description: The BitGo organization + creator: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + createDate: + type: string + description: The creation date of the pending approval + format: date-time + title: ISO Date String + approvedDate: + type: string + description: The date when the approval was granted + format: date-time + title: ISO Date String + info: + allOf: + - $ref: '#/components/schemas/PendingApprovalInfo' + description: Information about the pending approval + state: + allOf: + - $ref: '#/components/schemas/PendingApprovalState' + description: The state of the pending approval + scope: + type: string + enum: + - enterprise + - wallet + - organization + description: What kind of entity the Pending Approval is tied to + userIds: + type: array + items: + type: string + description: All the Users who should see this Pending Approval + approvalsRequired: + type: number + example: 1 + minimum: 1 + walletLabel: + type: string + description: Label for the wallet + addressLabels: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/AddressString' + label: + type: string + description: The label + walletLabel: + type: string + description: The wallet label + required: + - address + - label + description: Address labels of recipients in this Pending Approval + resolvers: + type: array + items: + type: object + description: Resolvers for the pending approval + properties: + date: + type: string + description: The date of resolution + format: date-time + title: ISO Date String + resolutionAction: + type: string + enum: + - approve + - reject + - skip + - fail + description: Action taken during resolution + resolutionMemo: + type: string + description: Memo regarding the resolution + resolutionType: + allOf: + - $ref: '#/components/schemas/PendingApprovalStatePending' + description: The type of resolution + user: + type: string + description: The user who resolved the approval + videoApprover: + type: string + description: The approver of the video resolution + videoException: + type: string + description: Exception details for the video + videoLink: + type: string + description: Link to the resolution video + required: + - resolutionType + approvers: + type: array + items: + type: string + description: List of approvers + singleRunResults: + type: array + items: + type: object + properties: + ruleId: + type: string + description: The rule ID + triggered: + type: boolean + description: Whether the rule was triggered + description: Results from single run checks + txRequestId: + type: string + description: Transaction request ID + example: 123e4567-e89b-12d3-a456-426614174000 + format: uuid + videoId: + type: object + description: ID for the video related to the approval + properties: + date: + type: string + description: The date of the video ID + format: date-time + title: ISO Date String + user: + type: string + description: The user associated with the video ID + videoApprover: + type: string + description: The approver of the video + videoException: + type: string + description: The exception related to the video + videoLink: + type: string + description: The link to the video + version: + type: number + description: Version of the pending approval + groupApprovalRequirement: + type: object + description: Requirements for providing group approval. + properties: + items: + type: array + items: + type: object + properties: + id: + type: string + description: The ID of the group + minimumApprovals: + type: number + description: The name of the group + type: + type: string + description: The type of the group + required: + - id + - type + operator: + $ref: '#/components/schemas/GroupApprovalRequirementOperator' + required: + - items + - operator + policyEvaluationId: + type: string + description: ID for the policy evaluation + actions: + type: array + items: + type: object + properties: + approvers: + type: array + items: + type: string + description: The approvers of the action + id: + type: string + description: The ID of the action + name: + type: string + description: The name of the action + operator: + type: string + enum: + - AND + - OR + description: The operator of the action + parameters: + allOf: + - $ref: '#/components/schemas/PolicyActionParameters' + description: The parameters of the action + resolvers: + type: array + items: + type: object + description: The resolvers of the action + properties: + date: + type: string + description: The date of resolution + format: date-time + title: ISO Date String + resolutionAction: + type: string + enum: + - approve + - reject + - skip + - fail + description: Action taken during resolution + resolutionMemo: + type: string + description: Memo regarding the resolution + resolutionType: + allOf: + - $ref: '#/components/schemas/PendingApprovalStatePending' + description: The type of resolution + user: + type: string + description: The user who resolved the approval + videoApprover: + type: string + description: The approver of the video resolution + videoException: + type: string + description: Exception details for the video + videoLink: + type: string + description: Link to the resolution video + required: + - resolutionType + status: + allOf: + - $ref: '#/components/schemas/EvaluatedPolicyActionStatus' + description: The status of the action + required: + - id + - name + - parameters + - status + description: List of actions taken + resolutionOrder: + type: array + items: + type: object + properties: + actions: + type: array + items: + type: string + minLength: 1 + required: + - actions + description: Order of resolution + useLegacyPolicyEngine: + type: boolean + description: Flag to use legacy policy engine + videoCallId: + type: string + description: ID for the video call + lastUpdated: + type: string + description: The last date the approval was processing + format: date-time + title: ISO Date String + freeze: + type: object + description: The freeze state + properties: + actions: + type: array + items: + type: object + properties: + reason: + type: string + state: + type: string + enum: + - frozen + - unFrozen + time: + type: string + format: date-time + title: ISO Date String + userId: + type: string + username: + type: string + state: + type: string + enum: + - frozen + - unFrozen + required: + - id + - creator + - createDate + - info + - state + - scope + PendingApproval1: + title: Pending approval + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + wallet: + $ref: '#/components/schemas/Id' + enterprise: + $ref: '#/components/schemas/Id' + organization: + $ref: '#/components/schemas/Id' + creator: + $ref: '#/components/schemas/Id' + createDate: + type: string + format: date-time + info: + anyOf: + - $ref: '#/components/schemas/PendingApprovalTransactionRequest' + - $ref: '#/components/schemas/PendingApprovalTransactionRequestFull1' + - $ref: '#/components/schemas/PendingApprovalUserChangeRequest' + - $ref: '#/components/schemas/PendingApprovalPolicyRuleRequest' + - $ref: '#/components/schemas/PendingApprovalUpdateApprovalsRequiredRequest' + - $ref: '#/components/schemas/PendingApprovalEnterpriseModificationResponse1' + - $ref: '#/components/schemas/PendingApprovalEnterpriseInviteRequest' + state: + $ref: '#/components/schemas/PendingApprovalState1' + scope: + description: What kind of entity the Pending Approval is tied to + type: string + enum: + - enterprise + - wallet + userIds: + description: All the Users who should see this Pending Approval + type: array + items: + $ref: '#/components/schemas/Id' + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + walletLabel: + type: string + resolvers: + type: array + items: + type: object + properties: + user: + type: string + date: + type: string + resolutionType: + type: string + enum: + - approved + - awaitingSignature + - pending + - pendingBitGoAdminApproval + - pendingCryptographicApproval + - pendingCustodianApproval + - pendingFinalApproval + - pendingIdVerification + - pendingVideoApproval + - processing + - rejected + signatures: + type: array + items: + type: string + videoApprover: + type: string + videoLink: + type: string + videoException: + type: string + required: + - user + - date + - resolutionType + - signatures + addressLabels: + type: array + items: + $ref: '#/components/schemas/PendingApprovalAddressLabel' + PendingApprovalAddressLabel: + description: Address labels of recipients in this Pending Approval + type: object + properties: + address: + $ref: '#/components/schemas/AddressString3' + label: + $ref: '#/components/schemas/AddressLabel' + walletLabel: + $ref: '#/components/schemas/WalletLabel' + required: + - address + - label + PendingApprovalEnterpriseInviteRequest: + title: Enterprise Invite Request + type: object + properties: + type: + type: string + enum: + - enterpriseInviteRequest + enterpriseInviteRequest: + type: object + properties: + action: + type: string + enum: + - add + email: + type: string + description: The email address of the user being invited + userId: + $ref: '#/components/schemas/Id' + description: The ID of the user being invited + isVideoIdUser: + type: boolean + enterpriseInfo: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + description: The ID of the enterprise the user is being invited to + name: + type: string + description: The name of the enterprise the user is being invited to + requiredVerificationStep: + type: string + description: The required verification step needed (if any) before the user can join the enterprise + invitedBy: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + description: The ID of the user who invited the user + fullName: + type: string + description: The full name of the user who invited the user + email: + type: string + description: The email address of the user who invited the user + PendingApprovalEnterpriseModificationResponse: + title: Enterprise modification request + type: object + properties: + policyRuleRequest: + type: object + properties: + action: + type: string + updateEnterpriseRequest: + type: object + properties: + type: + type: string + enum: + - updateEnterpriseRequest + action: + type: string + enum: + - add + - remove + permission: + type: string + enum: + - admin + userId: + type: string + email: + allOf: + - $ref: '#/components/schemas/PlatformEmail' + description: E-Mail address of newly added users + type: + type: string + enum: + - policyRuleRequest + PendingApprovalEnterpriseModificationResponse1: + title: Enterprise modification request + type: object + properties: + policyRuleRequest: + type: object + properties: + action: + type: string + updateEnterpriseRequest: + type: object + properties: + type: + type: string + enum: + - updateEnterpriseRequest + action: + type: string + enum: + - add + - remove + permission: + type: string + enum: + - admin + userId: + type: string + email: + allOf: + - $ref: '#/components/schemas/Email' + description: E-Mail address of newly added users + type: + type: string + enum: + - policyRuleRequest + PendingApprovalInfo: + title: PendingApprovalInfo + type: object + properties: + type: + $ref: '#/components/schemas/PendingApprovalType' + userChangeRequest: + type: object + properties: + action: + type: string + description: The action taken + permissions: + type: array + items: + type: string + description: The permissions associated with the change + userChanged: + type: string + description: The user that changed + transactionRequest: + type: object + properties: + buildParams: {} + coinSpecific: {} + comment: + nullable: true + type: string + description: The comment for the transaction request + fee: {} + isUnsigned: + nullable: true + type: boolean + description: Indicates if the transaction is unsigned + policyUniqueId: {} + recipients: + type: array + items: + type: object + properties: + address: + type: string + description: The address of the recipient + example: 2MvrwRYBAuRtPTiZ5MyKg42Ke55W3fZJfZS + maxLength: 250 + amount: {} + data: + type: string + description: Additional data for the transaction + description: The recipients of the transaction + requestedAmount: {} + sourceWallet: {} + triggeredPolicy: {} + validTransaction: + type: string + description: Indicates if the transaction is valid + validTransactionHash: + type: string + description: The hash of the valid transaction + verificationItems: + nullable: true + type: array + items: + type: string + description: The verification items for the transaction + verificationRuleId: + nullable: true + type: string + description: The ID of the verification rule + videoApprovers: + type: array + items: + description: The video approvers for the transaction + transactionRequestFull: + type: object + properties: + intent: + allOf: + - $ref: '#/components/schemas/PaymentIntent' + description: The intent of the transaction request + policyUniqueId: + type: string + description: The unique ID for the policy + txRequest: + oneOf: + - $ref: '#/components/schemas/TransactionRequestLite2' + - $ref: '#/components/schemas/TransactionRequestFull' + description: The transaction request details + txRequestId: + allOf: + - $ref: '#/components/schemas/TransactionRequestId' + description: The ID of the transaction request + verificationItems: + type: array + items: + type: string + description: The verification items for the transaction + verificationRuleId: + type: string + description: The ID of the verification rule + videoApprovers: + type: array + items: + type: string + description: The video approvers for the transaction + walletRebalanceEventId: + type: string + description: The ID of the wallet rebalance event + required: + - txRequestId + policyRuleRequest: + type: object + properties: + action: + type: string + description: The action of the policy rule request + update: + type: object + description: The update details of the policy rule request + properties: + action: + allOf: + - $ref: '#/components/schemas/PolicyRuleAction' + description: The action of the policy rule + coin: + $ref: '#/components/schemas/CoinString' + condition: + allOf: + - $ref: '#/components/schemas/PolicyRuleUpdateCondition' + description: The condition of the policy rule + id: + type: string + description: The ID of the policy rule + type: + allOf: + - $ref: '#/components/schemas/ApiRuleType' + description: The type of the API rule + updateApprovalsRequiredRequest: + type: object + properties: + requestedApprovalsRequired: + type: number + description: The number of requested approvals required + updateEnterpriseRequest: + type: object + properties: + action: + type: string + enum: + - add + - update + - remove + email: + type: string + description: The email of the user + isVideoIdUser: + type: boolean + description: Indicates if the user is a video ID user + permissions: + type: string + enum: + - admin + description: The permissions associated with the update + userId: + type: string + description: The ID of the user + updateOrganizationRequest: + type: object + properties: + action: + type: string + enum: + - add + - update + - remove + email: + type: string + description: The email of the user + role: + type: string + enum: + - admin + - member + - customer + description: The role of the user in the organization + example: admin + userId: + type: string + description: The ID of the user + genericRequest: + type: object + properties: + anchors: + type: array + items: + type: object + properties: + anchorType: + allOf: + - $ref: '#/components/schemas/AnchorType' + description: The type of the anchor + key: + type: string + description: The key of the anchor + value: + type: string + description: The value of the anchor + required: + - anchorType + - key + - value + description: The anchors associated with the request + changeType: + allOf: + - $ref: '#/components/schemas/ChangeType' + description: The type of change requested + currentId: + type: string + description: The current ID associated with the request + description: + type: string + description: The description of the request + metadata: + type: object + additionalProperties: + oneOf: + - type: string + - type: number + - type: boolean + description: The metadata of the request + proposedId: + type: string + description: The proposed ID associated with the request + resourceType: + type: string + description: The resource type of the request + enterpriseInviteRequest: + type: object + properties: + action: + type: string + enum: + - add + - update + - remove + email: + type: string + description: The email of the user + enterpriseInfo: + type: object + description: Additional info used by the client accepting the invite + properties: + id: + type: string + invitedBy: + type: object + properties: + email: + type: string + fullName: + type: string + id: + type: string + required: + - email + - fullName + - id + name: + type: string + requiredVerificationStep: + type: string + userKycState: + type: string + required: + - id + - invitedBy + - name + - requiredVerificationStep + isVideoIdUser: + type: boolean + description: Indicates if the user is a video ID user + permissions: + type: string + enum: + - admin + description: The permissions associated with the invite + userId: + type: string + description: The ID of the user + required: + - type + PendingApprovalPolicyRuleRequest: + title: Policy rule request + type: object + properties: + policyRuleRequest: + type: object + properties: + action: + type: string + update: + type: object + properties: + action: + $ref: '#/components/schemas/PolicyRuleActions' + coin: + $ref: '#/components/schemas/Coin' + condition: + type: object + properties: + excludeTags: + $ref: '#/components/schemas/IdArray' + groupTags: + $ref: '#/components/schemas/IdArray' + additionalProperties: true + id: + type: string + description: the id of the rule that is being updated + type: + $ref: '#/components/schemas/PolicyRuleTriggers' + type: + type: string + enum: + - policyRuleRequest + PendingApprovalState: + title: PendingApprovalState + oneOf: + - $ref: '#/components/schemas/PendingApprovalStatePending' + - $ref: '#/components/schemas/PendingApprovalStateResolved' + - $ref: '#/components/schemas/PendingApprovalStateTrust' + - $ref: '#/components/schemas/PendingApprovalStateProtected' + PendingApprovalState1: + anyOf: + - $ref: '#/components/schemas/PendingApprovalStatePending1' + - $ref: '#/components/schemas/PendingApprovalStateResolved' + PendingApprovalStatePending: + title: Pending + type: string + enum: + - pending + - awaitingSignature + - pendingFinalApproval + - pendingCustodianApproval + - pendingVideoApproval + - pendingIdVerification + - pendingLivenessVerification + - pendingManualTrustReview + PendingApprovalStatePending1: + title: Pending + type: string + enum: + - pending + - awaitingSignature + - pendingFinalApproval + - pendingCustodianApproval + - pendingVideoApproval + - pendingIdVerification + PendingApprovalStateProtected: + title: Pending Protected + type: string + enum: + - pendingVideoApproval + - pendingIdVerification + - awaitingSignature + - pendingCustodianApproval + - pendingManualTrustReview + PendingApprovalStateResolved: + title: Resolved + type: string + enum: + - approved + - processing + - rejected + PendingApprovalStateTrust: + title: Pending Trust + type: string + enum: + - pendingVideoApproval + - pendingIdVerification + - awaitingSignature + - pendingCustodianApproval + - pendingManualTrustReview + PendingApprovalTransactionRequest: + title: Transaction request (lite) + type: object + properties: + transactionRequest: + type: object + properties: + buildParams: + type: object + coinSpecific: + type: object + comment: + type: string + fee: + $ref: '#/components/schemas/IntegerOrString' + isUnsigned: + type: boolean + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/AddressString3' + amount: + $ref: '#/components/schemas/IntegerOrIntegerString' + data: + type: string + requestedAmount: + $ref: '#/components/schemas/IntegerOrIntegerString' + sourceWallet: + $ref: '#/components/schemas/Id' + triggeredPolicy: + $ref: '#/components/schemas/Id' + validTransaction: + type: string + validTransactionHash: + type: string + type: + type: string + enum: + - transactionRequest + PendingApprovalTransactionRequestFull: + title: Transaction request (full) + type: object + properties: + transactionRequestFull: + type: object + properties: + txRequestId: + type: string + policyUniqueId: + $ref: '#/components/schemas/Id' + verificationItems: + type: array + items: + type: string + verificationRuleId: + type: string + videoApprovers: + $ref: '#/components/schemas/IdArray' + walletRebalanceEventId: + $ref: '#/components/schemas/Id' + txRequest: + $ref: '#/components/schemas/PlatformTransactionRequest' + required: + - txRequestId + type: + type: string + enum: + - transactionRequestFull + PendingApprovalTransactionRequestFull1: + title: Transaction request (full) + type: object + properties: + transactionRequestFull: + type: object + properties: + txRequestId: + type: string + policyUniqueId: + $ref: '#/components/schemas/Id' + verificationItems: + type: array + items: + type: string + verificationRuleId: + type: string + videoApprovers: + $ref: '#/components/schemas/IdArray' + walletRebalanceEventId: + $ref: '#/components/schemas/Id' + txRequest: + $ref: '#/components/schemas/TransactionRequest' + required: + - txRequestId + type: + type: string + enum: + - transactionRequestFull + PendingApprovalType: + title: PendingApprovalType + type: string + enum: + - userChangeRequest + - transactionRequest + - transactionRequestFull + - policyRuleRequest + - updateApprovalsRequiredRequest + - updateEnterpriseRequest + - updateOrganizationRequest + - genericRequest + - enterpriseInviteRequest + PendingApprovalUpdateApprovalsRequiredRequest: + title: Update approvals required request + type: object + properties: + type: + type: string + enum: + - updateApprovalsRequiredRequest + updateApprovalsRequiredRequest: + type: object + properties: + requestedApprovalsRequired: + type: number + PendingApprovalUserChangeRequest: + title: User change request + type: object + properties: + type: + type: string + enum: + - userChangeRequest + userChangeRequest: + type: object + properties: + action: + type: string + permissions: + type: string + userChanged: + $ref: '#/components/schemas/Id' + PendingApprovals: + title: Pending approvals + type: object + properties: + pendingApprovals: + type: array + items: + $ref: '#/components/schemas/PendingApproval1' + PendingApprovalsCountSchema: + title: PendingApprovalsCountSchema + type: object + additionalProperties: + type: object + properties: + pendingApprovalsCount: + type: number + description: The number of pending approvals + required: + - pendingApprovalsCount + PerCoinLimit: + title: PerCoinLimit + type: object + properties: + txCount: + type: number + description: The transaction count limit for the coin + txValue: + type: number + description: The transaction value limit for the coin + txValueLimit: + type: number + description: The maximum transaction value limit for the coin + PersonaIdClass: + title: PersonaIdClass + type: string + enum: + - cct + - cid + - dl + - foid + - hic + - id + - ipp + - keyp + - ltpass + - munid + - myn + - nbi + - nric + - ofw + - rp + - pan + - pid + - pp + - ppc + - pr + - sss + - td + - tribalid + - umid + - vid + - visa + - wp + Phone: + title: Phone + type: object + properties: + phone: + nullable: true + type: string + example: 408-718-6885 + verified: + type: boolean + example: true + required: + - phone + - verified + PinnedWallets: + title: PinnedWallets + type: object + properties: + enterpriseId: + type: string + userId: + type: string + wallets: + type: array + items: + type: string + required: + - enterpriseId + - userId + - wallets + PlatformAdditionalEnterpriseInfo: + type: object + properties: + contact: + $ref: '#/components/schemas/PlatformGeographicAddress' + PlatformPlatformError: + title: API error + allOf: + - $ref: '#/components/schemas/PlatformPlatformErrorNoName' + - properties: + context: + type: object + description: Properties that apply to a specific error name + name: + type: string + description: Error code + required: + - name + PlatformPlatformErrorNoName: + type: object + properties: + error: + type: string + description: Human-readable error message + requestId: + type: string + description: Client request id + required: + - error + - requestId + PlatformBitgoOrg: + type: string + description: BitGo Organization related to this entity + enum: + - BitGo Inc + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - Frankfurt DE Trust + - BitGo Sister Trust 1 + - BitGo Korea + - BitGo Singapore + - BitGo Europe ApS + - BitGo Mena Fze + - BitGo Custody MENA FZE + PlatformCommitmentShare: + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The source of the commitment share. + to: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The recipient of the commitment share. + share: + type: string + description: The commitment share. + type: + allOf: + - $ref: '#/components/schemas/CommitmentType' + - default: commitment + description: The type of the commitment share. + required: + - from + - to + - share + - type + PlatformEmail: + type: string + format: email + example: user@example.com + PlatformEnterprise: + type: object + properties: + accountType: + $ref: '#/components/schemas/EnterpriseAccountType' + additionalEnterpriseInfo: + $ref: '#/components/schemas/PlatformAdditionalEnterpriseInfo' + admin: + type: object + properties: + policy: + $ref: '#/components/schemas/PlatformPolicy' + approvedVideoIdUsers: + type: array + items: + $ref: '#/components/schemas/Id' + description: IDs of users on the enterprise that are approved for custodial video ID + approvalsRequired: + type: integer + description: How many Enterprise Admins are required for action to fire + example: 1 + bitgoEthKey: + type: string + description: The public portion of the ethererum key generated for the enterprise fee address + bitgoOrg: + $ref: '#/components/schemas/PlatformBitgoOrg' + canAccessBorrowing: + type: boolean + description: whether the enterprise has the licence for BitGo Prime Borrowing + canAccessLending: + type: boolean + description: whether the enterprise has the licence for BitGo Prime Lending + canAccessSettlement: + type: boolean + description: whether the enterprise has the licence to utilize settlement functionality + canAccessTrading: + type: boolean + description: whether the enterprise has the licence to access BitGo Trading + canCreateColdWallet: + type: boolean + description: whether the enterprise has the license to create cold wallets + canCreateCustodialWallets: + type: boolean + description: whether the enterprise has the license to create custodial wallets + canCreateHotWallet: + type: boolean + description: whether the enterprise has the license to create hot wallets + contract: + $ref: '#/components/schemas/PlatformEnterpriseContract' + emergencyPhone: + $ref: '#/components/schemas/EmergencyPhone' + ethFeeAddress: + type: string + description: The eth fee address used to pay for network transaction fees of this enterprise + freeze: + $ref: '#/components/schemas/PlatformFreeze' + id: + $ref: '#/components/schemas/Id' + mutablePolicyWindow: + type: integer + description: Time in seconds after which policies on this Enterprise cannot be updated + example: 172800 + name: + type: string + example: Small Company + pricingTypes: + $ref: '#/components/schemas/EnterprisePricingTypes' + activePricingType: + $ref: '#/components/schemas/EnterpriseActivePricingType' + kits: + $ref: '#/components/schemas/EnterpriseKits' + activeKits: + $ref: '#/components/schemas/EnterpriseActiveKits' + primaryContact: + allOf: + - $ref: '#/components/schemas/Id' + description: The Id of the User who is the primary contact + preferredUi: + allOf: + - $ref: '#/components/schemas/EnterpriseAvailableUI' + description: The UI that this enterprise prefers to use + totalWalletsCount: + type: integer + description: The total number of wallets in the enterprise + example: 1 + usersViewAllWallets: + $ref: '#/components/schemas/ViewAllWallets' + videoIdWaived: + $ref: '#/components/schemas/VideoIdWaived' + required: + - id + PlatformEnterpriseContract: + type: object + properties: + startDate: + type: string + description: The contract start date for an enterprise + endDate: + type: string + description: The contract end date for an enterprise + PlatformFreeze: + type: object + properties: + time: + type: string + format: date-time + description: When the freeze started + expires: + type: string + format: date-time + description: When the freeze will end + PlatformGeographicAddress: + type: object + properties: + name: + type: string + description: Legal name of the enterprise, not neccessarily the enterprise name + street: + type: string + description: Address line + street2: + type: string + nullable: true + description: Optional 2nd address line + suite: + type: string + description: Optional suite number + city: + type: string + description: City name + state: + type: string + description: State or region + postalCode: + type: string + description: Postcal code + country: + type: string + description: ISO 3166-1 Alpha-3 country code + example: + name: Jane Doe + street: '1' + street2: Wall Street + suite: '3' + city: New York + state: NY + postalCode: '10005' + country: USA + PlatformInvalidEnterpriseId: + title: Invalid enterprise ID + allOf: + - $ref: '#/components/schemas/PlatformInvalidId' + - properties: + name: + type: string + description: Error code + enum: + - InvalidEnterpriseId + required: + - name + PlatformInvalidId: + allOf: + - $ref: '#/components/schemas/PlatformPlatformErrorNoName' + - properties: + context: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + required: + - context + PlatformInvalidWalletId: + title: Invalid wallet id + allOf: + - $ref: '#/components/schemas/PlatformInvalidId' + - properties: + name: + type: string + description: Error code + enum: + - InvalidWalletId + required: + - name + PlatformLegalIdentifiers: + type: object + properties: + legalPersonName: + type: string + description: Legal name of the Enterprise + required: + - legalPersonName + example: + legalPersonName: Pineapple Capital Inc + PlatformMultisigTypeVersion: + type: string + enum: + - MPCv2 + PlatformMutabilityConstraint: + type: string + description: | + Specifies whether a BitGo admin can change 'lockDate' + * 'managed' - Not locked, but requires approval from a BitGo admin to change + * 'permanent' - 'lockDate' cannot be changed + * 'sticky' - Not included in bulk unlock, but 'lockDate' can be individually changed + enum: + - managed + - permanent + - sticky + PlatformPendingApproval: + title: Pending approval + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + wallet: + $ref: '#/components/schemas/Id' + enterprise: + $ref: '#/components/schemas/Id' + organization: + $ref: '#/components/schemas/Id' + creator: + $ref: '#/components/schemas/Id' + createDate: + type: string + format: date-time + info: + anyOf: + - $ref: '#/components/schemas/PendingApprovalTransactionRequest' + - $ref: '#/components/schemas/PendingApprovalTransactionRequestFull' + - $ref: '#/components/schemas/PendingApprovalUserChangeRequest' + - $ref: '#/components/schemas/PendingApprovalPolicyRuleRequest' + - $ref: '#/components/schemas/PendingApprovalUpdateApprovalsRequiredRequest' + - $ref: '#/components/schemas/PendingApprovalEnterpriseModificationResponse' + - $ref: '#/components/schemas/PendingApprovalEnterpriseInviteRequest' + state: + $ref: '#/components/schemas/PlatformPendingApprovalState' + scope: + description: What kind of entity the Pending Approval is tied to + type: string + enum: + - enterprise + - wallet + userIds: + description: All the Users who should see this Pending Approval + type: array + items: + $ref: '#/components/schemas/Id' + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + walletLabel: + type: string + resolvers: + type: array + items: + type: object + properties: + user: + type: string + date: + type: string + resolutionType: + type: string + enum: + - approved + - awaitingSignature + - pending + - pendingBitGoAdminApproval + - pendingCryptographicApproval + - pendingCustodianApproval + - pendingFinalApproval + - pendingIdVerification + - pendingVideoApproval + - processing + - rejected + signatures: + type: array + items: + type: string + videoApprover: + type: string + videoLink: + type: string + videoException: + type: string + required: + - user + - date + - resolutionType + - signatures + addressLabels: + type: array + items: + $ref: '#/components/schemas/PendingApprovalAddressLabel' + PlatformPendingApprovalState: + anyOf: + - $ref: '#/components/schemas/PlatformPendingApprovalStatePending' + - $ref: '#/components/schemas/PlatformPendingApprovalStateResolved' + PlatformPendingApprovalStatePending: + title: Pending + type: string + enum: + - pending + - awaitingSignature + - pendingFinalApproval + - pendingCustodianApproval + - pendingVideoApproval + - pendingIdVerification + PlatformPendingApprovalStateResolved: + title: Resolved + type: string + enum: + - approved + - processing + - rejected + PlatformPolicy: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + date: + type: string + format: date-time + label: + type: string + latest: + type: boolean + rules: + type: array + items: + $ref: '#/components/schemas/PlatformPolicyRule' + version: + type: integer + required: + - id + - latest + - rules + - version + PlatformPolicyRule: + type: object + properties: + id: + type: string + lockDate: + type: string + description: The time at which this rule becomes immutable + format: date-time + mutabilityConstraint: + $ref: '#/components/schemas/PlatformMutabilityConstraint' + coin: + $ref: '#/components/schemas/Coin' + type: + $ref: '#/components/schemas/PolicyRuleTriggers' + condition: + $ref: '#/components/schemas/PolicyRuleConditions' + action: + $ref: '#/components/schemas/PolicyRuleActions' + required: + - id + - lockDate + - type + - action + PlatformSignatureShare: + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The source of the signature share. + to: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The recipient of the signature share. + share: + type: string + description: The signature share. + required: + - from + - to + - share + PlatformTransaction: + type: object + properties: + state: + $ref: '#/components/schemas/PlatformTransactionState' + unsignedTx: + allOf: + - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' + description: Holds the unsigned transaction for this transaction in a tx-request. + signatureShares: + type: array + description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. Holds the signature shares for this transaction in a tx-request. + items: + $ref: '#/components/schemas/PlatformSignatureShare' + commitmentShares: + type: array + description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. Holds the commitment shares for this transaction in a tx-request. + items: + $ref: '#/components/schemas/PlatformCommitmentShare' + txHash: + type: string + description: The hash of the transaction from the TxRequest that has been signed and is pending broadcast. + bitgoPaillierChallenge: + description: BitGo-to-user paillier challenge. Required when signing with ECDSA MPC wallets. + type: object + properties: + p: + type: array + items: + type: string + required: + - state + - unsignedTx + PlatformTransactionRequest: + anyOf: + - $ref: '#/components/schemas/PlatformTransactionRequestLite' + - $ref: '#/components/schemas/PlatformTransactionRequestFull' + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + PlatformTransactionRequestBase: + type: object + properties: + txRequestId: + type: string + description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. + version: + type: number + description: The version of the document. Data changes are done only with inserts and incrementing the version. + latest: + type: boolean + description: A boolean flag that indicates whether the document is the latest version of the TxRequest. + walletId: + type: string + description: The id of the Wallet the TxRequest is for. + walletType: + allOf: + - $ref: '#/components/schemas/WalletTypePublic' + description: The type describes who owns the keys to the wallet associated to the TxRequest. + enterpriseId: + type: string + description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. + state: + $ref: '#/components/schemas/PlatformTransactionRequestState' + date: + allOf: + - $ref: '#/components/schemas/DateTime' + description: The date and time this version of the TxRequest document was created. + createdDate: + allOf: + - $ref: '#/components/schemas/DateTime' + description: The date and time the version 1 TxRequest document was created. + userId: + type: string + description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. + initiatedBy: + type: string + description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). + updatedBy: + type: string + description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. + intent: + $ref: '#/components/schemas/TransactionRequestIntent' + intents: + type: array + items: + $ref: '#/components/schemas/TransactionRequestIntent' + pendingApprovalId: + type: string + description: The id of the Pending Approval that was created for the TxRequest if one was required. + isCanceled: + type: boolean + description: True, if the transaction request is canceled. + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - createdDate + - userId + - initiatedBy + - updatedBy + - intents + PlatformTransactionRequestFull: + title: Full + allOf: + - $ref: '#/components/schemas/PlatformTransactionRequestBase' + - type: object + properties: transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY - amount: '1012' - transactionType: undelegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: WAITING - amount: '10012000000' - transactionType: withdraw_undelegated - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10012000000' - DotStakingRequestWithoutDelegationsExample: - summary: Dot Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '10000000000' - DotStakingRequestWithTransactionsExample: - summary: Dot Staking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: STAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '10000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + description: Transaction information. + type: array + items: + $ref: '#/components/schemas/PlatformTransaction' + messages: + description: Messages for the transaction request. + type: array + items: + $ref: '#/components/schemas/Message' + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + - transactions + PlatformTransactionRequestLite: + title: Lite + allOf: + - $ref: '#/components/schemas/PlatformTransactionRequestBase' + - type: object + properties: + unsignedTxs: + type: array + description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. + items: + $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' + signatureShares: + type: array + description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. + items: + $ref: '#/components/schemas/PlatformSignatureShare' + commitmentShares: + type: array + description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. + items: + $ref: '#/components/schemas/PlatformCommitmentShare' + txHashes: + type: array + items: + type: string + description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + PlatformTransactionRequestState: + type: string + enum: + - initialized + - pendingApproval + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - pendingUserSignature + - pendingDelivery + - signed + - delivered + - canceled + - rejected + - failed + PlatformTransactionState: + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + PlatformUnlock: + type: object + properties: + time: + type: string + format: date-time + expires: + type: string + format: date-time + txCount: + type: integer + txValue: + type: integer + txValueLimit: + type: number + spendingLimits: + $ref: '#/components/schemas/SpendingLimits' + PlatformUpdateWalletShareResponse: + type: object + properties: + state: + allOf: + - $ref: '#/components/schemas/PlatformWalletShareState' + description: New state of the wallet share after update + changed: + type: boolean + PlatformVerifiedKycState: + type: string + enum: + - approved + - pending + - rejected + PlatformWallet: + type: object + properties: + admin: + type: object + properties: + policy: + $ref: '#/components/schemas/PlatformPolicy' + allowBackupKeySigning: + type: boolean + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + balanceString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: Total balance in base units (e.g. Satoshis) + buildDefaults: + $ref: '#/components/schemas/WalletBuildDefaults' + coin: + $ref: '#/components/schemas/Coin' + coinSpecific: + $ref: '#/components/schemas/WalletCoinSpecific' + custodialWallet: + type: object + description: The associated custodial wallet object + custodialWalletId: + $ref: '#/components/schemas/Id' + deleted: + type: boolean + disableTransactionNotifications: + type: boolean + enterprise: + $ref: '#/components/schemas/Id' + freeze: + type: object + properties: + time: + type: string + format: dateTime + expires: + type: string + format: dateTime + id: + $ref: '#/components/schemas/Id' + isCold: + type: boolean + keys: + $ref: '#/components/schemas/Keys' + label: + $ref: '#/components/schemas/WalletLabel' + m: + $ref: '#/components/schemas/NumSignatures' + 'n': + $ref: '#/components/schemas/NumKeychains' + nodeId: + $ref: '#/components/schemas/Id' + receiveAddress: + $ref: '#/components/schemas/Address2' + recoverable: + type: boolean + tags: + type: array + items: + $ref: '#/components/schemas/Id' + spendableBalanceString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: Spendable balance in base units (e.g. Satoshis) + unspentCount: + type: number + example: 100 + description: Number of unspent outputs present in the wallet + startDate: + allOf: + - $ref: '#/components/schemas/DateTime' + description: Wallet creation time + type: + $ref: '#/components/schemas/WalletTypePublic' + users: + type: array + items: + $ref: '#/components/schemas/WalletUser' + customChangeKeySignatures: + $ref: '#/components/schemas/CustomChangeKeySignatures' + multisigType: + $ref: '#/components/schemas/WalletMultisigType' + multisigTypeVersion: + $ref: '#/components/schemas/PlatformMultisigTypeVersion' + required: + - approvalsRequired + - coin + - deleted + - disableTransactionNotifications + - id + - label + PlatformWalletShareState: + type: string + example: active + enum: + - pendingapproval + - active + - accepted + - canceled + - rejected + PlatformWebhook: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + label: + type: string + example: Test Webhook + created: + $ref: '#/components/schemas/DateTime' + coin: + $ref: '#/components/schemas/Coin' + type: + $ref: '#/components/schemas/WebhookTypeWallet' + url: + type: string + format: uri + example: https://your.server.com/webhook + version: + type: integer + example: 2 + description: 2 for coins running on API v2. + numConfirmations: + type: integer + example: 6 + state: + type: string + description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. + enum: + - active + - suspended + example: active + lastAttempt: + $ref: '#/components/schemas/DateTime' + failingSince: + $ref: '#/components/schemas/DateTime' + successiveFailedAttempts: + type: integer + example: 0 + walletId: + type: string + allowBlockedHosts: + type: boolean + allToken: + type: boolean + txRequestStates: + type: array + items: + $ref: '#/components/schemas/PlatformTransactionRequestState' + description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. + txRequestTransactionStates: + type: array + items: + $ref: '#/components/schemas/PlatformTransactionState' + description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. + identityStatus: + type: array + items: + $ref: '#/components/schemas/IdentityStatus' + description: If present, only identity status changes from the list will trigger notifications. If not present, all identity status changes will trigger notifications. + userKycState: + type: array + items: + $ref: '#/components/schemas/PlatformVerifiedKycState' + description: If present, only user kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. + enterpriseKycState: + type: array + items: + $ref: '#/components/schemas/PlatformVerifiedKycState' + description: 'If present, only enterprise kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. ' + required: + - url + Policy: + title: Policy + type: object + properties: + date: + oneOf: + - type: string + format: date-time + title: ISO Date String + - type: string + format: date + title: Date String + format: date-time + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + latest: + type: boolean + version: + type: number + enterpriseId: + type: string + label: + type: string + rules: + type: array + items: + type: object + properties: + id: + type: string + type: + $ref: '#/components/schemas/ApiRuleType' + action: + allOf: + - $ref: '#/components/schemas/PolicyRuleAction' + description: What happens when this rule is triggered + latest: + type: boolean + version: + type: number + lockDate: + type: string + description: The time at which this rule becomes immutable + format: date-time + title: ISO Date String + mutabilityConstraint: + allOf: + - $ref: '#/components/schemas/MutabilityConstraint' + description: Specifies whether a BitGo admin can change "lockDate" * "managed" - Not locked, but requires approval from a BitGo admin to change * "permanent" - "lockDate" cannot be changed * "sticky" - Not included in bulk unlock, but "lockDate" can be individually changed + coin: + $ref: '#/components/schemas/CoinString' + condition: + allOf: + - $ref: '#/components/schemas/Condition' + description: Parameters for the type + required: + - id + - type + - action + walletId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - date + - id + - latest + - version + Policy1: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + date: + type: string + format: date-time + label: + type: string + latest: + type: boolean + rules: + type: array + items: + $ref: '#/components/schemas/PolicyRule' + version: + type: integer + required: + - id + - latest + - rules + - version + PolicyActionParameters: + title: PolicyActionParameters + type: object + properties: + minRequired: + type: string + minLength: 1 + userIds: + type: array + items: + type: string + minLength: 1 + initiatorIsAllowedToApprove: + type: boolean + webhookURL: + type: string + minLength: 1 + livenessCheckUser: + $ref: '#/components/schemas/LivenessVerificationParameter' + isFallback: + type: boolean + walletSubtype: + $ref: '#/components/schemas/CustodialWalletSubType' + PolicyRule: + type: object + properties: + id: + type: string + lockDate: + type: string + description: The time at which this rule becomes immutable + format: date-time + mutabilityConstraint: + $ref: '#/components/schemas/MutabilityConstraint1' + coin: + $ref: '#/components/schemas/Coin' + type: + $ref: '#/components/schemas/PolicyRuleTriggers' + condition: + $ref: '#/components/schemas/PolicyRuleConditions' + action: + $ref: '#/components/schemas/PolicyRuleActions' + required: + - id + - lockDate + - type + - action + PolicyRule1: + type: object + description: | + A Policy Rule, the combination of a Scope, a Touchpoint, Conditions, and Actions. It allows you to define what + needs to happen (Actions) before a user can execute a sensitive operation (Touchpoint) on a Scope (e.g. a Wallet) + depending on the specific details of the operation (Conditions). See Concepts. + required: + - id + - uniqueId + - name + - status + - adminOnly + - touchpointId + - touchpointLabel + - scopeId + - scopeLabel + - clauses + - filteringConditions + - locked + - lockType + - createdBy + - modifiedBy + - createdDate + - modifiedDate + properties: + id: + type: string + description: Id of the Policy Rule. This identifier is not unique in isolation, it must be paired with an specific Policy Rule Version number to uniquely identified a particular version of a Policy Rule. A UUID. + example: 306258df-dcab-489e-a9fe-ff28ce9fa312 + uniqueId: + type: string + description: The uniqueId of the Policy Rule version. A UUID. + example: cb4e0a0a-2768-4024-904a-178ca6d2cd54 + name: + type: string + description: Human readable name of the rule. + example: My first policy rule + status: + type: string + description: | + Indicates if the Policy Rule is considered in Evaluations. + + * 'ACTIVE' - Will be Evaluated. + * 'INACTIVE' - Will NOT be Evaluated. + * 'DENIED' - The requested policy rule change was Denied. + * 'PENDING_APPROVAL' - This version of the policy rule is Pending Approval before it can be activated. + enum: + - ACTIVE + - INACTIVE + - DENIED + - PENDING_APPROVAL + example: ACTIVE + version: + type: integer + description: The Policy Rule Version, an integer that is incremented each time the Policy Rule changes. + default: 1 + example: 1 + adminOnly: + type: boolean + description: true, if the Policy Rule is a BitGo internal rule. Typically, this allows setting Global Policy Rules across enterprises. + example: false + touchpointId: + type: string + description: The id of the Touchpoint associated with the Policy Rule. A UUID. + example: 0a244ae3-26cf-48ed-9854-edd5b9751f3e + touchpointLabel: + type: string + description: Label of the Touchpoint associated with the Policy Rule. For example the Transfer from a Wallet Touchpoint. + example: Transfer from a Wallet + scopeId: + type: string + description: The id of the Scope associated with the Policy Rule. A UUID. + example: 08a3f714-c330-41e6-bd83-bad3a8d37188 + scopeLabel: + type: string + description: Label of the Scope associated with the Policy Rule. For example the All Wallets Scope. + example: All Wallets + clauses: + type: array + description: | + List of Policy Rule Clauses: a combination of Conditions and Actions. + items: + $ref: '#/components/schemas/Clause' + filteringConditions: + type: array + description: List of Filtering Conditions that must trigger for this Policy Rule to be Evaluated. + items: + anyOf: + - $ref: '#/components/schemas/WalletTypeFilteringCondition' + - $ref: '#/components/schemas/WalletIdsFilteringCondition' + - $ref: '#/components/schemas/WalletAllFilteringCondition' + locked: + type: boolean + description: true, if the Policy Rule is locked, false otherwise. + example: false + lockType: + type: string + description: | + Indicates how the Policy Rule is locked. + + * 'LOCK_AFTER_DATE' - Will lock after the lockDate set on the Policy Rule. + * 'PERMANENT' - Is permanently locked. + enum: + - LOCK_AFTER_DATE + - PERMANENT + example: PERMANENT + lockDate: + type: string + description: | + The date after which the Policy Rule will be locked. Only applicable if the Policy Rule is locked with + 'LOCK_AFTER_DATE'. + format: date-time + example: '2023-11-13T14:49:48.830522Z' + enterpriseId: + type: string + description: The id of the Enterprise this Policy Rule belongs to. + example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + lastTriggeredDate: + type: string + description: | + The date when the Policy Rule was last triggered. Only applicable if the Policy Rule is locked with + 'LOCK_AFTER_DATE'. + format: date-time + example: '2023-11-13T14:49:48.830522Z' + lastTriggeredEvaluationId: + type: string + description: | + The id of the Evaluation that last triggered the Policy Rule. A UUID. + example: 306258df-dcab-489e-a9fe-ff28ce9fa312 + createdBy: + type: string + description: The id of the user who created the Policy Rule or the string \"BitGo\". + example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + modifiedBy: + type: string + description: The id of the user who last modified the Policy Rule or the string \"BitGo\". + example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + createdDate: + type: string + description: The date when the Policy Rule was created. A timestamp. + format: date-time + example: '2023-11-13T14:49:48.830522Z' + modifiedDate: + type: string + description: The date when the Policy Rule was last modified. A timestamp. + format: date-time + example: '2023-11-13T14:49:48.830522Z' + lockModifiedBy: + type: string + description: The id of the user who last modified the lock of the Policy Rule. + example: 5d1a5f2c8f0a9c001a5f2c8f0ad00000 + evaluationId: + type: string + description: | + The id of the Evaluation that was done when this Policy Rule version was requested to be created, modified + or deleted. A UUID. + example: 306258df-dcab-489e-a9fe-ff28ce9fa312 + PolicyRuleAction: + title: PolicyRuleAction + type: object + properties: + type: + allOf: + - $ref: '#/components/schemas/ActionType' + description: The type of the action + approvalsRequired: + type: number + description: The number of approvals required + userIds: + type: array + items: + type: string + description: The user IDs associated with the action + groupApprovalRequirement: + type: object + description: The group approval requirement + properties: + items: + type: array + items: + type: object + properties: + id: + type: string + description: The ID of the group + minimumApprovals: + type: number + description: The name of the group + type: + type: string + description: The type of the group + required: + - id + - type + operator: + $ref: '#/components/schemas/GroupApprovalRequirementOperator' + required: + - items + - operator + required: + - type + PolicyRuleActions: + description: What happens when this rule is triggered + type: object + properties: + type: + type: string + enum: + - deny + - getApproval + - getGroupApproval + - getFinalApproval + - getCustodianApproval + - getIdVerification + - noop + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + userIds: + description: For a final approver action, who can approve + type: array + items: + $ref: '#/components/schemas/Id' + required: + - type + PolicyRuleConditions: + title: Type + description: Parameters for the type + oneOf: + - title: Velocity limit + type: object + properties: + amountString: + $ref: '#/components/schemas/IntegerString' + timeWindow: + type: integer + minimum: 0 + maximum: 2678400 + description: Time window in seconds for a velocity limit, between 1 and a month + - title: USD velocity limit + type: object + properties: + amountString: + $ref: '#/components/schemas/IntegerString' + timeWindow: + type: integer + minimum: 0 + maximum: 2678400 + description: Time window in seconds for a velocity limit, between 1 and 30 days + - title: Whitelist + type: object + properties: + addresses: + description: Addresses allowed/restricted for a whitelist/blacklist + type: array + items: + oneOf: + - type: string + - $ref: '#/components/schemas/Id' + - title: Advanced whitelist + type: object + properties: + entries: + description: Entries specifying which addresses/ wallets/ enterprises are on the whitelist + type: array + items: + $ref: '#/components/schemas/AdvancedListRuleEntry1' + - title: Webhook + type: object + properties: + url: + type: string + description: the url to query for the webhook + PolicyRuleTriggers: + type: string + enum: + - advancedWhitelist + - allTx + - bitcoinAddressWhitelist + - coinAddressWhitelist + - coinAddressBlacklist + - transactionLimit + - velocityLimit + - webhook + description: What causes this rule to trigger + PolicyRuleUpdateCondition: + title: PolicyRuleUpdateCondition + oneOf: + - $ref: '#/components/schemas/AddressListRuleUpdateCondition' + - $ref: '#/components/schemas/AdvancedListRuleUpdateCondition' + - $ref: '#/components/schemas/TxUsdThresholdRuleCondition' + - $ref: '#/components/schemas/LimitRuleCondition' + - $ref: '#/components/schemas/WebhookRuleCondition' + PolicyRuleUpdateConditions: + title: Type + description: Parameters for the type + anyOf: + - title: Advanced whitelist + type: object + properties: + add: + $ref: '#/components/schemas/AdvancedListRuleEntry1' + required: + - add + - title: Whitelist + type: object + properties: + add: + description: Address to add to the list + oneOf: + - type: string + - $ref: '#/components/schemas/Id' + metaData: + type: object + description: An object with arbitrary metadata about the added address. + properties: + addedBy: + type: string + description: Text indicating who added this address to the whitelist + additionalProperties: true + required: + - add + - title: Remove address from whitelist + type: object + properties: + remove: + description: Address to remove from the list + oneOf: + - type: string + - $ref: '#/components/schemas/Id' + - $ref: '#/components/schemas/AdvancedListRuleEntry1' + required: + - remove + - type: object + PolicyRuleVersions: + type: object + description: | + description: All versions of a policy rule. Not paginated. + required: + - versions + properties: + versions: + type: array + description: | + List of policy rule versions. The list is sorted by version number in descending order, but rules with a + null version, such as those in pending approval or denied, appear first. + items: + $ref: '#/components/schemas/PolicyRule1' + PolicyRulesResults: + description: Paginated list of Policy Rules. + allOf: + - $ref: '#/components/schemas/PaginatedResultsWithNextBatchPrevId' + - type: object + properties: + rules: + type: array + description: | + A list of Policy Rules matching the search criteria. + items: + $ref: '#/components/schemas/PolicyRule1' + PositiveAllocationAmount: + title: PositiveAllocationAmount + oneOf: + - $ref: '#/components/schemas/PositiveCurrencyAmount' + - $ref: '#/components/schemas/PositiveBigNumberCurrencyAmount' + PositiveBNCurrencyAmount: + title: PositiveBNCurrencyAmount + type: object + properties: + currency: + $ref: '#/components/schemas/BNSupportedCurrency' + quantity: + type: string + required: + - currency + - quantity + PositiveBigNumberCurrencyAmount: + title: PositiveBigNumberCurrencyAmount + type: object + properties: + currency: + type: string + minLength: 1 + quantity: + type: string + required: + - currency + - quantity + PositiveCurrencyAmount: + title: PositiveCurrencyAmount + type: object + properties: + currency: + type: string + minLength: 1 + quantity: + type: string + required: + - currency + - quantity + PostIdentityDocumentCreateResponse: + title: PostIdentityDocumentCreateResponse + type: object + properties: + id: + type: string + title: uuid + status: + type: string + minLength: 1 + selectedIdClass: + $ref: '#/components/schemas/PersonaIdClass' + fileUploads: + type: array + items: + type: object + properties: + fileName: + type: string + minLength: 1 + fileSize: + type: number + uploadStatus: + type: string + minLength: 1 + documentType: + $ref: '#/components/schemas/IdentityDocumentType' + required: + - fileName + - fileSize + - uploadStatus + - documentType + required: + - id + - status + - selectedIdClass + - fileUploads + PricingTypeName: + title: PricingTypeName + type: string + enum: + - starter + - growth + - employee + - FTX Retail + - FTX Institutional + PrimeTrade: + required: + - id + - orderId + - time + - product + - side + - price + - quoteQuantity + - quantity + - settled + type: object + properties: + id: + type: string + format: uuid + orderId: + type: string + format: uuid + time: + type: string + format: date-time + product: + type: string + description: Product name e.g. BTC-USD + side: + $ref: '#/components/schemas/Side' + price: + type: string + format: decimal + quoteQuantity: + type: string + format: decimal + description: Quote quantity, e.g. For BTC-USD product, 100.50 USD + quantity: + type: string + format: decimal + description: Base quantity, e.g. For BTC-USD product, 0.0045 BTC + settled: + type: boolean + example: + id: 7e0c768e-2d16-4c1e-b39d-06fa20009397 + orderId: d50ec984-77a8-460a-b958-66f114b0de9b + time: {} + side: buy + product: BTC-USD + quoteQuantity: '100.50' + price: '22333.33' + quantity: '0.0045' + settled: true + Product: + required: + - baseCurrencyId + - baseCurrency + - baseMinSize + - id + - isTradeDisabled + - isMarginTradeSupported + - name + - quoteCurrencyId + - quoteCurrency + - quoteIncrement + - quoteMinSize + type: object + properties: + id: + type: string + format: uuid + name: + type: string + description: Product name e.g. BTC + baseCurrencyId: + type: string + format: uuid + baseCurrency: + type: string + description: Currency name e.g. BTC + quoteCurrencyId: + type: string + format: uuid + quoteCurrency: + type: string + description: Currency name e.g. USD + baseMinSize: + type: string + format: decimal + baseMaxSize: + type: string + format: decimal + baseIncrement: + type: string + format: decimal + quoteMinSize: + type: string + format: decimal + quoteIncrement: + type: string + format: decimal + isTradeDisabled: + type: boolean + isMarginTradeSupported: + type: boolean + description: True if margin trading is supported for this product + example: + id: 86d09911-e58e-4f27-ac1f-91d5f9c79952 + name: BTC-USD + baseCurrencyId: 6016e0a9-545a-45fb-8370-caab1680956a + quoteCurrencyId: 7d5d1e8d-e6e1-4676-99af-190012515418 + baseCurrency: BTC + quoteCurrency: USD + baseMinSize: '0.001' + baseMaxSize: '10000.00' + quoteIncrement: '0.01' + Products: + type: array + items: + $ref: '#/components/schemas/Product' + ProofChain: + title: ProofChain + type: string + enum: + - BITCOIN + - ETHEREUM + ProofType: + title: ProofType + type: string + enum: + - BITCOIN_P2SH + - BITCOIN_P2SH_P2WSH + - BITCOIN_P2WSH + - ETHEREUM_CONTRACT + PsbtHex: + type: string + description: BIP174 serialization of a PSBT + example: 70736274ff0100530100000001ccf3d1b853dcff06a939afef91d8b178d74028516bb831d77fcfd5b1ce6715f00000000000ffffffff01f0b9f5050000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387000000004f010488b21e0000000000000000003a922e29f0c8eb0db2a60484cbdcb631f6b107c9caae3ffdcf3e7d2ec1f6bcd00312148715f361dab685a669d42431e5d6d3f973404dab9c9fd1b950b279ad763404cc18ae084f010488b21e0000000000000000006d1d656d3ddd91c194c04565a3603702a21016ced14a265f38982d6275e67b6403d3bac2313a7c6b21cbb11b14b0d10341f922c0a403a8bd8c87f0dc820f35af6e04f65cd8694f010488b21e000000000000000000cb04fd63ab34d90fe6466b880e2a02ccf8a863374312991af8911b1aaab443340336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b62909504f2ef0389000100c00100000000010101010101010101010101010101010101010101010101010101010101010101010000000000ffffffff0100e1f5050000000017a914d909474404c124a3d04c3fbff61faa49cf43c58b87024730440220360d495738071ed6930084713724262ef55d710e06d85f90b56727ab83c91b5702200ae452a812717ef0ac8866989ffc963d88c14f9694fa57ef046dd699bea1d5da01210247496797efe8b56780cd9bee19ac3d916624829cacd3f1236fa608000193e54d0000000001012000e1f5050000000017a914d909474404c124a3d04c3fbff61faa49cf43c58b87010469522102cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b42092102d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab210344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f153ae220602cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b420914f2ef038900000000000000000000000000000000220602d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab14cc18ae080000000000000000000000000000000022060344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f114f65cd8690000000000000000000000000000000000010069522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae2202035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf214cc18ae0800000000000000000100000000000000220203e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b14f65cd86900000000000000000100000000000000220203f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f14f2ef03890000000000000000010000000000000000 + Pub: + type: string + description: public part of a key pair + example: xpub661MyMwAqRbcGMVhmc7wqQRYMtcX9LAvSj1pjB213y5TsrkV2uuzJjWnjBrT1FUeNWGPjaVm5p7o6jdNcQJrV1cy3a1R8NQ9m7LuYKA8RpH + PutIdentityDocumentUpdateResponse: + title: PutIdentityDocumentUpdateResponse + type: object + properties: + id: + type: string + title: uuid + status: + type: string + minLength: 1 + selectedIdClass: + $ref: '#/components/schemas/PersonaIdClass' + required: + - id + - status + - selectedIdClass + RecipientAmount: + oneOf: + - type: string + pattern: ^(-?\d+|max)$ + example: '2000000' + - type: integer + RecipientEntry: + title: RecipientEntry + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + RecipientEntry1: + type: object + properties: + address: + $ref: '#/components/schemas/TxAddress' + amount: + $ref: '#/components/schemas/Amount2' + data: + type: string + tokenData: + $ref: '#/components/schemas/TokenData1' + required: + - address + - amount + RecipientTokenData: + type: object + properties: + tokenName: + type: string + description: Name of token, as represented in BitGoJS Statics package. + tokenContractAddress: + type: string + description: Address of token or smart contract. Required if token is unsupported by BitGo. Not required if passing "tokenName". + decimalPlaces: + type: integer + description: Relevant for fungible tokens. Not required if passing "tokenName". Defaults to smallest base unit. + tokenType: + type: string + description: Token standard + enum: + - ERC20 + - ERC721 + - ERC1155 + tokenId: + type: string + description: ID of token to use when constructing transaction or calldata. Required for NFTs. + tokenQuantity: + type: string + description: Quantity of token to use when constructing calldata (amount to transfer). + RecoveryCodesResponse: + title: RecoveryCodesResponse + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + created: + type: string + description: ISO 8601 string representation of date + example: '2019-05-02T15:27:35.773Z' + format: date-time + title: ISO Date String + codes: + type: array + minItems: 10 + maxItems: 10 + items: + type: object + properties: + code: + type: string + description: The recovery code + example: uFN4wrsjdpK3 + isActive: + type: boolean + description: Whether the recovery code is active + example: true + required: + - code + - isActive + required: + - id + - created + - codes + ReferralCodeString: + title: ReferralCodeString + type: string + description: An Enterprise Referral Code + Referrer: + title: Referrer + type: object + properties: + campaign: + nullable: true + type: string + source: + nullable: true + type: string + RegionalFeatures: + title: RegionalFeatures + type: object + properties: + trading: + type: boolean + custody: + type: boolean + lending: + type: boolean + borrowing: + type: boolean + required: + - trading + - custody + - lending + - borrowing + RejectReshare: + type: object + properties: + userId: + $ref: '#/components/schemas/Id' + required: + - userId + ReportFormatType: + title: ReportFormatType + type: string + enum: + - csv + - pdf + ReportJSON: + title: ReportJSON + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/ReportParams' + - $ref: '#/components/schemas/GenericReportParamsJSON' + ReportParams: + title: ReportParams + type: object + properties: + holdings: + type: object + description: Holdings report + properties: + byWallet: + type: boolean + enterprise: + type: string + description: ID of the enterprise + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + includeStaking: + type: boolean + snapshotDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + required: + - enterprise + - snapshotDate transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: CONFIRMED - amount: '10000000000' - transactionType: delegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10000000000' - DotUnStakingRequestWithoutDelegationsExample: - summary: Dot UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW - amount: '10012000000' - DotUnStakingRequestWithTransactionsExample: - summary: Dot UnStaking Request Example - value: - id: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - clientId: f054adbc-26a3-4acd-8a9d-726a05bca0dr - requestUserId: 6092e75c451052000636831deb797bd1 - enterpriseId: 1032e75c451052000436831deb797af1 - walletId: 2032e75g451052000636831abd797bd3 - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - walletType: custodial - type: UNSTAKE - coin: dot - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: NEW + type: object + description: Transactions report + properties: + assets: + type: array + items: + type: string + minLength: 1 + endDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + enterprise: + $ref: '#/components/schemas/EnterpriseIdNonEmptyString' + isAddressReport: + type: boolean + isDetailed: + type: boolean + startDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + wallets: + type: array + items: + type: string + minLength: 1 + example: 59cd72485007a239fb00282ed480da1f + walletTypes: + type: array + items: + type: string + minLength: 1 + required: + - endDate + - enterprise + - startDate + quarterly: + type: object + description: Quarterly report + properties: + endDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + enterprise: + $ref: '#/components/schemas/EnterpriseIdNonEmptyString' + startDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + required: + - endDate + - enterprise + - startDate + trades: + type: object + description: Trades report + properties: + assets: + type: array + items: + type: string + minLength: 1 + endDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + enterprise: + $ref: '#/components/schemas/EnterpriseIdNonEmptyString' + isFillsReport: + type: boolean + startDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + required: + - endDate + - enterprise + - startDate + staking: + type: object + description: Staking report + properties: + assets: + type: array + items: + type: string + minLength: 1 + endDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + enterprise: + $ref: '#/components/schemas/EnterpriseIdNonEmptyString' + isBalanceReport: + type: boolean + startDate: + type: string + description: Date of the snapshot + format: date-time + title: ISO Date String + wallets: + type: array + items: + type: string + minLength: 1 + example: 59cd72485007a239fb00282ed480da1f + walletTypes: + type: array + items: + type: string + minLength: 1 + required: + - endDate + - enterprise + - startDate + holdingsByAddress: + type: object + description: Address-level Holdings report + properties: + assets: + type: array + items: + type: string + minLength: 1 + enterprise: + type: string + minLength: 1 + snapshotDate: + type: string + format: date-time + title: ISO Date String + wallets: + type: array + items: + type: string + minLength: 1 + example: 59cd72485007a239fb00282ed480da1f + walletTypes: + type: array + items: + type: string + minLength: 1 + required: + - enterprise + - snapshotDate + ReportStatus1: + title: ReportStatus + type: string + enum: + - pending + - processing + - completed + - failed + ResendShareEmailResponse: + type: object + properties: + resent: + type: boolean + ReservedUnspent: + type: object + description: a ReservedUnspent object + properties: + id: + type: string + description: The id of the unspent in the form : + example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8:2 + walletId: + $ref: '#/components/schemas/Id' + expireTime: + type: string + format: date-time + userId: + $ref: '#/components/schemas/Id' + required: + - id + - walletId + - expireTime + - userId + STXStakingOptions: + title: STX + type: object + properties: + contractName: + type: string + description: The STX staking contract name. Use pox-3. + default: pox-3 + functionName: + type: string + description: STX staking contract function. + oneOf: + - type: string + description: Function name used to delegate funds. + default: delegate-stx + - type: string + description: Function name used to revoke delegated funds. + default: revoke-delegate-stx + functionArgs: + type: array + description: The 4 Objects are required and in the order expressed. + items: + anyOf: + - title: uint128 + type: object + properties: + type: + type: string + default: uint128 + description: Type of argument. Use the default. + val: + type: string + description: Amount in micro-stx + - title: principal + type: object + properties: + type: + type: string + default: principal + description: Type of argument. Use the default. + val: + type: string + description: Address of the validator + - title: optional + type: object + properties: + type: + type: string + default: optional + description: Type of argument. Use the default. + val: + type: string + description: The number of cycles that the delegation will last. This is a mandatory field that must be greater than 1. + - title: optional + type: object + properties: + type: + type: string + default: optional + description: Type of argument. Use the default. + val: + type: object + properties: + type: + type: string + default: tuple + description: Type of argument. Use the default. + val: + type: array + description: The 2 objects are required and in the order expressed. + items: + anyOf: + - title: hash + type: object + properties: + key: + type: string + default: hashbytes + description: Type of argument. Use the default. + type: + type: string + default: buffer + description: Type of argument. Use the default. + val: + type: string + description: The BTC Address hash. + - title: version + type: object + properties: + key: + type: string + default: version + description: Type of argument. Use the default. + type: + type: string + default: buffer + description: Type of argument. Use the default. + val: + type: string + description: The BTC Address version. + Scope: + type: array + items: + type: string + example: + - crypto_compare + - user_manage + - openid + - profile + - wallet_create + - wallet_manage_all + - wallet_approve_all + - wallet_spend_all + - wallet_edit_all + - wallet_view_all + ScopeConditionParameter: + title: Scope + type: object + description: Defines the entities included in the velocity calculation. + required: + - name + - label + - description + - type + - required + - allowMultiple + - values + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - scope + example: scope + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: scope + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Entities that will be included in the velocity calculation + type: + type: string + description: Accepts only enumerated values as listed in the 'values' property of this condition. + enum: + - ENUMERATED + example: ENUMERATED + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + values: + type: array + description: A list of valid values, only values from this list will be accepted. + items: + anyOf: + - $ref: '#/components/schemas/WalletValue' + - $ref: '#/components/schemas/EnterpriseValue' + SendLabel: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + address: + $ref: '#/components/schemas/AddressString3' + enterpriseId: + $ref: '#/components/schemas/Id' + label: + type: string + maxLength: 250 + required: + - id + - coin + - address + - enterpriseId + - label + SendTransaction: + title: Sent Transaction + allOf: + - $ref: '#/components/schemas/BuildParams' + - type: object + description: Include buildParams from the build request to be stored in case of rebuilding. + type: object + description: This endpoint broadcasts half-signed transactions. + properties: + comment: + type: string + description: An optional memo for the transaction. + maxLength: 256 + halfSigned: + type: object + properties: + txHex: + type: string + description: The half-signed transaction. The request must include this or a txHex. + txHex: + type: string + description: The half-signed, serialized transaction hex. Alternative to sending halfSigned. + sequenceId: + type: string + description: Your own unique ID + videoApprovers: + $ref: '#/components/schemas/VideoApprovers' + Session: + type: object + properties: + created: + type: string + format: date-time + expires: + type: string + format: date-time + id: + $ref: '#/components/schemas/Id' + ip: + allOf: + - $ref: '#/components/schemas/Ip' + description: IP address of the client that requested this access token + ipRestrict: + type: array + items: + type: string + format: ipv4 + description: IP addresses of clients that are allowed to use this token + origin: + type: string + example: test.bitgo.com + description: BitGo environment that issued this token + scope: + allOf: + - $ref: '#/components/schemas/Scope' + description: Session permissions + unlock: + allOf: + - $ref: '#/components/schemas/PlatformUnlock' + description: The Unlock object, returned if this session is currently unlocked. + user: + $ref: '#/components/schemas/Id' + required: + - created + - expires + - id + - origin + - scope + - user + Session1: + type: object + properties: + created: + type: string + format: date-time + expires: + type: string + format: date-time + id: + $ref: '#/components/schemas/Id' + ip: + allOf: + - $ref: '#/components/schemas/Ip' + description: IP address of the client that requested this access token + ipRestrict: + type: array + items: + type: string + format: ipv4 + description: IP addresses of clients that are allowed to use this token + origin: + type: string + example: test.bitgo.com + description: BitGo environment that issued this token + scope: + allOf: + - $ref: '#/components/schemas/Scope' + description: Session permissions + unlock: + allOf: + - $ref: '#/components/schemas/Unlock1' + description: The Unlock object, returned if this session is currently unlocked. + user: + $ref: '#/components/schemas/Id' + required: + - created + - expires + - id + - origin + - scope + - user + SettlementAmountsRecord: + title: SettlementAmountsRecord + oneOf: + - $ref: '#/components/schemas/PartySettlementAmountsRecord' + - $ref: '#/components/schemas/CounterpartyPartySettlementAmountsRecord' + SettlementStatuses: + title: SettlementStatuses + type: string + enum: + - failed + - completed + - pending + - rejected + SettlementTransferStatus: + title: SettlementTransferStatus + type: string + enum: + - pending + - pending_onchain + - onchain_initiated + - onchain_failed + - completed + - failed + - rejected + SettlementTypes: + title: SettlementTypes + type: string + enum: + - onchain + - offchain + ShareType: + title: ShareType + type: string + enum: + - encryptedSignerShare + - encryptedRShare + ShareWalletRequest: + type: object + properties: + permission: + type: string + description: | + Comma-separated list of privileges for a wallet. Includes: + + - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. + - 'freeze' - Can freeze a wallet, disabling all withdrawals. + - 'spend' - Can initiate withdrawals and generate new receive addresses. + - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). + - 'view' - Can view balances and transactions. + + Permissions don't overlap. Required parameter if 'reshare' is false. + enum: + - admin + - spend + - trade + - view + example: spend,view + message: + type: string + description: User readable message to display to the share recipient + reshare: + type: boolean + description: Flag for reinviting a user to the wallet. This is required if the invitee has already been invited to the wallet, but has changed their password and needs a new invite + disableEmail: + type: boolean + description: Flag for disabling invite notification email + user: + $ref: '#/components/schemas/Id' + keychain: + $ref: '#/components/schemas/WalletShareKeychain' + skipKeychain: + type: boolean + description: If true, allows creating wallet shares without a sharing a key (keychain) when the wallet is shared with spend permission. + required: + - user + ShareWalletResponse: + type: object + description: Wallet share object + properties: + id: + allOf: + - $ref: '#/components/schemas/Id' + description: Wallet share id + coin: + allOf: + - $ref: '#/components/schemas/Coin' + description: Coin of the wallet + wallet: + allOf: + - $ref: '#/components/schemas/Id' + description: Wallet id + walletLabel: + $ref: '#/components/schemas/WalletLabel' + fromUser: + allOf: + - $ref: '#/components/schemas/Id' + description: Id of the user sharing the wallet + toUser: + allOf: + - $ref: '#/components/schemas/Id' + description: Id of the user receiving the share + permissions: + type: string + allOf: + - $ref: '#/components/schemas/WalletPermission' + message: + type: string + description: Message for the user receiving the share + state: + type: string + allOf: + - $ref: '#/components/schemas/WalletShareState1' + description: State of the share + enterprise: + allOf: + - $ref: '#/components/schemas/Id' + description: If the wallet belongs to an enterprise, the id of that enterprise + pendingApprovalId: + allOf: + - $ref: '#/components/schemas/Id' + description: If the share generated a pending approval, the id of that pending approval + keychain: + $ref: '#/components/schemas/WalletShareKeychain' + ShortCountryCode: + type: string + description: Two-letter country code, as specified by ISO 3166-1 alpha-2 + minLength: 2 + maxLength: 2 + example: US + enum: + - AD + - AE + - AF + - AG + - AI + - AL + - AM + - AO + - AQ + - AR + - AS + - AT + - AU + - AW + - AX + - AZ + - BA + - BB + - BD + - BE + - BF + - BG + - BH + - BI + - BJ + - BL + - BM + - BN + - BO + - BQ + - BR + - BS + - BT + - BV + - BW + - BY + - BZ + - CA + - CC + - CD + - CF + - CG + - CH + - CI + - CK + - CL + - CM + - CN + - CO + - CR + - CU + - CV + - CW + - CX + - CY + - CZ + - DE + - DJ + - DK + - DM + - DO + - DZ + - EC + - EE + - EG + - EH + - ER + - ES + - ET + - FI + - FJ + - FK + - FM + - FO + - FR + - GA + - GB + - GD + - GE + - GF + - GG + - GH + - GI + - GL + - GM + - GN + - GP + - GQ + - GR + - GS + - GT + - GU + - GW + - GY + - HK + - HM + - HN + - HR + - HT + - HU + - ID + - IE + - IL + - IM + - IN + - IO + - IQ + - IR + - IS + - IT + - JE + - JM + - JO + - JP + - KE + - KG + - KH + - KI + - KM + - KN + - KP + - KR + - KW + - KY + - KZ + - LA + - LB + - LC + - LI + - LK + - LR + - LS + - LT + - LU + - LV + - LY + - MA + - MC + - MD + - ME + - MF + - MG + - MH + - MK + - ML + - MM + - MN + - MO + - MP + - MQ + - MR + - MS + - MT + - MU + - MV + - MW + - MX + - MY + - MZ + - NA + - NC + - NE + - NF + - NG + - NI + - NL + - 'NO' + - NP + - NR + - NU + - NZ + - OM + - PA + - PE + - PF + - PG + - PH + - PK + - PL + - PM + - PN + - PR + - PS + - PT + - PW + - PY + - QA + - RE + - RO + - RS + - RU + - RW + - SA + - SB + - SC + - SD + - SE + - SG + - SH + - SI + - SJ + - SK + - SL + - SM + - SN + - SO + - SR + - SS + - ST + - SV + - SX + - SY + - SZ + - TC + - TD + - TF + - TG + - TH + - TJ + - TK + - TL + - TM + - TN + - TO + - TR + - TT + - TV + - TW + - TZ + - UA + - UG + - UM + - US + - UY + - UZ + - VA + - VC + - VE + - VG + - VI + - VN + - VU + - WF + - WS + - YE + - YT + - ZA + - ZM + - ZW + Side: + description: Side of a trade, from the perspective of the requesting user + type: string + enum: + - buy + - sell + example: buy + SignMessageIntent: + title: SignMessageIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - signMessage + messageRaw: + type: string + description: A plain text message + example: 'for EVM: test message' + messageEncoded: + allOf: + - $ref: '#/components/schemas/optionalString' + description: An encoded string + example: 'for EVM: \x19Ethereum Signed Message:\n12test message' + required: + - intentType + - messageRaw + - messageEncoded + - $ref: '#/components/schemas/BaseIntent' + SignatureShare: + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The source of the signature share. + to: + allOf: + - $ref: '#/components/schemas/KeyShareSource' + description: The recipient of the signature share. + share: + type: string + description: The signature share. + required: + - from + - to + - share + SignatureShareType: + title: SignatureShareType + type: string + enum: + - user + - backup + - bitgo + SignatureShareWithoutVssProof: + title: SignatureShareWithoutVssProof + type: object + properties: + from: + allOf: + - $ref: '#/components/schemas/SignatureShareType' + description: The source of the signature share. + to: + allOf: + - $ref: '#/components/schemas/SignatureShareType' + description: The recipient of the signature share. + share: + type: string + description: The signature share + required: + - from + - to + - share + SilvergateUSDAddress: + title: Silvergate USD Address + type: object + properties: + bankAccountId: + type: string + bankAccount: + $ref: '#/components/schemas/BankAccountJson' + required: + - bankAccountId + SilvergateUSDWallet: + title: Silvergate USD Wallet + type: object + properties: + backingBankAccountId: {} + backingSENBankAccountId: {} + lastUsedNonce: + type: number + required: + - backingBankAccountId + - backingSENBankAccountId + - lastUsedNonce + SimulateEnterpriseWebhookResponseBody: + title: SimulateEnterpriseWebhookResponseBody + type: object + properties: + webhookNotifications: + type: array + items: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + type: + allOf: + - $ref: '#/components/schemas/WebhookType' + description: Event type to listen to. + wallet: + type: string + example: cold + url: + type: string + hash: + type: string + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + coinChain: + type: string + transfer: + type: string + example: receive + state: + allOf: + - $ref: '#/components/schemas/WebhookNotificationState' + description: If "failed", webhook notification failed to connect with the target URL. If "new", webhook notification was newly generated, in response to an event. If "pending", webhook notification is awaiting processing by the webhook worker. If "processed", webhook notification successfully sent to target URL. If "unconfirmed", webhook notification is awaiting confirmation on the blockchain. + simulation: + type: boolean + retries: + type: number + webhook: + type: string + updatedAt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + nextAttempt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + version: + type: number + example: 2 + allowBlockedHosts: + type: boolean + heightToConfirm: + type: number + payload: + type: string + response: + type: object + properties: + code: + oneOf: + - type: number + - type: string + type: + type: string + body: + type: string + error: + type: string + required: + - id + required: + - webhookNotifications + SimulateOrganizationWebhookResponseBody: + title: SimulateOrganizationWebhookResponseBody + type: object + properties: + webhookNotifications: + type: array + items: + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + type: + allOf: + - $ref: '#/components/schemas/WebhookType' + description: Event type to listen to. + wallet: + type: string + example: cold + url: + type: string + hash: + type: string + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + coinChain: + type: string + transfer: + type: string + example: receive + state: + allOf: + - $ref: '#/components/schemas/WebhookNotificationState' + description: If "failed", webhook notification failed to connect with the target URL. If "new", webhook notification was newly generated, in response to an event. If "pending", webhook notification is awaiting processing by the webhook worker. If "processed", webhook notification successfully sent to target URL. If "unconfirmed", webhook notification is awaiting confirmation on the blockchain. + simulation: + type: boolean + retries: + type: number + webhook: + type: string + updatedAt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + nextAttempt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + version: + type: number + example: 2 + allowBlockedHosts: + type: boolean + heightToConfirm: + type: number + payload: + type: string + response: + type: object + properties: + code: + oneOf: + - type: number + - type: string + type: + type: string + body: + type: string + error: + type: string + required: + - id + required: + - webhookNotifications + SimulateWalletWebhookRequestBody: + oneOf: + - title: Transfer + type: object + properties: + transferId: + allOf: + - $ref: '#/components/schemas/Id' + description: The ID of a transfer on the specified wallet. This must be provided if the webhook is of type 'transfer'. + required: + - transferId + - title: Pending Approval + type: object + properties: + pendingApprovalId: + allOf: + - $ref: '#/components/schemas/Id' + description: The ID of a pending approval on the specified wallet. This must be provided if the webhook is of type 'pendingApproval'. + required: + - pendingApprovalId + - title: Transaction request + type: object + properties: + txRequestId: + type: string + description: The txRequestId of a transaction request on the specified wallet. This must be provided if the webhook is of type 'txRequest' or 'txRequestTransaction'. + required: + - txRequestId + SnowflakeReportType: + title: SnowflakeReportType + type: string + enum: + - holdings + - transactions + - quarterly + - trades + - staking + - holdingsByAddress + SolAddress: + title: Sol Address + type: object + properties: + rootAddress: + type: string + minimumFunding: + type: number + pendingChainInitialization: + type: boolean + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + nonceExpiresAt: + type: string + format: date + title: Date String + nonceTxRequestid: + type: string + type: + type: string + required: + - rootAddress + - minimumFunding + - pendingChainInitialization + - trustedTokens + SolAuthorizeIntent: + title: SOL Authorize Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - authorize + transactionMessage: + type: string + stakeAccount: + type: string + oldWithdrawPublicKey: + type: string + newWithdrawPublicKey: + type: string + lockupPublicKey: + type: string + nonceAccount: + type: string + nonceAuthority: + type: string + blockhash: + type: string + required: + - intentType + - transactionMessage + - stakeAccount + - oldWithdrawPublicKey + - newWithdrawPublicKey + - lockupPublicKey + - nonceAccount + - nonceAuthority + - blockhash + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolBuildOptions: + title: SolBuildOptions + allOf: + - type: object + properties: + memo: + $ref: '#/components/schemas/optionalString' + required: + - memo + - $ref: '#/components/schemas/AccountBaseBuildOptions' + SolClaimIntent: + title: SOL Claim Intent + allOf: + - type: object + properties: + stakingAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + required: + - stakingAddress + - amount + - $ref: '#/components/schemas/WithdrawIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolCloseAssociatedTokenAccountIntent: + title: SOL Close Associated Token Account Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - closeAssociatedTokenAccount + accountAddress: + type: string + destinationAddress: + type: string + required: + - intentType + - accountAddress + - destinationAddress + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolConsolidateIntent: + title: SOL Consolidate Intent + allOf: + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + SolCreateAssociatedTokenAccountIntent: + title: SOL Create Associated Token Account Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/EnableTokenIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolDeactivateIntent: + title: SOL Deactivate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - deactivate + stakingAddresses: + $ref: '#/components/schemas/optionalStringArray' + stakingAddress: + $ref: '#/components/schemas/optionalString' + required: + - intentType + - stakingAddresses + - stakingAddress + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolDelegateIntent: + title: SOL Delegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + validatorAddress: + type: string + stakingAddresses: + $ref: '#/components/schemas/optionalStringArray' + stakingAddress: + $ref: '#/components/schemas/optionalString' + required: + - intentType + - validatorAddress + - stakingAddresses + - stakingAddress + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolPaymentIntent: + title: SolPaymentIntent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/PaymentIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolStakeIntent: + title: SOL Stake Intent + allOf: + - type: object + properties: + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + required: + - validatorAddress + - amount + - $ref: '#/components/schemas/StakeIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolStakingDelegation: + title: SOL + allOf: + - $ref: '#/components/schemas/StakingDelegation' + type: object + SolStakingRequest: + title: SOL + allOf: + - $ref: '#/components/schemas/StakingRequest' + type: object + properties: delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: string - withdrawalAddress: 3Lwg4hE19Kg4BdUkuDh4v8xXoyoRQkbDMM6wX7zjQP6i - delegated: '10012000000' - status: ACTIVE - rewards: '12000000' - lockedRewards: '0' - pendingUnstake: '10012000000' - pendingStake: '0' - apy: '8.3' - unstakingFee: '1000000' - unstakingMin: '0' + type: array + minItems: 1 + maxItems: 1 + items: + $ref: '#/components/schemas/SolStakingDelegation' transactions: - - id: i0500adbc-55b43-5tta-9a9d-726a05bca0op - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: READY - amount: '1012' - transactionType: undelegate - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - - id: p0500adbc-55b43-5tta-9a9d-726a05bca0dr - stakingRequestId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf - createdDate: 2022-01-10T14:32:28.000Z - statusModifiedDate: 2022-01-10T14:32:28.000Z - status: WAITING - amount: '10012000000' - transactionType: withdraw_undelegated - delegationId: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - amount: '10012000000' - WalletStakingStateAttributesExamples: - summary: Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 1 - stakeWarmupPeriodDesc: 3 to 6 days - rewardPercentageRate: '2' - rewardsCompounding: false - unstaking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - unStakeCooldownPeriodDesc: 3 to 6 days - permission: - staking: - enabled: true - allowClientToUseOwnValidator: false - unstaking: - enabled: false - disabledReason: Wallet 62f502fbd19a040007cae8d3fa0e6660 doesn't have active delegation - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 1 - spendable: - staking: - fee: '10000' - max: '997547864' - min: '2282880' - netMax: '997537864' - netMin: '2292880' - isStakingDurationNeeded: false - minStakeMore: '0' - unstaking: - fee: '10000' - max: '0' - min: '0' - multipleDelegations: false - DotWalletStakingStateAttributesExamples: - summary: Dot Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - 'Minimum staking period is: 1 day.' - - Once staked, the unstaking takes 28 eras (about 28 days). - - | - 'Unstaking requires approving 2 transactions: the transaction to unstake and the transaction to claim your staking balance plus rewards.' - transactionsNeeded: 1 - stakeWarmupPeriodDesc: '172800' - rewardPercentageRate: '13.92' - rewardsCompounding: true - unstaking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unbond and the transaction to claim your staking amount. The network has to confirm the unbonding transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - unStakeCooldownPeriodDesc: '2419200' - permission: - staking: - enabled: false - disabledReason: Wallet 63a1d3892f03840007e056e3880391ee has insufficient funds - allowClientToUseOwnValidator: false - unstaking: - enabled: true - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 0 - spendable: - staking: - fee: '12923673972' - max: '0' - min: '1000000000000' - netMax: '0' - netMin: '1012923673972' - isStakingDurationNeeded: false - minStakeMore: '0' - unstaking: - fee: '45410610588' - max: '20384805835211' - min: '1000000000000' - multipleDelegations: false - EthDelegationResultsExample: - summary: Ethereum Delegation Results Example - value: - page: 1 - totalPages: 1 - totalElements: 2 - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '3200000000000000000' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '100000000000000' - unstakingMin: '0' - - id: e0225adbc-55b43-5tta-9a9d-726a05bca0ai - delegationAddress: 0x3b6406c9710f588ca733360bfa8033d0ef9ecre4 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '3200000000000000000' - status: ACTIVE - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '0' - apy: '8.3' - coin: eth - walletId: 2032e75g451052000636831abd797bd3 - unstakingFee: '1000000000000000' - unstakingMin: '0' - AvaxPDelegationResultsExample: - summary: AvaxP Delegation Results Example - value: - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '0' - coin: avaxp - walletId: 63110fc78b108e00071df2d3c3879dd0 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '1000' - apy: '6.5100' - unstakeable: false - page: 1 - totalPages: 1 - totalElements: 1 - DotDelegationResultsExample: - summary: Dot Delegation Results Example - value: - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '0' - coin: dot - walletId: 63110fc78b108e00071df2d3c3879dd0 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '1000' - apy: '6.5100' - unstakeable: false - page: 1 - totalPages: 1 - totalElements: 1 - MaticDelegationResultsExample: - summary: Matic Delegation Results Example - value: - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '0' - coin: matic - walletId: 63110fc78b108e00071df2d3c3879dd0 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '1000' - apy: '6.5100' - unstakeable: false - page: 1 - totalPages: 1 - totalElements: 1 - NearDelegationResultsExample: - summary: Near Delegation Results Example - value: - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '0' - coin: near - walletId: 63110fc78b108e00071df2d3c3879dd0 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '1000' - apy: '6.5100' - unstakeable: false - page: 1 - totalPages: 1 - totalElements: 1 - SolDelegationResultsExample: - summary: Sol Delegation Results Example - value: - delegations: - - id: e0225adbc-66a3-4ccd-9a9d-726a05bca0cf - delegationAddress: 0x5a6406c9710f588ca733360bfa8033d0ef9ecdy5 - withdrawalAddress: '0x5a6406c9710f588ca733360bfa8033d0ef9ecd7c' - delegated: '0' - coin: sol - walletId: 63110fc78b108e00071df2d3c3879dd0 - status: PENDING - rewards: '0' - lockedRewards: '0' - pendingUnstake: '0' - pendingStake: '1000' - apy: '6.5100' - unstakeable: false - page: 1 - totalPages: 1 - totalElements: 1 - StakeableCoinsResultExample: - summary: Stakeable Coins Result Example - value: + type: array + minItems: 1 + maxItems: 500 + items: + $ref: '#/components/schemas/SolStakingTransaction' + amount: + description: Amount to stake in base units. + type: string + SolStakingRequestPOSTBody: + title: SOL stake + allOf: + - $ref: '#/components/schemas/StakingRequestPOSTBody' + type: object + properties: + amount: + description: Amount to stake in base units. + type: string + example: '1000' + SolStakingRequestWithTransactions: + title: SOL + allOf: + - $ref: '#/components/schemas/SolStakingRequest' + - type: object + properties: + transactions: + type: array + items: + oneOf: + - $ref: '#/components/schemas/SolStakingTransaction' + SolStakingTransaction: + allOf: + - $ref: '#/components/schemas/StakingTransaction' + type: object + SolUnStakingRequestPOSTBody: + title: SOL unstake + allOf: + - $ref: '#/components/schemas/UnStakingRequestPOSTBody' + type: object + properties: + type: + description: Staking Request type = 'UNSTAKE'. + type: string + example: UNSTAKE + delegationId: + description: The delegation ID representing the delegation to unstake. + type: string + required: + - type + SolUnstakeIntent: + title: SOL Unstake Intent + allOf: + - type: object + properties: + stakingAddress: + type: string + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + remainingStakingAmount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + required: + - stakingAddress + - $ref: '#/components/schemas/UnstakeIntent' + - $ref: '#/components/schemas/SolBuildOptions' + SolWallet: + title: Sol Wallet + type: object + properties: + pendingChainInitialization: + type: boolean + minimumFunding: + type: number + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + rootAddress: + type: string + nonceAddress: + type: string + lastBlockHash: + type: string + lastChainIndex: {} + nonceExpiresAt: + type: string + format: date + title: Date String + nonceTxRequestId: + type: string + required: + - pendingChainInitialization + - minimumFunding + - trustedTokens + SpendingLimits: + type: object + additionalProperties: + type: object + properties: + txCount: + type: integer + txValue: + type: integer + txValueLimit: + type: number + example: + btc: + txCount: 1 + txValue: 0 + txValueLimit: 100000000 + eth: + txCount: 1 + txValue: 0 + txValueLimit: 50000000000 + StacksAddress: + title: Stacks Address + type: object + properties: + baseAddress: + type: string + memoId: + type: string + required: + - baseAddress + - memoId + StacksWallet: + title: Stacks Wallet + type: object + properties: + baseAddress: + type: string + feeAddress: + type: string + lastNonce: + type: number + addressCount: + type: number + StakeClaimRewardsIntent: + title: StakeClaimRewardsIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - stakeClaimRewards + amount: + $ref: '#/components/schemas/Amount' + required: + - intentType + - amount + - $ref: '#/components/schemas/BaseStakeIntent' + StakeIntent: + title: StakeIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - stake + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + StakeIntent2: + allOf: + - $ref: '#/components/schemas/BaseStakeIntent2' + - type: object + properties: + intentType: + type: string + enum: + - stake + required: + - intentType + StakeSwitchValidatorIntent: + title: StakeSwitchValidatorIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - switchValidator + amount: + $ref: '#/components/schemas/Amount' + validatorAddress: + type: string + destValidatorAddress: + type: string + required: + - intentType + - amount + - validatorAddress + - destValidatorAddress + - $ref: '#/components/schemas/BaseStakeIntent' + StakeableCoins: + type: object + properties: + symbol: + type: string + baseUnit: + type: string + isToken: + type: boolean + isTss: + type: boolean + isMultiSig: + type: boolean + l1Chain: + type: string + StakeableCoinsResult: + title: Stakeable coins + type: object + properties: coins: - - symbol: tmatic - baseUnit: wei - isToken: true - isMultiSig: true - isTss: false - l1Chain: gteth - - symbol: gteth - baseUnit: wei - isToken: false - isMultiSig: true - isTss: false - page: 1 - totalPages: 1 - totalElements: 2 - AvaxPWalletStakingStateAttributesExamples: - summary: AvaxP Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - Minimum staking period is 14 days. Maximum staking period is 1 year (365 days). Minimum to stake is 2000 AVAX. Maximum to stake is 3M AVAX. - transactionsNeeded: 1 - rewardPercentageRate: '2' - rewardsCompounding: false - unstaking: - info: - - Once staked you CANNOT unstake. It will auto-unstake at the end of your staking period. - transactionsNeeded: 0 - permission: - staking: - enabled: true - allowClientToUseOwnValidator: true - unstaking: - enabled: false - disabledReason: AVAXP is auto-unstaked - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 1 - spendable: - staking: - fee: '0' - max: '13995243325' - min: '1000000000' - netMax: '13995243325' - netMin: '1000000000' - isStakingDurationNeeded: true - minStakeMore: '0' - minDuration: '86400' - maxDuration: '31536000' - unstaking: - fee: '0' - max: '0' - min: '0' - multipleDelegations: false - SolWalletStakingStateAttributesExamples: - summary: Sol Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 1 - stakeWarmupPeriodDesc: 3 to 6 days - rewardPercentageRate: '2' - rewardsCompounding: false - unstaking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - unStakeCooldownPeriodDesc: 3 to 6 days - permission: - staking: - enabled: false - disabledReason: Wallet 62fba335ff37ad00079d56a8b4fd3ebe has insufficient funds - allowClientToUseOwnValidator: false - unstaking: - enabled: false - disabledReason: Wallet 62fba335ff37ad00079d56a8b4fd3ebe doesn't have active delegation - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 1 - spendable: - staking: - fee: '10000' - max: '0' - min: '2282880' - netMax: '0' - netMin: '2292880' - isStakingDurationNeeded: false - minStakeMore: '0' - unstaking: - fee: '10000' - max: '0' - min: '0' - multipleDelegations: false - MaticWalletStakingStateAttributesExamples: - summary: Matic Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - stakeWarmupPeriodDesc: tbd - rewardPercentageRate: '6.5100' - rewardsCompounding: false - unstaking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - unStakeCooldownPeriodDesc: tbd + type: array + items: + $ref: '#/components/schemas/StakeableCoins' + page: + type: integer + totalPages: + type: integer + totalElements: + type: integer + StakingDelegation: + type: object + properties: + id: + description: The staking request ID. + type: string + coin: + description: The staking asset. + type: string + walletId: + description: The ID of the wallet that the delegation is tied to. + type: string + delegationAddress: + description: The delegation address. + type: string + withdrawalAddress: + description: The withdrawal address. + type: string + delegated: + description: The delegation amount. + type: string + status: + description: The status of the delegation. + type: string + rewards: + description: The amount of rewards received over the lifetime. + type: string + lockedRewards: + description: The amount of locked rewards received. + type: string + pendingUnstake: + description: The amount that is pending unstake. + type: string + pendingStake: + description: The amount that is pending stake. + type: string + apy: + description: The estimated reward APY or APR if rewards are not compounding. + type: string + unstakingFee: + description: The total fees needed in the wallet to unstake an amount from the delegation. + type: string + unstakingMin: + description: The minimum amount needed to unstake from the delegation. + type: string + properties: + allOf: + - $ref: '#/components/schemas/StakingDelegationProperties' + type: object + rewardCoin: + description: The coin in which rewards will be received. + type: string + StakingDelegationProperties: + type: object + properties: + delegationCycle: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The number of cycles this delegation will be active. + endBurnBlockHeight: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The end burn block height for this delegation. + expireAt: + description: The staking expiration date. + type: string + format: date-time + example: '2025-01-31T00:00:00.000Z' + rewardWalletId: + description: The ID of the wallet where rewards will be received. + type: string + StakingDisclaimerAttributes: + type: object + properties: + info: + description: Disclaimer info + type: string + transactionsNeeded: + description: The number of transactions needed for a staking request. + type: integer + StakingEnterprise: + type: object + properties: + enterpriseId: + description: The ID of the enterprise where the the staking request was created from. + type: string + coin: + description: The staking asset. + type: string + delegated: + description: The delegated staked amount in base units. + type: string + rewards: + description: The reward accrual amount in base units. + type: string + apy: + description: Reward accrual annual percentage rate. Estimated yearly based on the last 7 days. Same methodology as leading beacon chain validator aggregators (e.g. https://beaconcha.in/validators) + type: string + StakingError: + title: Staking Error + type: object + properties: + error: + type: string + errorName: + type: string + reqId: + type: string + context: + type: object + StakingLicense: + type: object + properties: + coin: + description: The name of the coin. + type: string + fee: + description: The corresponding fee for coin in current license. + type: string + StakingLicenseResponse: + type: object + properties: + enterpriseId: + type: string + description: The enterprise ID. + defaultFee: + type: string + description: The default fee for the asset. + fees: + type: array + minItems: 1 + maxItems: 500 + items: + allOf: + - $ref: '#/components/schemas/StakingLicense' + - type: object + StakingPartneredValidator: + type: object + properties: + delegationAddress: + description: The delegation address. + type: string + type: + description: The validator provider. + type: string + totalStaked: + description: The total staked amount in base units. + type: string + rewards: + description: The reward accrual amount in base units. + type: string + apy: + description: The annual percentage yield. + type: string + commission: + description: The fee charged by the validator as a percentage. + type: string + coin: + description: The staked coin. + type: string + avses: + description: The validator's actively validated services (AVS) for restaking. + type: array + items: + type: string + historicRatePerformance: + description: The validator's historical reward rate for the last 30 days. + type: string + StakingPartneredValidatorsResponse: + type: object + properties: + validators: + type: array + minItems: 1 + maxItems: 500 + items: + allOf: + - $ref: '#/components/schemas/StakingPartneredValidator' + - type: object + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + StakingPermissionAttributes: + type: object + properties: + enabled: + description: If the wallet has staking request submission permission. + type: string + disabledReason: + description: The reason that staking request submission has been disabled. + type: string + StakingRequest: + title: Staking Request + type: object + properties: + id: + description: Staking request ID. + type: string + clientId: + description: Optional clientId if passed into the request. + type: string + requestingUserId: + description: The ID of the user that created the staking request. + type: string + enterpriseId: + description: The ID of the enterprise where the the staking request was created. + type: string + walletId: + description: The ID of the wallet where the staking request was created. + type: string + withdrawalAddress: + description: Withdrawal Address + type: string + walletType: + description: The type of wallet the staking request was created from either cold, custodial, or hot. + type: string + type: + $ref: '#/components/schemas/StakingRequestType' + coin: + description: The coin to be staked (ETH, MATIC, NEAR, SOL). + type: string + createdDate: + description: The date the staking request was created. + type: string + format: date-time + status: + $ref: '#/components/schemas/StakingRequestStatus' + statusModifiedDate: + description: The last date the status changed. + type: string + error: + description: The reason the staking request failed. + type: string + totalStaked: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The sum of the amounts of all confirmed staking transactions in this request. + delegationCycle: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The number of cycles this staking request will be active. + required: + - id + - requestingUserId + - enterpriseId + - walletId + - withdrawalAddress + - walletType + - type + - coin + - createdDate + - status + - statusModifiedDate + StakingRequestPOSTBody: + type: object + properties: + clientId: + description: Optional user generated identifier to detect duplicated requests. + type: string + amount: + description: Amount to stake in base units (i.e. Wei for ETH). For Ethereum the amount must be a multiple of 32 ETH (32000000000000000000 Wei). For Testnet the 32 ETH multiple restriction does not apply. + type: string + example: '32000000000000000000' + type: + description: Staking Request type = 'STAKE' + type: string + example: STAKE + required: + - amount + - type + StakingRequestStatus: + title: Staking Request Status + description: The status of the staking request. For ETH the status will change from NEW to READY when a validator has been assigned to the wallet's address. + type: string + enum: + - NEW + - PENDING_VALIDATORS + - READY + - PENDING_APPROVAL + - PENDING_BITGO_TRUST_APPROVAL + - PENDING + - FAILED + - REJECTED + - VALIDATOR_ACTIVATING + - PARTIAL_CONFIRMED + - CONFIRMED + - COOLDOWN + - WARMUP + - DELAYED_COOLDOWN + - DELAYED_WARMUP + - ETH_PARTIAL_EXITED + - ETH_EXITED + StakingRequestType: + title: Staking Request Type + description: The type of staking request. + type: string + enum: + - STAKE + - UNSTAKE + - CLAIM_REWARDS + - SWITCH_VALIDATOR + - CHECKPOINT + - UNSUPPORTED + StakingRequestsListResponse: + type: object + properties: + requests: + type: array + minItems: 1 + maxItems: 500 + items: + oneOf: + - $ref: '#/components/schemas/EthStakingRequest' + - $ref: '#/components/schemas/MaticStakingRequest' + - $ref: '#/components/schemas/NearStakingRequest' + - $ref: '#/components/schemas/CosmosLikeStakingRequest' + - $ref: '#/components/schemas/AtomStakingRequest' + - $ref: '#/components/schemas/SolStakingRequest' + - $ref: '#/components/schemas/DotStakingRequest' + StakingRequestsResponse: + type: object + properties: + requests: + type: array + minItems: 1 + maxItems: 500 + items: + oneOf: + - $ref: '#/components/schemas/EthStakingRequestWithTransactions' + - $ref: '#/components/schemas/NearStakingRequestWithTransactions' + - $ref: '#/components/schemas/CosmosLikeStakingRequestWithTransactions' + - $ref: '#/components/schemas/AtomStakingRequestWithTransactions' + - $ref: '#/components/schemas/SolStakingRequestWithTransactions' + - $ref: '#/components/schemas/DotStakingRequestWithTransactions' + - $ref: '#/components/schemas/MaticStakingRequest' + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + StakingReward: + type: object + properties: + reward: + description: The reward in base units. + type: string + walletId: + description: The wallet ID. + type: string + enterpriseId: + description: The enterprise ID. + type: string + date: + description: The date and time of the reward. + type: string + format: date-time + required: + - reward + - date + StakingRewards: + type: object + properties: + rewards: + description: An array of rewards. + type: array + items: + $ref: '#/components/schemas/StakingReward' + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + StakingSpendableAttributes: + type: object + properties: + max: + description: The maximum spendable amount. + type: string + min: + description: The minimum spendable amount. + type: string + fee: + description: The blockchain fee to submit the transactions needed to stake. + type: string + netMax: + description: The maximum spendable amount minus fees. + type: string + netMin: + description: The net minimum spendable amount plus fees. + type: string + isStakingDurationNeeded: + description: True, if staking duration in seconds is required. + type: boolean + minStakeMore: + description: The minimum amount required to stake to the same validator. + type: integer + StakingTransaction: + title: Staking Transaction + type: object + properties: + id: + description: The staking transaction ID. + type: string + stakingRequestId: + description: The staking request ID. + type: string + transactionType: + allOf: + - $ref: '#/components/schemas/StakingTransactionType' + - type: string + description: The transaction type (delegate). + txHash: + description: The transaction hash. + type: string + createdDate: + description: The date the transaction was created. + type: string + format: date-time + status: + $ref: '#/components/schemas/StakingTransactionStatus' + statusModifiedDate: + description: The last date the status changed. + type: string + format: date-time + error: + description: The reason the transaction failed. + type: string + amount: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The transaction Amount in base units (i.e. Wei for ETH). + delegationId: + description: The staking delegation the transaction is acting on. + type: string + pendingApprovalId: + description: Pending Approval ID + type: string + transferId: + description: Transfer ID + type: string + txRequestId: + description: Transaction Request ID for the Transaction Request API + type: string + required: + - stakingRequestId + - transactionType + - createdDate + - status + - statusModifiedDate + - delegationId + - amount + StakingTransactionStatus: + title: Staking Transaction Status + description: The status of the transaction, either NEW, READY, INITIATED, CONFIRMED, or REJECTED. + type: string + enum: + - WAITING + - READY + - SENDING + - PENDING_APPROVAL + - PENDING_BITGO_TRUST_APPROVAL + - REJECTED + - PENDING + - FAILED + - CONFIRMED + - VALIDATOR_ACTIVATING + - DELAYED_READY + StakingTransactionType: + title: Staking Transaction Type + description: The type of staking transaction. + type: string + enum: + - delegate + - reward + - undelegate + - withdraw_undelegated + - authorize + - '' + StakingValidator: + type: object + properties: + delegationAddress: + description: The delegation address. + type: string + coin: + description: The staked coin. + type: string + delegated: + description: The total delegated amount in base units. + type: string + rewards: + description: The reward accrual amount in base units. + type: string + apy: + description: The annual percentage yield. + type: string + type: + description: The validator provider used for staking. + type: string + rewardCoin: + description: The coin in which rewards will be received. + type: string + StakingValidatorsResponse: + type: object + properties: + validators: + type: array + minItems: 1 + maxItems: 500 + items: + allOf: + - $ref: '#/components/schemas/StakingValidator' + - type: object + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + StakingWallet: + type: object + properties: + enterpriseId: + description: The ID of the enterprise where the the staking request was created. + type: string + walletId: + description: The ID of the wallet where the staking request was created. + type: string + walletType: + description: The type of wallet the staking request was created from, either cold, custodial, or hot. + type: string + label: + description: The label of the wallet the staking request was created from. + type: string + coin: + description: The staking asset. + type: string + delegated: + description: The delegated staked amount in base units. + type: string + pendingUnstake: + description: The amount that is actively being unstaked. + type: string + pendingStake: + description: The amount that is actively being staked. + type: string + spendableAttributes: + description: Spendable attributes + type: object + rewards: + description: The amount of rewards received in base units. + type: string + lockedRewards: + description: The amout of locked rewards in base units. + type: string + apy: + description: The reward accrual annual percentage rate. The rate is estimated yearly based on the last 7 days using the same methodology as leading beacon chain validator aggregators (e.g. https://beaconcha.in/validators). + type: string + createdDate: + description: The date the staking request was created. + type: string + modifiedDate: + description: The last date the staking wallet was modified. + type: string + required: + - enterpriseId + - walletId + - walletType + - label + - coin + - delegated + - pendingUnstake + - pendingStake + - rewards + - lockedRewards + - apy + - createdDate + - modifiedDate + StakingWalletsResponse: + type: object + properties: + stakingWallets: + description: An array of staking wallets. + type: array + items: + $ref: '#/components/schemas/StakingWallet' + page: + type: integer + description: The page number for paging purposes. + totalPages: + type: integer + description: The total number of pages for paging purposes. + totalElements: + type: integer + description: The number of elements per page used for paging purposes. + required: + - stakingWallets + - page + - totalPages + - totalElements + StellarAddress: + title: Stellar Address + type: object + properties: + memoId: + type: string + rootAddress: + type: string + required: + - memoId + - rootAddress + StellarWallet: + title: Stellar Wallet + type: object + properties: + rootAddress: + type: string + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + lastMemoId: + type: string + stellarUsername: + type: string + homeDomain: + type: string + stellarAddress: + type: string + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + required: + - rootAddress + - pendingChainInitialization + - creationFailure + - lastMemoId + SuiBuildOptions: + title: SuiBuildOptions + allOf: + - type: object + properties: + feeOptions: + $ref: '#/components/schemas/SuiFeeOptions' + lockedAmount: + $ref: '#/components/schemas/optionalString' + required: + - feeOptions + - lockedAmount + - $ref: '#/components/schemas/BaseIntent' + SuiConsolidateIntent: + title: SUI Consolidate Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + - $ref: '#/components/schemas/SuiBuildOptions' + SuiCustomTxIntent: + title: SUI Custom Tx Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - customTx + rawTx: + type: string + required: + - intentType + - rawTx + - $ref: '#/components/schemas/BaseIntent' + - $ref: '#/components/schemas/SuiBuildOptions' + SuiFeeOptions: + title: SuiFeeOptions + type: object + properties: + gasLimit: + type: number + required: + - gasLimit + SuiPaymentIntent: + title: SUI Payment Intent + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/PaymentIntent' + - $ref: '#/components/schemas/SuiBuildOptions' + SuiStakingIntent: + title: SUI Stake Intent + allOf: + - type: object + properties: + validatorAddress: + $ref: '#/components/schemas/optionalString' + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + recipients: + type: array + items: + type: object + properties: + address: + $ref: '#/components/schemas/Address' + amount: + $ref: '#/components/schemas/Amount' + data: + $ref: '#/components/schemas/optionalString' + required: + - address + - amount + - $ref: '#/components/schemas/StakeIntent' + SuiUnstakingIntent: + title: SUI Unstaking Intent + allOf: + - type: object + properties: + stakedSuiObjectId: + type: string + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + required: + - stakedSuiObjectId + - $ref: '#/components/schemas/WithdrawIntent' + SupportedAddressFormat: + title: SupportedAddressFormat + type: string + enum: + - cashaddr + - base58 + SupportedTokenRecipientEntryItem: + title: SupportedTokenRecipientEntryItem + type: object + properties: + tokenName: + type: string + required: + - tokenName + TestcoinAddress: + title: Testcoin Address + type: object + additionalProperties: {} + TestcoinWallet: + title: Testcoin Wallet + type: object + properties: + lastChainIndex: + type: number + TezosAddress: + title: Tezos Address + type: object + properties: + counter: + type: number + updateTime: + type: string + format: date + title: Date String + txCount: + type: number + pendingChainInitialization: + type: boolean + pendingPublicKeyRevelation: + type: boolean + creationFailure: + type: array + items: + type: string + delegate: + type: string + previousLowBalanceEmailSentAt: + type: string + format: date + title: Date String + required: + - counter + - updateTime + - txCount + - pendingChainInitialization + - pendingPublicKeyRevelation + - creationFailure + TezosWallet: + title: Tezos Wallet + type: object + properties: + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + deployedInBlock: + oneOf: + - type: number + - type: boolean + deployTxHash: + type: string + lastChainIndex: {} + baseAddress: + type: string + feeAddress: + type: string + safeModeActivated: + type: string + lowPriorityFeeAddress: + type: string + delegate: + type: string + required: + - pendingChainInitialization + - creationFailure + TimeWindowConditionParameter: + title: Time window + type: object + description: The period of time this condition covers, in seconds. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - timeWindow + example: timeWindow + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: time window + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The period of time this condition covers, in seconds + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - NON_NEGATIVE_NUMBER + example: NON_NEGATIVE_NUMBER + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + Token: + title: Token + type: object + properties: + limit: + type: string + token: + type: string + TokenAllowanceResponse: + title: TokenAllowanceResponse + type: object + properties: + allowance: + type: string + required: + - allowance + TokenAndSignatureConnectionKey: + title: TokenAndSignatureConnectionKey + type: object + properties: + schema: + type: string + enum: + - tokenAndSignature + connectionToken: + type: string + minLength: 1 + signature: + type: string + minLength: 1 + required: + - schema + - connectionToken + - signature + TokenConnectionKey: + title: TokenConnectionKey + type: object + properties: + schema: + type: string + enum: + - token + connectionToken: + type: string + minLength: 1 + required: + - schema + - connectionToken + TokenData: + title: TokenData + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/TokenRecipientEntryItem' + - $ref: '#/components/schemas/SupportedTokenRecipientEntryItem' + - $ref: '#/components/schemas/UnsupportedTokenRecipientEntryItem' + TokenData1: + type: object + properties: + tokenType: + type: string + description: The type of standard of the token. + example: ERC721 + tokenQuantity: + type: string + description: The quantity of token to transfer (should be 1 for ERC721). + example: '101' + tokenContractAddress: + type: string + description: Address of the token contract which is necessary if the token is not supported on WP. + example: '0x3d8e90d5F403a0A18dfeeAd36E30EF95D5E1ad3a' + tokenName: + type: string + description: Name of the token as it is supported on WP. + example: tpolygon:name + tokenId: + type: string + description: Id of the token to be transferred which is required for NFTs. + example: '123' + decimalPlaces: + type: number + description: Number of decimal places the token uses (for fungible tokens unsupported in WP). + example: 18 + TokenRecipientEntryItem: + title: TokenRecipientEntryItem + type: object + properties: + tokenQuantity: + type: string + tokenType: + type: string + tokenId: + $ref: '#/components/schemas/optionalString' + required: + - tokenQuantity + - tokenType + TonAddress: + title: Ton Address + type: object + properties: + addresses: + type: array + items: + type: string + required: + - addresses + TonConsolidateIntent: + title: TON Consolidate Intent + allOf: + - $ref: '#/components/schemas/AccountBaseConsolidateIntent' + TonDelegateIntent: + title: TON Delegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - delegate + validatorAddress: + type: string + amount: + $ref: '#/components/schemas/Amount' + useSingleNominator: + type: boolean + ownerAddress: + $ref: '#/components/schemas/optionalString' + required: + - intentType + - validatorAddress + - amount + - useSingleNominator + - $ref: '#/components/schemas/BaseIntent' + TonPaymentIntent: + title: TON Payment Intent + allOf: + - type: object + properties: + memo: + $ref: '#/components/schemas/optionalString' + - $ref: '#/components/schemas/PaymentIntent' + TonUndelegateIntent: + title: TON Undelegate Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - undelegate + validatorAddress: + type: string + useSingleNominator: + type: boolean + singleNominatorAmount: + $ref: '#/components/schemas/Amount' + required: + - intentType + - validatorAddress + - useSingleNominator + - singleNominatorAmount + - $ref: '#/components/schemas/BaseIntent' + TonWallet: + title: Ton Wallet + type: object + properties: + rootAddress: + type: string + memoId: + type: string + lastMemoId: + type: string + seqno: + type: number + lastChainIndex: + type: object + additionalProperties: + type: number + walletVersion: + type: number + required: + - rootAddress + - memoId + - lastMemoId + - seqno + Touchpoint: + type: object + description: A Touchpoint. For example the Transfer from a Wallet Touchpoint. + required: + - id + - name + - status + - label + - description + - adminOnly + properties: + id: + type: string + description: Id of the Touchpoint. A UUID. + example: 306258df-dcab-489e-a9fe-ff28ce9fa312 + name: + type: string + description: Name of the Touchpoint. + enum: + - wallet.segregated.transfer + - policies.management.edit + example: wallet.segregated.transfer + label: + type: string + description: A label for the Touchpoint which can be shown to an end user. + example: Transfer from a Segregated Wallet + description: + type: string + description: A description for the Touchpoint which can be shown to an end user. + example: When transferring from a BitGo Segregated Wallet + status: + type: string + description: | + Status of the Touchpoint. Indicates if the Touchpoint is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The Touchpoint is available for use. + * 'INACTIVE' - The Touchpoint is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal Touchpoint, false otherwise. + example: false + TouchpointsResults: + description: A paginated list of Touchpoints + allOf: + - type: object + properties: + touchpoints: + type: array + items: + $ref: '#/components/schemas/Touchpoint' + - $ref: '#/components/schemas/PaginatedResults' + TradeUser: + required: + - email + - firstName + - id + - lastName + type: object + properties: + id: + type: string + format: uuid + firstName: + type: string + lastName: + type: string + email: + type: string + format: email + example: + id: a253c86c-1f0f-42cc-bcd0-2dcc5040b204 + firstName: Uncle + lastName: MoneyPenny + email: uncle.moneypenny@bitgo.com + Trades: + type: array + items: + $ref: '#/components/schemas/PrimeTrade' + TradingValue: + title: Go Account + type: object + description: Go Account. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - trading + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Trading Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: A trading wallet + Transaction: + type: object + properties: + state: + $ref: '#/components/schemas/TransactionState1' + unsignedTx: + allOf: + - $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' + description: Holds the unsigned transaction for this transaction in a tx-request. + signatureShares: + type: array + description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. Holds the signature shares for this transaction in a tx-request. + items: + $ref: '#/components/schemas/SignatureShare' + commitmentShares: + type: array + description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. Holds the commitment shares for this transaction in a tx-request. + items: + $ref: '#/components/schemas/CommitmentShare' + txHash: + type: string + description: The hash of the transaction from the TxRequest that has been signed and is pending broadcast. + bitgoPaillierChallenge: + description: BitGo-to-user paillier challenge. Required when signing with ECDSA MPC wallets. + type: object + properties: + p: + type: array + items: + type: string + required: + - state + - unsignedTx + TransactionBuildParams: + type: object + properties: + recipients: + description: Recipient build params data + type: object + properties: + amount: + description: The amount to stake in base units. + type: string + address: + description: The address. + type: string + data: + description: The staking data (ABI format). + type: string + stakingParams: + description: Staking params + type: object + properties: + requestId: + type: string + amount: + description: The amount to stake in base units. + type: string + validator: + description: The validator address. + type: string + actionType: + description: The action type (e.g. delegate). + type: string + gasPrice: + description: The Gas price in base units. + type: string + gasLimit: + description: The Gas limit in base units. + type: string + TransactionBuildRequest: + title: Withdrawal + allOf: + - $ref: '#/components/schemas/BuildParams' + - type: object + properties: + recipients: + type: array + items: + type: object + properties: + amount: + allOf: + - $ref: '#/components/schemas/RecipientAmount' + description: String representation of the amount to send in base units (satoshis/litoshis/zatoshis/duffs). For doge, only string is allowed. Passing in 'max' will send the recipient the maximum amount available, minus fees and amounts for other recipients. Only a single recipient with a 'max' amount is allowed. + address: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: The address to send to + memo: + anyOf: + - $ref: '#/components/schemas/MemoString' + - $ref: '#/components/schemas/MemoObject' + description: A list of recipient addresses and amounts. Must be present but empty for Child-Pays-For-Parent transactions. + txFormat: + $ref: '#/components/schemas/UtxoTransactionFormat' + required: + - recipients + TransactionBuildResult: + type: object + properties: + keyDerivationPath: + type: string + TransactionInitiateRequest: + allOf: + - $ref: '#/components/schemas/BuildParams' + - type: object + properties: + recipients: + type: array + items: + type: object + properties: + amount: + allOf: + - $ref: '#/components/schemas/RecipientAmount' + description: String representation of the amount to send in base units (satoshis/litoshis/zatoshis/duffs). For doge, only string is allowed. Passing in 'max' will send the recipient the maximum amount available, minus fees and amounts for other recipients. Only a single recipient with a 'max' amount is allowed. + address: + allOf: + - $ref: '#/components/schemas/AddressString3' + description: The address to send to + memo: + anyOf: + - $ref: '#/components/schemas/MemoString' + - $ref: '#/components/schemas/MemoObject' + description: A list of recipient addresses and amounts. Must be present but empty for Child-Pays-For-Parent transactions. + TransactionIntent1: + title: TransactionIntent + oneOf: + - $ref: '#/components/schemas/AdaConsolidateIntent' + - $ref: '#/components/schemas/AdaPaymentIntent' + - $ref: '#/components/schemas/AdaStakeClaimRewardsIntent' + - $ref: '#/components/schemas/AdaStakeIntent' + - $ref: '#/components/schemas/AdaUnstakeIntent' + - $ref: '#/components/schemas/AdaVoteDelegationIntent' + - $ref: '#/components/schemas/AtomPaymentIntent' + - $ref: '#/components/schemas/AtomStakeIntent' + - $ref: '#/components/schemas/AtomUnstakeIntent' + - $ref: '#/components/schemas/AtomWithdrawIntent' + - $ref: '#/components/schemas/BscDelegateIntent' + - $ref: '#/components/schemas/BscUnDelegateIntent' + - $ref: '#/components/schemas/BscWithdrawUndelegateIntent' + - $ref: '#/components/schemas/CosmosPaymentIntent' + - $ref: '#/components/schemas/CosmosStakeIntent' + - $ref: '#/components/schemas/CosmosSwitchValidatorIntent' + - $ref: '#/components/schemas/CosmosUnstakeIntent' + - $ref: '#/components/schemas/CosmosWithdrawIntent' + - $ref: '#/components/schemas/DotConsolidateIntent' + - $ref: '#/components/schemas/DotCreateAccountIntent' + - $ref: '#/components/schemas/DotPaymentIntent' + - $ref: '#/components/schemas/DotStakingIntent' + - $ref: '#/components/schemas/DotUnstakingIntent' + - $ref: '#/components/schemas/DotWithdrawStakeIntent' + - $ref: '#/components/schemas/EthAccelerationIntent' + - $ref: '#/components/schemas/EthConsolidateIntent' + - $ref: '#/components/schemas/EthConsolidateTokenIntent' + - $ref: '#/components/schemas/EthFillNonceIntent' + - $ref: '#/components/schemas/EthPaymentIntent' + - $ref: '#/components/schemas/EthStakingIntent' + - $ref: '#/components/schemas/EthTransferTokenIntent' + - $ref: '#/components/schemas/LightningPaymentIntent' + - $ref: '#/components/schemas/MmiSignMessageIntent' + - $ref: '#/components/schemas/MmiSignTransactionIntent' + - $ref: '#/components/schemas/NearStakeIntent' + - $ref: '#/components/schemas/NearUnstakeIntent' + - $ref: '#/components/schemas/NearWithdrawIntent' + - $ref: '#/components/schemas/SolAuthorizeIntent' + - $ref: '#/components/schemas/SolClaimIntent' + - $ref: '#/components/schemas/SolCloseAssociatedTokenAccountIntent' + - $ref: '#/components/schemas/SolConsolidateIntent' + - $ref: '#/components/schemas/SolCreateAssociatedTokenAccountIntent' + - $ref: '#/components/schemas/SolDeactivateIntent' + - $ref: '#/components/schemas/SolDelegateIntent' + - $ref: '#/components/schemas/SolPaymentIntent' + - $ref: '#/components/schemas/SolStakeIntent' + - $ref: '#/components/schemas/SolUnstakeIntent' + - $ref: '#/components/schemas/SuiConsolidateIntent' + - $ref: '#/components/schemas/SuiCustomTxIntent' + - $ref: '#/components/schemas/SuiPaymentIntent' + - $ref: '#/components/schemas/SuiStakingIntent' + - $ref: '#/components/schemas/SuiUnstakingIntent' + - $ref: '#/components/schemas/TonConsolidateIntent' + - $ref: '#/components/schemas/TonDelegateIntent' + - $ref: '#/components/schemas/TonPaymentIntent' + - $ref: '#/components/schemas/TonUndelegateIntent' + - $ref: '#/components/schemas/WalletRecoveryIntent' + - $ref: '#/components/schemas/BaseStakeIntentWithCalldata' + - $ref: '#/components/schemas/CoreDaoDelegateIntent' + - $ref: '#/components/schemas/CoreDaoUndelegateIntent' + - $ref: '#/components/schemas/CoreDaoClaimIntent' + - $ref: '#/components/schemas/EthLikeStakeIntent' + - $ref: '#/components/schemas/BeraDelegateIntent' + - $ref: '#/components/schemas/BaseIntent' + TransactionRequest: + anyOf: + - $ref: '#/components/schemas/TransactionRequestLite1' + - $ref: '#/components/schemas/TransactionRequestFull1' + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + TransactionRequest1: + title: TransactionRequest + oneOf: + - $ref: '#/components/schemas/TransactionRequestLite2' + - $ref: '#/components/schemas/TransactionRequestFull' + TransactionRequestBase: + title: TransactionRequestBase + type: object + properties: + apiVersion: + type: string + enum: + - lite + - full + description: The API version of the transaction request + txRequestId: + allOf: + - $ref: '#/components/schemas/TransactionRequestId' + description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. + idempotencyKey: + type: string + description: The idempotency key of the transaction request + walletId: + allOf: + - $ref: '#/components/schemas/WalletIdString' + description: The id of the Wallet the TxRequest is for. + walletType: + type: string + enum: + - backing + - cold + - custodial + - custodialPaired + - hot + - trading + description: The type describes who owns the keys to the wallet associated to the TxRequest. + version: + type: number + description: The version of the transaction request + enterpriseId: + type: string + description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + state: + $ref: '#/components/schemas/TransactionRequestState' + date: + type: string + description: The date and time this version of the TxRequest document was created. + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + createdDate: + type: string + description: The date and time the version 1 TxRequest document was created. + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + userId: + type: string + description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. + initiatedBy: + type: string + description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). + updatedBy: + type: string + description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. + intent: {} + intents: + type: array + items: {} + pendingApprovalId: + type: string + description: The id of the Pending Approval that was created for the TxRequest if one was required. + policiesChecked: + type: boolean + latest: + type: boolean + description: Indicates if this is the latest transaction request + isCanceled: + type: boolean + description: True, if the transaction request is canceled. + required: + - txRequestId + - walletId + - version + - state + - date + - createdDate + - userId + - initiatedBy + - updatedBy + - intents + - latest + TransactionRequestBase1: + type: object + properties: + txRequestId: + type: string + description: A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique. + version: + type: number + description: The version of the document. Data changes are done only with inserts and incrementing the version. + latest: + type: boolean + description: A boolean flag that indicates whether the document is the latest version of the TxRequest. + walletId: + type: string + description: The id of the Wallet the TxRequest is for. + walletType: + allOf: + - $ref: '#/components/schemas/WalletTypePublic' + description: The type describes who owns the keys to the wallet associated to the TxRequest. + enterpriseId: + type: string + description: If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise. + state: + $ref: '#/components/schemas/TransactionRequestState1' + date: + allOf: + - $ref: '#/components/schemas/DateTime' + description: The date and time this version of the TxRequest document was created. + createdDate: + allOf: + - $ref: '#/components/schemas/DateTime' + description: The date and time the version 1 TxRequest document was created. + userId: + type: string + description: The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document. + initiatedBy: + type: string + description: The Id of the User that originally created the TxRequest document (initiated the TxRequest). + updatedBy: + type: string + description: The Id of the User that last updated the TxRequest document. This is an alias for the userId field. + intent: + $ref: '#/components/schemas/TransactionRequestIntent' + intents: + type: array + items: + $ref: '#/components/schemas/TransactionRequestIntent' + pendingApprovalId: + type: string + description: The id of the Pending Approval that was created for the TxRequest if one was required. + isCanceled: + type: boolean + description: True, if the transaction request is canceled. + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - createdDate + - userId + - initiatedBy + - updatedBy + - intents + TransactionRequestFull: + title: TransactionRequestFull + allOf: + - type: object + properties: + transactions: + type: array + items: + type: object + properties: + state: + $ref: '#/components/schemas/TransactionState' + unsignedTx: + $ref: '#/components/schemas/UnsignedTransaction' + signatureShares: + type: array + items: + allOf: + - type: object + properties: + privateShareProof: + type: string + description: The private share proof + publicShare: + type: string + description: The public share + vssProof: + type: string + description: The VSS proof of the signature share + - $ref: '#/components/schemas/SignatureShareWithoutVssProof' + commitmentShares: + type: array + items: + allOf: + - type: object + properties: + type: + type: string + enum: + - commitment + description: The type of the commitment share + required: + - type + - $ref: '#/components/schemas/BaseShare' + txHash: + type: string + updatedDate: + type: string + format: date-time + title: ISO Date String + createdDate: + type: string + format: date-time + title: ISO Date String + required: + - state + - unsignedTx + description: The transactions associated with the transaction request + - $ref: '#/components/schemas/TransactionRequestBase' + TransactionRequestFull1: + title: Full + allOf: + - $ref: '#/components/schemas/TransactionRequestBase1' + - type: object + properties: + transactions: + description: Transaction information. + type: array + items: + $ref: '#/components/schemas/Transaction' + messages: + description: Messages for the transaction request. + type: array + items: + $ref: '#/components/schemas/Message1' + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + - transactions + TransactionRequestId: + title: TransactionRequestId + type: string + example: 123e4567-e89b-12d3-a456-426614174000 + format: uuid + TransactionRequestIdNonEmptyString: + title: TransactionRequestIdNonEmptyString + type: string + example: 123e4567-e89b-12d3-a456-426614174000 + minLength: 1 + format: uuid + TransactionRequestIntent: + anyOf: + - $ref: '#/components/schemas/AdaStakeIntent1' + - $ref: '#/components/schemas/ConsolidateTokenIntent1' + - $ref: '#/components/schemas/CosmosContractCallIntent' + - $ref: '#/components/schemas/DOTClaimIntent' + - $ref: '#/components/schemas/DotPaymentIntent1' + - $ref: '#/components/schemas/DotStakingIntent' + - $ref: '#/components/schemas/DotUnstakingIntent' + - $ref: '#/components/schemas/EthAccelerationIntent' + - $ref: '#/components/schemas/EthFillNonceIntent' + - $ref: '#/components/schemas/EthPaymentIntent' + - $ref: '#/components/schemas/ETHSignMessageIntent' + - $ref: '#/components/schemas/EthStakingIntent' + - $ref: '#/components/schemas/NearStakeIntent1' + - $ref: '#/components/schemas/NearUnstakeIntent1' + - $ref: '#/components/schemas/NearWithdrawIntent1' + - $ref: '#/components/schemas/SolClaimIntent' + - $ref: '#/components/schemas/SolCreateAssociatedTokenAccountIntent' + - $ref: '#/components/schemas/SolStakeIntent' + - $ref: '#/components/schemas/SolUnstakeIntent' + - $ref: '#/components/schemas/TransferTokenIntent1' + - $ref: '#/components/schemas/UnstakeIntent2' + - $ref: '#/components/schemas/WalletRecoveryIntent1' + - $ref: '#/components/schemas/WithdrawIntent2' + TransactionRequestLite1: + title: Lite + allOf: + - $ref: '#/components/schemas/TransactionRequestBase1' + - type: object + properties: + unsignedTxs: + type: array + description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. + items: + $ref: '#/components/schemas/TransactionRequestUnsignedTransaction' + signatureShares: + type: array + description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. + items: + $ref: '#/components/schemas/SignatureShare' + commitmentShares: + type: array + description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. + items: + $ref: '#/components/schemas/CommitmentShare' + txHashes: + type: array + items: + type: string + description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. + required: + - txRequestId + - version + - latest + - walletId + - state + - date + - userId + - intent + TransactionRequestLite2: + title: TransactionRequestLite + allOf: + - type: object + properties: + intent: + allOf: + - $ref: '#/components/schemas/TransactionIntent1' + description: The intent of the transaction request + unsignedTxs: + type: array + items: + type: object + properties: + parsedTx: + $ref: '#/components/schemas/ParsedTx' + serializedTxHex: + type: string + description: The unsigned transaction as a hex string. + signableHex: + type: string + description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. + derivationPath: + type: string + description: A bip32 path. + coinSpecific: + allOf: + - type: object + properties: + nonceAddress: + type: string + stakingAddress: + type: string + - type: object + additionalProperties: {} + description: Coin specific information. + feeInfo: + type: object + properties: + fee: + oneOf: + - type: string + - type: number + feeString: + type: string + required: + - fee + - feeString + required: + - parsedTx + - serializedTxHex + - signableHex + description: Holds all unsigned transactions that will be used to fulfill the TxRequest for MPC wallets. + signatureShares: + type: array + items: + allOf: + - type: object + properties: + vssProof: + type: string + description: The VSS proof of the signature share + privateShareProof: + type: string + description: The private share proof + publicShare: + type: string + description: The public share + - $ref: '#/components/schemas/SignatureShareWithoutVssProof' + description: Only used for MPC coins. This is used to collect signature shares from and exchange them with the user. + commitmentShares: + type: array + items: + allOf: + - type: object + properties: + type: + type: string + enum: + - commitment + description: The type of the commitment share + required: + - type + - $ref: '#/components/schemas/BaseShare' + description: Only used for MPC coins on EdDSA curve. This is used to collect commitment shares from and exchange them with the user. + txHashes: + type: array + items: + type: string + description: The hashes of all transactions from the TxRequest that have been signed and are pending broadcast. + - $ref: '#/components/schemas/TransactionRequestBase' + TransactionRequestState: + title: TransactionRequestState + type: string + enum: + - pendingApproval + - canceled + - rejected + - initialized + - pendingDelivery + - delivered + - pendingUserSignature + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - signed + - failed + TransactionRequestState1: + type: string + enum: + - initialized + - pendingApproval + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - pendingUserSignature + - pendingDelivery + - signed + - delivered + - canceled + - rejected + - failed + TransactionRequestUnsignedTransaction: + type: object + properties: + serializedTxHex: + type: string + description: The unsigned transaction as a hex string. + signableHex: + type: string + description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. + derivationPath: + type: string + description: A bip32 path. + feeInfo: + type: object + properties: + feeString: + type: string + fee: + type: number + required: + - fee + - feeString + coinSpecific: + description: Coin specific information. + type: object + parsedTx: + description: The parsed transaction information. + type: object + properties: + minerFee: + type: string + spendAmount: + type: string + spendAmounts: + type: array + items: + type: object + properties: + coinName: + type: string + amountString: + type: string + payGoFee: + type: string + outputs: + type: array + items: + type: object + properties: + address: + type: string + isPayGo: + type: boolean + value: + type: number + wallet: + type: string + walletV1: + type: string + baseAddress: + type: string + enterprise: + type: string + valueString: + type: string + data: + type: string + change: + type: boolean + coinName: + type: string + required: + - address + - valueString + inputs: + type: array + items: + type: object + properties: + derivationIndex: + type: number + value: + type: number + address: + type: string + valueString: + type: string + chain: + type: number + index: + type: number + required: + - valueString + - value + type: + type: string + memo: + type: string + required: + - minerFee + - outputs + - inputs + required: + - serializedTxHex + - signableHex + TransactionResponse: + type: object + properties: + transfer: + $ref: '#/components/schemas/Transfer' + txid: + type: string + description: The transaction's unique identifier + tx: + type: string + description: The encoded transaction, either base64 for XLM or hex for other coins + status: + $ref: '#/components/schemas/TransferState' + TransactionState: + title: TransactionState + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + description: If supplied, only transaction request transaction state changes from the provided list will trigger notifications. If not provided, all transaction request transaction state changes will trigger notifications. + TransactionState1: + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + Transfer: + type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + id: + $ref: '#/components/schemas/Id' + wallet: + $ref: '#/components/schemas/Id' + enterprise: + $ref: '#/components/schemas/Id' + txid: + $ref: '#/components/schemas/TxId' + txidType: + type: string + description: The type of the transaction id + enum: + - transactionHash + - blockHash + height: + type: integer + description: The height of the block this Transfer was confirmed in (999999999 if unconfirmed) + heightId: + type: string + description: The unique height id of the block + date: + type: string + format: date-time + description: The date this Transfer was last updated + confirmations: + type: integer + description: The number of blocks that have been confirmed since this Transfer's block was confirmed + type: + type: string + description: Defines whether or not this Transfer was sent or received by the user + enum: + - send + - receive + value: + type: integer + description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) + valueString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The total value (in base units) sent by this Transfer represented as a String + intendedValueString: + description: A string representation (in base units) of the initial value for the transfer. This is present because when a transaction fails on chain, its value is mutated to be zero. This string is immutable and will always be the intended value of the initial transfer regardless of the final state of the transaction. + allOf: + - $ref: '#/components/schemas/IntegerString' + baseValue: + type: integer + description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. Instead, use baseValueWithoutFees. + baseValueString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. Instead, use baseValueWithoutFees. + baseValueWithoutFees: + type: integer + description: The value (in base units) sent by this transfer excluding network fees. + baseValueWithoutFeesString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The value (in base units) sent by this transfer, excluding network fees, represented as a string + feeString: + type: string + description: The Transfer's fee (in base units) represented as a String + payGoFee: + type: integer + description: The Transfer's BitGo fee (in base units) + payGoFeeString: + type: string + description: The Transfer's BitGo fee (in base units) represented as a String + usd: + type: number + description: The amount of USD of this Transfer (will be negative if it's a send) + usdRate: + type: number + description: The USD price at the time this Transfer was created + state: + $ref: '#/components/schemas/TransferState' + tags: + type: array + description: The tags to be used on this Transfer (used in Policies) + items: + $ref: '#/components/schemas/Id' + history: + type: array + description: An audit log of events that have happened to the Transfer during its lifecycle + items: + type: object + properties: + date: + type: string + format: date-time + description: The date of this history object + user: + $ref: '#/components/schemas/Id' + action: + type: string + enum: + - created + - signed + - unconfirmed + - confirmed + - approved + - commented + - removed + - failed + - rejected + comment: + type: string + description: If this history object is of action 'commented', this is the comment from the user + comment: + type: string + description: A comment from the user + vSize: + type: integer + description: The size of the transaction + coinSpecific: + type: object + description: Transfer fields specific to each coin type + sequenceId: + type: string + description: | + A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because the system only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. + entries: + type: array + description: An array of objects describing the change in address balances made as a result of this Transfer + items: + type: object + properties: + address: + type: string + description: An address affected by this Transfer + example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ + wallet: + allOf: + - $ref: '#/components/schemas/Id' + description: Only visible when the user has access to the wallet + value: + type: integer + description: The change (in base units) in the address's balance + valueString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: The change (in base units) in the address's balance represented as a String + isChange: + type: boolean + description: True if this address is a change address (only exists for UTXO coins) and if this is a 'sent' Transfer + isPayGo: + type: boolean + description: True if this address is the BitGo PayGo wallet + token: + type: string + description: If this is a token entry, the token's symbol + example: omg + label: + type: string + description: Names of addresses given by the user. + failed: + type: boolean + description: true if this entry is failed. + associatedNativeCoinAddress: + type: string + description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. + required: + - address + - valueString + usersNotified: + type: boolean + description: Whether BitGo already sent notifications to the users of the transfer wallet + label: + type: string + description: Address labels (if any) from entries concatenated. + replaces: + type: array + description: Transaction IDs that this transfer replaces. + items: + type: string + replacedBy: + type: array + description: Transaction IDs that replace this transfer. + items: + type: string + required: + - id + - coin + - wallet + - txid + - height + - date + - confirmations + - type + - valueString + - usd + - usdRate + - state + - tags + - history + - comment + - coinSpecific + Transfer1: + title: Transfer + type: object + properties: + baseValue: + type: number + description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. + baseValueString: + type: string + description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. + example: '2000000' + pattern: ^-?\d+$ + coin: + $ref: '#/components/schemas/CoinString' + comment: + nullable: true + type: string + description: A comment from the user + date: + type: string + description: The date this Transfer was last updated + format: date-time + title: ISO Date String + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + bitgoOrg: + type: string + enum: + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - BitGo Europe ApS + - Frankfurt DE Trust + - BitGo Singapore + - BitGo Korea + - BitGo Mena Fze + - BitGo Custody MENA FZE + - BitGo Sister Trust 1 + - BitGo Inc + entries: + type: array + items: + type: object + properties: + address: + type: string + description: An address affected by this Transfer + example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ + valueString: + type: string + description: The change (in base units) in the address' balance represented as a string + example: '20000' + pattern: '"^-?\d+$"' + isChange: + type: boolean + description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer + wallet: + type: string + description: Only visible when the user has access to the wallet + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + value: + type: number + description: The change (in base units) in the address' balance + nftSymbol: + type: string + type: + type: string + enum: + - flushForwarderTokens + - walletFunding + - walletInitialization + - addressInitialization + - importedOutput + isPayGo: + type: boolean + description: True if this address is the BitGo PayGo wallet + token: + type: string + description: If this is a token entry, the token's symbol + example: omg + failed: + type: boolean + description: True if this entry is failed + associatedNativeCoinAddress: + type: string + description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. + isFee: + type: boolean + description: Indicates if this entry is a fee + isInternal: + type: boolean + description: Indicates if this entry is internal + memo: + type: string + description: Memo associated with this entry + rewardAddress: + type: string + description: Reward address associated with this entry + subtype: + type: string + description: Subtype of this entry + backingFeeString: + type: string + description: Backing fee represented as a string + nftId: + type: string + description: NFT ID associated with this entry + tokenContractHash: + type: string + description: Token contract hash associated with this entry + isReward: + type: boolean + description: Indicates if this entry is a reward + required: + - address + description: An array of objects describing the change in address balances made as a result of this Transfer + history: + type: array + items: + type: object + properties: + action: + $ref: '#/components/schemas/TransferAction' + comment: + nullable: true + type: string + description: If this history object is of action "commented", this is the comment from the user + date: + type: string + description: The date of this history object + format: date-time + title: ISO Date String + transferId: + type: string + description: The ID of the transfer that this history object is associated with + txid: + type: string + description: The transaction ID of the transaction that this history object is associated with + user: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - action + - date + description: An audit log of events that have happened to the Transfer during its lifecycle + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + pendingApproval: + type: string + state: + $ref: '#/components/schemas/TransferState1' + stakingParams: + type: object + properties: + actionType: + type: string + coreDao: + type: object + properties: + amount: + type: string + format: number + expiration: + type: string + format: date-time + title: ISO Date String + fee: + type: number + rewardAddress: + type: string + validator: + type: string + version: + type: number + required: + - amount + - expiration + - fee + - rewardAddress + - validator + - version + requestId: + type: string + source: + type: string + enum: + - external + - internal + validator: + type: string + required: + - actionType + - requestId + txid: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + type: + allOf: + - $ref: '#/components/schemas/TransferType' + description: Defines whether or not this Transfer was sent or received by the user + usd: + type: number + description: The amount of USD of this Transfer (will be negative if it's a send) + usdRate: + type: number + description: The USD rate at the time this Transfer was created + value: + type: number + description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) + valueString: + type: string + description: The total value (in base units) sent by this Transfer represented as a String + example: '2000000' + pattern: ^-?\d+$ + wallet: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + walletType: + type: string + enum: + - backing + - cold + - custodial + - custodialPaired + - hot + - trading + description: Wallet type + replaces: + type: array + items: + type: string + description: Transaction IDs that this transfer replaces. + replacedBy: + type: array + items: + type: string + description: Transaction IDs that replace this transfer. + required: + - coin + - date + - entries + - history + - id + - state + - type + - valueString + - wallet + TransferAction: + title: TransferAction + type: string + enum: + - created + - approved + - rejected + - signed + - unconfirmed + - confirmed + - removed + - commented + - failed + - regenerated + - replaced + - replacing + - abandoned + TransferAmountCondition: + title: Amount + type: object + description: Enables policy rules to trigger based on withdrawal amount. The amount is by asset, such as BTC or USD. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - transfer.amount + example: transfer.amount + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Spending limit + description: + type: string + description: A description for the condition which can be shown to an end user. + example: Allows creating a condition based on the Spending limit + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of Parameters to control how the condition behaves. + items: + anyOf: + - $ref: '#/components/schemas/OperatorConditionParameter' + - $ref: '#/components/schemas/AmountConditionParameter' + - $ref: '#/components/schemas/CoinConditionParameter' + TransferAmountConditionParameters: + type: object + description: Data required to evaluate the condition. + required: + - operator + - amount + - coin + properties: + operator: + type: string + enum: + - '>' + - '>=' + - < + - <= + description: The comparison operator to use when comparing the transfer amount with the given limit + example: '>' + amount: + type: string + description: The transfer amount is compared with this limit. + example: '100000000' + coin: + type: string + description: This condition only applies to transfers of this currency (USD applies to all transfers). + example: btc + TransferAmountConditionRequest: + title: Amount + type: object + description: Transfer-amount condition. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - transfer.amount + example: transfer.amount + parameters: + $ref: '#/components/schemas/TransferAmountConditionParameters' + operator: + $ref: '#/components/schemas/OperatorType' + TransferDestinationTypeCondition: + title: Destination + type: object + description: Enables policy rules to trigger based on destination. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - transfer.destination.type + example: transfer.destination.type + label: + type: string + description: A label for the condition that you can display to users. + example: Destination + description: + type: string + description: A description for the condition that you can display to an end user. + example: Allows creating a condition based on the type of the funds destination + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of Parameters to control how the condition behaves. + items: + anyOf: + - $ref: '#/components/schemas/DestinationTypeTypeConditionParameter' + - $ref: '#/components/schemas/DestinationTypeCoinConditionParameter' + TransferDestinationTypeConditionParameters: + type: object + description: Data required to evaluate the transfer destination condition. + required: + - type + properties: + type: + type: string + enum: + - whitelistedAddress + - nonWhitelistedAddress + description: The type of destination this condition will match. + example: whitelistedAddress + coin: + type: string + description: The asset this condition applies to. + example: btc + TransferDestinationTypeConditionRequest: + title: Destination + type: object + description: Destination condition. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - transfer.destination.type + example: transfer.destination.type + parameters: + $ref: '#/components/schemas/TransferDestinationTypeConditionParameters' + operator: + $ref: '#/components/schemas/OperatorType' + TransferInitiatorsCondition: + title: Initiator + type: object + description: Enables you to create a condition based on transaction initiator. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - transfer.initiators + example: transfer.initiators + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Transfer Initiators + description: + type: string + description: A description for the condition which can be shown to an end user. + example: Enables creating a condition based on if the transfer initiator is a listed user. + status: + type: string + description: Identifies if the condition is currently active and usable. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of parameters that control how the condition behaves. + items: + anyOf: + - $ref: '#/components/schemas/TransferInitiatorsUserIdsConditionParameter' + TransferInitiatorsConditionParameters: + type: object + description: Data required to evaluate the transfer initiator condition. + required: + - userIds + properties: + userIds: + type: array + items: + type: string + description: A list of user IDs to validate for the transfer initiator. + example: '[659bdac013822ba1e8c60d8c497197c4, 63ebe51c12381c0007415e4f50bc95ce]' + TransferInitiatorsConditionRequest: + title: Initiator + type: object + description: Initiator condition. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - transfer.initiators + example: transfer.initiators + parameters: + $ref: '#/components/schemas/TransferInitiatorsConditionParameters' + operator: + $ref: '#/components/schemas/OperatorType' + TransferInitiatorsUserIdsConditionParameter: + type: object + description: The list of user ids the transfer initiator condition will checker against for triggering. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - userIds + example: userIds + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: User Ids + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The list of user ids to check the transfer initiator against. + type: + type: string + description: The type of acceptable values for this condition parameter, a valid HMAC BitGo ID. + enum: + - BITGO_USER_ID + example: BITGO_USER_ID + required: + type: string + description: ALWAYS if the parameter is required otherwise OPTIONAL. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'true' + TransferState: + type: string + example: confirmed + enum: + - confirmed + - failed + - initialized + - pendingApproval + - rejected + - removed + - replaced + - signed + - unconfirmed + TransferState1: + title: TransferState + type: string + enum: + - initialized + - pendingApproval + - rejected + - signed + - unconfirmed + - confirmed + - removed + - failed + - replaced + - deleted + TransferTokenIntent: + title: TransferTokenIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - transferToken + recipients: + type: array + items: + allOf: + - type: object + properties: + tokenData: + $ref: '#/components/schemas/TokenData' + required: + - tokenData + - $ref: '#/components/schemas/RecipientEntry' + required: + - intentType + - recipients + - $ref: '#/components/schemas/BaseIntent' + TransferTokenIntent1: + title: Transfer Token + allOf: + - $ref: '#/components/schemas/BaseIntent2' + - type: object + properties: + intentType: + type: string + enum: + - transferToken + recipients: + type: array + items: + $ref: '#/components/schemas/RecipientEntry1' + TransferType: + title: TransferType + type: string + enum: + - send + - receive + TransferVelocityLimitCondition: + title: Velocity limit + type: object + description: Enables policy rules to trigger based on how much withdraws over a period of time from a specific wallet or from all wallets. The amount is by asset, such as BTC or USD. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - transfer.velocity.limit + example: transfer.velocity.limit + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Spending Limit + description: + type: string + description: A description for the condition which can be shown to an end user. + example: Allows creating a condition based on the amount of coin or USD that can be spent over a period of time + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of Parameters to control how the condition behaves. + items: + anyOf: + - $ref: '#/components/schemas/VelocityAmountConditionParameter' + - $ref: '#/components/schemas/TimeWindowConditionParameter' + - $ref: '#/components/schemas/VelocityCoinConditionParameter' + - $ref: '#/components/schemas/ScopeConditionParameter' + TransferVelocityLimitConditionParameters: + type: object + description: Data required to evaluate the transfer velocity limit condition. + required: + - scope + - timeWindow + - amount + - coin + properties: + scope: + type: string + enum: + - wallet + - enterprise + description: Entities to include in the velocity calculation. + example: wallet + timeWindow: + type: string + description: A window of time in which a set of amount can be spent. + example: '60' + amount: + type: string + description: The transfer amount is compared with this limit. + example: '100000000' + coin: + type: string + description: The unit that the amount is denoted in, in either crypto or a fiat currency. + example: ETH + TransferVelocityLimitConditionRequest: + title: Velocity limit + type: object + description: Velocity-limit condition. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - transfer.velocity.limit + example: transfer.velocity.limit + parameters: + $ref: '#/components/schemas/TransferVelocityLimitConditionParameters' + operator: + $ref: '#/components/schemas/OperatorType' + TransferWebhookCoinConditionParameter: + type: object + description: The asset to check the transfer against to determine if a webhook payload should be sent. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - coin + example: coin + label: + type: string + description: A description for the condition parameter that you can display to an end user. + example: Asset + description: + type: string + description: The asset this condition applies to. + example: The asset this condition applies to + type: + type: string + description: The type of acceptable values for this condition parameter. Must be a valid coin ticker string. + enum: + - COIN + example: COIN + required: + type: string + description: ALWAYS if the parameter is required otherwise OPTIONAL. + enum: + - OPTIONAL + example: OPTIONAL + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + TransferWebhookCondition: + type: object + description: Enables you to create a condition based on if the transfer should send a payload to a webhook URL and receive a status code. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - transfer.webhook + example: transfer.webhook + label: + type: string + description: A label for the condition that you can display to an end user. + example: Transfer Webhook + description: + type: string + description: A description for the Condition which can be shown to an end user. + example: Enables creating a condition based on if the transfer should send a payload to a webhook URL and receive a status code. + status: + type: string + description: Identifies if the condition is currently active and usable. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of parameters that control how the condition behaves. + items: + anyOf: + - $ref: '#/components/schemas/TransferWebhookUrlConditionParameter' + - $ref: '#/components/schemas/TransferWebhookCoinConditionParameter' + TransferWebhookConditionParameters: + type: object + description: Data required to evaluate the transfer webhook condition. + required: + - webhookUrl + properties: + webhookUrl: + type: string + description: The webhook url to post transfer payload to. + example: https://webhook.site/91561f7b-4141-4ee2-8336-e10650cd000f + coin: + type: string + description: The asset this condition applies to. + example: btc + TransferWebhookConditionRequest: + title: Webhook + type: object + description: Transfer webhook condition. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - transfer.webhook + example: transfer.webhook + parameters: + $ref: '#/components/schemas/TransferWebhookConditionParameters' + TransferWebhookUrlConditionParameter: + type: object + description: The webhook URL the transfer sends a payload to. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - webhookUrl + example: webhookUrl + label: + type: string + description: A description for the condition parameter that you can display to an end user. + example: Webhook URL + description: + type: string + description: The webhook URL to post the transfer payload to. + example: The webhook URL to post the transfer payload to + type: + type: string + description: The type of acceptable values for this condition parameter. Must be a valid webhook URL string. + enum: + - FREE_FORM + example: FREE_FORM + required: + type: string + description: ALWAYS if the parameter is required otherwise OPTIONAL. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + TransfersResponse: + type: object + properties: + transfers: + type: array + items: + $ref: '#/components/schemas/AnnotatedTransferWithInputsOutputs' + coin: + $ref: '#/components/schemas/Coin' + nextBatchPrevId: + $ref: '#/components/schemas/NextBatchPrevId' + required: + - transfers + - coin + TrimmedBalance: + title: TrimmedBalance + type: object + properties: + balanceString: + type: string + description: String representation of the balance. Guaranteed to not lose precision. + example: '500000' + confirmedBalanceString: + type: string + description: The total balance of confirmed transactions for the address (in the chain's base unit). Guaranteed to not lose precision. + example: '400000' + spendableBalanceString: + type: string + description: The total balance of the address (in the chain's base unit) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. + example: '40000' + updated: + oneOf: + - type: string + format: date-time + title: ISO Date String + - type: string + format: date + title: Date String + description: The last time a transaction affected the balance of this address + balance: + type: number + example: 50000 + lockedBalanceString: + type: string + reservedBalanceString: + type: string + totalReceived: + type: number + description: The total amount received on this address (in the chain's base unit) + totalSent: + type: number + description: The total amount sent from this address (in the chain's base unit) + transferCount: + type: number + tokens: + type: object + additionalProperties: {} + nfts: + type: object + additionalProperties: {} + unsupportedNfts: + type: object + additionalProperties: {} + type: {} + metadata: {} + required: + - balanceString + - confirmedBalanceString + - spendableBalanceString + TronAddress: + title: Tron Address + type: object + properties: + rootPub: + type: string + required: + - rootPub + TronWallet: + title: Tron Wallet + type: object + properties: + rootAddress: + type: string + rootPub: + type: string + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + minimumFunding: + type: number + required: + - rootAddress + - rootPub + - pendingChainInitialization + - creationFailure + - minimumFunding + TrustedTokenState: + title: TrustedTokenState + type: string + enum: + - pending + - active + Trustline: + type: object + properties: + token: + type: string + description: One of the supported coin types for Stellar tokens listed in [Coin-specific-implementation](#tag/Coin-specific-implementation) + example: txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L + action: + enum: + - add + - remove + limit: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: String representation of the amount to limit in base units (stroops) + TssConfig: + title: TssConfig + type: object + properties: + enterpriseId: + type: string + description: The enterprise ID + example: 5d1a61a5c30ae10025f9b2b3 + ecdsa: + $ref: '#/components/schemas/EcdsaConfig' + required: + - enterpriseId + - ecdsa + TssConfigPartyChallenge: + title: TssConfigPartyChallenge + allOf: + - type: object + properties: + verifiers: + $ref: '#/components/schemas/ChallengeVerifiers' + paillierBlumProof: + $ref: '#/components/schemas/PaillierBlumProof' + ntildeProof: + $ref: '#/components/schemas/NtildeProof' + required: + - verifiers + - $ref: '#/components/schemas/Challenge' + TssSettings: + title: TssSettings + type: object + properties: + coinSettings: + type: object + additionalProperties: + type: object + properties: + walletCreationSettings: + $ref: '#/components/schemas/TssWalletCreationSettings' + canMigrateToMPCv2: + type: boolean + required: + - walletCreationSettings + required: + - coinSettings + TssWalletCreationSettings: + title: TssWalletCreationSettings + type: object + properties: + multiSigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion' + custodialMultiSigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion' + coldMultiSigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion' + defaultWalletVersion: + type: number + TxAddress: + type: object + properties: + address: + type: string + options: + type: object + required: + - address + TxBase64: + type: string + description: Serialized transaction base64 (applies to XLM only) + example: AAAAAGRnXg19FteG/7zPd+jDC7LDvRlzgfFC+JrPhRep0kYiAAAAZAB/4cUAAAACAAAAAAAAAAAAAAABAAAAAQAAAABkZ14NfRbXhv+8z3fowwuyw70Zc4HxQviaz4UXqdJGIgAAAAEAAAAAmljT/+FedddnAHwo95dOC4RNy6eVLSehaJY34b9GxuYAAAAAAAAAAAehIAAAAAAAAAAAAUrgwAkAAABAOExcvVJIUJv9HuVfbV0y7lRPRARv4wDtcdhHG7QN40h5wQ2uwPF52OGQ8KY+66a1A/8lNKB75sgj2xj44s8lDQ== + TxHex: + type: string + description: Serialized transaction hex + example: 01000000000101d58f82d996dd872012675adadf4606734906b25a413f6e2ee535c0c10aef96020000000000ffffffff028de888000000000017a914c91aa24f65827eecec775037d886f2952b73cbe48740420f000000000017a9149304d18497b9bfe9532778a0f06d9fff3b3befaf870500473044022023d7210ba6d8bbd7a28b8af226f40f7235caab79156f93f9c9969fc459ea7f73022050fbdca788fba3de686b66b3501853695ff9d6f375867470207d233b099576e001000069522103d4788cda52f91c1f6c82eb91491ca76108c9c5f0839bc4f02eccc55fedb3311c210391bcef9dcc89570a79ba3c7514e65cd48e766a8868eca2769fa9242fdcc796662102ef3c5ebac4b54df70dea1bb2655126368be10ca0462382fcb730e55cddd2dd6a53aec8b11400 + TxId: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + TxUsdThresholdRuleCondition: + title: TxUsdThresholdRuleCondition + type: object + properties: + lowerBound: + type: string + upperBound: + type: string + required: + - lowerBound + U2FDetails: + title: U2FDetails + type: object + properties: + certificate: + type: string + keyHandle: + type: string + publicKey: + type: string + UnStakingRequestPOSTBody: + type: object + properties: + clientId: + description: Optional user generated identifier to detect duplicated requests. + type: string + type: + description: Staking Request type = 'UNSTAKE'. + type: string + example: UNSTAKE + required: + - type + UnStakingSpendableAttributes: + type: object + properties: + max: + description: The maximum spendable amount. + type: string + min: + description: The minimum spendable amount. + type: string + fee: + description: The blockchain fee to submit the transactions needed to unstake. + type: string + multipleDelegations: + description: True, if more than one active staking delegation exists for a wallet. + type: boolean + Unlock: + title: Unlock + type: object + properties: + expires: + type: string + format: date-time + title: ISO Date String + time: + type: string + format: date-time + title: ISO Date String + txCount: + type: number + txValue: + type: number + txValueLimit: + type: number + Unlock1: + type: object + properties: + time: + type: string + format: date-time + expires: + type: string + format: date-time + txCount: + type: integer + txValue: + type: integer + txValueLimit: + type: number + spendingLimits: + $ref: '#/components/schemas/SpendingLimits' + UnlockRequest: + type: object + properties: + duration: + type: integer + minimum: 1 + maximum: 3600 + default: 600 + description: Number of seconds that the session will stay unlocked + otp: + $ref: '#/components/schemas/Otp' + UnsignedTransaction: + title: UnsignedTransaction + type: object + properties: + parsedTx: + $ref: '#/components/schemas/ParsedTx' + serializedTxHex: + type: string + description: The unsigned transaction as a hex string. + signableHex: + type: string + description: The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string. + derivationPath: + type: string + description: A bip32 path. + coinSpecific: + allOf: + - type: object + properties: + nonceAddress: + type: string + stakingAddress: + type: string + - type: object + additionalProperties: {} + description: Coin specific information. + feeInfo: + type: object + properties: + fee: + oneOf: + - type: string + - type: number + feeString: + type: string + required: + - fee + - feeString + required: + - parsedTx + - serializedTxHex + - signableHex + Unspent: + type: object + properties: + id: + $ref: '#/components/schemas/UnspentId' + address: + type: string + description: The address of this unspent + example: 2MsKxhhkDo5WaLaYRGA9Cr3iSQPyXsu6Fi2 + value: + type: integer + valueString: + $ref: '#/components/schemas/IntegerString' + blockHeight: + type: integer + description: The block this Unspent was created in + date: + type: string + format: date-time + description: The date this unspent was created + example: '2017-03-25T23:01:40.248Z' + coinbase: + type: boolean + description: True if this unspent came from the coinbase transaction + wallet: + $ref: '#/components/schemas/Id' + fromWallet: + $ref: '#/components/schemas/Id' + chain: + type: integer + description: The type of this unspent's address (P2SH, P2WSH, etc...) + example: 0 + index: + type: integer + description: A monotonic counter used when creating new addresses + redeemScript: + type: string + description: The Script program used to cryptographically verify spending this unspent + example: 522102f1e990044d2a8be43d5b500bbdcb36277b97a4b07e01c5101ae8ec1568bfd6532103dab7dc82f2fc8c28200c1bdeca9c4cf181e0ca257395829cbd599395048afb57210205422e711827d8356f2fb75334d863941dd7eb45bd5788fa231dc5fa755135b653ae + witnessScript: + type: string + description: The segwit Script program used to cryptographically verify spending this unspent + example: 52210351311cd81144e6cbdba561d24dfc22644cb02d053339d4beace03231b3be4f372103a8d0c1a375b9ee1a2411f9f8e18373be7f228b18260f63bbfca48809170ed08b2103c3bd8bd074657bbe9ee6714b31a4a54b6fd5b5cda0e1030122f9bf46b5034f6b53ae + isSegwit: + type: boolean + UnspentId: + type: string + description: The id of the unspent in the form : + example: 003f688cc349f1fca8ac5ffa21671ca911b6ef351085c60733ed8c2ebf162cb8:2 + UnstakeIntent: + title: UnstakeIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - unstake + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + UnstakeIntent2: + title: Generic Unstake + allOf: + - $ref: '#/components/schemas/BaseStakeIntent2' + - type: object + properties: + intentType: + type: string + enum: + - unstake + required: + - intentType + UnstakingDisclaimerAttributes: + type: object + properties: + info: + description: Disclaimer info + type: string + transactionsNeeded: + description: The number of transactions needed for an unstaking request. + type: integer + UnstakingPermissionAttributes: + type: object + properties: + enabled: + description: If the wallet has unstaking request submission permission. + type: string + disabledReason: + description: The reason that unstaking request submission has been disabled. + type: string + UnsupportedTokenRecipientEntryItem: + title: UnsupportedTokenRecipientEntryItem + type: object + properties: + tokenContractAddress: + $ref: '#/components/schemas/optionalString' + decimals: + $ref: '#/components/schemas/optionalNumber' + UpdatableConnectionStatus: + title: UpdatableConnectionStatus + type: string + enum: + - PENDING_DEACTIVATION + UpdateBankAccountRequest: + type: object + description: Updates some fields on a bank account. The server only allows updating of bank accounts that have their verificationState set to 'rejected' or 'approved'. Does not allow updating of critical fields like accountNumber, enterpriseId, id, routingNumber, swiftCode. + properties: + address1: + type: string + example: 2390 El Camino Real + address2: + type: string + example: Palo Alto, CA 94306 + address3: + type: string + example: '' + name: + type: string + example: America California Bank + owner: + type: object + description: Bank account owner + properties: + name: + type: string + example: Donald E. Knuth + address1: + type: string + example: Computer Science Department + address2: + type: string + example: Stanford University + address3: + type: string + example: Stanford, CA 94305-9045 + shortCountryCode: + $ref: '#/components/schemas/ShortCountryCode' + address: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + ownerName: + type: string + example: Donald E. Knuth + ownerAddress: + type: string + example: 2390 El Camino Real, Palo Alto, CA 94306 + type: + type: string + enum: + - checking + - savings + furtherCreditTo: + type: string + example: Donald E. Knuth + intermediaryBankId: + type: string + example: 5c645791cf8eb19304292a8e3365fee3 + intermediaryBankName: + type: string + example: Bank of America + UpdateBitgoChallenge: + title: UpdateBitgoChallenge + type: object + properties: + verifiers: + type: object + properties: + adminSignature: + type: string + description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. + minLength: 1 + required: + - adminSignature + required: + - verifiers + UpdateCommentRequest: + type: object + properties: + comment: + type: string + description: The new comment for the transfer. + UpdateEnterprise: + type: object + properties: + legalIdentifiers: + $ref: '#/components/schemas/PlatformLegalIdentifiers' + approvalsRequired: + type: integer + minimum: 1 + description: How many Enterprise Admins are required for action to fire + distributedCustody: + $ref: '#/components/schemas/DistributedCustodyUpdateEnterprise' + usersViewAllWallets: + type: boolean + description: Allow users to view all wallets + UpdateEnterpriseChallenge: + title: UpdateEnterpriseChallenge + type: object + properties: + ntilde: + type: string + description: Range proof challenge value. + minLength: 1 + h1: + type: string + description: Range proof challenge value. + minLength: 1 + h2: + type: string + description: Range proof challenge value. + minLength: 1 + verifiers: + type: object + properties: + adminSignature: + type: string + description: The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge. + minLength: 1 + required: + - adminSignature + paillierBlumProof: + allOf: + - $ref: '#/components/schemas/PaillierBlumProof' + description: The paillierBlumProof value is only required when creating the initial config. + ntildeProof: + allOf: + - $ref: '#/components/schemas/NtildeProof' + description: The ntildeProof value is only required when creating the initial config. + required: + - ntilde + - h1 + - h2 + - verifiers + UpdatePinnedWalletsResponse: + title: UpdatePinnedWalletsResponse + type: object + properties: + pinnedWallets: + $ref: '#/components/schemas/PinnedWallets' + required: + - pinnedWallets + UpdateRemovePolicyRule: + type: object + properties: + coin: + allOf: + - $ref: '#/components/schemas/Coin' + description: | + Policy rules of types 'allTx', 'coinAddressWhitelist', 'coinAddressBlacklist' and 'webhook' are recommended to + be used without setting a coin so that they will apply to all coins and tokens that could be in a wallet. If + your policy rule is of one of these types and has a coin set on it, you also need to set the coin in the body. + This is necessary because the id alone may not be sufficient for finding the correct rule to update or delete. + id: + type: string + description: The id of the rule. The combination of id and coin must be unique among rules in the policy. + type: + $ref: '#/components/schemas/PolicyRuleTriggers' + condition: + $ref: '#/components/schemas/PolicyRuleUpdateConditions' + action: + $ref: '#/components/schemas/PolicyRuleActions' + required: + - id + - type + - action + UpdateSendLabel: + type: object + properties: + label: + type: string + maxLength: 250 + description: A human-readable mapping to an address + required: + - label + UpdateWallet: + type: object + properties: + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + buildDefaults: + $ref: '#/components/schemas/WalletBuildDefaults' + disableTransactionNotifications: + type: boolean + label: + $ref: '#/components/schemas/WalletLabel' + customChangeKeySignatures: + $ref: '#/components/schemas/CustomChangeKeySignatures' + coinSpecific: + $ref: '#/components/schemas/WalletUpdateCoinSpecific' + UpdateWalletShareResponse: + title: UpdateWalletShareResponse + type: object + properties: + state: + allOf: + - $ref: '#/components/schemas/WalletShareState' + description: New state of the wallet share after update + changed: + type: boolean + description: Whether the wallet share was changed + required: + - state + - changed + User: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + isActive: + type: boolean + isFrozen: + type: boolean + freezeReason: + type: string + example: Frozen due to suspicious activity + name: + $ref: '#/components/schemas/Name' + username: + $ref: '#/components/schemas/Email' + email: + type: object + properties: + email: + $ref: '#/components/schemas/Email' + verified: + type: boolean + example: true + phone: + type: object + properties: + phone: + type: string + example: 408-718-6885 + verified: + type: boolean + example: true + country: + type: string + example: USA + state: + type: string + example: New York + User2: + title: User + allOf: + - type: object + properties: + agreements: + allOf: + - $ref: '#/components/schemas/Agreements' + description: The agreements the user has accepted + allowedCoins: + type: array + items: + type: string + description: The coins the user is allowed to use + bitgoEmployee: + type: boolean + description: Whether the user is a BitGo employee + currency: + allOf: + - $ref: '#/components/schemas/Currency1' + description: The user's preferred currency + disableReset2FA: + type: boolean + description: Whether the user has disabled 2FA reset + organizations: + type: array + items: + type: object + properties: + permissions: + type: array + items: + type: string + enum: + - admin + role: + $ref: '#/components/schemas/OrganizationRole' + id: + type: string + name: + type: string + required: + - permissions + - role + description: The organizations the user is a member of + featureFlags: + type: array + items: + type: string + description: Any feature flags the user has enabled + forceResetPassword: + type: boolean + description: Whether the user has forced a password reset + identity: + allOf: + - $ref: '#/components/schemas/Identity' + description: The user's identity information + otpDevices: + type: array + items: + type: object + properties: + createDate: + type: string + format: date-time + title: ISO Date String + id: + type: string + backupPhone: + type: string + label: + type: string + lastValidatedDate: + type: string + format: date-time + title: ISO Date String + phone: + type: string + registeredKey: + $ref: '#/components/schemas/U2FDetails' + type: + $ref: '#/components/schemas/OtpType' + verified: + type: boolean + scopes: + type: array + items: + type: string + enum: + - wallet_hot + extensions: + type: object + additionalProperties: + type: boolean + prfSalt: + type: string + isPasskey: + type: boolean + required: + - createDate + - id + description: The user's devices that can be used for OTP authentication + phone: + allOf: + - $ref: '#/components/schemas/Phone' + description: The user's phone number + timezone: + type: string + description: The user's timezone + apps: {} + country: + type: string + description: The country of the user + example: USA + ecdhKeychain: + nullable: true + type: string + description: The user's ECDH keychain + isActive: + type: boolean + description: Whether the user is active + isFrozen: + type: boolean + description: Whether the user is frozen + freezeReason: + type: string + description: The reason the user is frozen if they are frozen + example: Frozen due to suspicious activity + lastLogin: + type: string + description: The last login time of the user + format: date-time + title: ISO Date String + locale: + type: string + description: The user's locale + pgpKey: + type: string + description: The user's PGP key + rateLimits: {} + referrer: + allOf: + - $ref: '#/components/schemas/Referrer' + description: The referrer of the user + signupDomain: + type: string + description: The signup domain of the user + state: + type: string + description: The state of the user + example: New York + sourceVerificationRequired: + type: boolean + description: Whether source verification is required for the user + sourceVerificationRequiredForReadOnlyAccess: + type: boolean + description: Whether source verification is required for read-only access + recoveryCodeSet: + type: object + description: The recovery code set for the user + properties: + id: + type: string + description: The ID of the recovery code set + allCodesUsed: + type: boolean + description: Whether all recovery codes have been used + required: + - id + - allCodesUsed + createTime: + type: string + required: + - agreements + - allowedCoins + - bitgoEmployee + - currency + - disableReset2FA + - organizations + - featureFlags + - forceResetPassword + - identity + - otpDevices + - phone + - timezone + - $ref: '#/components/schemas/UserRequiredFields' + UserKycState: + type: string + enum: + - approved + - flagged + - flagged_retry_allowed + - inreview + - pending + - rejected + - unverified + UserKycState1: + title: UserKycState + type: string + enum: + - unverified + - pending + - approved + - rejected + - qrscanned + - inreview + - flagged + - flagged_retry_allowed + UserRequiredFields: + title: UserRequiredFields + type: object + description: Fields that will always be populated in accordance with the defined codec If you find other fields that will provably always be populated on a given user (even for legacy users created long ago), that field can be moved to UserRequiredFields + properties: + id: + type: string + description: The unique identifier for the user + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + username: + type: string + description: The username of the user + example: user@email.com + format: email + name: + allOf: + - $ref: '#/components/schemas/Name1' + description: The name of the user + enterprises: + type: array + items: + type: object + properties: + permissions: + type: array + items: + type: string + id: + type: string + beneficialOwner: + type: boolean + primaryContact: + type: string + kycState: + $ref: '#/components/schemas/KycState' + bitgoOrg: + type: string + name: + type: string + required: + - permissions + description: The enterprise(s) the user is a member of + email: + allOf: + - $ref: '#/components/schemas/Email1' + description: The email address of the user + required: + - id + - username + - name + - enterprises + - email + UserSharingKey: + type: object + required: + - email + properties: + email: + $ref: '#/components/schemas/Email' + UtxoAddress: + title: Utxo Address + type: object + properties: + redeemScript: + type: string + witnessScript: + type: string + UtxoFeeInfo: + title: UTXO + type: object + description: feeInfo (UTXO) + properties: + size: + type: integer + description: Estimated size of the transaction in bytes + example: 776 + fee: + type: integer + description: Estimated fee in base unit for the transaction + example: 38800 + feeRate: + allOf: + - $ref: '#/components/schemas/IntegerOrString' + - example: 10000 + description: | + Custom minimum fee rate in a coin's base unit per kilobyte (or virtual kilobyte)--for example, satoshis per kvByte or microAlgos per kByte. If the applied 'feeRate' does not meet a coin's required minimum transaction fee amount, the minimum is still applied (for example, 1000 sat/kvByte or a flat 1000 microAlgos). + payGoFee: + type: integer + description: BitGo fee of the transaction (in base units) + example: 0 + payGoFeeString: + type: integer + description: BitGo fee of the transaction (in base units) represented as a String + example: '0' + UtxoTransactionFormat: + type: string + description: |- + [UTXO only] Format of the returned transaction hex serialization. + 'legacy' for serialized transaction in custom bitcoinjs-lib format. 'psbt' for BIP174 serialized transaction + enum: + - legacy + - psbt + - psbt-lite + default: legacy + example: psbt + UtxoTxInfo: + title: UTXO + type: object + description: txInfo (UTXO) + properties: + changeAddresses: + type: array + items: + $ref: '#/components/schemas/AddressString3' + nOutputs: + type: integer + description: Number of outputs + example: 2 + nP2SHInputs: + type: integer + example: 0 + nSegwitInputs: + type: integer + example: 1 + unspents: + type: array + items: + $ref: '#/components/schemas/Unspent' + walletAddressDetails: + $ref: '#/components/schemas/Address2' + UtxoWallet: + title: Utxo Wallet + type: object + properties: + customChangeWalletId: + type: string + customChangeAddressType: + type: string + sendQueueInferredScriptTypes: + type: array + items: + type: string + V1AllocationGetOutput: + title: V1AllocationGetOutput + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + reason: + nullable: true + type: string + minLength: 1 + status: + $ref: '#/components/schemas/AllocationStatus' + type: + $ref: '#/components/schemas/AllocationType' + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - reason + - status + - type + V1AllocationGetPayload: + title: V1AllocationGetPayload + type: object + properties: + allocation: + $ref: '#/components/schemas/V1AllocationGetOutput' + required: + - allocation + V1AllocationsClearedPostPayload: + title: V1AllocationsClearedPostPayload + type: object + properties: + allocation: + $ref: '#/components/schemas/V1ClearedAllocation' + required: + - allocation + V1AllocationsGetPayload: + title: V1AllocationsGetPayload + type: object + properties: + allocations: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + reason: + nullable: true + type: string + minLength: 1 + status: + $ref: '#/components/schemas/AllocationStatus' + type: + $ref: '#/components/schemas/AllocationType' + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - reason + - status + - type + required: + - allocations + V1AllocationsReleasedPayload: + title: V1AllocationsReleasedPayload + type: object + properties: + allocation: + $ref: '#/components/schemas/V1ReleasedAllocation' + required: + - allocation + V1AllocationsReleasedWithErrorPostPayload: + title: V1AllocationsReleasedWithErrorPostPayload + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/V1AllocationsReleasedPayload' + - $ref: '#/components/schemas/V1ErrorPayload' + V1ClearedAllocation: + title: V1ClearedAllocation + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + enum: + - false + status: + type: string + enum: + - cleared + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - status + V1ClientBalancesGetPayload: + title: V1ClientBalancesGetPayload + type: object + properties: + clientId: + type: string + title: uuid + balances: + $ref: '#/components/schemas/AccountBalanceRecord' + networkBalances: + $ref: '#/components/schemas/NetworkAccountBalanceRecordForClient' + required: + - clientId + - balances + - networkBalances + V1ClientGetSettlementOkPayload: + title: V1ClientGetSettlementOkPayload + type: object + properties: + settlement: + $ref: '#/components/schemas/V1SettlementOutput' + settlementTransfers: + $ref: '#/components/schemas/MaskedV1SettlementTransfersOutput' + required: + - settlement + - settlementTransfers + V1ClientGetSettlementTransfersOkPayload: + title: V1ClientGetSettlementTransfersOkPayload + type: object + properties: + settlementTransfers: + $ref: '#/components/schemas/MaskedV1SettlementTransfersOutput' + required: + - settlementTransfers + V1ClientsOutput: + title: V1ClientsOutput + type: object + properties: + id: + type: string + title: uuid + enterpriseId: + type: string + minLength: 1 + trustOrg: + type: string + walletId: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + balanceAlertLastSent: + type: string + required: + - id + - enterpriseId + - trustOrg + - walletId + - createdAt + - updatedAt + V1ClientsPostOkPayload: + title: V1ClientsPostOkPayload + type: object + properties: + client: + $ref: '#/components/schemas/V1ClientsOutput' + required: + - client + V1CompleteSettlementOutput: + title: V1CompleteSettlementOutput + type: object + properties: + id: + type: string + title: uuid + partnerId: + type: string + title: uuid + externalId: + type: string + minLength: 1 + status: + type: string + enum: + - completed + settlementType: + $ref: '#/components/schemas/SettlementTypes' + reconciled: + type: boolean + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + finalizedAt: + type: string + format: date-time + title: ISO Date String + rtId: + type: string + lossSLAAlertSent: + type: boolean + gainSLAAlertSent: + type: boolean + required: + - id + - partnerId + - externalId + - status + - settlementType + - reconciled + - initiatedBy + - createdAt + - updatedAt + - finalizedAt + - lossSLAAlertSent + - gainSLAAlertSent + V1ConnectionListResponse: + title: V1ConnectionListResponse + type: object + description: codec for connection list http response + properties: + connections: + type: array + items: + type: object + description: codec for connection http response + properties: + id: + type: string + title: uuid + type: + $ref: '#/components/schemas/ConnectionType' + status: + $ref: '#/components/schemas/ConnectionStatus' + label: + type: string + minLength: 1 + description: + type: string + minLength: 1 + createdBy: + type: string + minLength: 1 + updatedBy: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - id + - type + - status + - label + - createdBy + - updatedBy + - createdAt + - updatedAt + required: + - connections + V1ConnectionOutput: + title: V1ConnectionOutput + type: object + properties: + id: + type: string + title: uuid + name: + type: string + minLength: 1 + clientId: + type: string + title: uuid + partnerId: + type: string + title: uuid + networkAccountId: + type: string + title: uuid + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + active: + type: boolean + proof: + type: string + minLength: 1 + nonce: + type: string + minLength: 1 + partnersConnectionId: + nullable: true + type: string + minLength: 1 + partnersClientId: + nullable: true + type: string + minLength: 1 + initialized: + type: boolean + required: + - id + - name + - clientId + - partnerId + - networkAccountId + - createdAt + - updatedAt + - active + - proof + - nonce + - partnersConnectionId + - partnersClientId + - initialized + V1ConnectionPayload: + title: V1ConnectionPayload + type: object + properties: + connection: + $ref: '#/components/schemas/V1ConnectionOutput' + required: + - connection + V1ConnectionResponse: + title: V1ConnectionResponse + type: object + description: codec for connection http response + properties: + id: + type: string + title: uuid + type: + $ref: '#/components/schemas/ConnectionType' + status: + $ref: '#/components/schemas/ConnectionStatus' + label: + type: string + minLength: 1 + description: + type: string + minLength: 1 + createdBy: + type: string + minLength: 1 + updatedBy: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - id + - type + - status + - label + - createdBy + - updatedBy + - createdAt + - updatedAt + V1ConnectionWithOwnerAndTargetListResponse: + title: V1ConnectionWithOwnerAndTargetListResponse + type: object + properties: + connections: + type: array + items: + allOf: + - type: object + properties: + ownerListingEntry: + $ref: '#/components/schemas/V1ListingEntryWithListingResponse' + targetListingEntry: + $ref: '#/components/schemas/V1ListingEntryWithListingResponse' + required: + - ownerListingEntry + - targetListingEntry + - $ref: '#/components/schemas/V1ConnectionResponse' + required: + - connections + V1ConnectionWithOwnerListResponse: + title: V1ConnectionWithOwnerListResponse + type: object + properties: + connections: + type: array + items: + allOf: + - type: object + properties: + ownerListingEntry: + $ref: '#/components/schemas/V1ListingEntryWithListingResponse' + required: + - ownerListingEntry + - $ref: '#/components/schemas/V1ConnectionResponse' + required: + - connections + V1ConnectionsGetOkPayload: + title: V1ConnectionsGetOkPayload + type: object + properties: + connections: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + name: + type: string + minLength: 1 + clientId: + type: string + title: uuid + partnerId: + type: string + title: uuid + networkAccountId: + type: string + title: uuid + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + active: + type: boolean + proof: + type: string + minLength: 1 + nonce: + type: string + minLength: 1 + partnersConnectionId: + nullable: true + type: string + minLength: 1 + partnersClientId: + nullable: true + type: string + minLength: 1 + initialized: + type: boolean + required: + - id + - name + - clientId + - partnerId + - networkAccountId + - createdAt + - updatedAt + - active + - proof + - nonce + - partnersConnectionId + - partnersClientId + - initialized + required: + - connections + V1DeallocationClearedPostPayload: + title: V1DeallocationClearedPostPayload + type: object + properties: + deallocation: + $ref: '#/components/schemas/V1ClearedAllocation' + required: + - deallocation + V1DeallocationReleasedPayload: + title: V1DeallocationReleasedPayload + type: object + properties: + deallocation: + $ref: '#/components/schemas/V1ReleasedAllocation' + required: + - deallocation + V1DeallocationReleasedWithErrorPostPayload: + title: V1DeallocationReleasedWithErrorPostPayload + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/V1DeallocationReleasedPayload' + - $ref: '#/components/schemas/V1ErrorPayload' + V1DirectoryListingEntryWithConnectionsListResponse: + title: V1DirectoryListingEntryWithConnectionsListResponse + type: object + properties: + listingEntries: + type: array + items: + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' + - $ref: '#/components/schemas/V1ConnectionWithOwnerAndTargetListResponse' + required: + - listingEntries + V1EnterpriseSupportedCurrenciesResponse: + title: V1EnterpriseSupportedCurrenciesResponse + type: object + properties: + supportedCurrencies: + $ref: '#/components/schemas/V1SupportedCurrencies' + domain: + type: string + minLength: 1 + required: + - supportedCurrencies + - domain + V1ErrorPayload: + title: V1ErrorPayload + type: object + properties: + error: + type: string + required: + - error + V1ErrorResponse: + title: V1ErrorResponse + type: object + properties: + errorName: + type: string + error: + type: string + required: + - errorName + - error + V1ExtDepositsPayload: + title: V1ExtDepositsPayload + type: object + properties: + deposits: + $ref: '#/components/schemas/ExtDepositsResp' + required: + - deposits + V1FailedSettlementOutput: + title: V1FailedSettlementOutput + type: object + properties: + id: + type: string + title: uuid + partnerId: + type: string + title: uuid + externalId: + type: string + minLength: 1 + reason: + type: string + minLength: 1 + status: + type: string + enum: + - failed + settlementType: + $ref: '#/components/schemas/SettlementTypes' + reconciled: + type: boolean + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + rtId: + type: string + lossSLAAlertSent: + type: boolean + gainSLAAlertSent: + type: boolean + required: + - id + - partnerId + - externalId + - reason + - status + - settlementType + - reconciled + - initiatedBy + - createdAt + - updatedAt + - lossSLAAlertSent + - gainSLAAlertSent + V1GetSettlementOkPayload: + title: V1GetSettlementOkPayload + type: object + properties: + settlement: + $ref: '#/components/schemas/V1SettlementOutput' + settlementTransfers: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + currency: + type: string + minLength: 1 + settlementId: + type: string + title: uuid + quantity: + $ref: '#/components/schemas/NonNegativeBigAmount' + txIds: + type: array + items: + type: string + minLength: 1 + status: + $ref: '#/components/schemas/SettlementTransferStatus' + sourceTradingAccountId: + type: string + minLength: 1 + sourceNetworkAccountId: + type: string + title: uuid + destinationTradingAccountId: + type: string + minLength: 1 + destinationNetworkAccountId: + type: string + title: uuid + required: + - id + - createdAt + - updatedAt + - currency + - settlementId + - quantity + - txIds + - status + - sourceTradingAccountId + - destinationTradingAccountId + - destinationNetworkAccountId + required: + - settlement + - settlementTransfers + V1GlobalListingResponse: + title: V1GlobalListingResponse + type: object + description: codec for global listing http response + properties: + id: + type: string + title: uuid + enterpriseId: + type: string + minLength: 1 + description: + type: string + minLength: 1 + name: + type: string + minLength: 1 + owner: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - id + - enterpriseId + - name + - owner + - createdAt + - updatedAt + V1GlobalListingWithListingEntries: + title: V1GlobalListingWithListingEntries + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/V1GlobalListingResponse' + - $ref: '#/components/schemas/V1ListingEntryListResponse' + V1ListSettlementsOkPayload: + title: V1ListSettlementsOkPayload + type: object + properties: + settlements: + type: array + items: + oneOf: + - $ref: '#/components/schemas/V1PendingSettlementOutput' + - $ref: '#/components/schemas/V1FailedSettlementOutput' + - $ref: '#/components/schemas/V1CompleteSettlementOutput' + - $ref: '#/components/schemas/V1RejectedSettlementOutput' + required: + - settlements + V1ListingEntryListResponse: + title: V1ListingEntryListResponse + type: object + description: codec for listing entry list http response + properties: + listingEntries: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + walletId: + type: string + minLength: 1 + coin: + type: string + minLength: 1 + type: + $ref: '#/components/schemas/EntryType' + description: + type: string + minLength: 1 + discoverable: + type: boolean + featured: + type: boolean + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - id + - walletId + - coin + - type + - discoverable + - featured + - createdAt + - updatedAt + required: + - listingEntries + V1ListingEntryResponse: + title: V1ListingEntryResponse + type: object + properties: + id: + type: string + title: uuid + walletId: + type: string + minLength: 1 + coin: + type: string + minLength: 1 + type: + $ref: '#/components/schemas/EntryType' + description: + type: string + minLength: 1 + discoverable: + type: boolean + featured: + type: boolean + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - id + - walletId + - coin + - type + - discoverable + - featured + - createdAt + - updatedAt + V1ListingEntryWithConnectionsListResponse: + title: V1ListingEntryWithConnectionsListResponse + type: object + properties: + listingEntries: + type: array + items: + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/V1ListingEntryWithListingResponse' + - $ref: '#/components/schemas/V1ConnectionWithOwnerListResponse' + required: + - listingEntries + V1ListingEntryWithListingResponse: + title: V1ListingEntryWithListingResponse + allOf: + - type: object + properties: + listing: + $ref: '#/components/schemas/V1ListingResponse' + required: + - listing + - $ref: '#/components/schemas/V1ListingEntryResponse' + V1ListingResponse: + title: V1ListingResponse + type: object + description: codec for listing http response + properties: + id: + type: string + title: uuid + name: + type: string + minLength: 1 + description: + type: string + minLength: 1 + editable: + type: boolean + description: True, if the name is editable. + required: + - id + - name + - editable + V1ListingUpdateResponse: + title: V1ListingUpdateResponse + type: object + properties: + id: + type: string + title: uuid + enterpriseId: + type: string + minLength: 1 + description: + type: string + minLength: 1 + name: + type: string + minLength: 1 + owner: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + globalListing: + type: object + description: codec for global listing http response + properties: + createdAt: + type: string + format: date-time + title: ISO Date String + description: + type: string + minLength: 1 + enterpriseId: + type: string + minLength: 1 + id: + type: string + title: uuid + name: + type: string + minLength: 1 + owner: + type: string + minLength: 1 + updatedAt: + type: string + format: date-time + title: ISO Date String + required: + - createdAt + - enterpriseId + - id + - name + - owner + - updatedAt + required: + - id + - name + - owner + - createdAt + - updatedAt + V1PartnerBalancesGetPayload: + title: V1PartnerBalancesGetPayload + type: object + properties: + networkBalances: + $ref: '#/components/schemas/NetworkAccountBalanceRecordForPartner' + balances: + $ref: '#/components/schemas/AccountBalanceRecord' + required: + - networkBalances + V1PartnerIncompleteSettlementOrErrorPayload: + title: V1PartnerIncompleteSettlementOrErrorPayload + oneOf: + - $ref: '#/components/schemas/V1PartnerSettlementIncompletePayload' + - $ref: '#/components/schemas/V1ErrorPayload' + V1PartnerSettlementIncompletePayload: + title: V1PartnerSettlementIncompletePayload + type: object + properties: + settlement: + oneOf: + - $ref: '#/components/schemas/V1PendingSettlementOutput' + - $ref: '#/components/schemas/V1FailedSettlementOutput' + - $ref: '#/components/schemas/V1RejectedSettlementOutput' + required: + - settlement + V1PartnerSettlementOkPayload: + title: V1PartnerSettlementOkPayload + type: object + properties: + settlement: + $ref: '#/components/schemas/V1CompleteSettlementOutput' + required: + - settlement + V1PartnersGetOkPayload: + title: V1PartnersGetOkPayload + type: object + properties: + partners: + type: array + items: + type: object + properties: + id: + type: string + title: uuid + name: + type: string + minLength: 1 + institutionId: + type: string + institutionIdentifier: + type: string + connectionKeySchema: + $ref: '#/components/schemas/PartnerConnectionKeySchema' + active: + type: boolean + settlementTransactionRouteId: + type: string + publicKey: + type: string + enterpriseId: + type: string + stablePartner: + type: boolean + required: + - id + - name + - connectionKeySchema + - active + - stablePartner + required: + - partners + V1PartnersOutput: + title: V1PartnersOutput + type: object + properties: + id: + type: string + title: uuid + enterpriseId: + type: string + minLength: 1 + trustOrg: + type: string + institutionId: + type: string + institutionIdentifier: + type: string + name: + type: string + minLength: 1 + connectionKeySchema: + $ref: '#/components/schemas/PartnerConnectionKeySchema' + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + clientId: + type: string + title: uuid + broker: + type: boolean + active: + type: boolean + settlementTransactionRouteId: + type: string + publicKey: + type: string + required: + - id + - enterpriseId + - trustOrg + - name + - connectionKeySchema + - createdAt + - updatedAt + - clientId + - broker + - active + V1PartnersPostOkPayload: + title: V1PartnersPostOkPayload + type: object + properties: + partner: + $ref: '#/components/schemas/V1PartnersOutput' + required: + - partner + V1PendingApproval: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + enterprise: + allOf: + - $ref: '#/components/schemas/Id' + description: The Id of the associated enterprise + walletId: + type: string + example: 1G47mSr3oANXMafVrR8UC4pzV7FEAzo3r9 + description: The base address of the associated wallet + creator: + allOf: + - $ref: '#/components/schemas/Id' + description: The Id of the User that created the Pending Approval + createDate: + type: string + format: date-time + info: + type: object + properties: + type: + type: string + enum: + - bitcoinAddressWhitelistRequest + - userChangeRequest + - policyRuleRequest + - dailyLimitPolicyRequest + - transactionRequest + - tagUpdateRequest + - updateEnterpriseRequest + - updateApprovalsRequiredRequest + updateEnterpriseRequest: + type: object + properties: + action: + type: string + enum: + - add + - remove + permissions: + type: array + items: + $ref: '#/components/schemas/EnterprisePermission' + userId: + allOf: + - $ref: '#/components/schemas/Id' + description: The Id of the User to be added to or removed from the Enterprise + email: + allOf: + - $ref: '#/components/schemas/Email' + description: E-Mail address of newly added users + updateApprovalsRequiredRequest: + type: object + properties: + requestedApprovalsRequired: + type: number + minimum: 1 + description: the number of approvalsRequired that should be changed to + state: + type: string + enum: + - pending + - approved + - rejected + walletUserIds: + type: array + items: + $ref: '#/components/schemas/Id' + description: an array of all the Users on the Wallet who need to see this Pending Approval + approvalsRequired: + type: number + minimum: 1 + resolvers: + type: array + items: + type: object + properties: + user: + type: string + date: + type: string + resolutionType: + type: string + enum: + - pending + - approved + - rejected + signatures: + type: array + items: + type: string + videoApprover: + type: string + videoLink: + type: string + videoException: + type: string + V1PendingSettlementOutput: + title: V1PendingSettlementOutput + type: object + properties: + id: + type: string + title: uuid + partnerId: + type: string + title: uuid + externalId: + type: string + minLength: 1 + status: + type: string + enum: + - pending + settlementType: + $ref: '#/components/schemas/SettlementTypes' + reconciled: + type: boolean + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + rtId: + type: string + lossSLAAlertSent: + type: boolean + gainSLAAlertSent: + type: boolean + required: + - id + - partnerId + - externalId + - status + - settlementType + - reconciled + - initiatedBy + - createdAt + - updatedAt + - lossSLAAlertSent + - gainSLAAlertSent + V1PendingSettlementPayload: + title: V1PendingSettlementPayload + type: object + properties: + settlement: + $ref: '#/components/schemas/V1PendingSettlementOutput' + required: + - settlement + V1RejectedSettlementOutput: + title: V1RejectedSettlementOutput + type: object + properties: + id: + type: string + title: uuid + partnerId: + type: string + title: uuid + externalId: + type: string + minLength: 1 + reason: + type: string + minLength: 1 + status: + type: string + enum: + - rejected + settlementType: + $ref: '#/components/schemas/SettlementTypes' + reconciled: + type: boolean + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + finalizedAt: + type: string + format: date-time + title: ISO Date String + rtId: + type: string + lossSLAAlertSent: + type: boolean + gainSLAAlertSent: + type: boolean + required: + - id + - partnerId + - externalId + - reason + - status + - settlementType + - reconciled + - initiatedBy + - createdAt + - updatedAt + - finalizedAt + - lossSLAAlertSent + - gainSLAAlertSent + V1ReleasedAllocation: + title: V1ReleasedAllocation + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + enum: + - false + status: + type: string + enum: + - released + reason: + type: string + minLength: 1 + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - status + - reason + V1ReservedAllocationOrErrorPayload: + title: V1ReservedAllocationOrErrorPayload + oneOf: + - $ref: '#/components/schemas/V1ErrorPayload' + - $ref: '#/components/schemas/V1ReservedRetriableAllocationsPostPayload' + V1ReservedAllocationOutput: + title: V1ReservedAllocationOutput + oneOf: + - $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' + - $ref: '#/components/schemas/V1ReservedNonRetriableAllocationOutput' + V1ReservedDeallocationOrErrorPayload: + title: V1ReservedDeallocationOrErrorPayload + oneOf: + - $ref: '#/components/schemas/V1ErrorPayload' + - $ref: '#/components/schemas/V1ReservedRetriableDeallocationOutput' + V1ReservedDeallocationsPostPayload: + title: V1ReservedDeallocationsPostPayload + type: object + properties: + deallocation: + $ref: '#/components/schemas/V1ReservedAllocationOutput' + required: + - deallocation + V1ReservedNonRetriableAllocationOutput: + title: V1ReservedNonRetriableAllocationOutput + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + enum: + - false + reason: + type: string + minLength: 1 + status: + type: string + enum: + - reserved + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - reason + - status + V1ReservedNonRetriableAllocationsPostPayload: + title: V1ReservedNonRetriableAllocationsPostPayload + type: object + properties: + allocation: + $ref: '#/components/schemas/V1ReservedNonRetriableAllocationOutput' + required: + - allocation + V1ReservedRetriableAllocationOutput: + title: V1ReservedRetriableAllocationOutput + type: object + properties: + id: + type: string + title: uuid + amount: + $ref: '#/components/schemas/PositiveAllocationAmount' + connectionId: + type: string + title: uuid + clientExternalId: + type: string + minLength: 1 + partnerExternalId: + type: string + minLength: 1 + initiatedBy: + type: string + minLength: 1 + notes: + type: string + minLength: 1 + createdAt: + type: string + format: date-time + title: ISO Date String + updatedAt: + type: string + format: date-time + title: ISO Date String + retriable: + type: boolean + enum: + - true + reason: + type: string + minLength: 1 + status: + type: string + enum: + - reserved + required: + - id + - amount + - connectionId + - clientExternalId + - initiatedBy + - createdAt + - updatedAt + - retriable + - reason + - status + V1ReservedRetriableAllocationsPostPayload: + title: V1ReservedRetriableAllocationsPostPayload + type: object + properties: + allocation: + $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' + required: + - allocation + V1ReservedRetriableDeallocationOutput: + title: V1ReservedRetriableDeallocationOutput + type: object + properties: + deallocation: + $ref: '#/components/schemas/V1ReservedRetriableAllocationOutput' + required: + - deallocation + V1SettlementOutput: + title: V1SettlementOutput + oneOf: + - $ref: '#/components/schemas/V1PendingSettlementOutput' + - $ref: '#/components/schemas/V1FailedSettlementOutput' + - $ref: '#/components/schemas/V1CompleteSettlementOutput' + - $ref: '#/components/schemas/V1RejectedSettlementOutput' + V1SettlementPayload: + title: V1SettlementPayload + type: object + properties: + settlement: + $ref: '#/components/schemas/V1SettlementOutput' + required: + - settlement + V1SupportedCurrencies: + title: V1SupportedCurrencies + type: object + additionalProperties: + type: array + items: + allOf: + - type: object + properties: {} + - $ref: '#/components/schemas/BNMetadata' + ValidValues: + type: array + description: A list of valid values, only values from this list will be accepted. + items: + anyOf: + - $ref: '#/components/schemas/GreaterThanValue' + - $ref: '#/components/schemas/GreaterThanOrEqualToValue' + - $ref: '#/components/schemas/LessThanValue' + - $ref: '#/components/schemas/LessThanOrEqualToValue' + ValidationError: + allOf: + - $ref: '#/components/schemas/GeneralError' + - type: object + properties: + failedValidations: + type: object + VelocityAmountConditionParameter: + title: Amount + type: object + description: The withdrawable amount within the time window. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - amount + example: amount + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Amount + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The amount that can be spent within the time window + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - NON_NEGATIVE_NUMBER + example: NON_NEGATIVE_NUMBER + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + VelocityCoinConditionParameter: + title: Unit + type: object + description: The unit of currency the amount is denoted in, can be a cryptocurrency or a fiat currency. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - coin + example: coin + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Unit + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The unit the amount is denoted in, can be a coin or a fiat currency + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - COIN_OR_USD + example: COIN_OR_USD + required: + type: string + description: A value must always be provided, i.e. the parameter is required. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'false' + VerifiedKycState: + type: string + enum: + - approved + - pending + - rejected + VerifiedKycState1: + title: VerifiedKycState + type: string + enum: + - approved + - rejected + - pending + VerifyWebhookNotificationResponse: + title: VerifyWebhookNotificationResponse + type: object + properties: + webhookId: + type: string + isValid: + type: boolean + required: + - webhookId + - isValid + VideoApprovers: + type: array + items: + $ref: '#/components/schemas/Id' + description: | + A list of public ids of users that should do the video id verification for the transaction that is being sent or initiated. + minItems: 1 + VideoIdUserState: + title: VideoIdUserState + type: string + enum: + - awaitingApproval + - awaitingAcceptance + - pendingSchedule + - pendingInitialId + - underReview + - approved + - rejected + - archived + VideoIdWaived: + example: true + description: Whether the customer has waived the need for Video ID on low risk withdrawals. + type: boolean + ViewAllWallets: + example: true + description: All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself + type: boolean + VoteDelegationIntent: + title: Vote Delegation Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - voteDelegation + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + Wallet: + title: Wallet + type: object + properties: + allowBackupKeySigning: + type: boolean + approvalsRequired: + type: number + example: 1 + minimum: 1 + coin: + $ref: '#/components/schemas/CoinString' + coinSpecific: + $ref: '#/components/schemas/WalletSubdocument' + deleted: + type: boolean + disableTransactionNotifications: + type: boolean + hasLargeNumberOfAddresses: + type: boolean + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + isCold: + type: boolean + label: + type: string + example: My Wallet + startDate: + type: string + description: Wallet creation time + format: date-time + title: ISO Date String + admin: + type: object + properties: + policy: + $ref: '#/components/schemas/Policy' + billingEnterprise: + type: string + buildDefaults: + type: object + properties: + minFeeRate: + type: number + description: (UTXO only) Wallet-level minimum fee rate that must be greater than or equal to the default of 1000 satoshis/kvByte. Per transaction, you can override "minFeeRate" with the "feeRate" parameter. + example: 12000 + minimum: 1000 + clientFlags: + type: array + items: + type: object + properties: + name: + type: string + value: + type: boolean + config: + type: object + properties: + nodeId: {} + custodialWalletId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + customChangeKeySignatures: + type: object + properties: + user: + type: string + backup: + type: string + bitgo: + type: string + customerWalletId: + type: string + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + bitgoOrg: + type: string + freeze: + type: object + properties: + time: + type: string + format: date-time + title: ISO Date String + expires: + type: string + format: date-time + title: ISO Date String + instantProvider: + type: string + keys: + type: array + example: + - 585951a5df8380e0e304a553 + - 585951a5df8380e0e30d645c + - 585951a5df8380e0e30b6147 + items: + type: string + keySignatures: + type: object + properties: + backupPub: + type: string + bitgoPub: + type: string + m: + type: number + description: Number of signatures required. This value must be 2 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. + example: 2 + migratedFrom: + type: string + multisigType: + $ref: '#/components/schemas/MultiSigType' + multisigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion' + 'n': + type: number + description: Number of keys provided. This value must be 3 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. + example: 3 + recoverable: + type: boolean + tags: + type: array + items: + type: string + type: + allOf: + - $ref: '#/components/schemas/WalletType' + description: The type describes who owns the keys to the wallet and how they are stored. "cold" wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. "custodial" means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. "custodialPaired" means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of "hot" wallets. "trading" wallets are trading accounts where the coin is "ofc". "distributedCustody" means You manage one key and another key agent manages the second key. BitGo manages the third key + subType: + $ref: '#/components/schemas/WalletSubType' + balanceString: + type: string + description: The cleared balance of the address in base units (e.g. Satoshis). Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. + balance: + type: number + description: The cleared balance of the address in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. + confirmedBalanceString: + type: string + description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. Guaranteed to not lose precision. + confirmedBalance: + type: number + description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. + spendableBalanceString: + type: string + description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. + spendableBalance: + type: number + description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. The is only returned if the 'expandBalance' query parameter is set to 'true'. + stakingBalanceString: + type: string + description: The staked balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. + rewardBalanceString: + type: string + description: The staking reward balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. + users: + type: array + items: + type: object + properties: + needsRecovery: + type: boolean + permissions: + type: array + items: + type: string + enum: + - admin + - spend + - view + - freeze + - trade + recoverable: + type: boolean + user: + type: string + required: + - permissions + walletFlags: + type: array + items: + type: object + properties: + name: + $ref: '#/components/schemas/WalletFlag' + value: + type: string + required: + - name + - value + receiveAddress: + $ref: '#/components/schemas/WalletAddress' + required: + - allowBackupKeySigning + - approvalsRequired + - coin + - coinSpecific + - deleted + - disableTransactionNotifications + - hasLargeNumberOfAddresses + - id + - isCold + - label + - startDate + Wallet1: + type: object + properties: + admin: + type: object + properties: + policy: + $ref: '#/components/schemas/Policy1' + allowBackupKeySigning: + type: boolean + approvalsRequired: + $ref: '#/components/schemas/ApprovalsRequired' + balanceString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: Total balance in base units (e.g. Satoshis) + buildDefaults: + $ref: '#/components/schemas/WalletBuildDefaults' + coin: + $ref: '#/components/schemas/Coin' + coinSpecific: + $ref: '#/components/schemas/WalletCoinSpecific' + custodialWallet: + type: object + description: The associated custodial wallet object + custodialWalletId: + $ref: '#/components/schemas/Id' + deleted: + type: boolean + disableTransactionNotifications: + type: boolean + enterprise: + $ref: '#/components/schemas/Id' + freeze: + type: object + properties: + time: + type: string + format: dateTime + expires: + type: string + format: dateTime + id: + $ref: '#/components/schemas/Id' + isCold: + type: boolean + keys: + $ref: '#/components/schemas/Keys' + label: + $ref: '#/components/schemas/WalletLabel' + m: + $ref: '#/components/schemas/NumSignatures' + 'n': + $ref: '#/components/schemas/NumKeychains' + nodeId: + $ref: '#/components/schemas/Id' + receiveAddress: + $ref: '#/components/schemas/Address2' + recoverable: + type: boolean + tags: + type: array + items: + $ref: '#/components/schemas/Id' + spendableBalanceString: + allOf: + - $ref: '#/components/schemas/IntegerString' + description: Spendable balance in base units (e.g. Satoshis) + unspentCount: + type: number + example: 100 + description: Number of unspent outputs present in the wallet + startDate: + allOf: + - $ref: '#/components/schemas/DateTime' + description: Wallet creation time + type: + $ref: '#/components/schemas/WalletTypePublic' + users: + type: array + items: + $ref: '#/components/schemas/WalletUser' + customChangeKeySignatures: + $ref: '#/components/schemas/CustomChangeKeySignatures' + multisigType: + $ref: '#/components/schemas/WalletMultisigType' + multisigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion1' + required: + - approvalsRequired + - coin + - deleted + - disableTransactionNotifications + - id + - label + WalletAddress: + title: WalletAddress + allOf: + - type: object + properties: + coin: + $ref: '#/components/schemas/CoinString' + wallet: + type: string + chain: + $ref: '#/components/schemas/AddressChain' + index: + type: number + required: + - coin + - wallet + - chain + - index + - $ref: '#/components/schemas/BaseWalletAddress' + WalletAddressUnion: + title: WalletAddressUnion + oneOf: + - $ref: '#/components/schemas/WalletAddress' + - $ref: '#/components/schemas/LightningWalletAddress' + WalletAdminAction: + title: Require wallet-admin approval + type: object + description: Requires approval from one or more wallet admin. + required: + - name + - label + - description + - status + - adminOnly + - parameters + properties: + name: + type: string + description: The name of the action. + enum: + - approvals.customer.walletAdmin + example: approvals.customer.walletAdmin + label: + type: string + description: A label for the action which can be shown to an end user. + example: Wallet Admin + description: + type: string + description: A description for the action which can be shown to an end user. + example: Require approval from wallet admins + status: + type: string + description: | + Status of the action. Indicates if the Actions is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The action is available for use. + * 'INACTIVE' - The action is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + adminOnly: + type: boolean + description: true, if this is an internal action, false otherwise. + example: false + parameters: + type: array + description: A list of Parameters to control how the action behaves. + items: + anyOf: + - $ref: '#/components/schemas/MinRequireActionParameter' + WalletAdminActionRequest: + title: Require Require approval from wallet admins + type: object + description: Require Require approval from wallet admins. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the associated Action. + enum: + - approvals.customer.walletAdmin + example: approvals.customer.walletAdmin + parameters: + type: object + description: Required data needed to configure the Action. + required: + - minRequired + properties: + minRequired: + type: string + description: Number of required approvals + example: '1' + operator: + $ref: '#/components/schemas/OperatorType' + WalletAllCondition: + title: Wallet all + type: object + description: Wallet-all condition for the all-wallets scope. + required: + - name + - label + - description + - status + properties: + name: + type: string + description: The name of the condition. + enum: + - wallet.all + example: wallet.all + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Wallet All + description: + type: string + description: A description for the condition which can be shown to an end user. + example: For all Wallets + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + WalletAllFilteringCondition: + title: All wallets + type: object + description: Filter by all wallets. + required: + - name + properties: + name: + type: string + description: Name of the condition. + enum: + - wallet.all + example: wallet.all + WalletBuildDefaults: + type: object + properties: + minFeeRate: + type: integer + minimum: 1000 + nullable: true + example: 12000 + description: | + (BTC only) The minimum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. Must be greater than or equal to the default of 1000 satoshis/kvByte. + + Note: The you can override 'minFeeRate' on a per transaction basis with the 'feeRate' parameter. + maxFeeRate: + type: integer + minimum: 1000 + nullable: true + example: 18000 + description: | + (BTC only) The maximum fee rate (in base units) per kilobyte (or virtual kilobyte). For example, satoshis per kvByte. The 'maxFeeRate' limits the fee rate generated by both 'feeMultiplier' and 'numBlocks'. + + Note: The you can override 'maxFeeRate' on a per transaction basis with the 'feeRate' parameter. + feeMultiplier: + type: number + minimum: 1 + nullable: true + example: 1.2 + description: | + (UTXO only) Custom multiplier to the 'feeRate'. The resulting fee rate is limited by the 'maxFeeRate'. For replace-by-fee (RBF) transactions (that include 'rbfTxIds'), the 'feeMultiplier' must be greater than 1, since it's an absolute fee multiplier to the transaction being replaced. + + Note: The 'maxFeeRate' limits the fee rate generated by 'feeMultiplier'. + changeAddressType: + $ref: '#/components/schemas/DefaultChangeAddressType' + txFormat: + type: string + example: psbt + enum: + - legacy + - psbt + - psbt-lite + description: | + (UTXO only) The default transaction format to use for this wallet. Per transaction, you can override the default with the 'txFormat' parameter. + WalletCoinSpecific: + oneOf: + - title: Wallet + type: object + properties: + creationFailure: + type: array + items: + $ref: '#/components/schemas/TxId' + description: Includes list of fail initialization txids + pendingChainInitialization: + type: boolean + description: Whether the wallet needs to be initialized on the chain + - $ref: '#/components/schemas/WalletCoinSpecificCosmos' + - $ref: '#/components/schemas/WalletCoinSpecificXlm' + WalletCoinSpecificCosmos: + title: ATOM + type: object + properties: + rootAddress: + type: string + description: Wallet address to send or receive assets. + example: cosmos1uvrgkp82dmeks368d7g2ejzm3axhapzveh5uek + lastChainIndex: + type: number + description: Index of last address that was derived. + example: 1 + lastMemoId: + type: string + description: A running counter of the last known memo id. The first one is 0. + example: '0' + pendingEcdsaTssInitialization: + type: boolean + description: If true, this wallet cannot sign transactions or messages as the enterprise has not finished MPC setup. + example: false + required: + - rootAddress + - lastMemoId + WalletCoinSpecificXlm: + title: XLM + type: object + properties: + rootAddress: + type: string + description: Root address of the wallet + example: GCTTCPH4IIDK7P72FFAEJ3ZFN6WDHJH6GGMRPHPM56ZWGIQ7B3XTIJAM + stellarUsername: + type: string + description: Username for the user's Stellar address + example: foo_bar@baz.com + homeDomain: + type: string + description: Home domain of a Stellar account + example: bitgo.com + stellarAddress: + type: string + description: Email-like address associated to a Stellar account + example: foo_bar@baz.com*bitgo.com + WalletConsolidateUnspentsResponse: + type: object + properties: + txHex: + oneOf: + - $ref: '#/components/schemas/TxHex' + - $ref: '#/components/schemas/PsbtHex' + txInfo: + $ref: '#/components/schemas/UtxoTxInfo' + feeInfo: + $ref: '#/components/schemas/UtxoFeeInfo' + WalletCountResponse: + title: WalletCountResponse + type: object + properties: + count: + type: number + description: The number of wallets that match the query. + minimum: 0 + required: + - count + WalletCreateCoinSpecific: + type: object + properties: + xlm: + $ref: '#/components/schemas/WalletCreateCoinSpecificXlm' + txlm: + $ref: '#/components/schemas/WalletCreateCoinSpecificXlm' + lnbtc: + $ref: '#/components/schemas/WalletCreateCoinSpecificLnbtc' + tlnbtc: + $ref: '#/components/schemas/WalletCreateCoinSpecificLnbtc' + WalletCreateCoinSpecificLnbtc: + type: object + properties: + keys: + allOf: + - $ref: '#/components/schemas/Keys' + example: + - 585951a5df8380e0e304a553 + - 585951a5df8380e0e30d645c + description: Lightning wallet only. Array of two key IDs for 'userAuthKey' and 'nodeAuthKey'. + WalletCreateCoinSpecificXlm: + type: object + properties: + stellarUsername: + type: string + description: Username for the user's Stellar address. It's case insensitive, and it can't be changed after it's set. + pattern: ^[a-zA-Z0-9-_.+@]+$ + example: foo_bar@baz.com + WalletCrossChainUnspentResponse: + title: WalletCrossChainUnspentResponse + type: array + items: + type: object + properties: + unspent: + type: object + properties: + outputID: + type: number + description: Type ID for this output. + example: 7 + amount: + type: string + description: Amount as a BigNumber string. + example: '2000000' + txid: + type: string + description: Transaction ID of this unspent. + example: 2WW4Z9R9jdUSR1uheJ1rGuLUNXjipXESGknGWrkqx7KUU1YKV5 + threshold: + type: number + description: Number of signatures required to unlock UTXO. + example: 1 + addresses: + type: array + example: + - C-fuji167u3leuup654jdea3euggkhh82ta53jer3ttf4 + - C-fuji19vy09dn76mvt55r0x2d3ch2jrr8z6lgp80vzlj + - C-fuji1idynny22nx91z7mujpwadmjy930yjqa040zdjh0w + items: + type: string + description: Addresses tied to the UTXO for the signatures. + outputidx: + type: string + description: Index of the output in the transaction. + example: '1' + locktime: + type: string + description: Time that the UTXO is unlocked. + example: '0' + required: + - outputID + - amount + - txid + - threshold + - addresses + - outputidx + - locktime + sourceChain: + type: string + description: The source chain + destinationChain: + type: string + description: The destination chain + fromWallet: + type: string + description: Public ID of the wallet (in the source chain) that created the cross-chain output. + example: 6386565affdf48cb812ca1f0ed49a621 + toWallet: + type: string + description: Public ID of the wallet (in the destination chain) that's the target recipient of the cross-chain transfer. + example: 6386565affdf48cb812ca1f0ed49a621 + toAddress: + type: string + description: Addresses (in the destination chain) that are target recipients of the cross-chain transfer. + example: '0x125c4451c870f753265b0b1af3cf6ab88ffe4657' + required: + - unspent + - sourceChain + - destinationChain + - fromWallet + - toWallet + - toAddress + WalletCustomAddress: + type: string + example: ivxzn3bdn4uo + description: A custom address can be provided for EOS wallets. It must be exactly 12 alphanumeric characters. + WalletFlag: + title: WalletFlag + type: string + enum: + - isStaking + - lightning + - musigKp + - trackingInscriptions + - rbf + - coldWalletStaking + - tokenizationToken + - oneClickStaking + - solOfcStaking + - suiOfcStaking + WalletId: + type: string + example: 59cd72485007a239fb00282ed480da1f + WalletIdNonEmptyString: + title: WalletIdNonEmptyString + type: string + example: 59cd72485007a239fb00282ed480da1f + minLength: 1 + pattern: ^[0-9a-f]{32}$ + WalletIdParameter: + type: object + description: The Wallet Id parameter determines on which Wallets this condition will trigger. + required: + - name + - label + - description + - type + - required + - allowMultiple + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - walletId + example: walletId + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Wallet Id + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: he Wallet Ids + type: + type: string + description: The type of acceptable values for this condition parameter. + enum: + - BITGO_WALLET_ID + example: BITGO_WALLET_ID + required: + type: string + description: This Conditions parameter must always be provided. + enum: + - ALWAYS + example: ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'true' + WalletIdString: + title: WalletIdString + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + WalletIdsCondition: + title: Wallet ID + type: object + description: Wallet ID condition for the all-wallets scope. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - wallet.ids + example: wallet.ids + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Wallet Id + description: + type: string + description: A description for the condition which can be shown to an end user. + example: The Wallet Ids + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of Parameters to control how the condition behaves. + items: + allOf: + - $ref: '#/components/schemas/WalletIdParameter' + WalletIdsFilteringCondition: + title: Wallet ID + type: object + description: Filter by wallet ID. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - wallet.ids + example: wallet.ids + parameters: + type: object + description: Required data needed to evaluate the Filtering Condition. + required: + - walletId + properties: + walletId: + type: array + items: + type: string + description: The Wallet Ids this Filtering Condition will match. + WalletLabel: + type: string + example: My Wallet + WalletLimit: + type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + limit: + type: integer + count: + type: integer + minimum: 0 + isCustodial: + type: boolean + enum: + - true + required: + - coin + - count + WalletLimitsResponse: + type: array + items: + $ref: '#/components/schemas/WalletLimit' + WalletListResponse: + title: WalletListResponse + type: object + properties: + coin: + oneOf: + - type: array + items: + type: string + - type: string + wallets: + type: array + items: + type: object + properties: + allowBackupKeySigning: + type: boolean + approvalsRequired: + type: number + example: 1 + minimum: 1 + coin: + $ref: '#/components/schemas/CoinString' + coinSpecific: + $ref: '#/components/schemas/WalletSubdocument' + deleted: + type: boolean + disableTransactionNotifications: + type: boolean + hasLargeNumberOfAddresses: + type: boolean + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + isCold: + type: boolean + label: + type: string + example: My Wallet + startDate: + type: string + description: Wallet creation time + format: date-time + title: ISO Date String + admin: + type: object + properties: + policy: + $ref: '#/components/schemas/Policy' + billingEnterprise: + type: string + buildDefaults: + type: object + properties: + minFeeRate: + type: number + description: (UTXO only) Wallet-level minimum fee rate that must be greater than or equal to the default of 1000 satoshis/kvByte. Per transaction, you can override "minFeeRate" with the "feeRate" parameter. + example: 12000 + minimum: 1000 + clientFlags: + type: array + items: + type: object + properties: + name: + type: string + value: + type: boolean + config: + type: object + properties: + nodeId: {} + custodialWalletId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + customChangeKeySignatures: + type: object + properties: + user: + type: string + backup: + type: string + bitgo: + type: string + customerWalletId: + type: string + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + bitgoOrg: + type: string + freeze: + type: object + properties: + time: + type: string + format: date-time + title: ISO Date String + expires: + type: string + format: date-time + title: ISO Date String + instantProvider: + type: string + keys: + type: array + example: + - 585951a5df8380e0e304a553 + - 585951a5df8380e0e30d645c + - 585951a5df8380e0e30b6147 + items: + type: string + keySignatures: + type: object + properties: + backupPub: + type: string + bitgoPub: + type: string + m: + type: number + description: Number of signatures required. This value must be 2 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. + example: 2 + migratedFrom: + type: string + multisigType: + $ref: '#/components/schemas/MultiSigType' + multisigTypeVersion: + $ref: '#/components/schemas/MultisigTypeVersion' + 'n': + type: number + description: Number of keys provided. This value must be 3 for hot wallets, 1 for **ofc** wallets, and not specified for custodial wallets. + example: 3 + recoverable: + type: boolean + tags: + type: array + items: + type: string + type: + allOf: + - $ref: '#/components/schemas/WalletType' + description: The type describes who owns the keys to the wallet and how they are stored. "cold" wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. "custodial" means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. "custodialPaired" means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of "hot" wallets. "trading" wallets are trading accounts where the coin is "ofc". "distributedCustody" means You manage one key and another key agent manages the second key. BitGo manages the third key + subType: + $ref: '#/components/schemas/WalletSubType' + balanceString: + type: string + description: The cleared balance of the address in base units (e.g. Satoshis). Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. + balance: + type: number + description: The cleared balance of the address in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. + confirmedBalanceString: + type: string + description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. Guaranteed to not lose precision. + confirmedBalance: + type: number + description: The total balance of confirmed transactions in base units (e.g. Satoshis). The is only returned if the 'expandBalance' query parameter is set to 'true'. + spendableBalanceString: + type: string + description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. Guaranteed to not lose precision. The is only returned if the 'expandBalance' query parameter is set to 'true'. + spendableBalance: + type: number + description: The total balance in base units (e.g. Satoshis) which may be used as inputs for creating new transactions in string representation. The is only returned if the 'expandBalance' query parameter is set to 'true'. + stakingBalanceString: + type: string + description: The staked balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. + rewardBalanceString: + type: string + description: The staking reward balance in base units. Guaranteed to not lose precision. The is only returned if the 'includeStakingBalances' query parameter is set to 'true'. + users: + type: array + items: + type: object + properties: + needsRecovery: + type: boolean + permissions: + type: array + items: + type: string + enum: + - admin + - spend + - view + - freeze + - trade + recoverable: + type: boolean + user: + type: string + required: + - permissions + walletFlags: + type: array + items: + type: object + properties: + name: + $ref: '#/components/schemas/WalletFlag' + value: + type: string + required: + - name + - value + receiveAddress: + $ref: '#/components/schemas/WalletAddress' + required: + - allowBackupKeySigning + - approvalsRequired + - coin + - coinSpecific + - deleted + - disableTransactionNotifications + - hasLargeNumberOfAddresses + - id + - isCold + - label + - startDate + nextBatchPrevId: + type: string + description: When a result set is truncated, this field returns the id of the last object in the previous batch. To get the next batch of results, pass this value via the "prevId" query parameter. + example: 585951a5df8380e0e3063e9f + format: uuid + totalCount: + type: number + required: + - wallets + WalletMPCv2MigrationStatus: + title: WalletMPCv2MigrationStatus + type: object + properties: + canMigrateToMPCv2: + type: boolean + disabledReason: + type: string + required: + - canMigrateToMPCv2 + WalletMaximumSpendable: + type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + maximumSpendable: + type: string + example: '19948310' + WalletMultisigType: + type: string + enum: + - onchain + - tss + - blsdkg + WalletPermission: + type: string + description: | + Comma-separated list of privileges for a wallet. Includes: + + - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. + - 'freeze' - Can freeze a wallet, disabling all withdrawals. + - 'spend' - Can initiate withdrawals and generate new receive addresses. + - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). + - 'view' - Can view balances and transactions. + + Permissions don't overlap. Required parameter if 'reshare' is false. + enum: + - admin + - spend + - trade + - view + example: spend,view + WalletPermissionAttributes: + type: object + properties: + hasEnoughAdmins: + description: True, if the wallet has enough admins to create a staking request. + type: boolean + numberOfRequiredAdmin: + description: The number of admins required to create a hot staking request. + type: integer + WalletRecoveryIntent: + title: Wallet Recovery Intent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - walletRecovery + required: + - intentType + - $ref: '#/components/schemas/BaseIntent' + WalletRecoveryIntent1: + title: Wallet Recovery + type: object + properties: + intentType: + type: string + sequenceId: + type: string + description: | + A 'sequenceId' is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a 'sequenceId' you can easily reference transfers and transactions—for example, to safely retry sending. Because BitGo only confirms one send request per 'sequenceId' (and fails all subsequent attempts), you can retry sending without the risk of double spending. The 'sequenceId' is only visible to users on the wallet and is not shared publicly. It is the responsibility of the caller to keep track of this ID. + example: abc123 + comment: + type: string + description: The 'comment' is only visible to users on the wallet and is not shared publicly. + required: + - intentType + WalletShare: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + wallet: + $ref: '#/components/schemas/Id' + walletLabel: + $ref: '#/components/schemas/WalletLabel' + fromUser: + $ref: '#/components/schemas/Id' + toUser: + $ref: '#/components/schemas/Coin' permission: - staking: - enabled: true - allowClientToUseOwnValidator: false - unstaking: - enabled: true - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 2 - spendable: - staking: - fee: '888546618800000' - max: '2010492598925385321' - min: '1' - netMax: '2009604052306585321' - netMin: '888546618800001' - isStakingDurationNeeded: false - minStakeMore: '0' - unstaking: - multipleDelegations: true - NearWalletStakingStateAttributesExamples: - summary: Near Wallet Staking Attributes - value: - disclaimer: - staking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - stakeWarmupPeriodDesc: tbd - rewardPercentageRate: '6.5100' - rewardsCompounding: false - unstaking: - info: - - | - 'Unstaking broadcasts 2 transactions: the transaction to unstake and the transaction to claim your reward. The network has to confirm the unstaking transaction then the claim transaction will be automatically created.' - transactionsNeeded: 2 - unStakeCooldownPeriodDesc: tbd + type: string + description: | + Comma-separated list of privileges for a wallet. Includes: + + - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. + - 'freeze' - Can freeze a wallet, disabling all withdrawals. + - 'spend' - Can initiate withdrawals and generate new receive addresses. + - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). + - 'view' - Can view balances and transactions. + + Permissions don't overlap. Required parameter if 'reshare' is false. + enum: + - admin + - spend + - trade + - view + example: spend,view + message: + type: string + description: User readable message to display to the share recipient + state: + $ref: '#/components/schemas/PlatformWalletShareState' + enterprise: + $ref: '#/components/schemas/Id' + pendingApprovalId: + allOf: + - $ref: '#/components/schemas/Id' + description: Only set if this wallet share is currently pending approval + keychain: + description: Only set if this wallet share has an associated keychain + type: object + properties: + pub: + description: Sharing user's root public key + type: string + encryptedPrv: + description: Sharing user's private key encrypted under their wallet passphrase + type: string + fromPubKey: + description: Sharing user's derived public key which will be used to calculate the wallet sharing secret. + type: string + toPubKey: + description: Shared-to user's derived public key which will be used to calculate the wallet sharing secret. + type: string + path: + description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) + example: m/1234/1/1 + type: string + required: + - id + - coin + - wallet + - walletLabel + - fromUser + - toUser + - permissions + - message + - state + - enterprise + WalletShare1: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + wallet: + $ref: '#/components/schemas/Id' + walletLabel: + $ref: '#/components/schemas/WalletLabel' + fromUser: + $ref: '#/components/schemas/Id' + toUser: + $ref: '#/components/schemas/Coin' permission: - staking: - enabled: true - allowClientToUseOwnValidator: false - unstaking: - enabled: true - wallet: - hasEnoughAdmins: true - numberOfRequiredAdmins: 2 - spendable: - staking: - fee: '888546618800000' - max: '2010492598925385321' - min: '1' - netMax: '2009604052306585321' - netMin: '888546618800001' - isStakingDurationNeeded: false - minStakeMore: '0' - unstaking: - multipleDelegations: true - SolStakingValidatorsResultsExample: - summary: Solana Staking Validators Results Example - value: - page: 1 - totalPages: 1 - totalElements: 1 - validators: - delegationAddress: BAGUCfvdwdioWSR8rqJKqJXHk4ZkQcUfvMLfM9QinZFY - coin: sol - delegated: '40026861' - rewards: '26861' - apy: '5.71' - type: Unknown - SuiStakingPartneredValidatorsResultsExample: - summary: SUI Staking Partnered Validators Results Example - value: - page: 1 - totalPages: 1 - totalElements: 1 - validators: - delegationAddress: '0x22b35a7481fb136e5585c43421cf8ab49d0e219e902dedc40c2778acdcc7bc9c' - type: FIGMENT - totalStaked: '100000000' - reward: '300000000' - apy: '9.999' - commission: '0.999' - coin: tsui - LicenseResultsExample: - summary: Staking License Result Example - value: - enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec - fees: - - coin: near - fee: '4' - - coin: sol - fee: '5' - defaultFee: '10' - requestBodies: {} - headers: {} - links: {} - callbacks: {} + type: string + description: | + Comma-separated list of privileges for a wallet. Includes: + + - 'admin' - Can manage wallet policies and users and approve or reject pending approvals. + - 'freeze' - Can freeze a wallet, disabling all withdrawals. + - 'spend' - Can initiate withdrawals and generate new receive addresses. + - 'trade' - Can initiate trades from a Go Account ('trading' wallet type). + - 'view' - Can view balances and transactions. + + Permissions don't overlap. Required parameter if 'reshare' is false. + enum: + - admin + - spend + - trade + - view + example: spend,view + message: + type: string + description: User readable message to display to the share recipient + state: + $ref: '#/components/schemas/WalletShareState1' + enterprise: + $ref: '#/components/schemas/Id' + pendingApprovalId: + allOf: + - $ref: '#/components/schemas/Id' + description: Only set if this wallet share is currently pending approval + keychain: + description: Only set if this wallet share has an associated keychain + type: object + properties: + pub: + description: Sharing user's root public key + type: string + encryptedPrv: + description: Sharing user's private key encrypted under their wallet passphrase + type: string + fromPubKey: + description: Sharing user's derived public key which will be used to calculate the wallet sharing secret. + type: string + toPubKey: + description: Shared-to user's derived public key which will be used to calculate the wallet sharing secret. + type: string + path: + description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) + example: m/1234/1/1 + type: string + required: + - id + - coin + - wallet + - walletLabel + - fromUser + - toUser + - permissions + - message + - state + - enterprise + WalletShareKeychain: + type: object + description: Key passed to the receiving user, included if the wallet was shared with spend permission + properties: + pub: + description: One of wallet pub (onchain), commonPub (BLS) or commonKeychain (MPC) + type: string + encryptedPrv: + description: Private key of the user sharing the wallet encrypted under their wallet passphrase + type: string + fromPubKey: + description: Derived public key of the user sharing the wallet + type: string + toPubKey: + description: Derived public key of the user receiving the share + type: string + path: + description: BIP32 HD path of the derived public keys (fromPubKey and toPubKey) + example: m/1234/1/1 + type: string + WalletShareState: + title: WalletShareState + type: string + enum: + - pendingapproval + - active + - accepted + - canceled + - rejected + description: The state of wallet share object + example: active + WalletShareState1: + type: string + example: active + enum: + - pendingapproval + - active + - accepted + - canceled + - rejected + WalletSharesCountSchema: + title: WalletSharesCountSchema + type: object + additionalProperties: + type: object + properties: + walletSharesCount: + type: number + required: + - walletSharesCount + WalletSpending: + type: object + properties: + velocityLimitSpending: + type: array + items: + type: object + properties: + coin: + allOf: + - $ref: '#/components/schemas/Coin' + - example: btc + timeWindow: + allOf: + - $ref: '#/components/schemas/IntegerString' + - example: '3600' + description: | + String representation of the time window in seconds (ex: 0 = per transaction, 3600 = hourly, + 86400 = daily). + limitAmountString: + allOf: + - $ref: '#/components/schemas/IntegerString' + - example: '1000000' + description: | + String representation of the spending limit in base units. + amountSpentString: + allOf: + - $ref: '#/components/schemas/IntegerString' + - example: '148310' + description: | + String representation of the current amount spent in base units. Guaranteed to not lose + precision. + WalletStakingDisclaimerAttributes: + type: object + properties: + stakingDisclaimerAttributes: + $ref: '#/components/schemas/StakingDisclaimerAttributes' + unstakingDisclaimerAttributes: + $ref: '#/components/schemas/UnstakingDisclaimerAttributes' + WalletStakingPermissionAttributes: + type: object + properties: + walletPermissionAttributes: + $ref: '#/components/schemas/WalletPermissionAttributes' + stakingPermissionAttributes: + $ref: '#/components/schemas/StakingPermissionAttributes' + unstakingPermissionAttributes: + $ref: '#/components/schemas/UnstakingPermissionAttributes' + WalletStakingStateAttributes: + type: object + properties: + spendableAttributes: + $ref: '#/components/schemas/DotWalletStakingSpendableAttributes' + permissionAttributes: + $ref: '#/components/schemas/WalletStakingPermissionAttributes' + disclaimerAttributes: + $ref: '#/components/schemas/WalletStakingDisclaimerAttributes' + WalletSubType: + title: WalletSubType + type: string + enum: + - distributedCustody + - pairedCustodial + - custodialHot + - custodialCold + WalletSubdocument: + title: WalletSubdocument + oneOf: + - $ref: '#/components/schemas/AdaWallet' + - $ref: '#/components/schemas/AlgorandWallet' + - $ref: '#/components/schemas/AtomWallet' + - $ref: '#/components/schemas/AvaxPWallet' + - $ref: '#/components/schemas/UtxoWallet' + - $ref: '#/components/schemas/CasperWallet' + - $ref: '#/components/schemas/DotWallet' + - $ref: '#/components/schemas/EosWallet' + - $ref: '#/components/schemas/EthereumWallet' + - $ref: '#/components/schemas/Ethereum2Wallet' + - $ref: '#/components/schemas/FiatWallet' + - $ref: '#/components/schemas/HederaWallet' + - $ref: '#/components/schemas/NearWallet' + - $ref: '#/components/schemas/Offchain' + - $ref: '#/components/schemas/SilvergateUSDWallet' + - $ref: '#/components/schemas/StacksWallet' + - $ref: '#/components/schemas/TestcoinWallet' + - $ref: '#/components/schemas/TonWallet' + - $ref: '#/components/schemas/TronWallet' + - $ref: '#/components/schemas/StellarWallet' + - $ref: '#/components/schemas/XRPWallet' + - $ref: '#/components/schemas/TezosWallet' + - $ref: '#/components/schemas/SolWallet' + - $ref: '#/components/schemas/LightningCoinWallet' + WalletType: + title: WalletType + type: string + enum: + - backing + - cold + - custodial + - custodialPaired + - hot + - trading + WalletTypeCondition: + title: Wallet type + type: object + description: Wallet-type condition for the all-wallets scope. + required: + - name + - label + - description + - status + - parameters + properties: + name: + type: string + description: The name of the condition. + enum: + - wallet.type + example: wallet.type + label: + type: string + description: A label for the condition which can be shown to an end user. + example: Wallet Type + description: + type: string + description: A description for the condition which can be shown to an end user. + example: Allows creating a condition based on the Wallet Type + status: + type: string + description: | + Status of the condition. Indicates if the condition is usable 'ACTIVE' or not 'INACTIVE'. + + * 'ACTIVE' - The condition is available for use. + * 'INACTIVE' - The condition is NOT available for use. + enum: + - ACTIVE + - INACTIVE + example: ACTIVE + parameters: + type: array + description: A list of Parameters to control how the condition behaves. + items: + allOf: + - $ref: '#/components/schemas/WalletTypeParameter' + WalletTypeFilteringCondition: + title: Wallet type + type: object + description: Filter by wallet type. + required: + - name + - parameters + properties: + name: + type: string + description: Name of the condition. + enum: + - wallet.type + example: wallet.type + parameters: + type: object + description: Required data needed to evaluate the Filtering Condition. + required: + - walletType + properties: + walletType: + type: array + items: + type: string + enum: + - hot + - custodial + WalletTypeParameter: + type: object + description: The Wallet Type parameter determines on what type of Wallet this condition will trigger. + required: + - name + - label + - description + - type + - required + - allowMultiple + - values + properties: + name: + type: string + description: The name of the condition parameter. + enum: + - walletType + example: walletType + label: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: Type + description: + type: string + description: A description for the condition parameter which can be shown to an end user. + example: The Wallet Type + type: + type: string + description: This Conditions parameter has a set of defined values. + enum: + - ENUMERATED + required: + type: string + description: This Conditions parameter must always be provided. + enum: + - ALWAYS + allowMultiple: + type: boolean + description: true, if multiple values can be provided, i.e. as a list of values. When false only one value can be provided, i.e. a list with more than one element will be rejected. + example: 'true' + values: + type: array + description: A list of valid values, only values from this list will be accepted. + items: + anyOf: + - $ref: '#/components/schemas/CustodialValue' + - $ref: '#/components/schemas/HotValue' + - $ref: '#/components/schemas/ColdValue' + - $ref: '#/components/schemas/TradingValue' + - $ref: '#/components/schemas/CustodialPairedValue' + - $ref: '#/components/schemas/BackingValue' + WalletTypePublic: + type: string + description: The type describes who owns the keys to the wallet and how they are stored. 'cold' wallets are wallets where the private key of the user key is stored exclusively outside of BitGo's system. 'custodial' means that this wallet is a cold wallet where BitGo owns the keys. Only customers of the BitGo Trust can create this kind of wallet. 'custodialPaired' means that this is a hot wallet that is owned by the customer but it will be linked to a cold (custodial) wallet where BitGo owns the keys. This option is only available to customers of BitGo Inc. BitGo stores an encrypted private key for the user key of 'hot' wallets. 'trading' wallets are trading accounts where the coin is 'ofc'. 'distributedCustody' means You manage one key and another key agent manages the second key. BitGo manages the third key + enum: + - cold + - custodial + - custodialPaired + - hot + - trading + - distributedCustody + WalletUnspents: + type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + unspents: + type: array + items: + $ref: '#/components/schemas/Unspent' + WalletUpdateCoinSpecific: + type: object + properties: + eth: + $ref: '#/components/schemas/WalletUpdateCoinSpecificEth' + teth: + $ref: '#/components/schemas/WalletUpdateCoinSpecificEth' + WalletUpdateCoinSpecificEth: + type: object + properties: + deployForwardersManually: + type: boolean + flushForwardersManually: + type: boolean + WalletUser: + type: object + properties: + user: + $ref: '#/components/schemas/Id' + permissions: + type: array + items: + $ref: '#/components/schemas/WalletPermission' + example: + user: 55e8a1a5df8380e0e30e20c6 + permissions: + - admin + - view + - spend + WalletValue: + title: Wallet + type: object + description: Applies to a specific wallet. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - wallet + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Wallet + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: Only spending from the transferring wallet will be included + WalletWebhookType: + title: WalletWebhookType + type: string + enum: + - txRequest + - txRequestTransaction + - transfer + - transaction + - transactionRemoved + - transactionExpire + - pendingapproval + - block + - admin + - address_confirmation + - lowFee + - circuitBreaker + - transaction_finality_on_l1 + - fundsDeposited + WalletsResponse: + type: object + properties: + wallets: + type: array + items: + $ref: '#/components/schemas/Wallet1' + nextBatchPrevId: + $ref: '#/components/schemas/NextBatchPrevId' + totalCount: + type: integer + required: + - wallets + WalletsWithCoinResponse: + allOf: + - $ref: '#/components/schemas/WalletsResponse' + - type: object + properties: + coin: + $ref: '#/components/schemas/Coin' + required: + - coin + Webhook: + title: Webhook + type: object + properties: + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + created: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + coin: + type: string + description: A cryptocurrency or token ticker symbol. + example: btc + url: + type: string + example: https://your.server.com/webhook + format: uri + version: + type: number + description: 2 for coins running on API v2. + example: 2 + scope: + $ref: '#/components/schemas/WebhookScope' + state: + $ref: '#/components/schemas/WebhookState' + successiveFailedAttempts: + type: number + example: 0 + listenToFailureStates: + type: boolean + description: Whether or not to listen to failed transactions on chain. + label: + type: string + description: Label of the new webhook. + walletId: + type: string + enterpriseId: + type: string + organizationId: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + userId: + type: string + type: + allOf: + - $ref: '#/components/schemas/WebhookType' + description: Event type to listen to. + numConfirmations: + type: number + example: 6 + lastAttempt: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + failingSince: + type: string + example: 2021-01-01T00:00:00.000Z + format: date-time + title: ISO Date String + allToken: + type: boolean + txRequestStates: + type: array + items: + type: string + enum: + - pendingApproval + - canceled + - rejected + - initialized + - pendingDelivery + - delivered + - pendingUserSignature + - pendingUserCommitment + - pendingUserRShare + - pendingUserGShare + - readyToSend + - signed + - failed + description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. + txRequestTransactionStates: + type: array + items: + type: string + enum: + - initialized + - pendingSignature + - eddsaPendingCommitment + - eddsaPendingRShare + - eddsaPendingGShare + - ecdsaMPCv2Round1 + - ecdsaMPCv2Round2 + - ecdsaMPCv2Round3 + - readyToCombineShares + - signed + - held + - delivered + - invalidSignature + - rejected + description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. + required: + - id + - created + - coin + - url + - version + - scope + - state + - successiveFailedAttempts + - listenToFailureStates + Webhook1: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + label: + type: string + example: Test Webhook + created: + $ref: '#/components/schemas/DateTime' + coin: + $ref: '#/components/schemas/Coin' + type: + $ref: '#/components/schemas/WebhookTypeWallet' + url: + type: string + format: uri + example: https://your.server.com/webhook + version: + type: integer + example: 2 + description: 2 for coins running on API v2. + numConfirmations: + type: integer + example: 6 + state: + type: string + description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. + enum: + - active + - suspended + example: active + lastAttempt: + $ref: '#/components/schemas/DateTime' + failingSince: + $ref: '#/components/schemas/DateTime' + successiveFailedAttempts: + type: integer + example: 0 + walletId: + type: string + allowBlockedHosts: + type: boolean + allToken: + type: boolean + txRequestStates: + type: array + items: + $ref: '#/components/schemas/TransactionRequestState1' + description: If present, only transaction request state changes from the list will trigger notifications. If not present, all transaction request state changes will trigger notifications. + txRequestTransactionStates: + type: array + items: + $ref: '#/components/schemas/TransactionState1' + description: If present, only transaction request transaction state changes from the list will trigger notifications. If not present, all transaction request transaction state changes will trigger notifications. + identityStatus: + type: array + items: + $ref: '#/components/schemas/IdentityStatus' + description: If present, only identity status changes from the list will trigger notifications. If not present, all identity status changes will trigger notifications. + userKycState: + type: array + items: + $ref: '#/components/schemas/VerifiedKycState' + description: If present, only user kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. + enterpriseKycState: + type: array + items: + $ref: '#/components/schemas/VerifiedKycState' + description: 'If present, only enterprise kyc state changes from the list will trigger notifications. If not present, all kyc state changes will trigger notifications. ' + required: + - url + WebhookNotification: + type: object + properties: + id: + $ref: '#/components/schemas/Id' + coin: + $ref: '#/components/schemas/Coin' + type: + $ref: '#/components/schemas/WebhookTypeWallet' + walletType: + type: string + example: cold + transferType: + type: string + example: receive + value: + type: integer + example: 1055354 + valueString: + type: string + example: 1055354 + baseValue: + type: integer + example: 1055354 + baseValueString: + type: string + example: 1055354 + feeString: + type: string + example: 71854 + initiator: + type: array + items: + type: string + example: external + receiver: + type: string + example: tb1q3tzuxef7qc0sl8jq6vh3hpeq0w7swmq9a7eh4p + version: + type: integer + example: 2 + state: + type: string + description: If 'failed', webhook notification failed to connect with the target URL. If 'new', webhook notification was newly generated, in response to an event. If 'pending', webhook notification is awaiting processing by the webhook worker. If 'processed', webhook notification successfully sent to target URL. If 'unconfirmed', webhook notification is awaiting confirmation on the blockchain. + enum: + - failed + - new + - pending + - processed + - unconfirmed + example: new + WebhookNotificationState: + title: WebhookNotificationState + type: string + enum: + - unconfirmed + - new + - pending + - processed + - failed + WebhookRuleCondition: + title: WebhookRuleCondition + type: object + properties: + url: + type: string + description: The url to query for the webhook + required: + - url + WebhookScope: + title: WebhookScope + type: string + enum: + - wallet + - enterprise + - organization + WebhookState: + title: WebhookState + type: string + enum: + - active + - suspended + description: If 'active', indicates the webhook can trigger and send to the URL. If 'suspended', indicates the webhook can't trigger. + example: active + WebhookType: + title: WebhookType + type: string + enum: + - txRequest + - txRequestTransaction + - transfer + - transaction + - transactionRemoved + - transactionExpire + - pendingapproval + - block + - admin + - address_confirmation + - lowFee + - circuitBreaker + - wallet_confirmation + - bankAccount + - userKycState + - enterpriseKycState + - identityStatus + - accessToken + - accountCreated + - contractSigned + - fundsDeposited + - kycResult + - policyBalanceChange + - transaction_finality_on_l1 + WebhookTypeBlock: + type: string + enum: + - block + - wallet_confirmation + example: block + WebhookTypeWallet: + type: string + enum: + - txRequest + - txRequestTransaction + - transfer + - transaction + - transactionRemoved + - transactionExpire + - pendingapproval + - address_confirmation + - lowFee + - block + - admin + - circuitBreaker + - transaction_finality_on_l1 + example: transfer + description: Event type to listen to. + WhitelistedAddressValue: + title: Whitelisted + type: object + description: The destination is whitelisted. + required: + - value + - label + - description + properties: + value: + type: string + enum: + - whitelistedAddress + description: The actual value. + label: + type: string + description: A label for the condition parameter Value which can be shown to an end user. + example: Whitelisted address + description: + type: string + description: A description for the condition parameter Value which can be shown to an end user. + example: The destination is whitelisted + WireWithdrawalConfirmationAction: + title: WireWithdrawalConfirmationAction + type: string + enum: + - approve + - reject + WireWithdrawalsPaginatedResponse: + title: WireWithdrawalsPaginatedResponse + type: object + properties: + transfers: + type: array + items: + type: object + properties: + baseValue: + type: number + description: The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future. + baseValueString: + type: string + description: The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future. + example: '2000000' + pattern: ^-?\d+$ + coin: + $ref: '#/components/schemas/CoinString' + comment: + nullable: true + type: string + description: A comment from the user + date: + type: string + description: The date this Transfer was last updated + format: date-time + title: ISO Date String + enterprise: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + organization: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + bitgoOrg: + type: string + enum: + - BitGo Trust + - BitGo New York + - BitGo Germany + - BitGo Switzerland + - BitGo Europe ApS + - Frankfurt DE Trust + - BitGo Singapore + - BitGo Korea + - BitGo Mena Fze + - BitGo Custody MENA FZE + - BitGo Sister Trust 1 + - BitGo Inc + entries: + type: array + items: + type: object + properties: + address: + type: string + description: An address affected by this Transfer + example: 2NAUwNgXaoFj2VVnSEvNLGuez8CfdU2UCMZ + valueString: + type: string + description: The change (in base units) in the address' balance represented as a string + example: '20000' + pattern: '"^-?\d+$"' + isChange: + type: boolean + description: True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer + wallet: + type: string + description: Only visible when the user has access to the wallet + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + value: + type: number + description: The change (in base units) in the address' balance + nftSymbol: + type: string + type: + type: string + enum: + - flushForwarderTokens + - walletFunding + - walletInitialization + - addressInitialization + - importedOutput + isPayGo: + type: boolean + description: True if this address is the BitGo PayGo wallet + token: + type: string + description: If this is a token entry, the token's symbol + example: omg + failed: + type: boolean + description: True if this entry is failed + associatedNativeCoinAddress: + type: string + description: The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries. + isFee: + type: boolean + description: Indicates if this entry is a fee + isInternal: + type: boolean + description: Indicates if this entry is internal + memo: + type: string + description: Memo associated with this entry + rewardAddress: + type: string + description: Reward address associated with this entry + subtype: + type: string + description: Subtype of this entry + backingFeeString: + type: string + description: Backing fee represented as a string + nftId: + type: string + description: NFT ID associated with this entry + tokenContractHash: + type: string + description: Token contract hash associated with this entry + isReward: + type: boolean + description: Indicates if this entry is a reward + required: + - address + description: An array of objects describing the change in address balances made as a result of this Transfer + history: + type: array + items: + type: object + properties: + action: + $ref: '#/components/schemas/TransferAction' + comment: + nullable: true + type: string + description: If this history object is of action "commented", this is the comment from the user + date: + type: string + description: The date of this history object + format: date-time + title: ISO Date String + transferId: + type: string + description: The ID of the transfer that this history object is associated with + txid: + type: string + description: The transaction ID of the transaction that this history object is associated with + user: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + required: + - action + - date + description: An audit log of events that have happened to the Transfer during its lifecycle + id: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + pendingApproval: + type: string + state: + $ref: '#/components/schemas/TransferState1' + stakingParams: + type: object + properties: + actionType: + type: string + coreDao: + type: object + properties: + amount: + type: string + format: number + expiration: + type: string + format: date-time + title: ISO Date String + fee: + type: number + rewardAddress: + type: string + validator: + type: string + version: + type: number + required: + - amount + - expiration + - fee + - rewardAddress + - validator + - version + requestId: + type: string + source: + type: string + enum: + - external + - internal + validator: + type: string + required: + - actionType + - requestId + txid: + type: string + description: The on-chain transaction id + example: b8a828b98dbf32d9fd1875cbace9640ceb8c82626716b4a64203fdc79bb46d26 + type: + allOf: + - $ref: '#/components/schemas/TransferType' + description: Defines whether or not this Transfer was sent or received by the user + usd: + type: number + description: The amount of USD of this Transfer (will be negative if it's a send) + usdRate: + type: number + description: The USD rate at the time this Transfer was created + value: + type: number + description: The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1) + valueString: + type: string + description: The total value (in base units) sent by this Transfer represented as a String + example: '2000000' + pattern: ^-?\d+$ + wallet: + type: string + example: 59cd72485007a239fb00282ed480da1f + pattern: ^[0-9a-f]{32}$ + walletType: + type: string + enum: + - backing + - cold + - custodial + - custodialPaired + - hot + - trading + description: Wallet type + replaces: + type: array + items: + type: string + description: Transaction IDs that this transfer replaces. + replacedBy: + type: array + items: + type: string + description: Transaction IDs that replace this transfer. + required: + - coin + - date + - entries + - history + - id + - state + - type + - valueString + - wallet + nextBatchPrevId: + type: string + required: + - transfers + WithdrawIntent: + title: WithdrawIntent + allOf: + - type: object + properties: + intentType: + type: string + enum: + - claim + amount: + type: object + properties: + symbol: + type: string + value: + type: string + required: + - symbol + - value + required: + - intentType + - $ref: '#/components/schemas/BaseStakeIntent' + WithdrawIntent2: + title: Generic claim unstake + allOf: + - $ref: '#/components/schemas/BaseStakeIntent2' + - type: object + properties: + intentType: + type: string + enum: + - claim + required: + - intentType + XRPAddress: + title: XRP Address + type: object + properties: + nonceTracker: + type: object + properties: + detectedMissingNonces: + type: array + items: + type: object + properties: + nonce: + type: number + isNonceLocked: + type: boolean + nonceLockExpireTime: + type: string + format: date + title: Date String + required: + - nonce + - isNonceLocked + detectedMissingNoncesData: + type: array + items: + type: object + properties: + nonce: + type: number + isNonceLocked: + type: boolean + nonceLockExpireTime: + type: string + format: date + title: Date String + required: + - nonce + - isNonceLocked + required: + - detectedMissingNonces + - detectedMissingNoncesData + required: + - nonceTracker + XRPWallet: + title: XRP Wallet + type: object + properties: + rootAddress: + type: string + pendingChainInitialization: + type: boolean + creationFailure: + type: array + items: + type: string + trustedTokens: + type: array + items: + allOf: + - type: object + properties: + state: + $ref: '#/components/schemas/TrustedTokenState' + - $ref: '#/components/schemas/Token' + required: + - rootAddress + - pendingChainInitialization + - creationFailure + XlmFeeInfo: + title: XLM + type: object + description: feeInfo (XLM) + properties: + height: + type: integer + description: Height of the ledger that provided the values + example: 123456 + xlmBaseFee: + type: string + description: Base network fee per transaction operation + example: '100' + xlmBaseReserve: + type: string + description: Base reserve used to calculate the minimum balance required by the network + example: '5000000' + XlmTxInfo: + title: XLM + type: object + description: txInfo (XLM) + properties: + fee: + type: integer + description: Network fee + example: 100 + operations: + type: array + items: + type: object + properties: + amount: + type: string + description: Amount in Lumens as string + example: '10.5' + asset: + type: object + properties: + code: + type: string + example: XLM + destination: + type: string + example: GCNFRU774FPHLV3HAB6CR54XJYFYITOLU6KS2J5BNCLDPYN7I3DOMIPY + type: + type: string + enum: + - payment + - createAccount + example: payment + sequence: + type: string + example: '35995558267060226' + source: + type: string + example: GBSGOXQNPULNPBX7XTHXP2GDBOZMHPIZOOA7CQXYTLHYKF5J2JDCF7LT + baseBalanceStrings: + title: baseBalanceStrings + type: object + properties: + balanceString: + type: string + description: String representation of the total balance of all wallets containing the given coin type. Guaranteed to not lose precision. + confirmedBalanceString: + type: string + description: String representation of the total balance of confirmed transactions for all wallets containing the given coin type. Guaranteed to not lose precision. + spendableBalanceString: + type: string + description: String representation of the total balance of all wallets containing the given coin which may be used as inputs for creating new transactions. Guaranteed to not lose precision. + required: + - balanceString + - confirmedBalanceString + - spendableBalanceString + forwardersBalanceResponse: + title: forwardersBalanceResponse + type: object + properties: + forwarders: + type: array + items: + type: object + properties: + address: + type: string + description: The forwarder address. + balance: + type: string + description: Current balance of the forwarder address. + required: + - address + - balance + required: + - forwarders + optionalBoolean: + title: optionalBoolean + type: boolean + optionalNumber: + title: optionalNumber + type: number + optionalString: + title: optionalString + type: string + optionalStringArray: + title: optionalStringArray + type: array + items: + type: string + optionalUnknownObject: + title: optionalUnknownObject + type: object + additionalProperties: {} + scopes: + type: object + description: Wrapper object for a list of scopes. Not paginated. + properties: + scopes: + description: A list of scopes available on your Enterprise. + type: array + items: + $ref: '#/components/schemas/AllWalletsScope' + tokenBalances: + title: tokenBalances + type: object + additionalProperties: + allOf: + - type: object + properties: + transferCount: + type: number + description: Number of transfers for the token. + heldBalanceString: + type: string + description: The difference between the balanceString and the spendableBalanceString. + required: + - transferCount + - $ref: '#/components/schemas/baseBalanceStrings' x-tagGroups: - name: API reference tags: