# Changelog
## [Unreleased]
### Breaking Changes
- **Simplified `Configuration` struct.** The API key is now embedded in the URL as a query parameter:
```rust
let mut config = Configuration::new();
config.base_path = "https://photon.helius.com".to_string();
config.api_key = Some(ApiKey { prefix: None, key: "YOUR_KEY".to_string() });
let config = Configuration::new("https://photon.helius.com?api-key=YOUR_KEY".to_string());
```
- **Removed `Configuration::new_with_api_key`.** Use `Configuration::new` with the API key in the URL instead.
### Added
- **`external/photon` git submodule.** The Photon OpenAPI spec (`external/photon/src/openapi/specs/api.yaml`) is now pulled in as a submodule. Client types are pre-generated by [progenitor](https://github.com/oxidecomputer/progenitor) and checked in as `src/codegen.rs`. To regenerate after spec changes: `cargo build -p photon-api --features generate`. Generation deps (progenitor, regress, etc.) are behind the optional `generate` feature so they don't affect normal builds or CI.