MCA Master Data & Company Search: How to find information on Indian businesses

10/01/2026 06:35 · 10 min read
MCA Master Data & Company Search: How to find information on Indian businesses

India runs the most complete company disclosure regime in this series. Every registered company — down to the smallest private limited — must file audited financial statements (form AOC-4) and an annual return listing its full shareholding (form MGT-7) with the Ministry of Corporate Affairs. Directors carry lifetime identification numbers. Beneficial owners are declared at a 10% threshold, the strictest in this series. And the basic record of any company — its master data — is free, in English, no login required.

After the previous article in this series — a United States that collects nothing — India is the counter-example: a country that collects nearly everything. The catch is not what exists; it is the work of getting it out. The filings live behind a per-company payment of Rs 100, inside PDF attachments, on a portal (MCA21, now in its V3 generation) that offers no API and no bulk download. India’s problem is not darkness. It is extraction.

This guide covers the MCA portal as it works today, the free master-data layer, decoding the CIN, what a hundred rupees unlocks, the DIN system, financials and shareholding, beneficial owners, the free tax-side verification stack, and how to work Indian data at scale.

MCA21 and the V3 portal

India’s register is national, unified and old enough to have generations. MCA21 — the Ministry of Corporate Affairs’ e-governance platform, named for the 2006 project that digitised the Registrars of Companies (ROCs) — is where every company and LLP incorporates, files, and keeps its public record. The system now runs entirely on its third generation: the V3 portal at mca.gov.in, rolled out in phases from 2022 and completed on 14 July 2025, when the last 38 forms — including the annual filings AOC-4 and MGT-7 — moved across and the old V2 system was switched off for good.

Three access levels matter. Anyone can view a company’s master data — no account. A free Registered User account unlocks document purchase. A Business User account with a digital signature is for filing. For a researcher or compliance analyst, the first two are the whole game.

Company master data: the free layer

The single most useful free screen in Indian due diligence is the company master data view. Search by name or CIN and it returns: the CIN itself, company status (active, struck off, under liquidation, dormant), incorporation date, registered office and email, authorised and paid-up capital, the listing status, the ROC it belongs to, its directors with their DINs, the index of charges (which lender holds security over what, for how much), and the dates of its last filed balance sheet and AGM — the fastest compliance-health check the portal offers.

Everything is filed — reading it costs a hundred rupees The most complete disclosure regime in this series, priced per company, joined by hand Master data FREE MCA21 / V3 portal CIN, status, capital, directors Charges index, filing dates Public documents Rs 100 Every filing, per company AOC-4 financials, MGT-7 returns Incorporation papers, resolutions Listed filings FREE Exchanges + SEBI Full audited disclosure Shareholding patterns Verification stack FREE GSTIN, EPFO, Udyam, PAN Tax and payroll liveness Cross-checks beyond MCA SBO layer IN FILINGS Beneficial owners at 10% Declared via BEN-2 Read through documents Bulk / API NONE OFFICIAL Machine access No MCA API or bulk file Open-data snapshots only
India’s stack: a free master-data layer most countries would charge for, a hundred-rupee document vault behind it, a free tax-side verification stack beside it — and no machine door into any of it.

Read the master data like an analyst, not a browser. Status first — nearly three in ten Indian companies on the register are struck off, so active status is never safe to assume. Then the last AGM and balance-sheet dates: a company whose latest AOC-4 is two years old is telling you something its website will not. Then charges: the free index shows secured lending against the company — creation, modification, satisfaction — which doubles as both a credit signal and a rough proxy for banking relationships.

The CIN, decoded

The Corporate Identification Number is the register’s key, and unusually among this series’ identifiers, it is legible: 21 characters that tell you five things about a company before you have searched anything.

IDENTITY ARCHITECTURE The CIN: a company profile in 21 characters Corporate Identification Number · assigned at incorporation · the key to every MCA record U 7 2 2 0 0 M H 2 0 1 5 P T C 1 2 3 4 5 6 L / U listing INDUSTRY NIC code STATE MH YEAR incorporated TYPE PTC = pvt ROC NO. file number WHAT IT TELLS YOU Listed or unlisted, at a glance Industry, home state, vintage Ownership type before you search HOW TO USE IT The exact key for master data Ask counterparties for it first Name searches collide; CINs do not It can change on conversion — re-verify LLPs carry a shorter LLPIN; foreign companies an FCRN. All three unlock the same MCA record system.
A CIN read left to right: listing status, industry (NIC code), state of registration, year of incorporation, company type, and the registrar’s file number. U72200MH2015PTC123456 is an unlisted Maharashtra software private limited from 2015 — before you have opened a single record.

One practical caution the neat structure hides: a CIN is derived from attributes that can change. Convert from private to public, list on an exchange, or migrate the registered office to another state, and the company receives a fresh CIN — so historical documents may carry an old one. Ask counterparties for the CIN, verify it against master data, and treat name-only matching as a last resort: India’s register is dense with near-identical names, and the CIN is the only clean key. For how it compares to identifiers worldwide, see our global tax-ID format guide.

How many companies exist

By the Ministry’s own Corporate Data Management figures, India has passed 3.1 million registered companies, of which over 2 million are active — roughly 30% of the register is inactive, the residue of years of aggressive strike-off drives against non-filing shells. Business services leads the sectors, Maharashtra the states, and the register grows daily. Alongside the companies sit the LLPs — a separate, lighter regime under the same ministry — and a small population of registered foreign companies.

3.1M+
Registered companies (MCA CDM)
2M+
Active companies
~30%
Of the register is inactive — check status first
Rs 100
Unlocks a company’s public documents
10%
SBO threshold — the strictest in this series
Rs 100/day
Late-filing fee, uncapped — compliance has teeth

The entity types you will meet

TypeWhat it isWorth knowing
Private limited (PTC)The default corporate formFiles audited AOC-4 accounts and MGT-7 returns like everyone else — India’s big difference from the US.
Public limited (PLC)Share-capital form, listed or notListed ones add full exchange disclosure and shareholding patterns.
One Person Company (OPC)Single-member companySame filing regime, one owner — visible as such.
LLPLimited liability partnershipSeparate act, lighter filings (Form 8 accounts, Form 11 return), its own LLPIN; designated partners use the same DIN system.
Section 8 companyNon-profit companyFull MCA filing duties; no dividend distribution.
Foreign company (FCRN)Overseas company with an Indian place of businessRegisters and files with the ROC; a small population, thinly recorded.

What Rs 100 unlocks: public documents

Behind the free layer sits the vault: View Public Documents. For Rs 100 per company — about a dollar — a registered user gets access to the company’s filed record: incorporation documents, annual returns, financial statements, charge filings, director changes, resolutions. Documents sit in your workspace for seven days; a single transaction covers up to five documents per company, and multiple companies can go in one cart.

That price deserves a moment of series context. Australia charges A$9–A$36 per document. Singapore charges S$5.50 for a profile. The UK gives documents free; Japan charges a few hundred yen for the register alone and has no accounts to sell. India sells the audited accounts and complete shareholding of any private company in the country for roughly the price of a chai and a samosa. The barrier was never cost — it is that the goods arrive as scanned or generated PDFs, one company at a time.

What you wantWhere it isCost
Master data, directors, charges index, filing datesMCA V3 portal, no loginFree
Audited financial statements (AOC-4)View Public DocumentsRs 100 per company
Annual return with full shareholding (MGT-7)View Public DocumentsWithin the same Rs 100
Incorporation papers, resolutions, charge deedsView Public DocumentsWithin the same Rs 100
Listed-company disclosureExchanges and SEBI filingsFree
Director check: DIN, other directorshipsMCA director servicesFree
GST registration statusGST portal — search by GSTINFree
Payroll livenessEPFO establishment searchFree
MSME registrationUdyam verificationFree

One document in the vault deserves a special flag for anyone reading promoter groups: AOC-2, filed with the board’s report, discloses the company’s related-party contracts and arrangements — who the company trades with inside its own family, and on what basis. Paired with the MGT-7’s shareholding and the DIN network, it is the closest thing Indian filings offer to a map of a group’s internal economy.

Financials: every company files

Here is India’s headline, stated against the series it closes: every Indian company files audited financial statements, and the public can read them. Form AOC-4 carries the balance sheet, profit and loss, and auditor’s report, due within 30 days of the AGM each year; larger companies file in machine-readable XBRL. The United States collects this from no private company at any size; Japan’s duty is ignored by 98% of companies; Australia exempts most proprietary companies. India collects it from everyone, audited, annually — and enforces it with an uncapped Rs 100-per-day late fee and, for directors of companies that stop filing, automatic disqualification.

The honest caveats: the statements arrive as PDF attachments inside the AOC-4 (open the attachments panel), quality follows the auditor, and filings run on the AGM calendar — a company’s freshest public accounts are typically 6–18 months old. Listed companies add real-time exchange disclosure on top. But as a floor of financial visibility across an entire economy, nothing else in this series — except Belgium’s free NBB accounts — comes close.

Shareholding and the MGT-7

The MGT-7 annual return is the ownership document: it lists the company’s share capital and its shareholding — promoters and members, with their holdings — plus directors and key managerial personnel, meetings held, and transfers during the year. It sits in the same Rs 100 public-documents vault. Listed companies publish quarterly shareholding patterns through the exchanges on top, with promoter pledges flagged.

Who you can see — the fullest ladder in this series Directors Every director with a lifetime DIN, on the free master data — disqualifications published too. PUBLIC · FREE Shareholders The MGT-7 annual return carries the full shareholding — read it through public documents. FILED · Rs 100 Beneficial owners SBO declarations (BEN-2) are filed with the ROC — in the documents, not a search screen. DECLARED AT 10% America records none of this. India files all three layers — the work is extraction, not existence.
The fullest ownership ladder in the series: directors free, shareholding for a hundred rupees, beneficial owners declared at 10%. The American article’s three empty tiers, inverted.

Directors and the DIN

India solved the “which John Smith?” problem structurally. Every director holds a Director Identification Number — one DIN per person, across every board seat they ever hold — kept alive by an annual KYC filing. The free master data shows a company’s directors with DINs; MCA’s director services resolve a DIN to its other directorships, which turns one search into a network map: from a single company to its directors to every other company they sit on. It is the single best free linkage tool in this series — and it reaches across entity types, since LLP designated partners carry the same identification numbers.

The enforcement edge matters too: under Section 164(2), directors of a company that fails to file for three consecutive years are automatically disqualified from every board for five — and the disqualification lists are published. India has run mass disqualification drives on exactly this basis; screening a proposed director against them is a one-minute check.

Beneficial owners: declared at 10%

India’s Significant Beneficial Owner regime, under the Companies Act and the SBO Rules, sets the lowest threshold in this series: an individual holding 10% of shares, voting rights or distribution rights — or exercising significant influence — must declare to the company (form BEN-1), and the company must file the declaration with the ROC (form BEN-2). FATF’s 2024 assessment of India treated MCA21 as the country’s primary beneficial-ownership registry — a sentence that could not be written about the United States or China.

The practical shape: SBO data is filed and reachable rather than searchable. There is no public SBO search screen; the BEN-2 sits among the company’s public documents, behind the same Rs 100. Between the MGT-7’s registered shareholding and the BEN-2’s look-through declarations, India puts more ownership truth within a dollar’s reach than any other country this series has covered — while stopping short of the one-click UBO registers of the EU’s pre-2022 era. For the global picture, see our guide to beneficial-ownership registers worldwide.

Free route

Get Indian company data for free — just ask Regis

Skip the portal workflow. Regis is a free AI assistant — like ChatGPT or Claude, but wired to live data on 600M+ companies from 400+ government registries across 200+ countries, India included. Ask in plain English and the answer comes back sourced and timestamped, with a link to the registry. The conversation is the AI part; the data is official filings, not a model’s guess.

Things you can ask

“Verify this CIN — is the company active?” “Who are the directors, and where else do they sit?” “Does this company have charges against it?” “Find Bengaluru IT companies, 50–200 staff.”
Try Regis free ↗ No credit card required

Compliance and integrity signals

Status is the first flag — and in India it bites. Roughly three in ten registered companies are struck off, the product of repeated ROC drives against non-filers; a struck-off counterparty legally cannot trade, and restoration runs through the NCLT. The master data’s last-AGM and last-balance-sheet dates are the freshness check; the compliance amnesty that ran to mid-July 2026 (CCFS-2026, a 90% waiver on late-filing penalties) has closed, and the ROCs are expected to move against the defaulters who ignored it — meaning fresh strike-off and prosecution waves are the near-term weather.

Charges are free intelligence. The index of charges on the master data screen shows every registered security interest — lender, amount, status — India’s answer to a collateral search, at no cost. Director screening pairs the DIN network with the published disqualification lists. Insolvency runs through the IBC: the NCLT’s cause lists and the insolvency regulator’s public announcements track admitted cases, and a counterparty in a corporate insolvency resolution process is a matter of public record. And for listed names, SEBI’s enforcement orders and the exchanges’ surveillance actions add a regulator-side layer. And on the question Indian due diligence asks most — is this company a bank defaulter? — the honest answer is that no free public register of loan defaults exists: what is public is the wilful-defaulter (suit-filed) lists that banks publish through the credit bureaus, plus the charges index as the free proxy for who has lent against what. Absence from those lists is weak comfort; presence on them is a hard stop.

The verification stack beyond MCA

India’s second superpower is that the corporate register is only one of several free official systems that describe the same business — and cross-checking them is how Indian counterparty verification actually works.

GST: the GST portal’s taxpayer search resolves a 15-character GSTIN — which embeds the company’s PAN — to its legal name, registration status and state; an active GSTIN is the standard liveness check for a trading business. EPFO: the establishment search shows whether an employer is registered for provident fund and, crucially, whether it has been remitting — a payroll-reality signal no register can fake. Udyam: MSME registrations verify free, relevant wherever small-supplier status carries pricing or payment-term consequences. A company that exists at the MCA, is active on GST, and remits at the EPFO is real in three independent government systems — a triangulation most countries in this series simply cannot offer.

The corporate linkage gap

Indian business runs on groups — promoter families controlling constellations of companies — and the register describes each company alone. The MGT-7 names shareholders per company; the DIN network hints at connections through common directors; but no MCA product joins a promoter’s holdings into one structure, links the Indian subsidiary to its foreign parent, or assembles the group a credit analyst actually needs to see. The data for most of it exists, filed — scattered across a few hundred PDFs that nobody official has ever connected.

What the records show — and what they don’t connect Foreign parent in another register Promoter network one family, many CINs Group companies filed apart, never joined The full group assembled by hand The Indian company MCA: identity, directors, financials, shareholding Solid: on the register. Dashed: in the filings somewhere — connected by nobody.
India’s gap is unique in this series: the connections are mostly in the filings — shareholding lists, common directors, parent names — but no official system draws the lines.
The one the records can’t give you India files nearly everything and connects nearly nothing. Reconstructing a group means reading MGT-7s across dozens of CINs, walking DIN networks, and joining the Indian entity to registers abroad — which is what Global Database does: we structure MCA-sourced identity, directors, financials and shareholding; join the GST-side signals; and place an Indian company inside its global group across 200+ jurisdictions, from each register’s own records. Every field traces to an official source; nothing is AI-generated.

What’s changing

  • V3 is now the whole system. The V2 portal was retired in mid-2025; every form, including AOC-4 and MGT-7, files through V3 with browser-based validation and pre-fill.
  • The amnesty is over; enforcement follows. CCFS-2026’s 90% penalty waiver closed on 15 July 2026 — the pattern after every such window is a wave of strike-offs and prosecutions against the holdouts.
  • Disclosure keeps deepening. XBRL scope has widened over the years, dematerialisation duties have pushed even private companies’ shares into depository accounts, and SBO enforcement has been picking up through ROC orders.
  • Open-data snapshots exist, but they are partial. Government open-data releases of company master data appear periodically; they are snapshots, not the live register, and they carry no documents.

How to access Indian data at scale

One company at a time, the portal works — free master data, Rs 100 for the vault. At scale, the machine door is missing: no official API, no bulk download of the live register, documents priced per company and expiring from your workspace in seven days, financials wrapped in PDF attachments. Working India at portfolio scale therefore means either an army of analysts or a provider that has industrialised the extraction — lawfully, with the source filing behind every field. For how India compares country by country, see our business-registry API map and the primer on why registry provenance matters.

MCA21 vs Global Database

The honest framing: for one Indian company, MCA21 is authoritative, cheap and — by global standards — astonishingly complete. The case for a registry-grounded layer is volume, structure, and the joins the ministry never draws.

NeedMCA21 (V3 portal)Global Database
Legal standingThe official record; certified copies availableSourced from MCA filings and other official sources; not itself a certificate
Price for one companyFree master data; Rs 100 for the documentsSubscription or per-record; built for volume
Identity, directors, chargesComplete and freeCarried from the register, structured
Financial statementsFiled by every company — inside PDF attachments, per companyExtracted and structured from the filings, comparable across companies
ShareholdingIn the MGT-7, per company, per yearStructured from the returns; promoter and holder views
Beneficial ownersBEN-2 declarations among the documentsCarried where filed; resolved onward through foreign registers where the chain leads abroad; declared unknown when it does not
Group and promoter networksNot connected by any MCA productJoined — DIN networks, shareholding links, and parents across 200+ jurisdictions
Cross-checks (GST, EPFO)Separate portals, separate searchesJoined to the company view
Bulk, API, monitoringNone official; open-data snapshots onlyAPI, bulk feed, platform, change monitoring
ProvenanceIs the sourceEvery field traces to its source and timestamp; nothing AI-generated

Limitations of Indian company data

The ceilings for the due-diligence file — the register’s, and ours.

Freshness runs on the AGM calendar. Financials and shareholding arrive annually, months after year-end; the freshest audited accounts of a private company are routinely a year old. The master data’s filing dates tell you exactly how stale a record is — read them first.

Filed is not verified. Accounts are audited to Indian standards by auditors of widely varying independence; shareholding is what the company declared; SBO declarations depend on the declarant. India’s enforcement record — strike-offs, disqualifications, penalty orders — is real, but the filings themselves are declarations, not investigations.

Shareholding lists can include ghosts. Shares whose dividends go unclaimed for seven years transfer to the state’s Investor Education and Protection Fund (IEPF), where they sit until the owner reclaims them — so a holder visible in the filings may no longer hold, and IEPF itself appears as a shareholder in many older companies. Ownership reads from MGT-7s need this in mind for anything with retail-shareholder history.

The documents fight extraction. Financials live in PDF attachments, sometimes scanned; formats shift across years and form versions. Anyone promising clean, structured Indian financials has done heavy engineering — ask how, and ask what their error handling marks as unreadable.

Names collide; CINs change. The register teems with near-identical names, and a CIN is re-issued on conversion, listing or state migration — so even the clean key needs verification against master data at the time of use.

The unregistered economy is out of frame. Companies and LLPs are the formal tier; proprietorships and partnerships — a vast share of Indian business — live outside the MCA entirely, visible only through GST, Udyam and the tax side. An MCA-only view of India undercounts it badly.

What that means for what we can promise. For India, Global Database provides registry-sourced identity, directors, charges, financials and shareholding with a source and timestamp on every field, joined to the tax-side signals and to group structures across 200+ jurisdictions. Where a filing is missing, late, or unreadable, the field says so — empty and marked as such, not modelled. A limitation by design, and, for a compliance file, the point.

What the records won’t tell you

Blind spotWhat it means
No group viewShareholding, DIN links and parents are filed separately, per company; no official product connects them.
No API, no bulkThe live register has no machine door; open-data snapshots are partial and document-free.
Annual cadenceFinancials and shareholding refresh once a year, on the AGM cycle.
PDF prisonThe substance sits in attachments — per company, seven-day workspace expiry, extraction on you.
SBO has no search screenBEN-2s are in the documents, not in a queryable register.
The informal tierProprietorships and ordinary partnerships never touch the MCA at all.

Get Indian company data the way that fits your stack

Whether you need a live CIN check, structured financials and shareholding across a portfolio, or Indian entities joined to their promoters and global parents — take it via API, as a bulk feed, or in the online platform.

Frequently asked questions

How do I do an MCA company search?

Go to the MCA V3 portal at mca.gov.in and use the company master data search - no account needed. Search by company name or, better, by CIN. The free result shows status, incorporation date, capital, registered office, directors with DINs, the index of charges, and the dates of the last filed balance sheet and AGM.

What is company master data?

The free public profile MCA maintains for every company and LLP: identity, status, capital, directors, charges and filing dates. It is the standard first check in Indian due diligence - and reading the last-AGM and last-balance-sheet dates is the fastest way to spot a non-compliant company.

What is a CIN number and how do I read it?

The Corporate Identification Number - a 21-character code assigned at incorporation that encodes listing status (L/U), the five-digit NIC industry code, state, year of incorporation, company type (like PTC for private limited), and the ROC registration number. U72200MH2015PTC123456 reads as an unlisted 2015 Maharashtra software private limited. Note that a CIN changes if the company converts, lists, or shifts state.

Is the MCA portal free to use?

Master data, company name checks, and director/DIN services are free without login. Downloading a company's filed documents - financial statements, annual returns, incorporation papers - costs Rs 100 per company through View Public Documents, with a free registered account. Filing (for companies themselves) carries statutory fees.

How do I download a company’s balance sheet from MCA?

Through MCA Services, then Document Related Services, then View Public Documents on the V3 portal: search the company, pick the Annual Returns and Balance Sheet category and year, add to cart and pay Rs 100 for that company. The financials are attachments inside the AOC-4 PDF - check the attachments panel. Documents stay in your workspace for seven days.

What are AOC-4 and MGT-7?

The two annual filings every Indian company makes. AOC-4 carries the audited financial statements (balance sheet, P&L, auditor’s report), due within 30 days of the AGM; MGT-7 is the annual return, listing share capital, the full shareholding, directors and KMP, due within 60 days. Both are public via the Rs 100 documents route, and both attract an uncapped Rs 100-per-day late fee.

What is a DIN and how do I check a director?

The Director Identification Number - one lifetime number per individual across all their board seats, kept active by annual KYC. MCA’s free director services resolve a DIN to the person and their other directorships, which is how you map a promoter’s network. Cross-check against the published disqualified-directors lists: three years of non-filing disqualifies a company’s directors from every board for five.

Can I find out who owns an Indian company?

Yes - more cheaply than almost anywhere in this series. The MGT-7 annual return lists the shareholding, and Significant Beneficial Owner declarations (BEN-2) capture individuals at a 10% threshold or with control; both sit in the company’s public documents behind the Rs 100 fee. Listed companies also publish quarterly shareholding patterns free via the exchanges.

Does India have a beneficial ownership register?

Functionally, yes - with the strictest threshold in this series (10%) - but not as a search screen. SBO declarations are filed with the ROC through form BEN-2 and are readable among the company’s public documents; FATF’s 2024 assessment treated MCA21 as India’s primary beneficial-ownership registry. There is no one-click public UBO lookup.

How do I verify an Indian company before doing business with it?

Triangulate three free government systems, then spend the Rs 100. Confirm the company and its status on MCA master data (check the last-filing dates and charges); verify its GSTIN on the GST portal (active registration, name matches); check the EPFO establishment search for payroll remittances. Then pull the AOC-4 and MGT-7 for the financials and shareholding. Mismatches between systems are the red flag.

What is a GSTIN and can I verify it?

The 15-character Goods and Services Tax identification number - it embeds the company’s PAN, and the GST portal verifies any GSTIN free: legal name, status, state, registration type. An active GSTIN is the standard liveness signal for a trading business, and a name mismatch against the MCA record is a classic invoice-fraud tell.

What does struck off mean on MCA?

The ROC has removed the company from the register - usually for prolonged non-filing - so it legally cannot operate. Nearly three in ten registered Indian companies are struck off after years of enforcement drives, which is why status is the first field to read. Restoration is possible through the NCLT, within limits.

What are the MCA fees for viewing and filing?

For viewing: master data and director checks are free; a company’s public documents cost Rs 100 per company (up to five documents per transaction, seven-day workspace); certified copies carry their own per-document fees. For companies filing: statutory fees scale with authorised capital and form type - and late filing of annual forms like AOC-4 and MGT-7 costs Rs 100 per day, per form, with no upper cap, which is why filing dates in master data are such a reliable health signal.

Can I download Indian company data in bulk?

Not from the ministry: MCA offers no official API and no bulk download of the live register, and documents are priced per company. Periodic government open-data releases carry master-data snapshots - without documents. Structured Indian data at scale comes from providers that have industrialised lawful extraction from the filings.

How many companies are there in India?

More than 3.1 million registered companies, of which over 2 million are active, per the Ministry of Corporate Affairs’ Corporate Data Management figures - alongside a separate LLP population and a small set of registered foreign companies. About 30% of the register is inactive, mostly struck off.

Is Indian company data available in English?

Yes - fully. The MCA portal, master data, and filings run in English, which makes India the most accessible large-economy register in this series for international users. The friction is workflow, not language: per-company payments, PDF attachments, and no API.