Q4API Docs
Q4 APISign inGet API key
DocumentationAPI Reference
Overview
API reference
Companies
GETList companiesGETRetrieve a companyGETList sectors
Market data
GETRetrieve a quoteGETList quotesGETRetrieve price historyGETRetrieve index historyGETRetrieve market summaryGETList market moversGETList sector performanceGETList tradesGETRetrieve order book depth
WebSocket
WSQuotes streamWSTrades streamWSDepth stream
Fundamentals
GETRetrieve standardised statementsGETRetrieve as-reported statementsGETList figuresGETRetrieve ratiosGETCompare companiesGETList dividendsGETList corporate actionsGETList stock eventsGETSearch notes
Documents
GETList documentsGETRetrieve a documentGETList document pagesGETRetrieve document textGETRetrieve document summaryGETList notesGETRetrieve a noteGETList sectionsGETRetrieve a sectionGETSearch board report sections
Earnings calls
GETList earnings callsGETRetrieve an earnings callGETRetrieve a transcriptGETRetrieve call audio
Announcements
GETList announcementsGETRetrieve an announcement
Economic data
GETList seriesGETList observations
Webhooks & alerts
POSTCreate a webhookGETList webhooksDELDelete a webhookPOSTCreate an alert ruleGETList alert rulesDELDelete an alert rule
Account
GETRetrieve usage
Fundamentals

Retrieve standardised statements

GEThttps://api.q4.sa/v1/companies/{symbol}/financials
Returns income statements, balance sheets and cash flows mapped to standard line items, for comparing companies and periods.
Starter+

Line items use Q4’s standard metric keys, so the same key means the same thing for every company. Every value links back to the printed figure it came from: follow fact_id to List figures.

Only lines that map to a standard key are returned. For every line exactly as the company printed it, use Retrieve as-reported statements.

Authorization

x-api-keyheaderrequired
Your API key. See Authentication.

Path parameters

symbolstringrequired
Tadawul symbol, e.g. 2222 for Saudi Aramco. ISINs are accepted too.

Query parameters

statementstring
Which statement.
One of:incomebalancecash_flowall
Default: all
periodstring
Fiscal years, quarters, or trailing twelve months.
One of:annualquarterlyttm
Default: annual
from_yearinteger
First fiscal year.
to_yearinteger
Last fiscal year.

Response

dataobject
The result.
symbolstring
Tadawul symbol.
currencystring
ISO currency code.
periodsobject[]
fiscal_yearinteger
Fiscal year.
fiscal_periodstring
Fiscal period: FY, Q1–Q4, H1 or 9M.
period_enddate
Last day of the period.
statementstring
itemsobject[]
metricstring
Standard metric key, the same across companies.
labelstring
Line item label as printed.
valueinteger
Value.
fact_idstring
The printed figure this value came from.
restatedboolean
True if a later filing changed this value.
source_document_idstring

Errors

400, 401, 403, 404, 429. Every error has the same shape: see Errors.
← Previous
Depth stream
Next →
Retrieve as-reported statements
Request
curl "https://api.q4.sa/v1/companies/1120/financials?statement=income&period=annual&from_year=2025" \
  -H "x-api-key: $Q4_API_KEY"
Response
{
  "data": {
    "symbol": "1120",
    "currency": "SAR",
    "periods": [
      {
        "fiscal_year": 2025,
        "fiscal_period": "FY",
        "period_end": "2025-12-31",
        "statement": "income",
        "items": [
          {
            "metric": "total_operating_income",
            "label": "Total operating income",
            "value": 36412000000,
            "fact_id": "fct_9Qm2Lr",
            "restated": false
          },
          {
            "metric": "net_income",
            "label": "Net income for the year",
            "value": 21802000000,
            "fact_id": "fct_9Qm2Lx",
            "restated": false
          },
          {
            "metric": "eps_basic",
            "label": "Basic earnings per share",
            "value": 5.32,
            "fact_id": "fct_9Qm2M4",
            "restated": false
          }
        ],
        "source_document_id": "doc_7Hk2pQ"
      }
    ]
  }
}