{ "openapi": "3.0.0", "info": { "version": "5.3.0", "title": "Account Information", "description": "Retrieve real-time account and transaction information for all your authorized BMO accounts without the need to switch applications.", "x-api-id": "BMO-ENT-7673dc36-7935-44e4-aeff-3c9ddd5d8e85", "x-bmoservicedomain-name": "Commercial-sb", "x-api-specification-compliant": true, "x-audience": "company-internal", "x-bmo-api-type": "internal-api", "x-bmo-api-provider-id": 3284, "x-ibm-name": "account-information", "x-ibm-summary": "" }, "tags": [ { "name": "Account Information", "description": "Query all information for a set of accounts provided in the payload" }, { "name": "Account Transactions", "description": "Search for account transactions" } ], "paths": { "/accounts": { "get": { "x-dataclassification-code": "Confidential", "operationId": "Search for Accounts", "tags": [ "Account Information" ], "description": "Search for Authorized Accounts", "summary": "Search for Authorized Accounts", "parameters": [ { "name": "accountIds", "in": "query", "description": "Comma separated list of account ids", "style": "form", "explode": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "name": "startTime", "in": "query", "description": "Please ignore Start time", "schema": { "type": "string", "format": "date" } }, { "name": "endTime", "in": "query", "description": "Please ignore End time", "schema": { "type": "string", "format": "date" } }, { "name": "resultType", "in": "query", "description": "Flag to indicate if you want a lightweight array of descriptors or full account details. If set to `lightweight`, should only return the fields associated with the `AccountDescriptor` entity. This field is not required, but defaults to lightweight", "required": false, "schema": { "type": "string", "enum": [ "lightweight", "details" ], "default": "lightweight" } }, { "name": "offset", "in": "query", "description": "Opaque cursor used by the provider to send the next set of records", "schema": { "type": "string" } }, { "name": "limit", "in": "query", "description": "Number of elements that the consumer wishes to receive - Providers should implement reasonable defaults and maximum", "schema": { "type": "integer" } }, { "name": "x-api-key", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "authorization", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Array of accounts", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAccounts" }, "examples": { "example1": { "value": { "page": { "nextOffset": "2", "total": 3 }, "links": { "next": { "href": "/accounts?offSet=2&limit=10" } }, "accounts": [ { "depositAccount": { "accountId": "8be3jd08sndsj33h2uhb423j", "accountNumber": "4809372058", "description": "dposit acc desc", "hostAccountName": "My Checking Acc XXXX3223", "accountType": "DDA", "currency": { "currencyCode": "USD" } } }, { "depositAccount": { "accountId": "6acs6d87c8as9c7s97c7sd90", "accountNumber": "994208420", "description": "account 2 description", "hostAccountName": "Deposit account XXXX943", "accountType": "FCA", "currency": { "currencyCode": "EUR" } } }, { "locAccount": { "accountId": "2w0d5a4sdf0fx0x1", "accountNumber": "9001201858", "description": "locAccount cad", "hostAccountName": "My loc Acc XXXX9979", "accountType": "LOAN", "currency": { "currencyCode": "CAD" } } } ] } } } } } }, "400": { "description": "The request was not accepted, often caused by a missing required parameter", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "401": { "description": "API key provided was invalid", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "403": { "description": "Forbidden - the user is not authorized to use this resource", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "404": { "description": "The requested resource could not be found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "429": { "description": "Too many requests hit the API in too short of a period", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "504": { "description": "Integration or Backend Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } } } } }, "/accounts/{accountId}": { "get": { "x-dataclassification-code": "Confidential", "operationId": "Get an Account", "tags": [ "Account Information" ], "description": "Get an Account", "summary": "Get an Account", "parameters": [ { "name": "accountId", "in": "path", "description": "Account Identifier", "required": true, "schema": { "type": "string" } }, { "name": "x-api-key", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "authorization", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "This can be one of LoanAccount, DepositAccount, LocAccount, or InvestmentAccount", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAccount" }, "examples": { "example1": { "value": { "depositAccount": { "accountId": "b99bb688b7cf877ef111afd9c23110059b2912f37b5c24c6b9d2811850d945fa", "accountNumber": "1095355", "currency": { "currencyCode": "USD" }, "hostAccountName": "XIM USD1", "accountType": "DDA", "fiAttributes": [ { "name": "1DayFloat", "value": 1706739.05 }, { "name": "2orMoreDaysFloat", "value": 2444.77 }, { "name": "OpenDate", "value": "2003-06-26" }, { "name": "StatementName", "value": "ALPINE TOTAL DYNAMIC DIVIDEND FUND" } ], "status": "OPEN", "balanceAsOf": "1975-11-18", "currentBalance": -622390531.27, "interestYtd": 0, "priorInterestRate": 0.5 } } } } } } }, "400": { "description": "The request was not accepted, often caused by a missing required parameter", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "401": { "description": "API key provided was invalid", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "403": { "description": "Forbidden - the user is not authorized to use this resource", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "404": { "description": "The requested resource could not be found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "429": { "description": "Too many requests hit the API in too short of a period", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "504": { "description": "Integration or Backend Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } } } } }, "/accounts/{accountId}/transactions": { "get": { "x-dataclassification-code": "Confidential", "operationId": "Search for Account Transactions", "tags": [ "Account Transactions" ], "description": "Search for Account Transactions", "summary": "Search for Account Transactions", "parameters": [ { "name": "accountId", "in": "path", "description": "Account Identifier", "required": true, "schema": { "type": "string" } }, { "name": "startTime", "in": "query", "description": "Start time for use in retrieval of transactions", "schema": { "type": "string", "format": "date" } }, { "name": "endTime", "in": "query", "description": "End time for use in retrieval of transactions", "schema": { "type": "string", "format": "date" } }, { "name": "offset", "in": "query", "description": "Opaque cursor used by the provider to send the next set of records", "schema": { "type": "string" } }, { "name": "limit", "in": "query", "description": "Number of elements that the consumer wishes to receive - Providers should implement reasonable defaults and maximum", "schema": { "type": "integer" } }, { "name": "x-api-key", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "authorization", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "distinct", "in": "header", "schema": { "type": "boolean" }, "required": false } ], "responses": { "200": { "description": "Paged collection of transactions, which can be one of DepositTransaction, LoanTransaction, LocTransaction or InvestmentTransaction", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Transactions" }, "examples": { "example1": { "value": { "page": { "nextOffset": "2", "total": 3 }, "links": { "next": { "href": "/accounts/33333/transactions?offSet=2&limit=10" } }, "transactions": [ { "depositTransaction": { "accountId": "10001", "transactionId": "20001", "postedTimestamp": "2017-11-05 13:15:30.7", "description": "FED REF=000119 LTN=J7B74I1C TTM=2024/10/22 15:03 RECEIVED AT=2024/10/22 15:03 ORIG BANK ABA=307088754 ORIG BANK=CoBank, ACB REC BANK ABA=071000288 REC BANK=BMO Bank National TRANS TYPE=CUSTOMER TRANSF", "debitCreditMemo": "CREDIT", "amount": "1200.42", "transactionTimestamp": "2025-06-19 07:57:00.0", "fiAttributes": [ { "name": "ValueDate", "value": "2025-06-19 07:57:00.0" }, { "name": "Posted", "value": "2025-06-19 07:57:00.0" }, { "name": "TransactionType", "value": "CREDIT" } ], "BAILevel": "Credit Transaction", "BAICode": "208", "BAIName": "Incoming Money Transfer", "bankRefNo": 271900035, "custRefNo": "241022105844", "fundType": "Distributed Availibility (fixed)", "text": "FED REF=000119 LTN=J7B74I1C TTM=2024/10/22 15:03 RECEIVED AT=2024/10/22 15:03 ORIG BANK ABA=307088754 ORIG BANK=CoBank, ACB REC BANK ABA=071000288 REC BANK=BMO Bank National TRANS TYPE=CUSTOMER TRANSFER WIRE TYPE=FWI USD AMOUNT=000000000000000000 VALUE DATE=2024/10/22 SRC=FWIFFT0124102215030400 SBR=2024102200000897 ORG=International Wine & Spirits LLC International Wine & Spirits LLC 14111 Northeast 145th Street Woodinville, WA 98072 /AC-31531001 OGB=CoBank, ACB 2515 University Blvd, Ste 104 Ames IA 50010 US /BC-NBFCUS55 XXX BNF=OIB OLET HE ,HBMB MP YX PSTC H/X HBMB SMMPRNTZUD HGRJ 517 J LQEBXB 58J VS CHICAGO,IL,91053 US /AC-000001095355DD028 RFB=NOTPROVIDED OBI=<6376177101> AGWEST/INTERNATIONAL WINE & SPIRITS\\\"}},{\\\"depositTransaction\\\":{\\\"accountId\\\":\\\"b99bb688b7cf877ef111afd9c23110059b2912f37b5c24c6b9d2811850d945fa\\\",\\\"transactionId\\\":\\\"1902805570\\\",\\\"description\\\":\\\"ORIG BANK ABA=071000288 ORIG BANK=BMO BANK N.A. REC BANK=BOFM CA M3 SENT AT=2024/10/23 18:52 WIRE TYPE=SWO CURRENCY DESC=CANADIAN DOLLAR EXCHANGE AMOUNT=000000000000026800CAD EXCHANGE RATE=000000746313000 " } }, { "depositTransaction": { "accountId": "10001", "transactionId": "20001", "postedTimestamp": "2017-11-05 13:15:31.7", "description": "ORIG BANK=BOFM CA M2 REC BANK ABA=071000288 REC BANK=BMO BANK N.A. RECEIVED AT=2024/10/24 03:44 WIRE TYPE=SWI CURRENCY DESC=CANADIAN DOLLAR EXCHANGE AMOUNT=000000000007200000CAD EXC1HANGE RATE=000000740658000", "debitCreditMemo": "DEBIT", "amount": "1200.42", "transactionTimestamp": "2025-06-19 07:57:00.0", "fiAttributes": [ { "name": "ValueDate", "value": "2025-06-19 07:57:00.0" }, { "name": "Posted", "value": "2025-06-19 07:57:00.0" }, { "name": "TransactionType", "value": "DEBIT" } ] }, "BAILevel": "Debit Transaction", "BAICode": "699", "BAIName": "Miscellaneous Debit", "bankRefNo": "0000000247", "custRefNo": "241023106132", "fundType": "Unknown", "text": "ORIG BANK=BOFM CA M2 REC BANK ABA=071000288 REC BANK=BMO BANK N.A. RECEIVED AT=2024/10/24 03:44 WIRE TYPE=SWI CURRENCY DESC=CANADIAN DOLLAR EXCHANGE AMOUNT=000000000007200000CAD EXCHANGE RATE=000000740658000" } ] } } } } } }, "206": { "description": "Everything worked as expected. Partial content returned based on the range set in the header", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Accounts" } } } }, "400": { "description": "The request was not accepted, often caused by a missing required parameter", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "401": { "description": "API key provided was invalid", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "403": { "description": "Forbidden - the user is not authorized to use this resource", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "404": { "description": "The requested resource could not be found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "415": { "description": "Unsupported Media Type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "429": { "description": "Too many requests hit the API in too short of a period", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "502": { "description": "Bad Gateway", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } }, "504": { "description": "Integration or Backend Timeout", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } } } } } } }, "components": { "schemas": { "ContentTypes": { "title": "Content Types", "type": "string", "description": "Types of document formats. (Suggested)", "example": "application/json", "enum": [ "application/pdf", "image/gif", "image/jpeg", "image/tiff", "image/png", "application/json" ] }, "HateoasLink": { "required": [ "href" ], "type": "object", "properties": { "href": { "type": "string", "example": "/example/accounts/12345" }, "action": { "type": "string", "description": "HTTP Method to use for the request (Suggested)", "enum": [ "GET", "POST", "PATCH", "DELETE", "PUT" ] }, "types": { "type": "array", "description": "Content-types that can be used in the Accept header.", "items": { "$ref": "#/components/schemas/ContentTypes" } } } }, "PageMetadataLinks": { "type": "object", "properties": { "next": { "$ref": "#/components/schemas/HateoasLink" }, "prev": { "$ref": "#/components/schemas/HateoasLink" } } }, "PageMetadata": { "type": "object", "properties": { "nextOffset": { "type": "string", "description": "Opaque identified. Does not need to be numeric or have any specific pattern. Implementation specific.", "example": "2" }, "prevOffset": { "type": "string", "description": "Opaque identified. Does not need to be numeric or have any specific pattern. Implementation specific.", "example": "2" }, "totalElements": { "type": "integer", "description": "Total number of elements", "example": 3 } } }, "PaginatedArray": { "type": "object", "properties": { "page": { "$ref": "#/components/schemas/PageMetadata" }, "links": { "$ref": "#/components/schemas/PageMetadataLinks" } }, "description": "To be used as a mixin using \"allOf\"" }, "Account": { "title": "Account Entity", "description": "An account object with limited details returned in the search for accounts operation.", "allOf": [ { "type": "object", "properties": { "accountId": { "maxLength": 256, "type": "string", "description": "Long-term persistent identity of the account. Not an account number. This identity must be unique to the owning institution." }, "accountType": { "$ref": "#/components/schemas/AccountType" }, "accountNumber": { "type": "string", "description": "Return masked account based on request." }, "hostAccountName": { "type": "string", "description": "Name given by the user. Used in UIs to assist in account selection" }, "description": { "type": "string" }, "currency": { "$ref": "#/components/schemas/Currency" }, "fiAttributes": { "type": "array", "items": { "$ref": "#/components/schemas/FiAttribute" } } } } ] }, "AccountDetails": { "title": "Account Entity", "description": "An account object that adds additional detail parameters to the basic Accounts object, this is used in Get an Account operation.", "allOf": [ { "$ref": "#/components/schemas/Account" }, { "type": "object", "properties": { "status": { "type": "string", "enum": [ "OPEN", "CLOSED", "PENDINGOPEN", "PENDINGCLOSE", "DELINQUENT", "PAID", "NEGATIVECURRENTBALANCE" ] }, "routingTransitNumber": { "type": "string", "description": "Routing transit number (RTN) associated with account number at owning institution." }, "interestRate": { "type": "number", "description": "Interest Rate of Account" }, "priorInterestRate": { "type": "number", "description": "Previous Interest Rate of Account" }, "balanceAsOf": { "type": "string", "description": "As-of date of balances. YYYY-MM-DD." } } } ] }, "Accounts": { "description": "An instance of the getAccounts types with limited details.", "allOf": [ { "type": "object", "properties": { "depositAccount": { "$ref": "#/components/schemas/Account" } } }, { "type": "object", "properties": { "loanAccount": { "$ref": "#/components/schemas/Account" } } }, { "type": "object", "properties": { "locAccount": { "$ref": "#/components/schemas/Account" } } }, { "type": "object", "properties": { "investmentAccount": { "$ref": "#/components/schemas/Account" } } } ] }, "GetAccount": { "description": "An instance of an account with full details.", "allOf": [ { "type": "object", "properties": { "depositAccount": { "$ref": "#/components/schemas/DepositAccount" } } }, { "type": "object", "properties": { "loanAccount": { "$ref": "#/components/schemas/LoanAccount" } } }, { "type": "object", "properties": { "locAccount": { "$ref": "#/components/schemas/LocAccount" } } }, { "type": "object", "properties": { "investmentAccount": { "$ref": "#/components/schemas/InvestmentAccount" } } } ] }, "GetAccounts": { "title": "Accounts Entity", "description": "An optionally paginated array of accounts.", "allOf": [ { "$ref": "#/components/schemas/PaginatedArray" }, { "type": "object", "properties": { "accounts": { "type": "array", "items": { "$ref": "#/components/schemas/Accounts" } } } } ] }, "Currency": { "title": "Currency Entity", "type": "object", "properties": { "currencyRate": { "type": "number", "description": "Currency rate between original and converted currency" }, "currencyCode": { "$ref": "#/components/schemas/Iso4217Code" }, "originalCurrencyCode": { "$ref": "#/components/schemas/Iso4217Code" } }, "description": "Currency information if it is different from Account entity" }, "DebtSecurity": { "title": "DebtSecurity Entity", "type": "object", "properties": { "parValue": { "type": "number", "description": "Par value amount" }, "debtType": { "$ref": "#/components/schemas/DebtType" }, "debtClass": { "$ref": "#/components/schemas/DebtClass" }, "couponRate": { "type": "number", "description": "Bond coupon rate for next closest call date" }, "couponDate": { "type": "string", "description": "Maturity date for next coupon. YYYY-MM-DD." }, "couponMatureFrequency": { "$ref": "#/components/schemas/CouponMatureFrequency" }, "callPrice": { "type": "number", "description": "Bond call price" }, "yieldToCall": { "type": "number", "description": "Yield to next call" }, "callDate": { "type": "string", "description": "Next call date. YYYY-MM-DD." }, "callType": { "$ref": "#/components/schemas/CallType" }, "yieldToMaturity": { "type": "number", "description": "Yield to maturity" }, "bondMaturityDate": { "type": "string", "description": "Bond Maturity date. YYYY-MM-DD." } } }, "DepositAccount": { "title": "DepositAccount Entity", "description": "Deposit accounts will have following fields in FiAttributes - PreviousBalance, OpenDate, StatementName, 1DayFloat, 2orMoreDaysFloat, AccruedInterestMTD, ProjectedInterested, InterestPaidPreviousMonth", "allOf": [ { "$ref": "#/components/schemas/AccountDetails" }, { "type": "object", "properties": { "currentBalance": { "type": "number", "description": "Balance of funds in account" }, "openingDayBalance": { "type": "number", "description": "Day's opening fund balance" }, "availableBalance": { "type": "number", "description": "Balance of funds available for use" }, "interestYtd": { "type": "number", "description": "YTD Interest" }, "term": { "type": "integer", "description": "Term of CD in months" }, "maturityDate": { "type": "string", "description": "Maturity date for CDs" } } } ] }, "DepositTransaction": { "title": "DepositTransaction Entity", "description": "Deposit Transaction will have following fields in FiAttributes - Posted, Pending, ValueDate", "allOf": [ { "$ref": "#/components/schemas/Transaction" }, { "type": "object", "properties": { "transactionType": { "$ref": "#/components/schemas/DepositTransactionType" }, "payee": { "maxLength": 255, "type": "string", "description": "Payee name" }, "checkNumber": { "type": "integer", "description": "Check Number" } } } ] }, "Error": { "title": "Error Entity", "type": "object", "properties": { "code": { "type": "string", "description": "Long term persistent identifier which can be used to trace error condition back to log information" }, "message": { "type": "string", "description": "End user displayable information which might help the customer diagnose an error" } }, "description": "An error entity which can be used at the API level for error responses or at the account level to indicate a problem specific to a particular account." }, "FiAttribute": { "title": "FiAttribute Entity", "type": "object", "properties": { "name": { "type": "string", "description": "Name of attribute" }, "value": { "type": "string", "description": "Value of attribute. All date fields will be of the string format YYYY-MM-DD." } }, "description": "Financial platform provider-specific attribute" }, "FiPortion": { "title": "FiPortion", "type": "object", "properties": { "assetClass": { "type": "string", "description": "FI-specific asset class" }, "percent": { "type": "number", "description": "Percentage of asset class that falls under this asset" } } }, "InvestmentAccount": { "title": "InvestmentAccount Entity", "allOf": [ { "$ref": "#/components/schemas/AccountDetails" }, { "type": "object", "properties": { "currentValue": { "type": "number", "description": "Total current value of all investments" }, "balanceList": { "type": "array", "description": "Balance List. Name value pair aggregate.", "items": { "$ref": "#/components/schemas/InvestmentBalance" } } } } ] }, "InvestmentBalance": { "title": "InvestmentBalance Entity", "type": "object", "properties": { "balanceName": { "type": "string", "description": "Name of the balance" }, "balanceDescription": { "type": "string", "description": "Description of balance" }, "balanceType": { "$ref": "#/components/schemas/InvestmentBalanceType" }, "balanceValue": { "type": "number", "description": "Value of balance name" }, "balanceDate": { "type": "string", "description": "Date as of this balance. YYYY-MM-DD." }, "currency": { "$ref": "#/components/schemas/Currency" } } }, "InvestmentTransaction": { "title": "InvestmentTransaction Entity", "description": "Investment Transaction will have following fields in FiAttributes - Posted, IssueDate, MaturityDate, InterestRate, OriginalAmount, CurrentValue, Disposition", "allOf": [ { "$ref": "#/components/schemas/Transaction" }, { "type": "object", "properties": { "transactionType": { "$ref": "#/components/schemas/InvestmentTransactionType" }, "shares": { "type": "number", "description": "Required for stock, mutual funds. Number of shares (with decimals). Negative numbers indicate securities are being removed from the account." }, "faceValue": { "type": "number", "description": "Cash value for bonds" }, "price": { "type": "number", "description": "Unit purchase price" }, "securityId": { "type": "string", "description": "Unique identifier of security" }, "securityIdType": { "$ref": "#/components/schemas/SecurityIdType" }, "securityType": { "$ref": "#/components/schemas/SecurityType" }, "symbol": { "type": "string", "description": "Ticker symbol" }, "markup": { "type": "number", "description": "Portion of unit price that is attributed to the dealer markup" }, "commission": { "type": "number", "description": "Transaction commission" }, "taxes": { "type": "number", "description": "Taxes on the trade" }, "fees": { "type": "number", "description": "Fees applied to the trade" }, "load": { "type": "number", "description": "Load on the transaction" }, "inv401kSource": { "$ref": "#/components/schemas/Inv401kSourceType" }, "confirmationNumber": { "type": "string", "description": "Confirmation number of the transaction" }, "fractionalCash": { "type": "number", "description": "Cash for fractional units (used for stock splits)" }, "incomeType": { "$ref": "#/components/schemas/IncomeType" }, "oldUnits": { "type": "number", "description": "Number of shares before split" }, "splitRatioNumerator": { "type": "number", "description": "Split ratio numerator" }, "splitRatioDenominator": { "type": "number", "description": "Split ratio denominator" }, "newUnits": { "type": "number", "description": "Number of shares after split" }, "subAccountSec": { "type": "string", "description": "Sub-account security Type - CASH, MARGIN, SHORT and OTHERS", "enum": [ "CASH", "MARGIN", "SHORT", "OTHER" ] }, "subAccountFund": { "type": "string", "description": "From which account money came in - CASH, MARGIN, SHORT and OTHERS", "enum": [ "CASH", "MARGIN", "SHORT", "OTHER" ] }, "loanId": { "type": "string", "description": "For 401k accounts only. This indicates the transaction was due to a loan or a loan repayment." }, "loanPrincipal": { "type": "number", "description": "How much loan pre‐payment is principal" }, "loanInterest": { "type": "number", "description": "How much loan pre‐payment is interest" }, "payrollDate": { "type": "string", "description": "The date for the 401k transaction was obtained in payroll. YYYY-MM-DD." }, "priorYearContrib": { "type": "boolean", "description": "Indicates this buy was made using prior year's contribution." }, "withholding": { "type": "number", "description": "Federal tax withholding" }, "taxExempt": { "type": "boolean", "description": "Tax‐exempt transaction" }, "gain": { "type": "number", "description": "For sales" }, "stateWithholding": { "type": "number", "description": "State tax withholding" }, "penalty": { "type": "number", "description": "Indicates amount withheld due to a penalty" }, "runningBalance": { "type": "number", "description": "Running balance of the position" }, "unitPrice": { "type": "number", "description": "Price per commonly-quoted unit. Does not include markup/markdown, unitprice. Share price for stocks, mutual funds, and others. Percentage of par for bonds. Per share (not contract) for options." }, "units": { "type": "number", "description": "For security‐based actions other than stock splits, quantity. Shares for stocks, mutual funds, and others. Face value for bonds. Contracts for options." }, "unitType": { "$ref": "#/components/schemas/UnitType" }, "transactionReason": { "$ref": "#/components/schemas/TransactionReason" }, "accruedInterest": { "type": "number", "description": "Accrued Interest" }, "transferAction": { "type": "string", "description": "Transfer direction [IN or OUT]", "enum": [ "IN", "OUT" ] }, "positionType": { "$ref": "#/components/schemas/PositionType" } } } ] }, "LoanAccount": { "title": "LoanAccount Entity", "description": "Loan accounts will have following fields in FiAttributes - BorrowerName, FacilityName, OutstandingBal, OutstandingBalLoanCurr, MaturityDate", "allOf": [ { "$ref": "#/components/schemas/AccountDetails" }, { "type": "object", "properties": { "principalBalance": { "type": "number", "description": "Principal balance of loan" }, "escrowBalance": { "type": "number", "description": "Escrow balance of loan" }, "originalPrincipal": { "type": "number", "description": "Original principal of loan" }, "originatingDate": { "type": "string", "description": "Loan origination date. YYYY-MM-DD." }, "loanTerm": { "type": "integer", "description": "Term of loan in months" }, "nextPaymentAmount": { "type": "number", "description": "Amount of next payment" }, "nextPaymentDate": { "type": "string", "description": "Date of next payment. YYYY-MM-DD." }, "paymentFrequency": { "$ref": "#/components/schemas/PaymentFrequency" }, "payOffAmount": { "type": "number", "description": "Payoff amount" }, "lastPaymentAmount": { "type": "number", "description": "Last payment amount" }, "lastPaymentDate": { "type": "string", "description": "Last payment date. YYYY-MM-DD." }, "maturityDate": { "type": "string", "description": "Maturity date. YYYY-MM-DD." }, "interestPaidYearToDate": { "type": "number", "description": "Interest paid year to date" } } } ] }, "LoanTransaction": { "title": "LoanTransaction Entity", "allOf": [ { "$ref": "#/components/schemas/Transaction" }, { "type": "object", "properties": { "transactionType": { "$ref": "#/components/schemas/LoanTransactionType" }, "paymentDetails": { "$ref": "#/components/schemas/PaymentDetails" } } } ] }, "LocAccount": { "title": "LocAccount Entity", "description": "Loc accounts will have following fields in FiAttributes - StatementBalance", "allOf": [ { "$ref": "#/components/schemas/AccountDetails" }, { "type": "object", "properties": { "availableCredit": { "type": "number", "description": "Available credit" }, "nextPaymentAmount": { "type": "number", "description": "Amount of next payment" }, "nextPaymentDate": { "type": "string", "description": "Due date of next payment. YYYY-MM-DD." }, "principalBalance": { "type": "number", "description": "Principal balance" }, "currentBalance": { "type": "number", "description": "Current balance LOC" }, "lastPaymentAmount": { "type": "number", "description": "Last payment amount" }, "lastPaymentDate": { "type": "string", "description": "Last payment date. YYYY-MM-DD." }, "pastDueAmount": { "type": "number", "description": "Past Due Amount" }, "lastStmtBalance": { "type": "number", "description": "Last Statement Balance" }, "lastStmtDate": { "type": "string", "description": "Last Statement Date. YYYY-MM-DD." } } } ] }, "LocTransaction": { "title": "LocTransaction Entity", "description": "Line of Credit Transaction will have following fields in FiAttributes - Posted, Pending, ValueDate", "allOf": [ { "$ref": "#/components/schemas/Transaction" }, { "type": "object", "properties": { "transactionType": { "$ref": "#/components/schemas/LocTransactionType" }, "checkNumber": { "type": "integer", "description": "Check number" }, "paymentDetails": { "$ref": "#/components/schemas/PaymentDetails" } } } ] }, "MutualFundSecurity": { "title": "MutualFundSecurity Entity", "type": "object", "properties": { "mutualFundType": { "$ref": "#/components/schemas/MutualFundType" }, "unitsStreet": { "type": "number", "description": "Units in the FI's street name, positive quantity" }, "unitsUser": { "type": "number", "description": "Units in user's name directly, positive quantity" }, "reinvestDividends": { "type": "boolean", "description": "Reinvest dividends" }, "reinvestCapitalGains": { "type": "boolean", "description": "Reinvest capital gains" }, "yield": { "type": "number", "description": "Current yield reported as portion of the fund's assets" }, "yieldAsOfDate": { "type": "string", "description": "As-of date for yield value. YYYY-MM-DD." } } }, "OpenOrder": { "title": "OpenOrder Entity", "type": "object", "properties": { "orderId": { "maxLength": 256, "type": "string" }, "securityId": { "type": "string" }, "securityIdType": { "$ref": "#/components/schemas/SecurityIdType" }, "symbol": { "type": "string", "description": "Market symbol" }, "description": { "type": "string", "description": "Description of order" }, "units": { "type": "number", "description": "Number of units (shares or bonds etc)" }, "orderType": { "$ref": "#/components/schemas/OrderType" }, "orderDate": { "type": "string", "description": "Order date. YYYY-MM-DD." }, "unitPrice": { "type": "number", "description": "Unit price" }, "unitType": { "$ref": "#/components/schemas/UnitType" }, "orderDuration": { "$ref": "#/components/schemas/OrderDuration" }, "subAccount": { "type": "string", "enum": [ "CASH", "MARGIN", "SHORT", "OTHER" ] }, "limitPrice": { "type": "number", "description": "Limit Price" }, "stopPrice": { "type": "number", "description": "Stop price" }, "inv401kSource": { "$ref": "#/components/schemas/Inv401kSourceType" } } }, "OptionSecurity": { "title": "OptionSecurity Entity", "type": "object", "properties": { "secured": { "$ref": "#/components/schemas/Secured" }, "optionType": { "$ref": "#/components/schemas/OptionType" }, "strikePrice": { "type": "number", "description": "Strike price / Unit price" }, "expireDate": { "type": "string", "description": "Expiration date of option. YYYY-MM-DD." }, "sharesPerContract": { "type": "number", "description": "Shares per contract" } } }, "OtherSecurity": { "title": "OtherSecurity Entity", "type": "object", "properties": { "typeDescription": { "type": "string", "description": "Description of Other Security" } } }, "PaymentDetails": { "title": "PaymentDetails Entity", "type": "object", "properties": { "principalAmount": { "type": "number", "description": "The amount of payment applied to principal" }, "interestAmount": { "type": "number", "description": "The amount of payment applied to interest" }, "insuranceAmount": { "type": "number", "description": "The amount of payment applied to life/health/accident insurance on the loan" }, "escrowAmount": { "type": "number", "description": "The amount of payment applied to escrow" }, "pmiAmount": { "type": "number", "description": "The amount of payment applied to PMI" }, "feesAmount": { "type": "number", "description": "The amount of payment applied to fees" } }, "description": "Breakdown of payment details" }, "Portion": { "title": "Portion Entity", "type": "object", "properties": { "assetClass": { "$ref": "#/components/schemas/AssetClass" }, "percent": { "type": "number" } } }, "StockSecurity": { "title": "StockSecurity Entity", "type": "object", "properties": { "unitsStreet": { "type": "number", "description": "Units in the FI's street name, positive quantity" }, "unitsUser": { "type": "number", "description": "Units in user's name directly, positive quantity" }, "reinvestDividends": { "type": "boolean", "description": "Reinvest dividends" }, "stockType": { "$ref": "#/components/schemas/StockType" }, "yield": { "type": "number", "description": "Current yield" }, "yieldAsOfDate": { "type": "string", "description": "Yield as-of date. YYYY-MM-DD." } } }, "SweepSecurity": { "title": "SweepSecurity Entity", "type": "object", "properties": { "currentBalance": { "type": "number", "description": "Balance of funds in account" }, "availableBalance": { "type": "number", "description": "Balance of funds available for use" }, "balanceAsOf": { "type": "string", "description": "As-of date of balances. YYYY-MM-DD." }, "checks": { "type": "boolean", "description": "Whether or not checks can be written on the account" } } }, "TaxLot": { "title": "TaxLot", "type": "object", "properties": { "originalPurchaseDate": { "type": "string", "description": "Lot acquired date. YYYY-MM-DD." }, "quantity": { "type": "number", "description": "Lot quantity" }, "purchasedPrice": { "type": "number", "description": "Original purchase price" }, "costBasis": { "type": "number", "description": "Total amount of money spent acquiring this lot including any fees or commission expenses incurred" }, "currentValue": { "type": "number", "description": "Lot market value" }, "postionType": { "$ref": "#/components/schemas/PositionType" } } }, "Transaction": { "title": "Transaction", "type": "object", "required": [ "accountId", "transactionId", "postedTimestamp", "description", "debitCreditMemo", "amount", "transactionTimestamp", "fiAttributes" ], "properties": { "accountId": { "maxLength": 256, "type": "string", "description": "Corresponds to AccountId in Account" }, "transactionId": { "maxLength": 256, "type": "string", "description": "Long term persistent identity of the transaction (unique to account)" }, "referenceTransactionId": { "maxLength": 256, "type": "string", "description": "For reverse postings, the identity of the transaction being reversed. For the correction transaction, the identity of the reversing post. For credit card posting transactions, the identity of the authorization transaction." }, "postedTimestamp": { "type": "string", "description": "The date and time that the transaction was posted to the account. If not provided then TransactionTimestamp can be used as PostedTimeStamp. YYYY-MM-DD HH-MM-SS.S" }, "transactionTimestamp": { "type": "string", "description": "The date and time that the transaction was added to the server backend systems. YYYY-MM-DD HH-MM-SS.S" }, "description": { "type": "string", "description": "The description of the transaction", "maxLength": 256 }, "debitCreditMemo": { "$ref": "#/components/schemas/DebitCreditMemo" }, "category": { "type": "string", "description": "Transaction category, preferably MCC or SIC." }, "status": { "$ref": "#/components/schemas/TransactionStatus" }, "amount": { "type": "string", "description": "The amount of money in the account currency" }, "fiAttributes": { "type": "array", "description": "Array of FI-specific attributes", "items": { "$ref": "#/components/schemas/FiAttribute" } }, "links": { "type": "object", "properties": { "image": { "type": "array", "description": "Array of Image Identifiers (unique to Transaction) used to retrieve Images of check or transaction receipt", "items": { "$ref": "#/components/schemas/HateoasLink" } } } }, "BAILevel": { "maxLength": 256, "type": "string", "description": "BAI level information for the transaction" }, "BAICode": { "maxLength": 256, "type": "string", "description": "BAI code information for the transaction" }, "BAIName": { "maxLength": 256, "type": "string", "description": "BAI name related to the transaction" }, "bankRefNo": { "maxLength": 256, "type": "string", "description": "Bank reference number" }, "custRefNo": { "maxLength": 256, "type": "string", "description": "Customer reference number" }, "fundType": { "maxLength": 256, "type": "string", "description": "Fund type corresponding to the transaction" }, "text": { "type": "string", "description": "Complete transaction information description (Un-truncated)" } } }, "Transactions": { "title": "Transactions Entity", "description": "Optionally paginated array of transactions", "allOf": [ { "$ref": "#/components/schemas/PaginatedArray" }, { "type": "object", "properties": { "transactions": { "description": "An array of transactions with entity types dependent on the account type (deposit, investment, loan, or line of credit)", "type": "array", "items": { "allOf": [ { "type": "object", "properties": { "depositTransaction": { "$ref": "#/components/schemas/DepositTransaction" } } }, { "type": "object", "properties": { "loanTransaction": { "$ref": "#/components/schemas/LoanTransaction" } } }, { "type": "object", "properties": { "locTransaction": { "$ref": "#/components/schemas/LocTransaction" } } }, { "type": "object", "properties": { "investmentTransaction": { "$ref": "#/components/schemas/InvestmentTransaction" } } } ] } } } } ] }, "AccountType": { "title": "AccountType", "type": "string", "enum": [ "401A", "401K", "403B", "529", "AUTOLOAN", "CD", "CHARGE", "CHECKING", "COMMERCIALLINEOFCREDIT", "COMMERCIALLOAN", "COVERDELL", "CREDITCARD", "DEPOSIT", "ESCROW", "ESOP", "GUARDIAN", "HOMEEQUITYLOAN", "HOMELINEOFCREDIT", "INSTITUTIONALTRUST", "INSTALLMENT", "IRA", "INVESTMENT", "KEOGH", "LINEOFCREDIT", "LOAN", "MILITARYLOAN", "MONEYMARKET", "MORTGAGE", "PERSONALLOAN", "ROLLOVER", "ROTH", "SARSEP", "SAVINGS", "SMBLOAN", "STUDENTLOAN", "TAXABLE", "TDA", "TRUST", "UGMA", "UTMA", "ANNUITY" ] }, "AnnuityProductType": { "title": "AnnuityProductType", "type": "string", "enum": [ "CURRENCY", "SHARES" ] }, "AnnuityValueBasis": { "title": "AnnuityValueBasis", "type": "string", "enum": [ "FIXED", "VARIABLE" ] }, "AnnualIncreaseType": { "title": "AnnualIncreaseType", "type": "string", "enum": [ "FIXED", "PERCENT", "DOLLAR" ] }, "AssetClass": { "title": "AssetClass", "type": "string", "enum": [ "DOMESTICBOND", "INTLBOND", "INTLSTOCK", "LARGESTOCK", "MONEYMARKET", "OTHER", "SMALLSTOCK" ] }, "BalanceType": { "title": "BalanceType", "type": "string", "description": "ASSET (positive transaction amount increases balance) LIABILITY (positive transaction amount decreases balance)", "enum": [ "ASSET", "LIABILITY" ] }, "CallType": { "title": "CallType", "type": "string", "description": "Type of next call (CALL, PUT, PREFUND, MATURITY)", "enum": [ "CALL", "MATURITY", "PREFUND", "PUT" ] }, "CompoundingPeriod": { "title": "CompoundingPeriod", "type": "string", "description": "DAILY, WEEKLY, BIWEEKLY, SEMIMONTHLY, MONTHLY, SEMIANNUALLY, ANNUALLY", "enum": [ "ANNUALLY", "BIWEEKLY", "DAILY", "MONTHLY", "SEMIANNUALLY", "SEMIMONTHLY", "WEEKLY" ] }, "CouponMatureFrequency": { "title": "CouponMatureFrequency", "type": "string", "description": "When coupons mature (MONTHLY, QUARTERLY, SEMIANNUAL, ANNUAL, OTHER)", "enum": [ "ANNUAL", "MONTHLY", "OTHER", "QUARTERLY", "SEMIANNUAL" ] }, "DebitCreditMemo": { "title": "DebitCreditMemo", "type": "string", "enum": [ "CREDIT", "DEBIT", "MEMO" ] }, "DebtClass": { "title": "DebtClass", "type": "string", "description": "Classification of debt (TREASURY, MUNICIPAL, CORPORATE, OTHER)", "enum": [ "CORPORATE", "MUNICIPAL", "OTHER", "TREASURY" ] }, "DebtType": { "title": "DebtType", "type": "string", "description": "Debt type (COUPON, ZERO)", "enum": [ "COUPON", "ZERO" ] }, "DepositTransactionType": { "title": "DepositTransaction Type", "type": "string", "description": "CHECK, WITHDRAWAL, TRANSFER, POSDEBIT, ATMWITHDRAWAL. BILLPAYMENT, FEE, DEPOSIT, ADJUSTMENT, INTEREST, DIVIDEND, DIRECTDEPOSIT, ATMDEPOSIT, POSCREDIT", "enum": [ "ADJUSTMENT", "ATMDEPOSIT", "ATMWITHDRAWAL", "BILLPAYMENT", "CHECK", "DEPOSIT", "DIRECTDEPOSIT", "DIVIDEND", "FEE INTEREST", "POSCREDIT", "POSDEBIT", "TRANSFER", "WITHDRAWAL" ] }, "IncomeType": { "title": "IncomeType", "type": "string", "description": "Type of investment income - CGLONG (capital gains-long term), CGSHORT (capital gains-short term), MISC", "enum": [ "CGLONG", "CGSHORT", "MISC" ] }, "InterestRateType": { "title": "InterestRateType", "type": "string", "enum": [ "FIXED", "VARIABLE" ] }, "Inv401kSourceType": { "title": "Inv401kSourceType", "type": "string", "description": "Source of money. PRETAX, AFTERTAX, MATCH, PROFITSHARING, ROLLOVER OTHERVEST, OTHERNONVEST", "enum": [ "AFTERTAX", "MATCH", "OTHERNONVEST", "OTHERVEST", "PRETAX", "PROFITSHARING", "ROLLOVER" ] }, "InvestmentBalanceType": { "title": "InvestmentBalanceType", "type": "string", "enum": [ "AMOUNT", "PERCENTAGE" ] }, "InvestmentTransactionType": { "title": "InvestmentTransactionType", "type": "string", "description": "PURCHASED, SOLD, PURCHASEDTOCOVER, ADJUSTMENT, PURCHASETOOPEN, PURCHASETOCLOSE, SOLDTOOPEN, SOLDTOCLOSE, INTEREST, MARGININTEREST, REINVESTOFINCOME, RETURNOFCAPITAL, TRANSFER, CONTRIBUTION, FEE, OPTIONEXERCISE, OPTIONEXPIRATION, DIVIDEND, DIVIDENDREINVEST, SPLIT, CLOSURE, INCOME, EXPENSE, CLOSUREOPT, INVEXPENSE, JRNLSEC, JRNLFUND, OTHER, DIV, SRVCHG, DEP, DEPOSIT, ATM, POS, XFER, CHECK, PAYMENT, CASH, DIRECTDEP, DIRECTDEBIT, REPEATPMT", "enum": [ "ADJUSTMENT", "ATM", "CASH", "CHECK", "CLOSURE", "CLOSUREOPT", "CONTRIBUTION", "DEP", "DEPOSIT", "DIRECTDEBIT", "DIRECTDEP", "DIV", "DIVIDEND", "DIVIDENDREINVEST", "EXPENSE", "FEE", "INCOME", "INTEREST", "INVEXPENSE", "JRNLFUND", "JRNLSEC", "MARGININTEREST", "OPTIONEXERCISE", "OPTIONEXPIRATION", "OTHER", "PAYMENT", "POS", "PURCHASED", "PURCHASEDTOCOVER", "PURCHASETOCLOSE", "PURCHASETOOPEN", "REINVESTOFINCOME", "REPEATPMT", "RETURNOFCAPITAL", "SOLD", "SOLDTOCLOSE", "SOLDTOOPEN", "SPLIT", "SRVCHG", "TRANSFER", "XFER" ] }, "Iso4217Code": { "title": "Iso4217Code", "type": "string", "description": "The ISO 4217 code of the foreign currency", "enum": [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BOV", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHE", "CHF", "CHW", "CLF", "CLP", "CNY", "COP", "COU", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MXV", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "USN", "UYI", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XAG", "XAU", "XBA", "XBB", "XBC", "XBD", "XCD", "XDR", "XOF", "XPD", "XPF", "XPT", "XSU", "XTS", "XUA", "XXX", "YER", "ZAR", "ZMW", "ZWL" ] }, "LoanPaymentFrequency": { "title": "LoanPaymentFrequency", "type": "string", "description": "WEEKLY, BIWEEKLY, TWICEMONTHLY, MONTHLY, FOURWEEKS, BIMONTHLY, QUARTERLY, SEMIANNUALLY, ANNUALLY, OTHER", "enum": [ "ANNUALLY", "BIMONTHLY", "BIWEEKLY", "FOURWEEKS", "MONTHLY", "OTHER", "QUARTERLY", "SEMIANNUALLY", "TWICEMONTHLY", "WEEKLY" ] }, "LoanTransactionType": { "title": "LoanTransactionType", "type": "string", "description": "PAYMENT, FEE, ADJUSTMENT, INTEREST", "enum": [ "ADJUSTMENT", "FEE", "INTEREST", "PAYMENT" ] }, "LocTransactionType": { "title": "LocTransactionType", "type": "string", "description": "CHECK, WITHDRAWAL, PAYMENT, FEE, ADJUSTMENT, INTEREST", "enum": [ "ADJUSTMENT", "CHECK", "FEE", "INTEREST", "PAYMENT", "WITHDRAWAL" ] }, "MutualFundType": { "title": "MutualFundType", "type": "string", "description": "Mutual fund type", "enum": [ "OPENEND", "CLOSEEND", "OTHER" ] }, "OptionType": { "title": "OptionType", "type": "string", "enum": [ "CALL", "PUT" ] }, "OrderDuration": { "title": "OrderDuration", "type": "string", "description": "This order is good for DAY, GOODTILLCANCEL, IMMEDIATE", "enum": [ "DAY", "GOODTILLCANCEL", "IMMEDIATE" ] }, "OrderType": { "title": "OrderType", "type": "string", "enum": [ "BUY", "SELL", "BUYTOCOVER", "BUYTOOPEN", "SELLTOCOVER", "SELLTOOPEN", "SELLSHORT", "SELLCLOSE" ] }, "PaymentFrequency": { "title": "PaymentFrequency", "type": "string", "description": "DAILY, WEEKLY, BIWEEKLY, SEMIMONTHLY, MONTHLY, SEMIANNUALLY, ANNUALLY", "enum": [ "ANNUALLY", "BIWEEKLY", "DAILY", "MONTHLY", "SEMIANNUALLY", "SEMIMONTHLY", "WEEKLY" ] }, "PeriodCertainGuarantee": { "title": "PeriodCertainGuarante", "type": "string", "enum": [ "NO PERIOD CERTAIN", "5-YEAR", "10-YEAR", "20-YEAR", "30-YEAR" ] }, "PositionType": { "title": "PositionType", "type": "string", "description": "LONG, SHORT", "enum": [ "LONG", "SHORT" ] }, "Secured": { "title": "Secured", "type": "string", "description": "How the option is secured", "enum": [ "COVERED", "NAKED" ] }, "SecurityIdType": { "title": "SecurityIdType", "type": "string", "description": "Security identifier type", "enum": [ "CUSIP", "ISIN", "SEDOL", "SICC", "VALOR", "WKN" ] }, "SecurityType": { "title": "SecurityType", "type": "string", "enum": [ "BOND", "DEBT", "MUTUALFUND", "OPTION", "OTHER", "STOCK", "SWEEP" ] }, "StockType": { "title": "StockType", "type": "string", "enum": [ "COMMON", "CONVERTIBLE", "OTHER", "PREFERRED" ] }, "TransactionReason": { "title": "TransactionReason", "type": "string", "description": "Reason for this transaction; CALL (the debt was called), SELL (the debt was sold), MATURITY (the debt reached maturity)", "enum": [ "CALL", "MATURITY", "SELL" ] }, "TransactionStatus": { "title": "TransactionStatus", "type": "string", "enum": [ "AUTHORIZATION", "MEMO", "PENDING", "POSTED" ] }, "UnitType": { "title": "UnitType", "type": "string", "enum": [ "CURRENCY", "SHARES" ] }, "message": { "type": "string" }, "resultDetail": { "type": "object", "properties": { "detailCode": { "type": "string" }, "detailMessage": { "type": "string" }, "sourceAppCatId": { "type": "string" } } }, "errorResult": { "type": "object", "required": [ "code", "status" ], "properties": { "code": { "type": "string", "description": "Contains the API response code e.g. 400, 500 etc", "example": "500" }, "status": { "type": "string", "description": "HTTP Status.", "enum": [ "PARTIAL", "FAILURE" ], "example": "FAILURE" }, "messages": { "type": "array", "description": "Short Description of result", "items": { "$ref": "#/components/schemas/message" } }, "resultDetails": { "type": "array", "description": "Details of result", "items": { "$ref": "#/components/schemas/resultDetail" } } } }, "result": { "type": "object", "required": [ "code", "status" ], "properties": { "code": { "type": "string", "description": "Contains the API response code e.g. 200, 500 etc", "example": "200" }, "status": { "type": "string", "description": "HTTP Status.", "enum": [ "SUCCESS", "PARTIAL", "FAILURE" ], "example": "SUCCESS" }, "messages": { "type": "array", "description": "Short Description of result", "items": { "$ref": "#/components/schemas/message" } }, "resultDetails": { "type": "array", "description": "Details of result", "items": { "$ref": "#/components/schemas/resultDetail" } } } } }, "securitySchemes": { "api-key-1": { "type": "apiKey", "x-key-type": "client_id", "name": "x-api-key", "in": "header" }, "OAuth": { "type": "oauth2", "x-ibm-oauth-provider": "apic-oauth-ob-commercial-sb-provider", "flows": { "authorizationCode": { "authorizationUrl": "https://open-api.bmofg.com/open-banking/commercial-sb/oauth20/authorize", "tokenUrl": "https://open-api.bmofg.com/open-banking/commercial-sb/oauth20/token", "scopes": { "FinancialInformation": "FinancialInformation" } } } } } }, "x-ibm-configuration": { "categories": [ "bian--bd--operationalservices" ], "enforced": true, "testable": true, "phase": "realized", "cors": { "enabled": true }, "type": "rest", "application-authentication": { "certificate": false }, "oauth-servers": { "OAuth": { "authorizationCode": { "tokenUrls": [ "https://open-api.bmofg.com/open-banking/commercial-sb/oauth20/token" ], "authorizationUrls": [ "https://open-api.bmofg.com/open-banking/commercial-sb/oauth20/authorize" ], "refreshUrls": [] } } } }, "security": [ { "api-key-1": [], "OAuth": [ "FinancialInformation" ] } ], "servers": [ { "url": "https://sandbox-open-api.bmo.com/open-banking/commercial-sb" } ], "x-ibm-endpoints": [ { "url": "https://sandbox-open-api.bmo.com/open-banking/commercial-sb", "type": [ "production", "development" ] } ] }