> ## 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.

# Build Surface From Points

> Construct a volatility surface from scattered market quote points (tenor, strike, volatility). Useful for building surfaces from real market data where quotes are not on a regular grid. Returns confirmation of successful surface construction. Supports optional forward prices and custom interpolation grids. [Tier: PRO, Credits: 5]



## OpenAPI

````yaml api-specs/volatility.json post /quantlib/volatility/surface/from-points
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/from-points:
    post:
      tags:
        - quantlib-volatility
      summary: Build Surface From Points
      description: >-
        Construct a volatility surface from scattered market quote points
        (tenor, strike, volatility). Useful for building surfaces from real
        market data where quotes are not on a regular grid. Returns confirmation
        of successful surface construction. Supports optional forward prices and
        custom interpolation grids. [Tier: PRO, Credits: 5]
      operationId: surface_from_points
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - tenors
                - strikes
                - vols
              properties:
                tenors:
                  type: array
                  items:
                    type: number
                  description: Array of tenor times in years for each quote
                  example:
                    - 0.25
                    - 0.25
                    - 0.25
                    - 0.5
                    - 0.5
                    - 0.5
                    - 1
                    - 1
                    - 1
                  minItems: 3
                strikes:
                  type: array
                  items:
                    type: number
                  description: Array of strike prices for each quote
                  example:
                    - 95
                    - 100
                    - 105
                    - 95
                    - 100
                    - 105
                    - 95
                    - 100
                    - 105
                  minItems: 3
                vols:
                  type: array
                  items:
                    type: number
                  description: Array of volatility values for each quote
                  example:
                    - 0.26
                    - 0.24
                    - 0.25
                    - 0.25
                    - 0.23
                    - 0.24
                    - 0.24
                    - 0.22
                    - 0.23
                  minItems: 3
                forwards:
                  type: array
                  items:
                    type: number
                  description: Optional array of forward prices corresponding to each tenor
                  example:
                    - 100.5
                    - 100.5
                    - 100.5
                    - 101
                    - 101
                    - 101
                    - 102
                    - 102
                    - 102
                expiry_grid:
                  type: array
                  items:
                    type: number
                  description: Optional custom expiry grid for interpolation
                  example:
                    - 0.25
                    - 0.5
                    - 1
                    - 2
                strike_grid:
                  type: array
                  items:
                    type: number
                  description: Optional custom strike grid for interpolation
                  example:
                    - 90
                    - 95
                    - 100
                    - 105
                    - 110
            example:
              tenors:
                - 0.25
                - 0.25
                - 0.25
                - 0.5
                - 0.5
                - 0.5
                - 1
                - 1
                - 1
              strikes:
                - 95
                - 100
                - 105
                - 95
                - 100
                - 105
                - 95
                - 100
                - 105
              vols:
                - 0.26
                - 0.24
                - 0.25
                - 0.25
                - 0.23
                - 0.24
                - 0.24
                - 0.22
                - 0.23
              forwards:
                - 100.5
                - 100.5
                - 100.5
                - 101
                - 101
                - 101
                - 102
                - 102
                - 102
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      surface_built:
                        type: boolean
                        description: Indicates successful surface construction
                        example: true
                      n_points:
                        type: integer
                        description: Number of market points used to build the surface
                        example: 9
              example:
                success: true
                data:
                  surface_built: true
                  n_points: 9
        '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

````