Ally Invest Accounts API

Account balances, holdings, history, and portfolio data

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ally-invest-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ally-invest-accounts-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Ally Invest Accounts API
  description: The Ally Invest REST API (originally developed from the TradeKing acquisition) provides programmatic access to self-directed brokerage account management, order placement, real-time and delayed market data, watchlist management, and member profile information. Authentication uses OAuth 1.0 with consumer and token credentials. Responses are available in JSON and XML formats.
  version: v1
  contact:
    email: InvestAPI@ally.com
  termsOfService: https://www.ally.com/content/dam/pdf/invest/api-agreement.pdf
  x-logo:
    url: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
servers:
- url: https://api.ally.com/v1
  description: Ally Invest REST API
- url: https://stream.ally.com/v1
  description: Ally Invest Streaming API
tags:
- name: Accounts
  description: Account balances, holdings, history, and portfolio data
paths:
  /accounts.json:
    get:
      operationId: getAccounts
      summary: Get all accounts
      description: Returns summary account information for all accounts associated with the authenticated member.
      tags:
      - Accounts
      responses:
        '200':
          description: Successful response with account list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountsResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
  /accounts/balances.json:
    get:
      operationId: getAccountsBalances
      summary: Get balances for all accounts
      description: Returns balance information for all accounts associated with the authenticated member.
      tags:
      - Accounts
      responses:
        '200':
          description: Successful response with balances for all accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountsBalancesResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
  /accounts/{id}.json:
    get:
      operationId: getAccount
      summary: Get account details
      description: Returns detailed account information for a specific account identified by account ID.
      tags:
      - Accounts
      parameters:
      - $ref: '#/components/parameters/AccountId'
      responses:
        '200':
          description: Successful response with account details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
  /accounts/{id}/balances.json:
    get:
      operationId: getAccountBalances
      summary: Get balances for a specific account
      description: Returns balance information for a specific account identified by account ID.
      tags:
      - Accounts
      parameters:
      - $ref: '#/components/parameters/AccountId'
      responses:
        '200':
          description: Successful response with account balance
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountBalanceResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
  /accounts/{id}/history.json:
    get:
      operationId: getAccountHistory
      summary: Get account transaction history
      description: Returns transaction history for a specific account including trades, dividends, and other account activity.
      tags:
      - Accounts
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - name: range
        in: query
        description: Date range for history (e.g., all, today, current_week, current_month, last_month)
        schema:
          type: string
          enum:
          - all
          - today
          - current_week
          - current_month
          - last_month
      - name: transactions
        in: query
        description: Transaction type filter (e.g., all, bookkeeping, trade)
        schema:
          type: string
          enum:
          - all
          - bookkeeping
          - trade
      responses:
        '200':
          description: Successful response with account history
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountHistoryResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
  /accounts/{id}/holdings.json:
    get:
      operationId: getAccountHoldings
      summary: Get account holdings
      description: Returns current holdings (positions) for a specific account.
      tags:
      - Accounts
      parameters:
      - $ref: '#/components/parameters/AccountId'
      responses:
        '200':
          description: Successful response with account holdings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountHoldingsResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
      - OAuth1: []
components:
  schemas:
    AccountsBalancesResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            accountbalance:
              type: array
              items:
                $ref: '#/components/schemas/AccountBalance'
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    AccountResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            accountsummary:
              $ref: '#/components/schemas/AccountSummary'
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    Holding:
      type: object
      properties:
        accounttype:
          type: string
        costbasis:
          type: string
        gainloss:
          type: string
        gainlosspct:
          type: string
        instrument:
          type: object
          properties:
            cusip:
              type: string
            desc:
              type: string
            factor:
              type: string
            matdt:
              type: string
            maturityvalue:
              type: string
            mult:
              type: string
            putcall:
              type: string
            sectyp:
              type: string
            sesn:
              type: string
            strkpx:
              type: string
            sym:
              type: string
        marketvalue:
          type: string
        marketvaluechange:
          type: string
        price:
          type: string
        purchaseprice:
          type: string
        qty:
          type: string
        quote:
          $ref: '#/components/schemas/Quote'
        underlying:
          type: string
    AccountsResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            accounts:
              type: object
              properties:
                accountsummary:
                  type: array
                  items:
                    $ref: '#/components/schemas/AccountSummary'
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    ErrorResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            error:
              type: string
              description: Error message
            elapsedtime:
              type: string
            id:
              type: string
    AccountHoldingsResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            accountholdings:
              $ref: '#/components/schemas/AccountHoldings'
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    AccountBalance:
      type: object
      properties:
        account:
          type: string
          description: Account number
        accountvalue:
          type: string
          description: Total account value
        buyingpower:
          type: object
          properties:
            cashavailableforwithdrawal:
              type: string
            daytrading:
              type: string
            equitypercentage:
              type: string
            options:
              type: string
            soddaytrading:
              type: string
            stock:
              type: string
        fedcall:
          type: string
        housecall:
          type: string
        money:
          type: object
          properties:
            accruedinterest:
              type: string
            cash:
              type: string
            cashavailable:
              type: string
            marginbalance:
              type: string
            mmf:
              type: string
            total:
              type: string
            uncleareddeposits:
              type: string
            unsettledfunds:
              type: string
            yield:
              type: string
        securities:
          type: object
          properties:
            longoptions:
              type: string
            longstocks:
              type: string
            options:
              type: string
            shortoptions:
              type: string
            shortstocks:
              type: string
            stocks:
              type: string
            total:
              type: string
    AccountBalanceResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            accountbalance:
              $ref: '#/components/schemas/AccountBalance'
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    AccountHistoryResponse:
      type: object
      properties:
        response:
          type: object
          properties:
            transactions:
              type: object
              properties:
                transaction:
                  type: array
                  items:
                    type: object
                    properties:
                      accounttype:
                        type: string
                      activity:
                        type: string
                      amount:
                        type: string
                      date:
                        type: string
                      desc:
                        type: string
                      instrument:
                        type: object
                        properties:
                          cusip:
                            type: string
                          desc:
                            type: string
                          factor:
                            type: string
                          matdt:
                            type: string
                          maturityvalue:
                            type: string
                          mult:
                            type: string
                          putcall:
                            type: string
                          sectyp:
                            type: string
                          sesn:
                            type: string
                          strkpx:
                            type: string
                          sym:
                            type: string
                      price:
                        type: string
                      qty:
                        type: string
                      settlementdate:
                        type: string
                      side:
                        type: string
                      source:
                        type: string
                      tradetime:
                        type: string
                      transactionid:
                        type: string
            elapsedtime:
              type: string
            id:
              type: string
            error:
              type: string
    AccountHoldings:
      type: object
      properties:
        holding:
          type: array
          items:
            $ref: '#/components/schemas/Holding'
        totalholdings:
          type: object
          properties:
            accountvalue:
              type: string
            longoptions:
              type: string
            longstocks:
              type: string
            options:
              type: string
            shortoptions:
              type: string
            shortstocks:
              type: string
            stocks:
              type: string
            total:
              type: string
    Quote:
      type: object
      description: Market quote data for a security
      properties:
        adp_100:
          type: string
          description: Average daily price, 100-day
        adp_200:
          type: string
          description: Average daily price, 200-day
        adp_50:
          type: string
          description: Average daily price, 50-day
        adv_21:
          type: string
          description: Average daily volume, 21-day
        adv_30:
          type: string
          description: Average daily volume, 30-day
        adv_90:
          type: string
          description: Average daily volume, 90-day
        ask:
          type: string
          description: Ask price
        ask_time:
          type: string
          description: Time of ask price
        asksz:
          type: string
          description: Ask size (number of shares)
        basis:
          type: string
          description: Reported basis
        beta:
          type: string
          description: Beta coefficient
        bid:
          type: string
          description: Bid price
        bid_time:
          type: string
          description: Time of bid price
        bidsz:
          type: string
          description: Bid size (number of shares)
        bidtick:
          type: string
          description: Bid tick indicator
        chg:
          type: string
          description: Change from previous close
        chg_sign:
          type: string
          description: Sign of change (u=up, d=down, e=even)
        chg_t:
          type: string
          description: Change from previous close (text format)
        cl:
          type: string
          description: Previous close price
        contract_size:
          type: string
          description: Contract size (for options)
        cusip:
          type: string
          description: CUSIP identifier
        date:
          type: string
          description: Trade date
        datetime:
          type: string
          description: Date and time of last quote
        days_to_expiration:
          type: string
          description: Days until option expiration
        div:
          type: string
          description: Cash dividend amount
        divexdate:
          type: string
          description: Dividend ex-date
        divfreq:
          type: string
          description: Dividend frequency
        divpaydt:
          type: string
          description: Dividend pay date
        dollar_value:
          type: string
          description: Dollar value of trade
        eps:
          type: string
          description: Earnings per share
        exch:
          type: string
          description: Exchange code
        exch_desc:
          type: string
          description: Exchange description
        hi:
          type: string
          description: High price for the day
        iad:
          type: string
          description: Indicated annual dividend
        idelta:
          type: string
          description: Option delta
        igamma:
          type: string
          description: Option gamma
        imp_volatility:
          type: string
          description: Implied volatility
        incr_vl:
          type: string
          description: Incremental volume (volume of last trade)
        irho:
          type: string
          description: Option rho
        issue_desc:
          type: string
          description: Issue description
        itheta:
          type: string
          description: Option theta
        ivega:
          type: string
          description: Option vega
        last:
          type: string
          description: Last trade price
        lo:
          type: string
          description: Low price for the day
        name:
          type: string
          description: Company name
        op_delivery:
          type: string
          description: Option delivery type
        op_flag:
          type: string
          description: Options flag (1=optionable)
        op_style:
          type: string
          description: Option style (A=American, E=European)
        op_subclass:
          type: string
          description: Option subclass
        openinterest:
          type: string
          description: Open interest (options)
        opn:
          type: string
          description: Open price
        opt_val:
          type: string
          description: Option value
        pchg:
          type: string
          description: Percent change from previous close
        pchg_sign:
          type: string
          description: Sign of percent change
        pcls:
          type: string
          description: Previous close
        pe:
          type: string
          description: Price-to-earnings ratio
        phi:
          type: string
          description: Previous high
        plo:
          type: string
          description: Previous low
        popn:
          type: string
          description: Previous open
        pr_adp_100:
          type: string
          description: Prior period 100-day average daily price
        pr_adp_200:
          type: string
          description: Prior period 200-day average daily price
        pr_adp_50:
          type: string
          description: Prior period 50-day average daily price
        pr_date:
          type: string
          description: Prior trade date
        pr_openinterest:
          type: string
          description: Prior open interest
        prbook:
          type: string
          description: Book value per share
        prchg:
          type: string
          description: Prior change
        prem_mult:
          type: string
          description: Premium multiplier
        put_call:
          type: string
          description: Put/Call indicator (P=put, C=call)
        pvol:
          type: string
          description: Previous volume
        qcond:
          type: string
          description: Quote condition code
        rootsymbol:
          type: string
          description: Root symbol (for options)
        secclass:
          type: string
          description: Security class
        sesn:
          type: string
          description: Trading session
        sho:
          type: string
          description: Shares outstanding
        strikeprice:
          type: string
          description: Strike price (for options)
        symbol:
          type: string
          description: Ticker symbol
        tcond:
          type: string
          description: Trade condition code
        timestamp:
          type: string
          description: Unix timestamp of last trade
        tr_num:
          type: string
          description: Trade number
        tradetick:
          type: string
          description: Trade tick (U=up, D=down, E=even)
        trend:
          type: string
          description: Price trend indicator
        under_cusip:
          type: string
          description: Underlying security CUSIP
        undersymbol:
          type: string
          description: Underlying security symbol (for options)
        vl:
          type: string
          description: Volume
        volatility12:
          type: string
          description: 52-week price volatility
        vwap:
          type: string
          description: Volume weighted average price
        wk52hi:
          type: string
          description: 52-week high price
        wk52hidate:
          type: string
          description: Date of 52-week high
        wk52lo:
          type: string
          description: 52-week low price
        wk52lodate:
          type: string
          description: Date of 52-week low
        xdate:
          type: string
          description: Option expiration date (YYYYMMDD)
        xday:
          type: string
          description: Option expiration day
        xmonth:
          type: string
          description: Option expiration month
        xyear:
          type: string
          description: Option expiration year
        yield:
          type: string
          description: Dividend yield
    AccountSummary:
      type: object
      properties:
        account:
          type: string
          description: Account number
        accountbalance:
          $ref: '#/components/schemas/AccountBalance'
        accountholdings:
          $ref: '#/components/schemas/AccountHoldings'
  responses:
    Unauthorized:
      description: Authentication required or credentials invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Requested resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    RateLimited:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  parameters:
    AccountId:
      name: id
      in: path
      required: true
      description: The account ID (account number)
      schema:
        type: string
  securitySchemes:
    OAuth1:
      type: apiKey
      in: header
      name: Authorization
      description: OAuth 1.0 authentication using consumer key/secret and OAuth token/secret pairs. The Authorization header must include oauth_consumer_key, oauth_token, oauth_signature_method (HMAC-SHA1), oauth_timestamp, oauth_nonce, oauth_version, and oauth_signature.
externalDocs:
  description: Ally Invest API Documentation
  url: https://www.ally.com/api/invest/documentation/getting-started/