Metadata-Version: 2.4
Name: parsimony-financial-reports
Version: 0.5.0
Summary: FinancialReports.eu connector for the parsimony framework
Project-URL: Homepage, https://financialreports.eu
Project-URL: Repository, https://github.com/ockham-sh/parsimony-connectors
Project-URL: Issues, https://github.com/ockham-sh/parsimony-connectors/issues
Author-email: "Ockham.sh" <team@ockham.sh>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: connectors,data,finance,financial_reports,parsimony
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: financial-reports-generated-client>=0.1.0
Requires-Dist: pandas<3,>=2.3.0
Requires-Dist: parsimony-core<0.6,>=0.5.0
Requires-Dist: pydantic<3,>=2.11.1
Provides-Extra: dev
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-asyncio>=1.3.0; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest>=9.0.3; extra == 'dev'
Requires-Dist: respx>=0.22.0; extra == 'dev'
Requires-Dist: ruff>=0.15.10; extra == 'dev'
Description-Content-Type: text/markdown

# parsimony-financial-reports

FinancialReports.eu connector — European company filings (annual reports, interim reports, ESEF) plus company, ISIN, and ISIC reference data via the official SDK.

Part of the [parsimony-connectors](https://github.com/ockham-sh/parsimony-connectors) monorepo. Distributed standalone on PyPI as `parsimony-financial-reports`.

## Connectors

10 connectors grouped by capability:

| Name | Kind | Description |
|---|---|---|
| `fr_companies_search` | fetch | Search/list companies by name, country, ISIN, ticker, or ISIC industry code. |
| `fr_company_retrieve` | fetch | Full company profile by internal ID. |
| `fr_filings_search` | fetch | Search filings by company, type, date, country, language, and more. |
| `fr_filing_retrieve` | fetch | Full filing metadata by ID. |
| `fr_filing_markdown` | fetch | Full filing content as markdown text (Level 2 API access). |
| `fr_filing_history` | fetch | Audit trail of changes to a filing. |
| `fr_next_annual_report` | fetch | Predict a company's next annual report date with a confidence score. |
| `fr_isic_browse` | fetch | Browse ISIC industry classifications (sections / divisions / groups / classes). |
| `fr_isin_lookup` | fetch | Look up ISINs with OpenFIGI enrichment (FIGI, security type, exchange). |
| `fr_reference_data` | fetch | List reference data: filing types, categories, languages, countries, sources. |

## Install

```bash
pip install parsimony-financial-reports
```

Pulls in `parsimony-core>=0.4,<0.5` and the official `financial-reports-generated-client` SDK automatically. Verify discovery:

```bash
python -c "from parsimony import discover; print([p.name for p in discover.iter_providers()])"
```

## Configuration

Set the following environment variable:

```bash
export FINANCIAL_REPORTS_API_KEY="<your-key>"
```

Request a key at https://financialreports.eu.

## Quick start

```python
import asyncio
from parsimony_financial_reports import CONNECTORS

async def main():
    connectors = CONNECTORS.bind_env()
    result = await connectors["fr_companies_search"](countries="DE", page_size=10)
    print(result.data.head())

asyncio.run(main())
```

For multi-plugin composition:

```python
from parsimony import discover
connectors = discover.load_all().bind_env()
```

## Provider

- Homepage: https://financialreports.eu
- API docs: https://financialreports.eu/developers

## License

See [LICENSE](./LICENSE).
