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

# Income Statement

> Retrieve a structured income statement (profit & loss) for an Indian company for a specific period. Returns detailed line items with bank/non-bank profile support.



## OpenAPI

````yaml openapi-india get /api/in/v0/financial-statements/income-statement
openapi: 3.0.0
info:
  title: stockinsights.ai APIs
  description: All the APIs of stockinsights.ai
  version: 1.0.0
servers:
  - url: https://stockinsights-ai-main-95a26a0.zuplo.app
security:
  - bearerAuth: []
paths:
  /api/in/v0/financial-statements/income-statement:
    get:
      tags:
        - Financial Statements
      summary: Income Statement
      description: >-
        Retrieve a structured income statement (profit & loss) for an Indian
        company for a specific period. Returns detailed line items with
        bank/non-bank profile support.
      operationId: getIncomeStatement
      parameters:
        - $ref: '#/components/parameters/StatementTicker'
        - $ref: '#/components/parameters/PeriodEndDate'
        - $ref: '#/components/parameters/ReportingType'
        - $ref: '#/components/parameters/StatementScope'
      responses:
        '200':
          description: >-
            Successful response with income statement data. Returns null data if
            no statement is available for the given parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XbrlStatementResponse'
              example:
                status: success
                data:
                  company_id: x9t057a0io1tdakqk19y
                  profile: nonbank
                  statement_type: income_statement
                  statement_scope: consolidated
                  reporting_type: annual
                  fiscal_year: 2025
                  fiscal_quarter: Q4
                  period_end_date: '2025-03-31'
                  audit_status: Audited
                  currency: INR
                  scale: crores
                  financials:
                    income:
                      sales: 981238
                      other_income: 24973
                    expenses:
                      raw_materials_cost: null
                      employee_cost: null
                      interest_expense: null
                      depreciation: 48062
                      other_expenses: null
                    profit_before_tax: 114671
                    tax_expense:
                      current_tax: 27050
                      deferred_tax: 6312
                      tax_for_earlier_years: null
                      mat_credit_or_entitlement: null
                      other_tax_expenses: null
                    profit_after_tax: 81309
                    earnings_per_share:
                      basic: 51.47
                      diluted: 51.47
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  parameters:
    StatementTicker:
      name: ticker
      in: query
      required: true
      description: >-
        Company ticker symbol. Supports formats: plain ticker (`RELIANCE`),
        exchange-prefixed with dot (`NSE.RELIANCE`, `BSE.RELIANCE`), or colon
        (`NSE:RELIANCE`, `BSE:RELIANCE`), and BSE numeric IDs (`BSE.500325`).
        When no exchange is specified, matches against the generic stock ticker.
      schema:
        type: string
        example: RELIANCE
    PeriodEndDate:
      name: period_end_date
      in: query
      required: true
      description: End date of the reporting period in `YYYY-MM-DD` format.
      schema:
        type: string
        format: date
        example: '2025-03-31'
    ReportingType:
      name: reporting_type
      in: query
      required: true
      description: Type of reporting period.
      schema:
        type: string
        enum:
          - quarterly
          - half_yearly
          - nine_months
          - annual
        example: annual
    StatementScope:
      name: statement_scope
      in: query
      required: true
      description: Whether to retrieve consolidated or standalone financial statements.
      schema:
        type: string
        enum:
          - consolidated
          - standalone
        example: consolidated
  schemas:
    XbrlStatementResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - success
          description: Response status
        data:
          $ref: '#/components/schemas/XbrlStatementData'
          nullable: true
          description: >-
            Financial statement data. Null if no data is available for the given
            parameters.
    XbrlStatementData:
      type: object
      properties:
        company_id:
          type: string
          description: Internal company identifier
        profile:
          type: string
          enum:
            - bank
            - nonbank
          description: >-
            Company profile type. Banks have a different statement structure
            than non-bank companies.
        statement_type:
          type: string
          enum:
            - income_statement
            - balance_sheet
            - cash_flow
          description: Type of financial statement
        statement_scope:
          type: string
          enum:
            - consolidated
            - standalone
          description: Whether the statement is consolidated or standalone
        reporting_type:
          type: string
          enum:
            - quarterly
            - half_yearly
            - nine_months
            - annual
            - as_of
          description: >-
            Reporting period type. `as_of` is only applicable for balance
            sheets.
        fiscal_year:
          type: integer
          description: Fiscal year
        fiscal_quarter:
          type: string
          enum:
            - Q1
            - Q2
            - Q3
            - Q4
          description: Fiscal quarter
        period_end_date:
          type: string
          format: date
          description: End date of the reporting period
        audit_status:
          type: string
          nullable: true
          description: Audit status of the filing (e.g., Audited, UnAudited)
        currency:
          type: string
          description: Currency of the reported values (e.g., INR)
        scale:
          type: string
          description: Scale of the reported values (e.g., crores)
        financials:
          type: object
          description: >-
            Structured financial statement data. Structure varies by statement
            type (income_statement, balance_sheet, cash_flow) and profile (bank,
            nonbank). All numeric values are in the specified currency and
            scale, rounded to 2 decimal places. Null values indicate the line
            item is not applicable or not reported.
          additionalProperties: true
    Error:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              status:
                type: string
                description: Error status
              title:
                type: string
                description: Error description
              message:
                type: string
                description: Detailed error message (optional)
  responses:
    BadRequest:
      description: Bad request - Invalid query parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            errors:
              - status: '400'
                title: Invalid field - reporting_type
                message: >-
                  reporting_type must be one of: quarterly, half_yearly,
                  nine_months, annual
    Unauthorized:
      description: Unauthorized - Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            errors:
              - status: '401'
                title: Unauthorized
                message: Invalid or missing API key
    NotFound:
      description: Company not found for the given ticker
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            errors:
              - status: '404'
                title: Company not found
                message: 'No company found for ticker: INVALID'
    InternalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            errors:
              - status: '500'
                title: Internal Server Error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````