{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "vercel-edge-config-get", "type": "registry:item", "description": "Get a value from Vercel Edge Config", "dependencies": [], "files": [ { "path": "steps/vercel-edge-config-get.ts", "content": "import { FatalError } from \"workflow\"\n\n/**\n * Get a value from Vercel Edge Config\n *\n * @param key - The key to retrieve\n * @param edgeConfigId - Optional Edge Config ID (uses EDGE_CONFIG env var if not provided)\n * @returns The value stored at the key\n */\nexport async function getEdgeConfigValue(key: string, edgeConfigId?: string) {\n \"use step\"\n\n const token = process.env.VERCEL_TOKEN\n const configId = edgeConfigId || process.env.EDGE_CONFIG_ID\n\n if (!token) {\n throw new FatalError(\"VERCEL_TOKEN environment variable is required\")\n }\n\n if (!configId) {\n throw new FatalError(\"EDGE_CONFIG_ID environment variable or edgeConfigId parameter is required\")\n }\n\n if (!key) {\n throw new FatalError(\"key is required\")\n }\n\n const teamId = process.env.VERCEL_TEAM_ID\n const url = teamId\n ? `https://api.vercel.com/v1/edge-config/${configId}/item/${key}?teamId=${teamId}`\n : `https://api.vercel.com/v1/edge-config/${configId}/item/${key}`\n\n const response = await fetch(url, {\n method: \"GET\",\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n\n if (!response.ok) {\n if (response.status === 404) {\n return null\n }\n const error = await response.text()\n throw new Error(`Failed to get Edge Config value: ${error}`)\n }\n\n return await response.json()\n}\n", "type": "registry:file", "target": "steps/vercel-edge-config-get.ts" } ] }