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.2.tar.gz
(14.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.2.tar.gz.
File metadata
- Download URL: reportify_sdk-0.2.2.tar.gz
- Upload date:
- Size: 14.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 |
c34eb88529c012f9bde6df2ebc644947a3e6df2fe5ca31e53b2785a4e514e543
|
|
| MD5 |
a32a195176aafba4db6aefc4a33b2183
|
|
| BLAKE2b-256 |
3889e4c6a50ead4844b8e5fce67a07f2ac0f3287355ab6f3ba5f5f767cd4372c
|
File details
Details for the file reportify_sdk-0.2.2-py3-none-any.whl.
File metadata
- Download URL: reportify_sdk-0.2.2-py3-none-any.whl
- Upload date:
- Size: 16.7 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 |
4c3a9aa7bd44079a572146621d3a9acddd633dcd599a577d613870ee216cf0b0
|
|
| MD5 |
4b442a79973155cb3d382dac8dc0f89e
|
|
| BLAKE2b-256 |
7cbc1b706e3f402f0eacf2dbbdc905051cf4edda5bd5166a9bf7b929fae20af7
|