Admin Create Enterprise

post/api/v1/admin/enterprise

Admin route to create a new enterprise

Request Body

accountType string
Indicates which type of KYC process the enterprise has to complete
Allowed values: individual entity
additionalEnterpriseInfo object
regulator string
regulatorId string
contact object
Example: {"name":"Jane Doe","street":"1","street2":"Wall Street","suite":"3","city":"New York","state":"NY","postalCode":"10005","country":"USA"}
bitgoOrg string required
BitGo Organization related to this entity
Allowed values: 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 BitGo India
canAccessBorrowing boolean
whether the enterprise has the licence for BitGo Prime Borrowing
canAccessLending boolean
whether the enterprise has the licence for BitGo Prime Lending
canAccessSettlement boolean
whether the enterprise has the licence to utilize settlement functionality - requires a trading account
canAccessTrading boolean
whether the enterprise has the licence to access BitGo Trading - requires portfolio and a trading account
canCreateColdWallet boolean
whether the enterprise has the license to create cold wallets
canCreateCustodialWallet boolean
whether the enterprise has the license to create custodial wallets
canCreateHotWallet boolean
whether the enterprise has the license to create hot wallets
canCreateOffchainWallet boolean
whether the enterprise has the license to create trading accounts - only available for BitGo Trust entities with a DAS
cheetahAccountId string
CheetahAccountID is the unique ID for a BitGo Trust enterprise in Cheetah, which is the accounting system used by Trust.
Example: 101013
emergencyPhone string
Phone number for emergencies
Example: +11234567890
featureFlags array[string]
Feature flags to set on the enterprise during creation
Allowed values: avaxcAlwaysUseHop reactOnly enableBG23 btcHSMv3 enableMMI ethHSMv3 nftWallets checkPendingBalanceOnBuild enableEcdsaWallets specialVideoInstructions blockTransactionIfPending monthlyTrustReports nitroHSM snowflakeReports useEcdsaTssPaillierBlum useEcdsaTssPhase5 sendTxRequestFullNotification
legalIdentifiers object
Example: {"legalPersonName":"Pineapple Capital Inc"}
legalPersonName string required
Legal name of the Enterprise
licenses array[string]
New licences that are not stored as flags. Tax requires Portfolio Professional or Institutional
Allowed values: bitgoNetwork marginTrading mtGox portfolioAPI portfolioBasic portfolioProfessional portfolioInstitutional tax tradeAPI staking metaMaskInstitutional cryptoCompare elliptic instantFeeHotWallet bitgoTrustAsKrs escrow distributedCustodyWallet selfCustodyLightningWallet custodyLightningWallet advancedWallets
name string required
Example: Small Company
pricingPlan string
The pricing plan of the enterprise
pricingType object
id string
Unique identifier for the date range.
startDate string
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 string
An optional note describing the reason the auditable item was added/created.
endDate string
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 string
An optional note describing the reason the auditable item was ended.
name string
Allowed values: starter growth
primaryContactOne ofrequired
The email or user ID of the User who should be the new primary contact
Example: user@example.com
salesforceAccountId string
An Account ID in Salesforce for this enterprise. This is different than an Opportunity Id. The enterprise will be associated with the Salesforce Account corresponding to the given account id. Required for institutional enterprises.
salesforceOpportunityId string
An Opportunity ID in Salesforce for this enterprise. The enterprise will be associated with the Salesforce Account that the Opportunity belongs to. Required for institutional enterprises.
skipInvitedToEnterpriseEmail boolean
Determines whether the primaryContact receives an email telling them they were invited to the newly created enterprise.
skipAdditionalEnterpriseInfoAddressCheck boolean
Determines whether additionalEnterpriseInfo should contain street address for the enterprise
type string
The type of the enterprise such as Exchange or OTC
Allowed values: Asset Management (i.e. pension fund) Bank Broker/Dealer Casinos and Gambling Establishments Charity/NGO/Non-Profit/Foundation/Endowment Commodities/Futures Commission Merchant Crypto ATM Crypto Exchange Crypto Lending/Borrowing Custodian Family Office Foreign Correspondent Banks Government/State owned/Political Org. (i.e. Sovereign Wealth Fund) Individual Import/export companies Insurance Company Miner / Mining Pool Money Service Business Mutual Funds Non-Banking Financial Institution (NBFI) (ETF Issuer, Forex, Index Fund, Hedge Fund, RIA, Prime Brokerage) OTC Payment Platforms Private Equity / Venture Capital Private Investment Companies/International Business Corporations Professional Service Providers (lawyers, accountants, etc.) Real estate brokers, developers, and appraisers Retail Lender Software or Technology Company Tokens / Coins Traders / Trading (High Frequency, Proprietary, Market Maker) Agriculture Art dealer / Auctioneer Computer programmer/ administrator / software engineer / IT Education / Teacher Extractive industry (oil, gas, iron, steel, copper, earth metals) Film / TV / Entertainment (not adult) Healthcare Jewels / gemstones / precious metals Recreation / hospitality Student Unemployed / Retired High Net Worth Individual Law Enforcement / Military / Protective Services Weapons dealers Leveraged Investor Institutional Investors Financial Institution Execution Services Other
Example: OTC
upfrontPaymentStatus string
Allowed values: received waived pending overdue delinquent
preferredUi string
Allowed value: bg23
usersViewAllWallets boolean
All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself
Example: true
videoIdWaived boolean
Whether the customer has waived the need for Video ID on low risk withdrawals.
Example: true

200 Response

accountType string
Indicates which type of KYC process the enterprise has to complete
Allowed values: individual entity
additionalEnterpriseInfo object
regulator string
regulatorId string
contact object
Example: {"name":"Jane Doe","street":"1","street2":"Wall Street","suite":"3","city":"New York","state":"NY","postalCode":"10005","country":"USA"}
admin object
policy object
approvedVideoIdUsers array[string]
IDs of users on the enterprise that are approved for custodial video ID
Example: 59cd72485007a239fb00282ed480da1f
approvalsRequired integer
How many Enterprise Admins are required for action to fire
Example: 1
bitgoEthKey string
The public portion of the ethererum key generated for the enterprise fee address
bitgoOrg string
BitGo Organization related to this entity
Allowed values: 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 BitGo India
canAccessBorrowing boolean
whether the enterprise has the licence for BitGo Prime Borrowing
canAccessLending boolean
whether the enterprise has the licence for BitGo Prime Lending
canAccessSettlement boolean
whether the enterprise has the licence to utilize settlement functionality
canAccessTrading boolean
whether the enterprise has the licence to access BitGo Trading
canCreateColdWallet boolean
whether the enterprise has the license to create cold wallets
canCreateCustodialWallets boolean
whether the enterprise has the license to create custodial wallets
canCreateHotWallet boolean
whether the enterprise has the license to create hot wallets
canCreateOffchainWallet boolean
whether the enterprise has the license to create trading accounts
contract object
startDate string
The contract start date for an enterprise
endDate string
The contract end date for an enterprise
custodyServicesAgreement object
Information about the signed custody services agreement
user string required
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
date string <date-time>required
The date when the agreement was signed
ip string
The IP address from which the agreement was signed
bitgoOrg string
The Trust entity for which the CSA was signed. Used to prevent switching custodians after signing. May be undefined for legacy agreements signed before this field was added.
Allowed values: 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 BitGo India
emergencyPhone string
Phone number for emergencies
Example: +11234567890
ethFeeAddress string
The eth fee address used to pay for network transaction fees of this enterprise
freeze object
time string <date-time>
When the freeze started
expires string <date-time>
When the freeze will end
id string required
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
kycState string
Allowed values: unverified approved rejected
latestSAVersionSigned integer
Example: 0
licenses string
Allowed values: bitgoNetwork marginTrading mtGox portfolioAPI portfolioBasic portfolioProfessional portfolioInstitutional tax tradeAPI staking metaMaskInstitutional cryptoCompare elliptic instantFeeHotWallet bitgoTrustAsKrs escrow distributedCustodyWallet selfCustodyLightningWallet custodyLightningWallet advancedWallets
mutablePolicyWindow integer
Time in seconds after which policies on this Enterprise cannot be updated
Example: 172800
name string
Example: Small Company
pricingPlan string
The pricing plan of the enterprise
pricingTypes array[object]
name object
datesActive array[object]
activePricingType object
id string
Unique identifier for the date range.
startDate string
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 string
An optional note describing the reason the auditable item was added/created.
endDate string
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 string
An optional note describing the reason the auditable item was ended.
name string
Allowed values: starter growth
kits array[object]
name object
datesActive array[object]
activeKits array[object]
id string
Unique identifier for the date range.
startDate string
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 string
An optional note describing the reason the auditable item was added/created.
endDate string
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 string
An optional note describing the reason the auditable item was ended.
name string
Allowed values: default wallet custody liquidity cryptoCompare
primaryContact string
The Id of the User who is the primary contact
Example: 59cd72485007a239fb00282ed480da1f
Match pattern: ^[0-9a-f]{32}$
preferredUi string
The UI that this enterprise prefers to use
Allowed value: bg23
totalWalletsCount integer
The total number of wallets in the enterprise
Example: 1
usersViewAllWallets boolean
All users on the enterprise can view all enterprise wallets, even if they are not viewers on the wallet itself
Example: true
videoIdWaived boolean
Whether the customer has waived the need for Video ID on low risk withdrawals.
Example: true

400 Response

error string required
Human-readable error message
requestId string required
Client request id
context object
Properties that apply to a specific error name
name string required
Error code