What problem does it solve? Setting up credentials for external services (GitHub, Stripe, Google, etc.) inside a Notion Worker involves choosing between API keys and OAuth, managing secrets, configuring redirect URLs, and debugging auth failures. This guide walks through that entire process with a clear decision framework and step-by-step setup instructions. ## Core Features & Use Cases - Auth Decision Framework: Mechanically choose between personal API keys/PATs and OAuth based on what the provider offers and whether the worker should depend on one person's credential. - API Key Setup: Store tokens in .env, read them via process.env in execute, test with curl, and push secrets to the deployed worker with ntn workers env push. - OAuth Setup: Declare worker.oauth() capabilities, register provider apps, configure redirect URLs, run the authorization flow, and call accessToken() for auto-refreshed tokens. - Use Case: You are building a sync that pulls GitHub issues into Notion. The guide tells you to use a personal access token, add it to .env as GITHUB_API_TOKEN, verify it with curl, then push it remotely before deploying. ## Quick Start Ask the assistant to set up authentication for the external API your Notion Worker integrates with, and it will recommend API key or OAuth and walk you through the setup.