"""Dependencies for FastAPI""" import os from fastapi import HTTPException, Security from fastapi.security import APIKeyHeader from vultr_api import VultrClient API_KEY_HEADER = APIKeyHeader(name="X-API-Key", auto_error=False) VULTR_API_KEY = os.environ.get("VULTR_API_KEY") def get_client(api_key: str = Security(API_KEY_HEADER)) -> VultrClient: """Get VultrClient instance with API key from header or environment""" key = api_key or VULTR_API_KEY if not key: raise HTTPException( status_code=401, detail="API key required. Set X-API-Key header or VULTR_API_KEY env var" ) return VultrClient(api_key=key)