# yt_potion v1.0.0 - Table of Contents

> YouTube v3 Data API Wrapper

## Modules

- [YtPotion.Auth](YtPotion.Auth.md): Behaviour for pluggable authentication strategies.
- [YtPotion.Auth.ApiKey](YtPotion.Auth.ApiKey.md): Default `YtPotion.Auth` strategy: adds the YouTube API key as a `key`
query parameter, appending to any params already set on the request.

- [YtPotion.Client](YtPotion.Client.md): The Req integration point: reads configuration, applies the configured
`YtPotion.Auth` strategy, issues the request, and routes the response
through `YtPotion.Parser`.

- [YtPotion.Config](YtPotion.Config.md): Runtime lookup for yt_potion's configuration.
- [YtPotion.Error](YtPotion.Error.md): Error struct returned by any yt_potion call that can fail at runtime.
- [YtPotion.Parser](YtPotion.Parser.md): Parses a decoded YouTube Data API response body into either the list of
result items or a `YtPotion.Error` describing what the API rejected.

- [YtPotion.Resource](YtPotion.Resource.md): Macro for declaring a YouTube Data API resource from a `{path, actions}`
pair, replacing one hand-written module + macro per endpoint.
- [YtPotion.Resources.Channel](YtPotion.Resources.Channel.md): The YouTube Data API `channels` resource.

- [YtPotion.Resources.Search](YtPotion.Resources.Search.md): The YouTube Data API `search` resource.

- [YtPotion.Resources.Video](YtPotion.Resources.Video.md): The YouTube Data API `videos` resource.

