Skip to content

Commit 93c6272

Browse files
authored
Merge pull request #277 from BitGo/update-bitgo-api-docs
Update API reference on BitGo Developer Portal
2 parents 6ec0e1f + f5b3ab3 commit 93c6272

File tree

1 file changed

+228
-37
lines changed

1 file changed

+228
-37
lines changed

api.yaml

Lines changed: 228 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,14 @@ tags:
107107
- Trade orders - Subscribe to live status updates for your trade orders, including individual fills for an order. Send messages when statuses update.
108108
- name: Trade Falcon
109109
description: Service for our trading platform
110+
- name: User Management Service (Internal)
111+
description: APIs for user management service
112+
- name: User Management Service (Admin)
113+
description: APIs for user management service
114+
- name: Admin Console
115+
description: APIs for admin console
116+
- name: Admin - Roles
117+
description: Administrative APIs for managing and viewing roles across all organizations
110118
paths:
111119
/api/v2/{coin}/pendingapprovals/{approvalId}:
112120
put:
@@ -8895,7 +8903,7 @@ paths:
88958903
- cryptoCompare
88968904
/api/document-service/v1/documents:
88978905
post:
8898-
summary: Create a new document
8906+
summary: Add KYB Documents
88998907
description: Creates a new document and returns presigned URLs for file uploads
89008908
operationId: documents.post.v1.documents
89018909
tags:
@@ -8934,8 +8942,8 @@ paths:
89348942
$ref: '#/components/schemas/GetInternalDocumentsInternalError'
89358943
/api/document-service/v1/documents/{documentId}:
89368944
get:
8937-
summary: Retrieve document information
8938-
description: Get details about a specific document including file information. Users can only access documents they created.
8945+
summary: Get KYB Document
8946+
description: Get details about a specific KYB document including file information. Users can only access documents they created.
89398947
operationId: documents.get.v1.documents.id
89408948
tags:
89418949
- Know Your Business (KYB)
@@ -8986,7 +8994,7 @@ paths:
89868994
$ref: '#/components/schemas/GetInternalDocumentsInternalError'
89878995
/api/document-service/v1/documents/{documentId}/files/{fileId}:
89888996
patch:
8989-
summary: Update file upload status
8997+
summary: Update KYB Document Status
89908998
description: Update the status of a file after it has been uploaded to the presigned URL. This endpoint is called by the client after successful upload.
89918999
operationId: documents.patch.v1.documents.id.files.id
89929000
tags:
@@ -9050,7 +9058,7 @@ paths:
90509058
$ref: '#/components/schemas/GetInternalDocumentsInternalError'
90519059
/api/document-service/v1/documents/{documentId}/verify:
90529060
post:
9053-
summary: Verify document upload status
9061+
summary: Verify KYB Document Status
90549062
description: Verify the upload status of all files in a document by checking with the storage provider. Updates file and document statuses based on actual verification results.
90559063
operationId: documents.post.v1.documents.id.verify
90569064
tags:
@@ -40053,6 +40061,30 @@ components:
4005340061
properties:
4005440062
walletMultisigType: onchain
4005540063
type: ETH
40064+
StoryStakingRequestPOSTBodyExample:
40065+
summary: Story Protocol Staking Request POST Body Example
40066+
value:
40067+
clientId: e055adbc-66a3-4ccd-9a9d-726a05bca0cf
40068+
amount: '1536000000000000000000'
40069+
type: STAKE
40070+
validator: '0x03a2911a2ad7158b2fe68550cfc77c608974363db76d7a368cb1ee8bbdb2d76062'
40071+
StoryStakingRequestWithoutDelegationsExample:
40072+
summary: Story Protocol Staking Request Example
40073+
value:
40074+
id: e155adbc-66a3-4ccd-9a9d-726a05bca0cf
40075+
clientId: f154adbc-26a3-4acd-8a9d-726a05bca0dr
40076+
requestingUserId: 6092e75c451052000636831deb797bd1
40077+
type: STAKE
40078+
enterpriseId: 61c0ff41174c4e0007ae78b2a0bea1ec
40079+
walletId: 63110fc78b108e00071df2d3c3879dd0
40080+
walletType: hot
40081+
withdrawalAddress: '0xf5b9becc5e7e68173a5fc1906a2a5574e884da40'
40082+
coin: tip
40083+
status: NEW
40084+
statusModifiedDate: 2025-11-06T14:00:00.000Z
40085+
createdDate: 2025-11-06T14:00:00.000Z
40086+
amount: '1536000000000000000000'
40087+
validatorAddress: '0x03a2911a2ad7158b2fe68550cfc77c608974363db76d7a368cb1ee8bbdb2d76062'
4005640088
StxStakingRequestPOSTBodyExample:
4005740089
summary: STX Staking Request POST Body Example
4005840090
value:
@@ -41684,16 +41716,6 @@ components:
4168441716
code: AccessDenied
4168541717
message: License not added for enterprise
4168641718
status: 403
41687-
Forbidden1:
41688-
description: Forbidden
41689-
content:
41690-
application/json:
41691-
schema:
41692-
$ref: '#/components/schemas/GeneralError'
41693-
example:
41694-
code: AccessDenied
41695-
message: Access is denied
41696-
status: 403
4169741719
ForbiddenError:
4169841720
description: Forbidden
4169941721
content:
@@ -41724,16 +41746,6 @@ components:
4172441746
code: NotFound
4172541747
message: Touchpoint not found
4172641748
status: 404
41727-
NotFound1:
41728-
description: Not Found
41729-
content:
41730-
application/json:
41731-
schema:
41732-
$ref: '#/components/schemas/GeneralError'
41733-
example:
41734-
code: NotFound
41735-
message: The specified resource was not found
41736-
status: 404
4173741749
NotFoundError:
4173841750
description: Not Found
4173941751
content:
@@ -41754,16 +41766,6 @@ components:
4175441766
code: Internal_Server_Error
4175541767
message: Database is down
4175641768
status: 500
41757-
ServerError1:
41758-
description: Internal Server Error
41759-
content:
41760-
application/json:
41761-
schema:
41762-
$ref: '#/components/schemas/GeneralError'
41763-
example:
41764-
code: InternalServerError
41765-
message: An unexpected error occurred
41766-
status: 500
4176741769
Unauthorized:
4176841770
description: Unauthorized
4176941771
content:
@@ -47620,6 +47622,7 @@ components:
4762047622
- SEI
4762147623
- SOMI
4762247624
- SOL
47625+
- STORY
4762347626
- STX
4762447627
- SUI
4762547628
- SUI:WAL
@@ -49467,6 +49470,7 @@ components:
4946749470
- $ref: '#/components/schemas/SuiDelegationProperties'
4946849471
- $ref: '#/components/schemas/StxDelegationProperties'
4946949472
- $ref: '#/components/schemas/SomiDelegationProperties'
49473+
- $ref: '#/components/schemas/StoryDelegationProperties'
4947049474
- $ref: '#/components/schemas/SolDelegationProperties'
4947149475
- $ref: '#/components/schemas/PolyxDelegationProperties'
4947249476
- $ref: '#/components/schemas/NearDelegationProperties'
@@ -49500,6 +49504,7 @@ components:
4950049504
- TRX
4950149505
- POLYX
4950249506
- SOMI
49507+
- STORY
4950349508
- VET
4950449509
- UNKNOWN
4950549510
DelegationRequest:
@@ -57967,7 +57972,7 @@ components:
5796757972
- $ref: '#/components/schemas/GrantTypes'
5796857973
description: Represents the login method that was used
5796957974
user:
57970-
$ref: '#/components/schemas/User2'
57975+
$ref: '#/components/schemas/User1'
5797157976
warning:
5797257977
type: string
5797357978
required:
@@ -66781,6 +66786,7 @@ components:
6678166786
- $ref: '#/components/schemas/WflrStakingRequestEntityProperties'
6678266787
- $ref: '#/components/schemas/WflrUnstakingRequestEntityProperties'
6678366788
- $ref: '#/components/schemas/SomiStakingRequestEntityProperties'
66789+
- $ref: '#/components/schemas/StoryStakingRequestEntityProperties'
6678466790
- $ref: '#/components/schemas/WflrClaimRewardsRequestEntityProperties'
6678566791
required:
6678666792
- id
@@ -66904,6 +66910,7 @@ components:
6690466910
- WFLR_STAKE
6690566911
- WFLR_UNSTAKE
6690666912
- SOMI_STAKE
66913+
- STORY_STAKE
6690766914
- VET_STAKE
6690866915
- WFLR_CLAIM_REWARDS
6690966916
- UNKNOWN
@@ -67808,6 +67815,30 @@ components:
6780867815
- pendingChainInitialization
6780967816
- creationFailure
6781067817
- lastMemoId
67818+
StoryDelegationProperties:
67819+
title: STORY Delegation Properties
67820+
allOf:
67821+
- $ref: '#/components/schemas/DelegationProperties'
67822+
- type: object
67823+
properties:
67824+
validatorAddress:
67825+
type: string
67826+
description: The BLS public key of the validator.
67827+
stakingPeriod:
67828+
type: string
67829+
format: bigInteger
67830+
description: Staking period (0 for flexible staking).
67831+
StoryStakingRequestEntityProperties:
67832+
title: STORY staking request entity properties
67833+
allOf:
67834+
- $ref: '#/components/schemas/StakingRequestEntityProperties'
67835+
- type: object
67836+
properties:
67837+
validatorAddress:
67838+
type: string
67839+
description: BLS public key of the validator to delegate to.
67840+
required:
67841+
- validatorAddress
6781167842
StxDelegationProperties:
6781267843
title: STX Delegation Properties
6781367844
allOf:
@@ -70480,6 +70511,155 @@ components:
7048070511
type: string
7048170512
description: |
7048270513
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.
70514+
consolidateId:
70515+
$ref: '#/components/schemas/Id'
70516+
description: Consolidation ID if this transfer is part of a consolidation
70517+
txRequestId:
70518+
type: string
70519+
description: Associated transaction request ID
70520+
goStakingRequestId:
70521+
type: string
70522+
description: Associated GO staking request ID
70523+
subType:
70524+
type: string
70525+
description: Transfer subtype
70526+
enum:
70527+
- ofc_withdrawal
70528+
- ofc_deposit
70529+
- ofc_unstake
70530+
- ofc_stake
70531+
feeCoin:
70532+
type: string
70533+
description: The coin used to pay the fee (for cross-chain transactions)
70534+
instant:
70535+
type: boolean
70536+
description: Whether this is an instant transaction
70537+
instantId:
70538+
type: string
70539+
description: The instant transaction ID if applicable
70540+
isFee:
70541+
type: boolean
70542+
description: Whether this transfer represents a fee
70543+
isReward:
70544+
type: boolean
70545+
description: Whether this transfer represents a staking reward
70546+
isUnlock:
70547+
type: boolean
70548+
description: Whether this transfer represents an unlock operation
70549+
metadata:
70550+
type: array
70551+
description: Additional metadata associated with the transfer
70552+
items:
70553+
type: object
70554+
properties:
70555+
key:
70556+
type: string
70557+
value:
70558+
type: string
70559+
sendAccounting:
70560+
type: array
70561+
description: Accounting breakdown for send transactions
70562+
items:
70563+
type: object
70564+
properties:
70565+
type:
70566+
type: string
70567+
amountString:
70568+
type: string
70569+
nOuts:
70570+
type: integer
70571+
amount:
70572+
type: integer
70573+
id:
70574+
type: string
70575+
createdTime:
70576+
type: string
70577+
format: date-time
70578+
description: The time this transfer was created
70579+
approvedTime:
70580+
type: string
70581+
format: date-time
70582+
description: The time this transfer was approved
70583+
rejectedTime:
70584+
type: string
70585+
format: date-time
70586+
description: The time this transfer was rejected
70587+
signedTime:
70588+
type: string
70589+
format: date-time
70590+
description: The time this transfer was signed
70591+
unconfirmedTime:
70592+
type: string
70593+
format: date-time
70594+
description: The time this transfer became unconfirmed
70595+
confirmedTime:
70596+
type: string
70597+
format: date-time
70598+
description: The time this transfer was confirmed
70599+
removedTime:
70600+
type: string
70601+
format: date-time
70602+
description: The time this transfer was removed
70603+
commentedTime:
70604+
type: string
70605+
format: date-time
70606+
description: The time this transfer was commented on
70607+
failedTime:
70608+
type: string
70609+
format: date-time
70610+
description: The time this transfer failed
70611+
regeneratedTime:
70612+
type: string
70613+
format: date-time
70614+
description: The time this transfer was regenerated
70615+
replacedTime:
70616+
type: string
70617+
format: date-time
70618+
description: The time this transfer was replaced
70619+
replacingTime:
70620+
type: string
70621+
format: date-time
70622+
description: The time this transfer started replacing another
70623+
abandonedTime:
70624+
type: string
70625+
format: date-time
70626+
description: The time this transfer was abandoned
70627+
signedDate:
70628+
type: string
70629+
format: date-time
70630+
description: The date this transfer was signed (legacy field)
70631+
customerApprovedTime:
70632+
type: string
70633+
format: date-time
70634+
description: The time this transfer was approved by the customer (trust transfers)
70635+
idVerificationTime:
70636+
type: string
70637+
format: date-time
70638+
description: The time identity verification was completed (trust transfers)
70639+
trustSignedTime:
70640+
type: string
70641+
format: date-time
70642+
description: The time this transfer was signed by trust (trust transfers)
70643+
trustFinalApprovalTime:
70644+
type: string
70645+
format: date-time
70646+
description: The time this transfer received final trust approval (trust transfers)
70647+
walletLabel:
70648+
type: string
70649+
description: Label of the wallet associated with this transfer
70650+
enterpriseName:
70651+
type: string
70652+
description: Name of the enterprise associated with this transfer
70653+
elliptic:
70654+
type: string
70655+
description: Elliptic risk score information (trust transfers)
70656+
senderInformationVerified:
70657+
type: boolean
70658+
description: Whether sender information has been verified (trust transfers)
70659+
buildParams:
70660+
type: object
70661+
description: Parameters used to build the transaction
70662+
additionalProperties: true
7048370663
entries:
7048470664
type: array
7048570665
description: An array of objects describing the change in address balances made as a result of this Transfer
@@ -71117,6 +71297,17 @@ components:
7111771297
example: 'true'
7111871298
TransferState:
7111971299
type: string
71300+
description: |
71301+
The state of the transfer. Includes the following:
71302+
- `confirmed`: The transfer is confirmed on chain.
71303+
- `failed`: BitGo failed to confirm the transfer on chain. You must retry the transaction.
71304+
- `initialized`: The initial state when creating a transfer.
71305+
- `pendingApproval`: The transfer requires admin approval to proceed.
71306+
- `rejected`: The transfer was rejected by an admin.
71307+
- `removed`: A network re-org occurred, causing the confirmed transfer to be removed from the blockchain.
71308+
- `replaced`: The transfer was stuck due to having a low fee and was replaced by a new transfer with a higher fee.
71309+
- `signed`: The transfer was approved by an admin (if required) and then signed by BitGo.
71310+
- `unconfirmed`: The signed transaction was sent to the network, and is pending on-chain validation.
7112071311
example: confirmed
7112171312
enum:
7112271313
- confirmed
@@ -72481,7 +72672,7 @@ components:
7248172672
- pending
7248272673
- rejected
7248372674
- unverified
72484-
User2:
72675+
User1:
7248572676
title: User
7248672677
allOf:
7248772678
- type: object

0 commit comments

Comments
 (0)