feat: Add OpenAPI foundation components

Add core OpenAPI 3.0.0 infrastructure for Tiingo API:
- Main openapi.yaml with API structure and routing
- Common schemas (Date, DateTime, Ticker, Currency, ErrorResponse)
- Reusable parameters (token, ticker, date ranges, formats)
- Standard error responses (401, 404, 500)
- Schema and component registries

This foundation enables all endpoint-specific specifications.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Cameron Yick
2025-12-13 23:43:54 -05:00
parent 4d9a9776a8
commit 2ab8cdb0b8
6 changed files with 491 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
# Reusable Parameter Definitions for Tiingo API
# Reference these using: $ref: '../parameters/_index.yaml#/ParameterName'
TokenParam: &TokenParam
name: token
in: query
required: true
schema:
type: string
description: API token for authentication
TickerPathParam: &TickerPathParam
name: ticker
in: path
required: true
schema:
type: string
pattern: '^[A-Z0-9]{1,5}$'
description: Stock or cryptocurrency ticker symbol
StartDateParam: &StartDateParam
name: startDate
in: query
required: false
schema:
type: string
format: date
description: Start date for historical data in YYYY-MM-DD format
EndDateParam: &EndDateParam
name: endDate
in: query
required: false
schema:
type: string
format: date
description: End date for historical data in YYYY-MM-DD format
FormatParam: &FormatParam
name: format
in: query
required: false
schema:
type: string
enum:
- json
- csv
default: json
description: Response format (json or csv)