"""Headers for HTTP requests.""" from folding_studio.config import FOLDING_API_KEY from folding_studio.utils.gcp import get_id_token def get_auth_headers(api_key: str | None = None) -> dict[str, str]: """ Create authentication headers based on available credentials. API key is the default authentication. If none is provided, we fallback to JWT from Google Cloud. Returns: dict: Authentication headers for API requests. """ if api_key is not None: return {"X-API-Key": api_key} if FOLDING_API_KEY: return {"X-API-Key": FOLDING_API_KEY} identity_token = get_id_token() return {"Authorization": f"Bearer {identity_token}"}