Agents (/developer/agents) | Your backend, both modes | Control-plane: provisioning at setup/deploy time. Runtime: rarely — end users don’t usually create Agents themselves. | Ops team provisions the “Career Launchpad” Agent once at launch. |
Skills / Knowledge / MCP (/developer/skills, /knowledge, /mcps) | Your backend, both modes | Control-plane: setting up shared resources. Runtime: an end user managing their own uploaded resources, if your product allows that. | Ops uploads the placement-office FAQ as a Knowledge base once; Sabik later uploads his own resume to a personal Knowledge base — that second call carries his x-persona-external-user-id. |
Providers (/developer/providers) | Your backend, control-plane only | Setup/admin time. No ExternalUser ownership exists for Providers — see the API reference’s 400 response for this endpoint. | Ops configures the OpenAI Provider once. |
Threads (/developer/threads) | Your backend, runtime-plane only (requires the header) | Whenever an end user starts/resumes/lists their own conversations. | Sabik’s chat history with Career Launchpad. |
Files (/developer/files) | Your backend, runtime-plane only (requires the header) | Whenever an end user uploads/downloads a file as part of a conversation. | Sabik attaches his resume to a chat message. |
AG-UI (/developer/agui) | Your backend, runtime-plane only (requires the header) | Every time an end user sends a chat message, relayed onward per §3. | Sabik’s live chat with Career Launchpad. |