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.7.tar.gz
(15.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.7.tar.gz.
File metadata
- Download URL: reportify_sdk-0.2.7.tar.gz
- Upload date:
- Size: 15.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 |
a21659f633ef5389bb71d501ed2cb790bc1f56dd35c14f6dd95ed96d00471750
|
|
| MD5 |
efddeccd34c49ad698ce63763331cb80
|
|
| BLAKE2b-256 |
d9b8a1b71884c59523528ff926dc9e9aa968c3f3ef879b30f41845ab530e36d7
|
File details
Details for the file reportify_sdk-0.2.7-py3-none-any.whl.
File metadata
- Download URL: reportify_sdk-0.2.7-py3-none-any.whl
- Upload date:
- Size: 18.0 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 |
dd79998da9a4dfd22c722b7b82127a624ef3cbff60c9acabe4e5fa6387f6147a
|
|
| MD5 |
6541df3f50da27e832cc5fa861d1a68e
|
|
| BLAKE2b-256 |
121c4cef8b9207a0fe70eaadd9f819f5d221abe3645da57baba50e16bcc264fb
|