Skip to main content

Get Income Statement

API to retrieve the historical income statement (profit and loss) data for a company identified by its ISIN. The response groups income data by category (Revenue, Operating profit, Net profit), each with historical values and period-over-period percentage changes. You can filter by statement type (consolidated or standalone) and reporting frequency (yearly or quarterly). All monetary values are in Indian Rupees (Crore).

Path Parameters

NameRequiredTypeDescription
isintruestringInternational Securities Identification Number (ISIN) of the company. Example: INE002A01018.

Query Parameters

NameRequiredTypeDescription
typefalsestringFinancial statement type. Allowed values: consolidated, standalone. Default: consolidated.
time_periodfalsestringReporting period. Allowed values: yearly, quarterly. Default: yearly.
fsfalsebooleanWhen set to true, the response includes a detailed line-item breakdown in the full_statement field.

Request

curl --location 'https://api.upstox.com/v2/fundamentals/INE002A01018/income-statement?type=consolidated&time_period=yearly&fs=true' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {your_access_token}'

For additional samples in various languages, please refer to the Sample code section on this page.

Responses

Response Body

{
"status": "success",
"data": {
"type": "consolidated",
"time_period": "yearly",
"units_in": "crore",
"income_statement": [
{
"category": "revenue",
"history": [
{ "value": 1086181, "period": "Mar 2026", "change": "+10.53%" },
{ "value": 982671, "period": "Mar 2025", "change": "+7.15%" },
{ "value": 917121, "period": "Mar 2024", "change": "+3.1%" },
{ "value": 889569, "period": "Mar 2023" }
]
},
{
"category": "operating_profit",
"history": [
{ "value": 123162, "period": "Mar 2026", "change": "+16.17%" },
{ "value": 106017, "period": "Mar 2025", "change": "+1.61%" },
{ "value": 104340, "period": "Mar 2024", "change": "+10.95%" },
{ "value": 94046, "period": "Mar 2023" }
]
},
{
"category": "net_profit",
"history": [
{ "value": 95610, "period": "Mar 2026", "change": "+18.35%" },
{ "value": 80787, "period": "Mar 2025", "change": "+2.74%" },
{ "value": 78633, "period": "Mar 2024", "change": "+6.13%" },
{ "value": 74088, "period": "Mar 2023" }
]
}
],
"full_statement": [
{
"particular": "Revenue",
"history": [
{ "period": "Mar 2025", "value": 964693 },
{ "period": "Mar 2024", "value": 901064 },
{ "period": "Mar 2023", "value": 877835 },
{ "period": "Mar 2022", "value": 695963 }
]
},
{
"particular": "Other Income",
"history": [
{ "period": "Mar 2025", "value": 17978 },
{ "period": "Mar 2024", "value": 16057 },
{ "period": "Mar 2023", "value": 11734 },
{ "period": "Mar 2022", "value": 14943 }
]
},
{
"particular": "Total Revenue",
"history": [
{ "period": "Mar 2025", "value": 982671 },
{ "period": "Mar 2024", "value": 917121 },
{ "period": "Mar 2023", "value": 889569 },
{ "period": "Mar 2022", "value": 710906 }
]
},
{
"particular": "Total Expenses",
"history": [
{ "period": "Mar 2025", "value": 876654 },
{ "period": "Mar 2024", "value": 812781 },
{ "period": "Mar 2023", "value": 795547 },
{ "period": "Mar 2022", "value": 631883 }
]
},
{
"particular": "Profit Before Tax",
"history": [
{ "period": "Mar 2025", "value": 106017 },
{ "period": "Mar 2024", "value": 104340 },
{ "period": "Mar 2023", "value": 94046 },
{ "period": "Mar 2022", "value": 82154 }
]
},
{
"particular": "Tax",
"history": [
{ "period": "Mar 2025", "value": 25230 },
{ "period": "Mar 2024", "value": 25707 },
{ "period": "Mar 2023", "value": 20376 },
{ "period": "Mar 2022", "value": 15970 }
]
},
{
"particular": "Profit After Tax",
"history": [
{ "period": "Mar 2025", "value": 80787 },
{ "period": "Mar 2024", "value": 78633 },
{ "period": "Mar 2023", "value": 73670 },
{ "period": "Mar 2022", "value": 66184 }
]
},
{
"particular": "EPS - Basic",
"history": [
{ "period": "Mar 2025", "value": 51.47 },
{ "period": "Mar 2024", "value": 51.45 },
{ "period": "Mar 2023", "value": 98.59 },
{ "period": "Mar 2022", "value": 92 }
]
},
{
"particular": "EPS - Diluted",
"history": [
{ "period": "Mar 2025", "value": 51.47 },
{ "period": "Mar 2024", "value": 51.45 },
{ "period": "Mar 2023", "value": 98.59 },
{ "period": "Mar 2022", "value": 90.86 }
]
}
]
}
}
NameTypeDescription
statusstringA string indicating the outcome of the request. Possible values: success, error.
dataobjectIncome statement data for the requested statement type and time period.
data.typestringFinancial statement type. Possible values: consolidated, standalone.
data.time_periodstringReporting period. Possible values: yearly, quarterly.
data.units_instringUnit of monetary values. Value: crore.
data.income_statementarrayIncome statement categories with historical values ordered by reporting period (most recent first).
data.income_statement[].categorystringIncome statement category. Possible values: revenue, operating_profit, net_profit.
data.income_statement[].historyarrayHistorical values for the income statement category.
data.income_statement[].history[].valuenumberValue for the period (in Crore). Negative values indicate a loss.
data.income_statement[].history[].periodstringReporting period label, e.g., Mar 2026.
data.income_statement[].history[].changestringPeriod-over-period percentage change, e.g., "+10.53%". Absent for the oldest period in the series.
data.full_statementarrayDetailed line-item breakdown of the income statement. Present only when fs=true is passed.
data.full_statement[].particularstringLabel for the income statement line item, e.g., Revenue, Other Income, Total Revenue, Total Expenses, Profit Before Tax, Tax, Profit After Tax, EPS - Basic, EPS - Diluted.
data.full_statement[].historyarrayHistorical values for the line item across reporting periods.
data.full_statement[].history[].periodstringReporting period label, e.g., Mar 2025.
data.full_statement[].history[].valuenumberMonetary value for the period (in Crore).

Sample Code

import requests

url = 'https://api.upstox.com/v2/fundamentals/INE002A01018/income-statement'
params = {
'type': 'consolidated',
'time_period': 'yearly',
'fs': 'true'
}
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {your_access_token}'
}

response = requests.get(url, params=params, headers=headers)
print(response.json())
Loading...