Akinda API Reference
API Documentation
Integrate Akinda's proprietary Shariah compliance data into your application. All endpoints are REST over HTTPS, return JSON, and are authenticated with a single API key.
Authentication
Universal Endpoint URL
https://b2b-api.akinda.io/api/v1/{api_endpoint}/{ticker}?apikey={api_key}Substitute {api_endpoint} with one of compliance, basic-report, or full-report; {ticker} with an uppercase stock symbol (e.g. AAPL); and {api_key} with your Akinda API key from the API Keys dashboard.
?apikey=YOUR_KEY | Header: X-API-Key: YOUR_KEYRate Limits & Bandwidth
| Tier | Rate | Bandwidth | Endpoints |
|---|---|---|---|
| Basic Free | 200 / day | 1 GB / mo | /compliance |
| Personal Standard | 300 / min | 30 GB / mo | /compliance/basic-report |
| Personal Ultimate | 2,000 / min | 150 GB / mo | /compliance/basic-report/full-report |
| Business Standard | 1,000 / min | 300 GB / mo | /compliance/basic-report |
| Business Ultimate | 3,000 / min | 200 GB / mo | /compliance/basic-report/full-report |
| Business Enterprise | Unlimited | Unlimited | All endpoints |
License and Usage
Personal Use License
For individual developers, students, and personal research projects. Bundled with every Personal-tier plan (Basic, Standard, Ultimate).
- Use in non-commercial apps, dashboards, and scripts.
- No attribution required.
- You may not redistribute the raw response data as a competing dataset.
Commercial Use License
For companies embedding Akinda data inside a product, paid SaaS, or B2B integration. Bundled with every Business-tier plan (Standard, Ultimate, Enterprise).
- Required for any monetised app, paid feature, or partner integration.
- Enterprise customers can negotiate custom SLA, dedicated support, and multi-country market access.
- Contact contact@akinda.io for redistribution rights.
Use Cases
Shariah-compliant stock screener
Filter the broad market by halal_status so only compliant tickers surface in your screener or watchlist.
Halal / haram badges in a finance app
Hit /compliance on every quote render to attach a real-time status badge next to each ticker.
Purification calculations
Use non_compliant_revenue_perc and the dollar counterparts to compute the exact purification amount for portfolio holdings.
Institutional compliance audits
Pull full reports across a portfolio nightly; flag any ticker whose ratios cross the AAOIFI thresholds.
Multi-country tickers
The Akinda API audits three markets today — United States, United Kingdom, and Canada. Country is auto-detected from the ticker, so you never pass a country parameter on the per-ticker path. The response carries the matching listing_country (ISO-2) and reporting_currency (ISO-4217) fields so downstream code can format dollar amounts in the company's native currency. No FX conversion ever happens — every numeric field is denominated in reporting_currency.
| Country | Ticker format | Exchange | listing_country | reporting_currency |
|---|---|---|---|---|
| 🇺🇸 United States | AAPL (no suffix) | NYSE, NASDAQ | "US" | "USD" |
| 🇬🇧 United Kingdom | AZN.L (.L suffix) | LSE | "GB" | "GBP" |
| 🇨🇦 Canada | RY.TO (.TO suffix) | TSX | "CA" | "CAD" |
Coverage launched with the 2026-06-15 Coverage Expansion release (LSE-UK ~355 names + TSX-Canada ~72 names). Live uptime and per-endpoint coverage stats are on /developer/docs/status — those numbers come straight from the backend and update in real time, never from a static cache. Additional markets are tracked on the Roadmap.
MCP Server
Connect Claude to Akinda's Shariah screening and ask in plain language — check compliance, pull reports, screen a portfolio, or calculate purification without leaving the chat. Each tool call is a metered API request on your plan.
Who can connect
The MCP Server is available on paid plans only. A free plan can sign in, but its tool calls return an upgrade message until you move to a paid plan.
Plans that can connect
- Personal Standard
- Personal Ultimate
- Business Standard
- Business Ultimate
- Business Enterprise (and legacy Enterprise)
Basic (Free) — blocked
MCP access requires a paid Akinda plan. Upgrade at b2b.akinda.io/pricing to connect your AI tools.
403 mcp_not_enabled_on_planThe five tools
Each tool call counts as one metered API request and is gated by the same tier rules as the matching REST endpoint. Verdicts are HALAL, NOT HALAL, DOUBTFUL, or a no-verdict “no data” state (ERROR_DATA / INCOMPLETE_DATA — not a haram signal). Markets: US, UK (.L) and Canada (.TO), reported in each company's native currency with no FX conversion.
| Tool | What it returns | Minimum plan |
|---|---|---|
akinda_check_compliance | Shariah verdict for a single ticker | Any paid plan |
akinda_basic_report | Verdict + the three core AAOIFI ratios | Personal Standard + |
akinda_full_report | Full report incl. AI-extracted figures + $ values | Personal Ultimate + |
akinda_screen_portfolio | Verdict for a list of tickers | Any paid plan |
akinda_calculate_purification | Dividend purification amount | Personal Standard + |
Connector URL
https://b2b-api.akinda.io/mcpAdd this as a custom MCP connector in Claude, then sign in with Google — no separate credential to create.
Connect to Claude
Sign in with Google — no key to manage. The screenshots below are the Claude desktop app; claude.ai (web) is the same. Sign in with the email your subscription is under (a free plan can sign in, but tool calls return an upgrade message until you're on a paid plan).
- 1
Open your profile in Claude
In the Claude desktop app, click your profile at the bottom-left of the sidebar.

Show the full step-by-step — 9 more steps, with screenshots▾
- 2
Open Settings
Click Settings — or just press Ctrl + ,.

- 3
Go to Connectors
In the Settings window, scroll the left menu down to Connectors and open it.

- 4
Click Add
At the top-right of the Connectors panel, click the Add dropdown.

- 5
Choose Add custom connector
In the dropdown, click Add custom connector.

- 6
The dialog opens
You'll see two fields — a Name and a Remote MCP server URL. Leave Advanced settings empty — Claude registers itself automatically.

- 7
Enter the name and the URL
Give it a name — e.g. Akinda MCP — and paste this into Remote MCP server URL:
https://b2b-api.akinda.io/mcp
- 8
Click Add
Click Add to save the connector.

- 9
Connect and sign in with Google
Find Akinda MCP in your connectors and click Connect. A browser tab opens — choose the Google account on your Akinda subscription (the paid account you already use), approve, and it returns to Claude. Akinda never sees your Google password.
- 10
Done — the tools are ready
Claude now shows Akinda connected with its five read-only tools. Ask something like “Is AAPL halal?” and Claude will use them.

Disclaimer
Informational screening based on reported financial data. Not a fatwa; does not replace a qualified scholar. Values are in the stock's native currency — never FX-converted.
1. Shariah Compliance Status — /COMPLIANCE
Available to all tiers. The fastest halal / non-halal verdict — send a ticker, get a single AAOIFI-aligned status string back. Use it in search bars, watchlists, and live-feed filters where you just need a yes-or-no answer.
Endpoint
https://b2b-api.akinda.io/api/v1/compliance/AAPL?apikey=YOUR_API_KEY| Parameter | Type | Description |
|---|---|---|
| ticker * | string | Uppercase ticker symbol (path param). Example: AAPL. |
| apikey * | string | Your Akinda API key (query param or X-API-Key header). |
| Field | Type | Description |
|---|---|---|
| ticker | string | Uppercase ticker symbol echoed back from the request |
| company_name | string | Full legal company name |
| halal_status | string | One of HALAL, DOUBTFUL, or HARAM |
{ "ticker": "AAPL", "company_name": "Apple Inc.", "listing_country": "US", "reporting_currency": "USD", "halal_status": "HALAL" }
2. Basic Shariah Compliance Report — /BASIC-REPORT
Requires Personal Standard tier or above. Returns the three core AAOIFI ratios on top of the compliance status — everything you need to display a transparent screening breakdown.
Endpoint
https://b2b-api.akinda.io/api/v1/basic-report/AAPL?apikey=YOUR_API_KEY| Parameter | Type | Description |
|---|---|---|
| ticker * | string | Uppercase ticker symbol (path param). Example: AAPL. |
| apikey * | string | Your Akinda API key (query param or X-API-Key header). |
| Field | Type | Description |
|---|---|---|
| ticker | string | Uppercase ticker symbol (UK suffixed with .L, Canada with .TO) |
| company_name | string | Full legal company name |
| halal_status | string | HALAL, DOUBTFUL, or HARAM |
| listing_country | string | ISO-2 country code of the primary listing exchange — US (NYSE/NASDAQ), GB (LSE), CA (TSX). Auto-detected from the ticker, so callers never pass a country parameter on the per-ticker path. |
| reporting_currency | string | ISO-4217 currency the company reports in — USD, GBP, or CAD. Every dollar/percentage field on this payload is denominated in this currency; the API performs NO FX conversion. |
| debt_ratio_perc | float | Interest-bearing debt as % of 12-quarter average market cap. CAN legitimately exceed 100% on leveraged or financials-adjacent names; consumers must accept ratio values > 100% and never clamp to [0, 100]. |
| liquidity_ratio_perc | float | Cash & equivalents + short-term investments as % of 12-quarter average market cap. Can legitimately exceed 100% on cash-rich firms; do not clamp. |
| non_compliant_revenue_perc | float | Non-compliant (impermissible) revenue as % of total revenue. Can legitimately exceed 100% on interest-heavy or pre-revenue companies (interest income > operating revenue). |
{ "ticker": "AAPL", "company_name": "Apple Inc.", "listing_country": "US", "reporting_currency": "USD", "halal_status": "HALAL", "debt_ratio_perc": 3.07, "liquidity_ratio_perc": 1.70, "non_compliant_revenue_perc": 0 }
3. Full Shariah Compliance Report — /FULL-REPORT
Requires Personal Ultimate tier or above. Adds AI-extracted SEC filing analysis, USD dollar amounts for every ratio, doubtful / compliant revenue pairs, and per-source revenue breakdowns. This is the full payload behind every stock detail page on the Akinda dashboard.
Endpoint
https://b2b-api.akinda.io/api/v1/full-report/AAPL?apikey=YOUR_API_KEY| Parameter | Type | Description |
|---|---|---|
| ticker * | string | Uppercase ticker symbol (path param). Example: AAPL. |
| apikey * | string | Your Akinda API key (query param or X-API-Key header). |
| Field | Type | Description |
|---|---|---|
| ticker | string | Uppercase ticker symbol (UK suffixed with .L, Canada with .TO) |
| company_name | string | Full legal company name |
| halal_status | string | HALAL, DOUBTFUL, or HARAM |
| halal_rating | int | Shariah compliance score 1–10 (AI-derived) |
| listing_country | string | ISO-2 country code of the primary listing exchange — US (NYSE/NASDAQ), GB (LSE), CA (TSX). Auto-detected from the ticker. |
| reporting_currency | string | ISO-4217 currency the company reports in — USD, GBP, or CAD. Every dollar/percentage field on this payload is in this currency; the API performs NO FX conversion. |
| force_haram | boolean | Business-activity screen tripped — primary line of business sits in an outright-prohibited sector (conventional banking, insurance, gambling, alcohol, pork, tobacco, weapons, adult entertainment). When true, halal_status is HARAM regardless of financial ratios. |
| debt_ratio_perc | float | Interest-bearing debt as % of 12-quarter average market cap. CAN legitimately exceed 100% on leveraged firms or financials — consumers must accept ratio > 100% and never clamp to [0, 100]. |
| liquidity_ratio_perc | float | Cash & equivalents + short-term investments as % of 12-quarter average market cap. Can legitimately exceed 100% on cash-rich firms; do not clamp. |
| non_compliant_revenue_perc | float | Non-compliant revenue as % of total revenue. Can legitimately exceed 100% on interest-heavy or pre-revenue companies. |
| interest_debt | int64 | AI-extracted interest-bearing debt from SEC filings (USD) |
| prohibited_revenue | int64 | AI-extracted prohibited revenue amount (USD) |
| operating_lease | int64 | AI-extracted operating lease obligations (USD) |
| last_scanned | string | ISO-8601 timestamp of the last AI scan (e.g. 2026-03-14T04:49:00Z) |
| debt_ratio_dollar | float | null | Total interest-bearing debt in USD. null until the daily-updater microservice has computed it for this ticker. |
| liquidity_ratio_dollar | float | null | Total liquid-asset position in USD. null until computed. |
| non_compliant_revenue_dollar | float | null | Non-compliant revenue in USD. null until computed. |
| doubtful_revenue_perc | float | null | Doubtful-source revenue as % of market cap. null until computed. |
| doubtful_revenue_dollar | float | null | Doubtful-source revenue in USD. null until computed. |
| compliant_revenue_perc | float | null | Halal (compliant) income as % of market cap. null until computed. |
| compliant_revenue_dollar | float | null | Halal income in USD. null until computed. |
| halal_revenue_source | Source[] | null | Per-source breakdown of halal revenue. null = breakdown not extracted yet; [] = breakdown ran and found none. Element shape below. |
| non_compliant_revenue_source | Source[] | null | Per-source breakdown of non-compliant revenue. Same null / [] semantics as above. |
| doubtful_revenue_source | Source[] | null | Per-source breakdown of doubtful revenue. Same null / [] semantics as above. |
Field notes — interest_debt, prohibited_revenue, operating_lease
These three USD totals are extracted by an AI pipeline that reads SEC filings. In rare cases, a 0 value may indicate that the extraction missed the underlying number rather than the company genuinely having zero of that quantity.
When 0 is likely the real number
- Small or pure-play companies with clear absence of these categories
- Halal-classified consumer goods, technology services, or software firms
- Tickers where
halal_status= HALAL and other dollar fields are consistent (e.g., very lowdebt_ratio_dollar)
When 0 may be an extraction miss
- Large-cap companies known to carry significant debt or operating leases
debt_ratio_dollarorliquidity_ratio_dollarare populated with large values but these three return0- The ticker's
halal_statusisDOUBTFULorNOT HALALbut all three legacy fields are0
Reliable cross-references
| Field | Why |
|---|---|
debt_ratio_dollar, liquidity_ratio_dollar, non_compliant_revenue_dollar | Emit JSON null (not 0) when uncomputed — stricter null semantics |
last_scanned | Confirms when the ticker was last processed |
halal_status + halal_rating | Draw on a broader input set than these three fields alone |
For automated compliance workflows, treat the three legacy USD totals as advisory and prefer the newer *_dollar columns and halal_status for primary decisions. If your use case requires explicit “extraction confidence” signals on these fields, contact contact@akinda.io and we'll prioritize accordingly.
Source element shape
Each item inside halal_revenue_source, non_compliant_revenue_source, and doubtful_revenue_source follows the shape below. A field set to null means the daily updater hasn't computed the breakdown yet; an empty array [] means it ran and found none — semantically different.
| Field | Type | Description |
|---|---|---|
| name | string | Revenue-source label extracted from SEC filings (e.g. "Services", "iPhone", "Apple Card interest") |
| percent | float | Source amount as % of market cap, rounded to 2 decimals |
| amount_usd | float | Original dollar amount in USD (as reported by stock-analyzer) |
Ranking Score Business Ultimate & Enterprise
These eight fields are included only for clients on the Business Ultimate and Business Enterprise tiers. Other tiers receive the response without them. A null on any pillar means the upstream calculation failed for that ticker — it does not mean a score of 0. A value of 0.00 is a real "Poor" rating.
| Field | Type | Description |
|---|---|---|
| ranking_score | float | null | Overall Akinda ranking — average of non-null pillars (0.00–10.00) |
| profitability_score | float | null | Profitability pillar (0.00–10.00). null = calculation failed |
| liquidity_score | float | null | Liquidity pillar (0.00–10.00). null = calculation failed |
| financial_strength_score | float | null | Financial strength pillar (0.00–10.00). null = calculation failed |
| value_score | float | null | Value pillar (0.00–10.00). null = calculation failed |
| growth_score | float | null | Growth pillar (0.00–10.00). null = calculation failed |
| momentum_score | float | null | Momentum pillar (0.00–10.00). null = calculation failed |
| dividend_score | float | null | Dividend pillar (0.00–10.00). Contributes to overall only when > 0 |
{ "ticker": "AAPL", "company_name": "Apple Inc.", "listing_country": "US", "reporting_currency": "USD", "halal_status": "HALAL", "halal_rating": 7, "force_haram": false, "debt_ratio_perc": 12.34, "liquidity_ratio_perc": 7.89, "non_compliant_revenue_perc": 1.74, "interest_debt": 110000000000, "prohibited_revenue": 5000000000, "operating_lease": 14000000000, "last_scanned": "2026-03-14T04:49:00Z", "debt_ratio_dollar": 110000000000, "liquidity_ratio_dollar": 65000000000, "non_compliant_revenue_dollar": 4920000000, "doubtful_revenue_perc": 1.15, "doubtful_revenue_dollar": 2600000000, "compliant_revenue_perc": 97.84, "compliant_revenue_dollar": 218000000000, "halal_revenue_source": [ { "name": "Services", "percent": 85.25, "amount_usd": 189000000000 }, { "name": "iPhone", "percent": 12.51, "amount_usd": 27000000000 } ], "non_compliant_revenue_source": [ { "name": "Apple Card interest", "percent": 1.01, "amount_usd": 4920000000 } ], "doubtful_revenue_source": [ { "name": "Apple Music streaming", "percent": 1.15, "amount_usd": 2600000000 } ], "ranking_score": 7.80, "profitability_score": 8.20, "liquidity_score": 7.40, "financial_strength_score": 8.50, "value_score": 5.90, "growth_score": 7.60, "momentum_score": 8.10, "dividend_score": 5.20 }
Error Codes
401 UnauthorizedInvalid or missing API key403 ForbiddenSubscription tier too low for this endpoint429 Too Many RequestsRate limit or bandwidth quota exceeded