Upstox · OpenAPI Overlay 1.0.0

API Evangelist enrichment overlay for the Upstox Developer API

11 actions 11 updates documentation extends openapi/upstox-developer-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Upstox's API. It is a proposal applied on top of the contract, not a document Upstox publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

deprecatedx-replacementx-deprecation-noticex-sandbox-enableddescriptionx-documentationx-sunsettitle

Targets 11

$.info
$.servers
$.paths['/v2/order/place'].post
$.paths['/v2/order/modify'].put
$.paths['/v2/order/cancel'].delete
$.paths['/v2/market-quote/ohlc'].get
$.paths['/v2/market-quote/ltp'].get
$.paths['/v2/feed/market-data-feed'].get
$.paths['/v2/feed/market-data-feed/authorize'].get
$.components.securitySchemes.OAUTH2
$

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enrichment overlay for the Upstox Developer API
  version: 1.0.0
x-provenance:
  generated: '2026-09-02'
  method: generated
  source: openapi/upstox-developer-api-openapi.yml
  extends: openapi/upstox-developer-api-openapi.yml
  note: >-
    Non-destructive enhancements to the spec Upstox serves at https://api.upstox.com/v2/api-docs. The
    original is never mutated. Every value below is sourced from Upstox's own documentation — the
    identity fields from the developer portal, the deprecation marks from the 30 June 2025 deprecation
    notice, and the base-URL note from the March 2024 URL announcement and the July 2024 HFT endpoint
    announcement.
extends: openapi/upstox-developer-api-openapi.yml
actions:
- target: $.info
  description: >-
    The served spec identifies itself only as "OpenAPI definition" version v0, which is a
    springdoc-generated default. Replace with the product identity Upstox publishes on its developer
    portal so a consumer can tell whose contract this is.
  update:
    title: Upstox Developer API
    version: v2/v3
    description: >-
      Suite of RESTful APIs for building investment and trading platforms on NSE, BSE and MCX. Covers
      order placement and management (V2 and V3, including slicing, multi-order and GTT), portfolio
      holdings and positions, funds and margin, brokerage and charge calculation, market quotes and
      option greeks, historical and intraday candles, expired-instrument history, company fundamentals,
      IPO application, mutual funds, fund payouts, news, market-information analytics and WebSocket
      streaming.
    termsOfService: https://upstox.com/terms-of-use-and-privacy-policy/
    contact:
      name: Upstox Developer Support
      url: https://community.upstox.com/
      email: api@upstox.com
    license:
      name: Upstox Terms of Use
      url: https://upstox.com/terms-of-use-and-privacy-policy/
    x-documentation: https://upstox.com/developer/api-documentation/
    x-changelog: https://upstox.com/developer/api-documentation/announcements
    x-status-page: https://status.upstox.com/
    x-rate-limits: https://upstox.com/developer/api-documentation/rate-limiting
    x-error-codes: https://upstox.com/developer/api-documentation/error-codes
- target: $.servers
  description: >-
    The served spec declares only https://api-v2.upstox.com. Upstox's own request-structure page tells
    developers to call https://api.upstox.com/[version], and a dedicated low-latency host exists for
    order operations. Record all three without removing the original.
  update:
  - url: https://api-v2.upstox.com
    description: Host declared in the served OpenAPI definition.
  - url: https://api.upstox.com
    description: >-
      Documented base URL. The request-structure page instructs callers to use
      https://api.upstox.com/[API_VERSION]/[API_ENDPOINT].
  - url: https://api-hft.upstox.com
    description: >-
      High-frequency order endpoint for place, modify and cancel operations, announced 26 July 2024. Not
      declared in the served spec.
- target: $.paths['/v2/order/place'].post
  description: Mark the v2 order placement operation deprecated per the 30 June 2025 deprecation notice. The served spec carries no deprecated flag.
  update:
    deprecated: true
    x-replacement: placeOrder (POST /v3/order/place)
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/deprecation-notice-v2
    x-sandbox-enabled: true
- target: $.paths['/v2/order/modify'].put
  description: Mark the v2 order modification operation deprecated per the 30 June 2025 deprecation notice.
  update:
    deprecated: true
    x-replacement: modifyOrder (PUT /v3/order/modify)
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/deprecation-notice-v2
    x-sandbox-enabled: true
- target: $.paths['/v2/order/cancel'].delete
  description: Mark the v2 order cancellation operation deprecated per the 30 June 2025 deprecation notice.
  update:
    deprecated: true
    x-replacement: cancelOrder (DELETE /v3/order/cancel)
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/deprecation-notice-v2
    x-sandbox-enabled: true
- target: $.paths['/v2/market-quote/ohlc'].get
  description: Mark the v2 OHLC quote operation deprecated per the 30 June 2025 deprecation notice.
  update:
    deprecated: true
    x-replacement: getMarketQuoteOHLCV3 (GET /v3/market-quote/ohlc)
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/deprecation-notice-v2
- target: $.paths['/v2/market-quote/ltp'].get
  description: Mark the v2 LTP quote operation deprecated per the 30 June 2025 deprecation notice.
  update:
    deprecated: true
    x-replacement: getLtp (GET /v3/market-quote/ltp)
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/deprecation-notice-v2
- target: $.paths['/v2/feed/market-data-feed'].get
  description: >-
    Mark the v2 market data feed deprecated. Beyond deprecation this surface was actually discontinued on
    22 August 2025 — it is the one Upstox shutdown with an executed date.
  update:
    deprecated: true
    x-replacement: Market Data Feed V3
    x-sunset: '2025-08-22'
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/v2-websocket-discontinued
- target: $.paths['/v2/feed/market-data-feed/authorize'].get
  description: Mark the v2 market data feed authorize operation deprecated and sunset alongside the feed it authorizes.
  update:
    deprecated: true
    x-replacement: Market Data Feed Authorize V3
    x-sunset: '2025-08-22'
    x-deprecation-notice: https://upstox.com/developer/api-documentation/announcements/v2-websocket-discontinued
- target: $.components.securitySchemes.OAUTH2
  description: Add the documentation pointer and the token lifetime, which the served scheme omits.
  update:
    description: >-
      OAuth 2.0 authorization code flow. Access tokens expire daily and require re-authorization. A
      separate long-lived read-only Analytics Token (1-year validity) exists for market data and, with a
      registered static IP, for account APIs.
    x-documentation: https://upstox.com/developer/api-documentation/authentication
    x-token-lifetime: daily
    x-analytics-token: https://upstox.com/developer/api-documentation/analytics-token
- target: $
  description: >-
    Record cross-cutting runtime semantics the served contract does not express — no idempotency on any
    write, no rate-limit response headers, page-number pagination with no metadata, and the bespoke error
    envelope.
  update:
    x-conventions: conventions/upstox-conventions.yml
    x-idempotency:
      supported: false
      note: No idempotency key on any write operation, including order placement and payout initiation.
    x-rate-limit-headers:
      supported: false
      status_on_exhaustion: 429
      error_code: UDAPI10005
      documentation: https://upstox.com/developer/api-documentation/rate-limiting
    x-pagination:
      style: page-number
      params:
      - page_number
      - page_size
      - records
      response_metadata: false
    x-error-envelope:
      format: bespoke-json
      rfc9457: false
      shape: '{"status": "error", "errors": [{"error_code", "message", "property_path", "invalid_value"}]}'
      catalog: errors/upstox-error-codes.yml
    x-webhooks: asyncapi/upstox-webhooks.yml
    x-mcp-server: https://mcp.upstox.com/mcp
    x-agent-skill: https://github.com/upstox/upstox-skills