QUODD Snap API

Single-ticker real-time or delayed pricing snapshot (Snap). Returns the current quote and trade fields - last price, bid/ask, volume, and related market data - for one instrument across QUODD's global asset-class coverage. Endpoint paths are honestly modeled; QUODD does not publish exact REST paths.

OpenAPI Specification

quodd-snapshots-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: QUODD Market Data API (Modeled) Authentication Snapshots API
  description: 'A modeled OpenAPI description of the QUODD REST market data API. QUODD is a cloud-native market data provider. Its Developer Platform (developer.quodd.com) documents a token-authenticated REST API for pricing snapshots - Snap, Batch Snaps, Options Snap, and Batch Options Snaps - plus token generation for trial and firm users. Authentication exchanges a username and password for an access token that is appended to requests as the `_token` query parameter and expires after 24 hours.

    IMPORTANT - endpointsModeled: QUODD does not publish its literal REST base URL or exact endpoint path format openly (production access is gated behind trial/firm credentials and enterprise agreements). The paths below are honestly modeled from the documented operation list and may differ from the live routes. They represent the documented surface, not verified endpoints. No WebSocket or Server-Sent Events transport is documented on QUODD''s own platform; QUODD''s Cloud Streaming transport is not publicly specified.'
  version: '1.0'
  contact:
    name: QUODD
    url: https://www.quodd.com
servers:
- url: https://api.quodd.com
  description: QUODD API (base URL referenced for the gRPC Snap service; REST base is gated - modeled)
security:
- tokenQuery: []
tags:
- name: Snapshots
  description: Real-time or delayed equity pricing snapshots.
paths:
  /snap/{ticker}:
    get:
      operationId: getSnap
      tags:
      - Snapshots
      summary: Get a pricing snapshot for one ticker
      description: Real-time or delayed pricing snapshot for a single instrument. Modeled path.
      parameters:
      - name: ticker
        in: path
        required: true
        schema:
          type: string
        description: Instrument symbol.
      responses:
        '200':
          description: A pricing snapshot.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Snap'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /snaps:
    get:
      operationId: listSnaps
      tags:
      - Snapshots
      summary: Get snapshots for many tickers (batch)
      description: Batch snapshot retrieval via a comma-separated ticker list. Modeled path.
      parameters:
      - name: tickers
        in: query
        required: true
        schema:
          type: string
        description: Comma-separated list of instrument symbols.
      responses:
        '200':
          description: A batch of pricing snapshots.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapBatch'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: batchSnaps
      tags:
      - Snapshots
      summary: Get snapshots for many tickers (batch, POST)
      description: Batch snapshot retrieval via a ticker array in the request body. Modeled path.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TickerList'
      responses:
        '200':
          description: A batch of pricing snapshots.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapBatch'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    TickerList:
      type: object
      required:
      - tickers
      properties:
        tickers:
          type: array
          items:
            type: string
    Error:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
    SnapBatch:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Snap'
    Snap:
      type: object
      description: A pricing snapshot. Field set is modeled and representative, not exhaustive.
      properties:
        ticker:
          type: string
        last:
          type: number
        bid:
          type: number
        ask:
          type: number
        volume:
          type: integer
        currency:
          type: string
        timestamp:
          type: string
          format: date-time
  responses:
    Unauthorized:
      description: Missing, invalid, or expired token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    tokenQuery:
      type: apiKey
      in: query
      name: _token
      description: Access token obtained from the token endpoints (trial or firm user) and appended to each request as the `_token` query parameter. Expires after 24 hours.