> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fincept.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Volatility Surface Grid

> Query a full volatility surface defined on a 2D grid of expiries and strikes. Uses bilinear interpolation between grid points. Essential for pricing exotic options, managing volatility risk, and calibrating models to market data. Supports arbitrary volatility smile and term structure shapes. [Tier: PRO, Credits: 5]



## OpenAPI

````yaml api-specs/volatility.json post /quantlib/volatility/surface/grid
openapi: 3.1.0
info:
  title: FinceptQuantLib API - Volatility
  description: >-
    Volatility module endpoints for FinceptQuantLib API. Standard Tier module (2
    credits per request) providing comprehensive volatility surface modeling,
    SABR model calibration and analytics, and local volatility calculations for
    derivatives pricing and risk management.
  version: 3.0.0
  contact:
    name: Fincept API Support
    url: https://fincept.in
servers:
  - url: https://api.fincept.in
    description: Fincept API Production Server
security:
  - APIKeyHeader: []
tags:
  - name: quantlib-volatility
    description: >-
      Volatility surface modeling, SABR calibration, and local volatility
      calculations
    x-displayName: Volatility
paths:
  /quantlib/volatility/surface/grid:
    post:
      tags:
        - quantlib-volatility
      summary: Volatility Surface Grid
      description: >-
        Query a full volatility surface defined on a 2D grid of expiries and
        strikes. Uses bilinear interpolation between grid points. Essential for
        pricing exotic options, managing volatility risk, and calibrating models
        to market data. Supports arbitrary volatility smile and term structure
        shapes. [Tier: PRO, Credits: 5]
      operationId: surface_grid_query
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - expiries
                - strikes
                - vol_matrix
                - query_expiry
                - query_strike
              properties:
                expiries:
                  type: array
                  items:
                    type: number
                  description: Array of expiry times in years (must be strictly increasing)
                  example:
                    - 0.25
                    - 0.5
                    - 1
                  minItems: 2
                strikes:
                  type: array
                  items:
                    type: number
                  description: Array of strike prices (must be strictly increasing)
                  example:
                    - 90
                    - 95
                    - 100
                    - 105
                    - 110
                  minItems: 2
                vol_matrix:
                  type: array
                  items:
                    type: array
                    items:
                      type: number
                  description: >-
                    2D matrix of volatilities [expiry_index][strike_index].
                    Dimensions must match expiries x strikes
                  example:
                    - - 0.28
                      - 0.26
                      - 0.24
                      - 0.25
                      - 0.27
                    - - 0.27
                      - 0.25
                      - 0.23
                      - 0.24
                      - 0.26
                    - - 0.26
                      - 0.24
                      - 0.22
                      - 0.23
                      - 0.25
                query_expiry:
                  type: number
                  description: Expiry time in years for the query point
                  example: 0.5
                  minimum: 0
                query_strike:
                  type: number
                  description: Strike price for the query point
                  example: 102.5
                  minimum: 0
            example:
              expiries:
                - 0.25
                - 0.5
                - 1
              strikes:
                - 90
                - 95
                - 100
                - 105
                - 110
              vol_matrix:
                - - 0.28
                  - 0.26
                  - 0.24
                  - 0.25
                  - 0.27
                - - 0.27
                  - 0.25
                  - 0.23
                  - 0.24
                  - 0.26
                - - 0.26
                  - 0.24
                  - 0.22
                  - 0.23
                  - 0.25
              query_expiry: 0.5
              query_strike: 102.5
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      volatility:
                        type: number
                        description: Interpolated volatility at the query point
                        example: 0.2375
                      total_variance:
                        type: number
                        description: Total variance at the query point
                        example: 0.028203125
                      expiry:
                        type: number
                        description: Query expiry (echo of input)
                        example: 0.5
                      strike:
                        type: number
                        description: Query strike (echo of input)
                        example: 102.5
              example:
                success: true
                data:
                  volatility: 0.2375
                  total_variance: 0.028203125
                  expiry: 0.5
                  strike: 102.5
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '402':
          $ref: '#/components/responses/InsufficientTierError'
        '422':
          $ref: '#/components/responses/ValidationError'
      security:
        - APIKeyHeader: []
components:
  responses:
    UnauthorizedError:
      description: Authentication information is missing or invalid
      content:
        application/json:
          schema:
            type: object
            properties:
              detail:
                type: string
                example: Invalid API key
    InsufficientTierError:
      description: API tier insufficient for this endpoint
      content:
        application/json:
          schema:
            type: object
            properties:
              detail:
                type: string
                example: Endpoint requires Standard tier or higher
    ValidationError:
      description: Validation Error
      content:
        application/json:
          schema:
            type: object
            properties:
              detail:
                type: array
                items:
                  type: object
                  properties:
                    loc:
                      type: array
                      items:
                        type: string
                    msg:
                      type: string
                    type:
                      type: string
          example:
            detail:
              - loc:
                  - body
                  - volatility
                msg: field required
                type: value_error.missing
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        API key for authentication. Get your key at
        https://api.fincept.in/auth/register

````