How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

tZERO Issuance & Secondary Markets API

REST/JSON API for creating individual broker-dealer accounts, triggering and reviewing KYC on investors, browsing primary offerings and managing investments, linking bank accounts and moving funds, reading balances, retrieving market schedules and public price history/snapshots, and placing, listing and cancelling orders on the tZERO ATS. Authenticated with an x-apikey header plus a bearer JWT obtained from POST /auth/v1/api/token.

tZERO Issuance & Secondary Markets API is one of 3 APIs that tZERO publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Trading, Onboarding, KYC, Investments, and Market Data. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.

This API exposes 33 operations across 27 paths, organized into 8 resource areas, and defines 72 schemas. It is described by OpenAPI 3.0.3.

Requests are made against a single base URL, https://gateway-web-api.tzero.com/app.

33 operations 27 paths 72 schemas 4 DELETE14 GET1 PATCH11 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
Base URL
https://gateway-web-api.tzero.com/app
Authentication
API Key, HTTP Bearer, refreshToken
Resource Areas
8

Authentication & Security 3

tZERO Issuance & Secondary Markets API declares 3 security schemes for authenticating requests. An API key is passed in the header as x-apikey (x-api-key). It accepts HTTP bearer tokens (JWT) (bearerAuth). It defines a refreshToken scheme (refreshToken).

Paths & Operations 33

Across 27 paths, the API surfaces 33 operations — 4 DELETE, 14 GET, 1 PATCH, 11 POST, 3 PUT. They span 8 resource areas: Onboarding, Investments, Bank Accounts, Balance, Authorization, Documents, Markets, Trading. Each is listed below with its method, path, parameters, and response codes.

Onboarding 9

Managing accounts and users (create account, KYC, trusted contact, financial info).

POST
/pi/v1/accounts/individual
Onboard Individual account
onboardIndividualAccount body → 201400401403404422500
PUT
/pi/v1/accounts/{accountId}/users/{userId}
Update user of the account
updateInvestor 2 params body → 200400401404500
GET
/pi/v1/accounts/{accountId}
Get account by ID
getAccountById 1 param → 200400401403404500
GET
/pi/v1/accounts/{accountId}/users/{userId}/financialInfo
Get financial information for user
getFinancialInfo 2 params → 200400401403404500
PATCH
/pi/v1/accounts/{accountId}/users/{userId}/financialInfo
Add or update financial information for user
patchFinancialInfo 2 params body → 200400401403404500
POST
/pi/v1/accounts/{accountId}/trustedContact
Add trusted contact
addTrustedContact 1 param body → 200400401403404500
DELETE
/pi/v1/accounts/{accountId}/trustedContact/{trustedContactUserId}
Remove trusted contact
removeTrustedContact 2 params → 204400401403404500
GET
/pi/v1/users/{userId}/kyc
Get KYC status for user
getUserKycStatus 1 param → 200401403404500
POST
/pi/v1/users/{userId}/kyc
Trigger KYC for user
triggerKyc 1 param body → 200400401403404500
Investments 8

Investments and assets (create, update, submit, cancel, agreements).

GET
/pi/v1/assets
Get assets
→ 200401403
POST
/pi/v1/assets/{assetId}/investments
Create investment
createInvestment 1 param body → 201400401403404500
PUT
/pi/v1/assets/{assetId}/investments
Update investment
updateInvestment 1 param body → 200400401403404500
PUT
/pi/v1/assets/{assetId}/investments/{investmentId}/payment
Add Payment details to the investment on file.
addInvestmentPayment 2 params body → 200400401403404500
GET
/pi/v1/investments/accounts/{accountId}
Get all investments for account
getInvestmentsByAccount 1 param → 200401403404500
POST
/pi/v1/investments/{investmentId}/submit
Submit investment
submitInvestment 1 param body → 200400401403404500
DELETE
/pi/v1/investments/{investmentId}
Cancel investment
cancelInvestment 1 param body → 200400401403404500
POST
/pi/v1/assets/{assetId}/investments/{investmentId}/agreement
Sign MSA for investment
signInvestmentAgreement 2 params body → 200400401403404500
Bank Accounts 4

Managing bank accounts linked to an investor account (add, list, delete, verify).

POST
/pi/v1/accounts/{accountId}/bankAccounts
Add bank account
addBankAccount 1 param body → 201400401403404500502
GET
/pi/v1/accounts/{accountId}/bankAccounts
Get bank accounts
getBankAccounts 1 param → 200401403404500502
DELETE
/pi/v1/accounts/{accountId}/bankAccounts/{bankAccountId}
Remove bank account
removeBankAccount 2 params → 204401403404500502
POST
/pi/v1/accounts/{accountId}/bankAccounts/{bankAccountId}/transfer
Initiate Deposit/Withdrawal from/to the Customer's Account
transfer 2 params body → 201400401403404500502
Balance 1

Retrieving fiat balances and asset position balances for an account.

GET
/pi/v1/accounts/{accountId}/balances
Get Account Balance
getAccountBalance 1 param → 200401403404500
Authorization 2
POST
/auth/v1/api/token
Get Bearer token
loginUsingPOST body → 200401403404
POST
/auth/v1/api/refresh
Refresh Token
refreshTokenUsingPOST 1 param → 200401403404
Documents 1

Document generation for wire instructions.

GET
/pi/v1/docs/assets/{assetId}/accounts/{accountId}/wire-instructions
Download wire instructions.
getWireInstructions 3 params → 200400401403404500
Markets 3

Market schedule information including pre-market, regular, and post-market hours.

GET
/markets/v1/schedules
Get market schedules
getMarketSchedules 4 params → 200400500
GET
/markets/v1/mdt/public-pricehistory/{symbol}
Get Price History for a Symbol
1 param → 200
GET
/markets/v1/mdt/public-snapshots/{symbol}
Get marketdata snapshot for a symbol
1 param → 200
Trading 5

Order management for secondary-market trading (fees, submit, cancel, list orders).

GET
/trading/v1/fee
Calculates an estimated fee for the trade.
getOrderFee 3 params → 200400401403500
POST
/trading/v1/accounts/{accountId}/orders
Creates an order for an Account
createOrder 1 param body → 201400401403500503
GET
/trading/v1/accounts/{accountId}/orders
Gets All orders placed for an Account.
getOrders 7 params → 200401403500
GET
/trading/v1/accounts/{accountId}/orders/{orderId}
Retrieve a single order for the given Order Id
getOrder 2 params → 200401403404500
DELETE
/trading/v1/accounts/{accountId}/orders/{orderId}
Attempts to a Cancel a OPEN Order
cancelOrder 2 params → 202400401403404422500503

Schemas 72

The contract defines 72 schemas that model the data the API accepts and returns. The most detailed are OrderResponse (23 properties), SymbolData (17 properties), CreateOrderResponse (15 properties), AgreementDTO (14 properties). Each schema is shown below with its type and property counts.

ErrorResponse
object
Error response body for validation and business-rule failures. Contains a list of errors; each item has code, message, and optional field (JSON path).
1 property
ErrorItem
object
4 properties
Message
object
3 properties 3 required
TokenRequest
object
2 properties 2 required
TokenResponse
object
3 properties 2 required
CreateIndividualAccountRequest
object
5 properties 2 required
InvestmentProfile
object
2 properties 2 required
TermsAcceptRequest
object
3 properties 2 required
InvestmentObjective
string
Case-insensitive when deserializing.
EmploymentStatus
string
Case-insensitive when deserializing.
EmploymentRequest
object
3 properties 1 required
InvestorRequest
object
13 properties 6 required
AddressRequest
object
10 properties 5 required
PhoneNumberRequest
object
5 properties
PhoneNumberType
string
GovernmentIdentifierRequest
object
3 properties
GovernmentIdentifierType
string
AccountTrustedContact
object
6 properties 5 required
TrustedContactRequest
object
7 properties 5 required
TrustedContactResponse
object
2 properties
PatchFinancialInfoRequest
object
All fields optional except transactionId; only provided fields are updated.
3 properties 1 required
FinancialInfoResponse
object
5 properties
TriggerKycRequest
object
1 property 1 required
KycResponse
object
7 properties
PostKycResponse
object
3 properties
AccountResponse
object
8 properties
EmploymentResponse
object
3 properties
InvestorUpdateResponse
object
Updated investor.
2 properties
InvestorResponse
object
13 properties
TrustedContactDetails
object
Trusted contact.
7 properties
TrustedContactAddress
object
6 properties
AddressResponse
object
13 properties
PhoneNumberResponse
object
8 properties
GovernmentIdentifierResponse
object
6 properties
UpdateInvestorRequest
object
2 properties 2 required
InvestorUpdateRequest
object
Investor update payload. Notes: - Email cannot be changed after account creation (if provided it may be rejected). - dateOfBirth is optional; when provided (YY…
11 properties
AssetsResponse
object
1 property 1 required
Asset
object
Asset details.
14 properties
CodeLabelDescription
object
3 properties
AgreementDTO
object
14 properties
CreateInvestmentRequest
object
5 properties 3 required
UpdateInvestmentRequest
object
Request body for updating an investment (amount, payment details).
9 properties 3 required
CreatePaymentRequest
object
Request body for updating payment details on an investment. Only WIRE and ACH payment types are supported.
4 properties 3 required
CreateBankAccountRequest
object
Request body for linking a new bank account.
8 properties 7 required
BankAccountDetails
object
6 properties
CreateBankTransferRequest
object
Request body for initiating a bank transfer account.
4 properties 3 required
CreateBankTransferResponse
object
Response object for bank transfer transaction.
6 properties 5 required
AccountBalanceResponse
object
1 property
BalanceDetails
object
3 properties
FiatBalance
object
5 properties
PositionBalance
object
4 properties
SubmitInvestmentRequest
object
2 properties 2 required
CancelInvestmentRequest
object
2 properties 2 required
InvestmentSignatureRequest
object
4 properties 4 required
InvestmentDetails
object
11 properties
InvestmentDTO
Investment object returned in list; same shape as InvestmentDetails.
InvestmentStatusEnum
string
PaymentTypeEnum
string
Supported payment types. Only WIRE and ACH are allowed.
ScheduleResponse
object
Wrapper response for market schedule queries. Contains either a list of schedules in dto or a list of errors.
2 properties
MarketSchedule
object
Pre-market, market, and post-market hours for a single trading day.
6 properties 2 required
SubSchedule
object
A portion of a single day defining open and close times for a trading session.
2 properties 2 required
ScheduleError
object
Error item returned by the schedule endpoints.
2 properties
SymbolData
object
Represents market data for a symbol.
17 properties
PriceHistory
object
Represents Price History data for a symbol.
7 properties
CreateOrderRequest
object
9 properties 8 required
CreateOrderResponse
object
15 properties
CancelOrderResponse
object
3 properties 3 required
OrdersListResponse
object
1 property 1 required
OrderResponse
object
23 properties 16 required
OrderExecution
object
12 properties 5 required
FeeResponse
object
3 properties 3 required
CostBasis
object
4 properties 4 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

tzero-issuance-secondary-markets-openapi.json Raw ↑

Other APIs tZERO publishes across the network.

tZERO Institutional API
tZERO FIX API
Where this information came from

This is an independent, third-party profile of tZERO Issuance & Secondary Markets API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.