Metadata-Version: 2.4
Name: reportify-cli
Version: 0.1.28
Summary: CLI wrapper for Reportify SDK - Access Reportify API through command line
Project-URL: Homepage, https://reportify.ai
Project-URL: Documentation, https://docs.reportify.ai
Project-URL: Repository, https://github.com/reportify/reportify-cli
Project-URL: Issues, https://github.com/reportify/reportify-cli/issues
Author-email: Reportify Team <support@reportify.ai>
License: MIT
Keywords: api,cli,finance,reportify,research,stock
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: pandas>=2.0.0
Requires-Dist: python-dotenv>=1.2.1
Requires-Dist: reportify-sdk>=0.3.15
Requires-Dist: tabulate>=0.9.0
Requires-Dist: typer>=0.21.1
Description-Content-Type: text/markdown

# Reportify API CLI

Access all [Reportify SDK](https://github.com/reportify-ai/reportify-doc/tree/main/sdks) features via command line.

## Features

- Complete coverage of all 8 SDK modules with 44+ methods
- Multiple output formats: JSON, Table, CSV, Markdown
- Simple unified JSON input format with clear help documentation
- AI-friendly design with detailed parameter descriptions

## Installation

```bash
# Install dependencies and CLI
make install

# Or install directly with uv
uv pip install -e .
```

## Configuration

Set API Key (required):

```bash
# Option 1: Environment variable
export REPORTIFY_API_KEY='your-api-key'

# Option 2: .env file
echo "REPORTIFY_API_KEY=your-api-key" > .env
```

## Quick Start

```bash
# Show help
reportify-cli --help
reportify-cli -h

# Show module help
reportify-cli docs --help

# Show command help
reportify-cli docs get --help

# Get document details (JSON format)
reportify-cli docs get --input '{"doc_id": "1214713494948155392"}'

# Get stock quote (Table format)
reportify-cli stock quote --input '{"symbol": "600519"}' --format table

# Get financial data (Markdown format)
reportify-cli stock income_statement \
  --input '{"symbol": "600519", "period": "annual"}' \
  --format markdown
```

## Available Modules

| Module | Description | Commands |
|--------|-------------|----------|
| `search` | Document search | 9 |
| `docs` | Document management | 4 |
| `stock` | Stock data | 14 |
| `timeline` | Timeline | 5 |
| `kb` | Knowledge base | 1 |
| `user` | User data | 1 |
| `quant` | Quantitative analysis | 8 |
| `concepts` | Concept dynamics | 2 |

## Output Formats

4 output formats supported:

- `--format json` - JSON (default)
- `--format table` - Table
- `--format csv` - CSV
- `--format markdown` or `--format md` - Markdown table

## Development

```bash
# Show all available commands
make help

# Run tests
make test

# Run unit tests
make test-unit

# Run integration tests (requires API Key)
make test-integration

# Format code
make format

# Lint code
make lint

# Clean cache
make clean

# Reinstall
make reinstall
```

## Project Structure

```
reportify-cli/
├── src/                    # Source code
│   ├── main.py            # CLI entry point
│   ├── commands/          # Command modules
│   ├── client.py          # SDK client
│   ├── output.py          # Output formatting
│   ├── params.py          # Parameter definitions
│   ├── settings.py        # Configuration
│   └── utils.py           # Utilities
├── tests/                 # Tests
│   ├── test_commands/     # Unit tests
│   └── integration/       # Integration tests
├── Makefile              # Dev commands
├── pyproject.toml        # Project config
└── README.md             # Documentation
```

## Examples

### Search Documents

```bash
reportify-cli search query \
  --input '{"query": "Tesla earnings", "limit": 10}'
```

### Stock Data

```bash
# Company overview
reportify-cli stock overview --input '{"symbol": "600519"}'

# Financial statements
reportify-cli stock income_statement \
  --input '{"symbol": "600519", "period": "annual"}'

# Stock prices
reportify-cli stock prices \
  --input '{"symbol": "600519", "start_date": "2024-01-01", "end_date": "2024-12-31"}'
```

### Quantitative Analysis

```bash
# Compute technical indicators
reportify-cli quant indicators_compute \
  --input '{"symbols": ["600519"], "formula": "RSI(14)"}' \
  --format table
```
