Python SDK for Reportify API - Financial data and document search
Project description
Reportify SDK for Python
Python SDK for Reportify API - Financial data and document search.
Installation
pip install reportify-sdk
Quick Start
from reportify_sdk import Reportify
# Initialize client
client = Reportify(api_key="your-api-key")
# Search documents
docs = client.search("Tesla earnings", num=10)
for doc in docs:
print(doc["title"])
Features
Document Search
# General search across all categories
docs = client.search("revenue growth", num=10)
# Search specific document types
news = client.search_news("Apple iPhone", num=10)
reports = client.search_reports("semiconductor analysis", num=10)
filings = client.search_filings("10-K annual report", symbols=["US:AAPL"])
transcripts = client.search_transcripts("guidance", symbols=["US:TSLA"])
Stock Data (returns pandas DataFrame)
# Financial statements
income = client.stock.income_statement("US:AAPL", period="quarterly")
balance = client.stock.balance_sheet("US:AAPL")
cashflow = client.stock.cashflow_statement("US:AAPL")
# Price data
prices = client.stock.prices("US:AAPL", limit=30)
kline = client.stock.kline("US:TSLA", interval="1d", limit=100)
# Real-time quotes
quotes = client.stock.quote(["US:AAPL", "US:MSFT"])
# Company info
overview = client.stock.overview("US:AAPL")
shareholders = client.stock.shareholders("US:AAPL")
# Screening and calendar
stocks = client.stock.screener(market="US", min_market_cap=1e10)
earnings = client.stock.earnings_calendar(area="us", start_date="2024-01-01")
Timeline
# Get timeline for followed entities
companies = client.timeline.companies(num=20)
topics = client.timeline.topics(num=20)
institutes = client.timeline.institutes(num=20)
public_media = client.timeline.public_media(num=20)
social_media = client.timeline.social_media(num=20)
Knowledge Base
# Search user's uploaded documents
chunks = client.kb.search("quarterly revenue", folder_ids=["folder_id"])
Documents
# Get document content
doc = client.docs.get("doc_id")
summary = client.docs.summary("doc_id")
# List and search documents
docs = client.docs.list(symbols=["US:AAPL"], page_size=10)
chunks = client.docs.search_chunks("revenue breakdown", num=5)
Error Handling
from reportify_sdk import (
Reportify,
AuthenticationError,
RateLimitError,
NotFoundError,
APIError,
)
try:
docs = client.search("Tesla")
except AuthenticationError:
print("Invalid API key")
except RateLimitError:
print("Rate limit exceeded, please wait")
except NotFoundError:
print("Resource not found")
except APIError as e:
print(f"API error: {e.message}")
Configuration
client = Reportify(
api_key="your-api-key",
base_url="https://api.reportify.cn", # Optional: custom API URL
timeout=30.0, # Optional: request timeout in seconds
)
Context Manager
with Reportify(api_key="your-api-key") as client:
docs = client.search("Tesla")
# Client will be closed automatically
License
MIT License - see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
reportify_sdk-0.2.0.tar.gz
(13.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reportify_sdk-0.2.0.tar.gz.
File metadata
- Download URL: reportify_sdk-0.2.0.tar.gz
- Upload date:
- Size: 13.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16db9e2d390e2e8c17c2ad3278b8ae83980813456a27bcf5f3484ba46e52f152
|
|
| MD5 |
e8ecd2f3713b5affb181bbaff22f3b9a
|
|
| BLAKE2b-256 |
32bd5f99e43342aeda50f3ed1508b5d0d68c4fcb5713d53d1f0b161b835c70dc
|
File details
Details for the file reportify_sdk-0.2.0-py3-none-any.whl.
File metadata
- Download URL: reportify_sdk-0.2.0-py3-none-any.whl
- Upload date:
- Size: 15.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4f72648778290d8448edd6ed5528fa5e5eedea39b2d977e2efb58143500b2b7
|
|
| MD5 |
2dbef07b13b4acdd02d75e739713d123
|
|
| BLAKE2b-256 |
6f553386c6a28a146c71e87985374532d03c65084d45c83549a04d4a37473642
|