API Reference
1 API Reference
This reference covers VeritaScribe’s programmatic interfaces, data models, and internal APIs for developers and advanced users.
1.1 Command Line Interface
1.1.1 Core Commands
1.1.1.1 analyze
Perform comprehensive thesis analysis.
uv run python -m veritascribe analyze [OPTIONS] PDF_PATH
Arguments: - PDF_PATH
(required): Path to the PDF thesis file
Options: - --output, -o TEXT
: Output directory for reports - --citation-style, -c TEXT
: Expected citation style (APA, MLA, Chicago, IEEE, Harvard) - --quick, -q
: Perform quick analysis (first 10 blocks only) - --no-viz
: Skip generating visualization charts - --annotate
: Generate an annotated PDF with highlighted errors - --verbose, -v
: Enable verbose logging
Exit Codes: - 0
: Success - 1
: Error (file not found, analysis failed, etc.)
1.1.1.2 quick
Fast analysis of document subset.
uv run python -m veritascribe quick [OPTIONS] PDF_PATH
Arguments: - PDF_PATH
(required): Path to the PDF thesis file
Options: - --blocks, -b INTEGER
: Number of text blocks to analyze (default: 5)
1.1.1.3 demo
Create and analyze sample document.
uv run python -m veritascribe demo
No arguments or options. Creates demo_thesis.pdf
in current directory.
1.1.1.4 config
Display current configuration.
uv run python -m veritascribe config
Outputs configuration table and API key status.
1.1.1.5 providers
List available LLM providers and models.
uv run python -m veritascribe providers
1.1.1.6 optimize-prompts
Fine-tune analysis prompts using a few-shot learning dataset.
uv run python -m veritascribe optimize-prompts
1.1.1.7 test
Run system diagnostics.
uv run python -m veritascribe test
Tests configuration loading, PDF processing, and LLM connectivity.
1.2 Python API
1.2.1 Configuration Management
1.2.1.1 veritascribe.config.VeritaScribeSettings
Main configuration class using Pydantic Settings.
from veritascribe.config import VeritaScribeSettings
= VeritaScribeSettings(
settings ="your-key-here",
openai_api_key="gpt-4",
default_model=2000,
max_tokens=0.1
temperature )
Key Fields:
Field | Type | Default | Description |
---|---|---|---|
llm_provider |
str |
"openai" |
LLM provider (openai, openrouter, anthropic, custom) |
openai_api_key |
Optional[str] |
None |
OpenAI API key |
openrouter_api_key |
Optional[str] |
None |
OpenRouter API key |
anthropic_api_key |
Optional[str] |
None |
Anthropic API key |
default_model |
str |
"gpt-4" |
LLM model name |
max_tokens |
int |
2000 |
Max tokens per request |
temperature |
float |
0.1 |
LLM temperature |
1.2.2 Data Models
All data models use Pydantic for validation and serialization.
1.2.2.1 veritascribe.data_models.ThesisAnalysisReport
Complete analysis report containing all results.
Key Fields: - document_name: str
- analysis_timestamp: datetime
- total_pages: int
- total_words: int
- total_text_blocks: int
- analysis_results: List[AnalysisResult]
- total_processing_time_seconds: float
- token_usage: Optional[Dict[str, int]]
- estimated_cost: Optional[float]
This API reference covers the main interfaces. For implementation details, see the Architecture Guide.