Navexa API
    • Start your Navexa journey
    • Authentication
    • Navexa MCP
    • Reports
      • Get ATO myTax report
        GET
      • Get ATO myTax report PDF
        GET
      • Get Capital Gains Tax report
        GET
      • Get Taxable Income report
        GET
      • Get Unrealised Capital Gains Tax report
        GET
    • Benchmark
      • Get the benchmark return for a portfolio
        GET
    • CashAccount
      • Get Cash Account
        GET
      • Delete a Cash Account
        DELETE
      • Get all Cash Accounts
        GET
      • Create a Cash Account
        POST
      • Update a Cash Account
        PUT
      • Get Cash Account Transactions
        GET
    • CashAccountTransactions
      • Get a Cash Account Transaction
        GET
      • Delete a Cash Account Transaction
        DELETE
      • Create a Cash Account Transaction
        POST
      • Update a Cash Account Transaction
        PUT
    • Clients
      • Get all Clients
        GET
      • Create a client
        POST
      • Gets Client
        GET
      • Update a client
        PUT
      • Delete client
        DELETE
      • Get client Portfolios
        GET
      • Assign portfolios to client
        PUT
    • Holdings
      • Get a holding
      • Update a holding
      • Delete a holding
      • Get a holding's trades
      • Get holding income records
      • Update a holding's symbol and exchange
    • PortfolioPerformance
      • Get portfolio performance
    • Portfolios
      • Get all portfolios
      • Create a portfolio
      • Get a portfolio
      • Update a portfolio
      • Delete a portfolio
      • Get all portfolio holdings
    • ProRataDistributions
      • Update ETF Distributions ProRata
    • StocksIncome
      • Get an income record
      • Update Income record
      • Confirm Income record
    • TaxSettings
      • Get all portfolio tax settings
      • Get portfolio tax setting
      • Update portfolio tax settings
    • Trades
      • Get a trade
      • Delete a trade
      • Add a trade
    • CustomInvestmentPrice
      • Get a Price
      • Delete a Price
      • Add a Price
      • Update a Price
      • Bulk Add Prices
    • SimulateSell
      • Get the assessable capital gain for a simulated sell trade
    • Sources
      • Get all sources
    • HoldingTimeseries
      • Get holding timeseries
    • PortfolioTimeseries
      • Get portfolio timeseries
    • PortfolioTransactions
      • Get portfolio transactions
    • Schemas
      • Sample Schemas
        • Pet
        • Category
        • Tag
      • Schemas
        • AccountLinkSettings
        • AccountSettings
        • AccountLinkViewModel
        • AddClientVM
        • AddTradeModel
        • AddPriceModel
        • AddClientModel
        • ApplicationUser
        • AuthorizeTokenRequest
        • BenchmarkSettings
        • CalculationSettings
        • AdjustmentData
        • CategoryPerformancePreferenceOptions
        • ChartPreferenceOptions
        • AssignPortfolioToClientVM
        • ChecklistItem
        • Client
        • AutomationSettings
        • ClientExpanded
        • CGTDistributionsModel
        • BillingSettings
        • ClientModel
        • CGTError
        • ClientPortfolio
        • CGTEventModel
        • ClientVM
        • CGTReportModel
        • ColumnSettings
        • ComponentColumn
        • CapitalGainLoss
        • ComponentSettings
        • CapitalGainsBreakdown
        • CreateCashAccountVM
        • CapitalGainsTaxSummary
        • CreateCashTransactionVM
        • CapitalGainsTaxSummaryModel
        • CreateComponentDTO
        • CashInterest
        • CreatePortfolioSettingsModel
        • CryptoIncome
        • CryptoTrade2
        • CustomGroupCategory
        • DiversificationPreferenceOptions
        • Dividend
        • ClientPortfolioVM
        • DividendDTO
        • DividendError
        • EmailSettings
        • EmbeddedComponent
        • FilterCriteria
        • CompanyListResponseDTO
        • GroupAccount
        • CompanyManagementDTO
        • GroupAccountResponse
        • GetPriceModel
        • GroupUserAdd
        • GroupUserLookup
        • CreateProPortfolioVM
        • GroupUserResponse
        • GroupUserUpdate
        • CryptoIncomeDTO
        • Holding
        • CryptoIncomeSummary
        • HoldingClassification
        • HoldingModel
        • HoldingNote
        • DateRange
        • HoldingPerformancePreferenceOptions
        • DeductionsSummary
        • HoldingPublisherData
        • HoldingSettingsModel
        • CryptocurrencyListResponseDTO
        • HoldingTaxSettings
        • CryptocurrencyManagementDTO
        • HoldingType
        • DividendData
        • IHoldingSettings
        • CustomerProfileDto
        • IncomeContributionsSettings
        • CustomerSearchResultDto
        • IncomeReturnPreferenceOptions
        • IntegrationMethodAccuracy
        • IntegrationMethodSupportLevel
        • ForeignTaxableIncomeSummary
        • IntegrationType
        • IntercomSettings
        • IosIapPurchase
        • IosIapSubscriptionInfo
        • ManageClientModel
        • Metadata
        • OnboardingChecklist
        • OnboardingSurvey
        • OverviewPreferences
        • OwnerPlan
        • GicIndustry
        • PaymentPlatform
        • GicIndustryGroup
        • Portfolio
        • GicSector
        • PortfolioDiviersifcationSettings
        • GicSubIndustry
        • PortfolioPreferences
        • HoldingReturnViewModel
        • PortfolioRequest
        • PortfolioSettings
        • PortfolioHoldingModel
        • HoldingSummaryPerformanceViewModel
        • PortfolioTaxSetting
        • PortfolioModel
        • PortfolioType
        • HoldingTaxSettingsVM
        • HoldingSymbolUpdateModel
        • ProRataTotals
        • HoldingTaxSettingsDTO
        • ProRegisterModel
        • HoldingTypeEnum
        • Provider
        • ProviderIntegrationMethod
        • SaleAllocationStrategies
        • IncomeIntegrationMapping
        • SharingSettings
        • IncomeIntegrationMappingDto
        • SubscriptionPlan
        • IncomeRecord
        • ImpersonationRequestDto
        • TestimonialInformation
        • ImpersonationResponseDto
        • TimeSpan
        • TrackingInformation
        • Trade
        • TradeMetadata
        • TradeType
        • InterestIncomeSummary
        • TradeTypeEnum
        • UpdateCashAccountVM
        • UpdateCashTransactionVM
        • UpsertIncomeRecord
        • IntercomAdmin
        • UpsertPortfolioModel
        • UpdatePriceModel
        • MyTaxIncomeSummary
        • IntercomAvatar
        • UserPortfolio
        • MyTaxReportModel
        • IntercomCanvasContext
        • UserPreferences
        • IntercomCanvasInitializeDto
        • UserSharedWith
        • IntercomCanvasSubmitDto
        • IntercomContact
        • IntercomCustomer
        • IntercomRevokeAccessDto
        • PortfolioPerformanceViewModel
        • PortfolioTaxSettingDTO
        • PortfolioTaxSettingsVM
        • SharePortfoliosVM
        • NotificationSettings
        • TaxableIncomeReportModel
        • TaxableIncomeSummary
        • TotalReturnViewModel
        • TradeIntegrationMapping
        • StartImpersonationDto
        • StopImpersonationDto
        • TrialEligibilityDto
        • TrialResetRequestDto
        • TrialResetResponseDto
        • UpdateAccountSettingsDto
        • UpdateUserProfileDto
      • Navexa.API.Controllers.PublicAPI.CashAccounts.ViewModels.CreateCashAccountVM
      • Navexa.API.Controllers.PublicAPI.CashAccounts.ViewModels.CreateCashTransactionVM
      • Navexa.API.Controllers.PublicAPI.CashAccounts.ViewModels.UpdateCashAccountVM
      • Navexa.API.Controllers.PublicAPI.CashAccounts.ViewModels.UpdateCashTransactionVM
      • Navexa.API.Controllers.PublicAPI.Clients.ViewModels.AddClientVM
      • Navexa.API.Controllers.PublicAPI.Clients.ViewModels.ClientPortfolioVM
      • Navexa.API.Controllers.PublicAPI.Clients.ViewModels.ClientVM
      • Navexa.API.Controllers.PublicAPI.CustomInvestments.Models.AddPriceModel
      • Navexa.API.Controllers.PublicAPI.CustomInvestments.Models.GetPriceModel
      • Navexa.API.Controllers.PublicAPI.CustomInvestments.Models.BulkAddPricesModel
      • Navexa.API.Controllers.PublicAPI.CustomInvestments.Models.UpdatePriceModel
      • Navexa.API.Controllers.PublicAPI.CustomInvestments.Models.BulkPriceEntry
      • Navexa.API.Controllers.PublicAPI.Holdings.Models.HoldingModel
      • Navexa.API.Controllers.PublicAPI.Holdings.Models.HoldingSettingsModel
      • Navexa.API.Controllers.PublicAPI.Holdings.Models.HoldingSymbolUpdateModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.CreatePortfolioSettingsModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.HoldingReturnViewModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.HoldingSummaryPerformanceViewModel
      • Navexa.API.Controllers.PublicAPI.Holdings.Models.HoldingTimeseriesRequest
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.PortfolioHoldingModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.PortfolioModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.PortfolioPerformanceViewModel
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.SimulateSellRequest
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.SimulateSellResponse
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.UpsertPortfolioModel
      • Navexa.API.Controllers.PublicAPI.ProRataDistributions.Models.ProRataTotals
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.PortfolioTimeseriesRequest
      • Navexa.API.Controllers.PublicAPI.StocksIncome.Models.IncomeRecord
      • Navexa.API.Controllers.PublicAPI.Portfolios.Models.PortfolioTransactionsRequest
      • Navexa.API.Controllers.PublicAPI.StocksIncome.Models.UpsertIncomeRecord
      • Navexa.API.Controllers.PublicAPI.TaxReports.Models.CGTDistributionsModel
      • Navexa.API.Controllers.PublicAPI.Sources.Models.SourceModel
      • Navexa.API.Controllers.PublicAPI.TaxReports.Models.CGTEventModel
      • Navexa.API.Controllers.PublicAPI.TaxReports.Models.CGTReportModel
      • Navexa.API.Controllers.PublicAPI.TaxReports.Models.CapitalGainsTaxSummaryModel
      • Navexa.API.Controllers.PublicAPI.TaxReports.Models.TaxableIncomeReportModel
      • Navexa.API.Controllers.PublicAPI.TaxSettings.Models.HoldingTaxSettingsDTO
      • Navexa.API.Controllers.PublicAPI.TaxSettings.Models.PortfolioTaxSettingDTO
      • Navexa.API.Controllers.PublicAPI.Trades.Models.AddTradeModel
      • Navexa.API.Controllers.Reports.TaxReports.CapitalGainsTaxReport.Models.HoldingTaxSettingsVM
      • Navexa.API.Controllers.Reports.TaxReports.CapitalGainsTaxReport.Models.PortfolioTaxSettingsVM
      • Navexa.API.DTOs.CryptoIncomeDTO
      • Navexa.API.ViewModels.AccountLinkViewModel
      • Navexa.API.ViewModels.TotalReturnViewModel
      • Navexa.Core.DomainModels.CGTError
      • Navexa.Core.DomainModels.CapitalGainLoss
      • Navexa.Core.DomainModels.CapitalGainsBreakdown
      • Navexa.Core.DomainModels.CapitalGainsTaxSummary
      • Navexa.Core.DomainModels.CryptoIncomeSummary
      • Navexa.Core.DomainModels.DateRange
      • Navexa.Core.DomainModels.DeductionsSummary
      • Navexa.Core.DomainModels.ForeignTaxableIncomeSummary
      • Navexa.Core.DomainModels.InterestIncomeSummary
      • Navexa.Core.DomainModels.MyTaxIncomeSummary
      • Navexa.Core.DomainModels.MyTaxReportModel
      • Navexa.Core.DomainModels.TaxableIncomeSummary
      • Navexa.Core.Enums.AMITDataSource
      • Navexa.Core.Enums.HoldingTypeEnum
      • Navexa.Core.Models.HoldingClassification
      • Navexa.Core.Services.TaxServices.TaxReports.TaxableIncome.Models.CashInterest
      • Navexa.Core.Services.PortfolioFilter.Models.FilterCriteria
      • Navexa.Core.Services.PortfolioFilter.Models.TransactionFilterItem

    Start your Navexa journey

    Start your Navexa journey#

    Welcome to the Navexa developer documentation. The Navexa API gives you programmatic access to investment portfolio data — portfolios, holdings, trades, dividends, and tax reports — for any account you own or any user who has authorized your application.
    API Base URL — https://api.navexa.com.au/api
    Format — JSON over HTTPS
    Authentication — OAuth 2.0 (Authorization Code + PKCE) or API Key

    What you can build#

    Portfolio integrations — read and update a user's portfolios, holdings, and trades from your own application.
    Trade syncing — write trades into Navexa from a broker, exchange, or accounting platform.
    Reporting — pull capital gains, taxable income, and unrealised gain reports into your own tooling.
    Personal automation — script your own portfolio with API Keys, no OAuth flow required.

    Quick start (60 seconds)#

    The fastest path to your first API call uses an API Key, which is appropriate for accessing your own data:
    1.
    Generate an API Key from your account settings.
    2.
    Make a request with the x-api-key header:
    curl --request GET \
      --url https://api.navexa.com.au/api/portfolios \
      --header "x-api-key: YOUR_API_KEY"
    3.
    Receive a JSON response. That's it.
    If your application acts on behalf of other Navexa users — i.e. a third-party integration — use OAuth 2.0 instead. See Authentication.

    Authentication#

    The Navexa API supports two authentication methods:
    MethodWhen to useRead more
    API KeyAccessing your own account's data. Personal scripts, automation, internal tools.Authentication → API Key
    OAuth 2.0 + PKCEActing on behalf of another Navexa user. Third-party integrations, web or mobile apps.Authentication → OAuth 2.0
    To request OAuth client credentials, email help@navexa.com with the subject API Access Request and a brief description of your use case.

    Core concepts#

    The Navexa data model has four entities you'll work with most often:
    Users — a Navexa account holder.
    Portfolios — a named collection of holdings owned by a user. A user can have many portfolios.
    Holdings — a position in a single security (stock, ETF, crypto, cash, etc.) within a portfolio.
    Trades — a buy/sell event that produced or changed a holding.
    Most endpoints are scoped to one of these entities. For example, you list a user's portfolios, then list the holdings within a portfolio, then list the trades that built up a holding.

    Conventions#

    HTTPS only. All requests must use HTTPS. Plain HTTP is rejected.
    JSON request and response bodies. Send Content-Type: application/json on POST/PATCH; expect JSON back.
    Authentication header.
    OAuth — Authorization: Bearer YOUR_ACCESS_TOKEN
    API Key — x-api-key: YOUR_API_KEY
    Dates are returned in ISO 8601 format (2026-05-06T10:30:00Z).
    Currency amounts are returned as numbers in the holding's native currency unless otherwise specified.
    Errors return a non-2xx HTTP status with a JSON body describing the problem.

    Where to go next#

    Authentication — full OAuth 2.0 + PKCE flow, API Keys, refresh tokens, error responses.
    API Reference — endpoint-by-endpoint documentation (coming soon).
    Changelog — breaking changes and new endpoints (coming soon).

    Need help?#

    Discord — Join our Discord for API support.
    Email — help@navexa.com with the subject API Support. Include the request URL, the HTTP
    status you received, and a sample of the response body when reporting issues.
    Modified at 2026-05-07 02:15:57
    Next
    Authentication
    Built with