diff --git a/README.md b/README.md index 2dcf94b5..e3a6a8ba 100644 --- a/README.md +++ b/README.md @@ -5,12 +5,12 @@ _Arch is an intelligent (edge and LLM) proxy designed for agentic applications - to help you protect, observe, and build agentic tasks by simply connecting (existing) APIs._ -[Quickstart](##quickstart) • -[Demos](##demos) • -[Build agentic apps with Arch](###Build-AI-Agent-with-Arch-Gateway) • -[Use Arch as an LLM router](###Use-Arch-Gateway-as-LLM-Router-) • +[Quickstart](#Quickstart) • +[Demos](#Demos) • +[Build agentic apps with Arch](#Build-AI-Agent-with-Arch-Gateway) • +[Use Arch as an LLM router](#Use-Arch-Gateway-as-LLM-Router) • [Documentation](https://docs.archgw.com) • -[Contact](##contact) +[Contact](#Contact) [![pre-commit](https://github.com/katanemo/arch/actions/workflows/pre-commit.yml/badge.svg)](https://github.com/katanemo/arch/actions/workflows/pre-commit.yml) [![rust tests (prompt and llm gateway)](https://github.com/katanemo/arch/actions/workflows/rust_tests.yml/badge.svg)](https://github.com/katanemo/arch/actions/workflows/rust_tests.yml) diff --git a/demos/use_cases/spotify_bearer_auth/README.md b/demos/use_cases/spotify_bearer_auth/README.md index 4f04c16f..7dd3c81e 100644 --- a/demos/use_cases/spotify_bearer_auth/README.md +++ b/demos/use_cases/spotify_bearer_auth/README.md @@ -1,11 +1,31 @@ -This demo shows how you can use spotify's public APIs using http auth header token. +# Use Case Demo: Bearer Authorization with Spotify APIs -This demo uses following apis from spotify, +In this demo, we show how you can use Arch's bearer authorization capability to connect your agentic apps to third-party APIs. +More specifically, we demonstrate how you can connect to two Spotify APIs: -- /v1/browse/new-releases -- /v1/artists/{artist_id}/top-tracks +- [`/v1/browse/new-releases`](https://developer.spotify.com/documentation/web-api/reference/get-new-releases) +- [`/v1/artists/{artist_id}/top-tracks`](https://developer.spotify.com/documentation/web-api/reference/get-an-artists-top-tracks) -For more details please see arch_config.yaml. +Where users can engage by asking questions like _"Show me the latest releases in the US"_, followed by queries like _"Show me top tracks from Taylor Swift"_. -To get auth token please follow this -TODO +![Example of Bearer Authorization with Spotify APIs](spotify_bearer_auth.png) + +## Starting the demo + +1. Ensure the [prerequisites](https://github.com/katanemo/arch/?tab=readme-ov-file#prerequisites) are installed correctly. +2. Create an `.env` file with API keys for OpenAI and Spotify. + - Sign up for an OpenAI API key at [https://platform.openai.com/signup/](https://platform.openai.com/signup/) + - Sign up for a Spotify Client Key/Secret by following instructions at [https://developer.spotify.com/dashboard/](https://developer.spotify.com/dashboard/) + - Generate a Spotify token using the [https://accounts.spotify.com/api/token API](https://accounts.spotify.com/api/token), using ```curl``` or similar commands. + - Create a .env file with the following keys: + ``` + OPENAI_API_KEY=your_openai_api_key + SPOTIFY_CLIENT_KEY=your_spotify_api_token + ``` + +3. Start Arch + ```sh + sh run_demo.sh + ``` +4. Navigate to http://localhost:18080 +5. Ask "show me new album releases in the US" diff --git a/demos/use_cases/spotify_bearer_auth/spotify_bearer_auth.png b/demos/use_cases/spotify_bearer_auth/spotify_bearer_auth.png new file mode 100644 index 00000000..3111d47f Binary files /dev/null and b/demos/use_cases/spotify_bearer_auth/spotify_bearer_auth.png differ