Agency mode
One login, many customer accounts. Build templates once, deploy to N customers.
Overview
Agency mode turns an Oya account into a multi-tenant control plane. You stay signed in as yourself, but you can list, create, switch into, and operate on a set of customer sub-accounts. Each customer has its own agents, billing balance, gateways, and runs, but everything rolls up to your agency account for visibility and payment.
Account types
Every Oya account row carries an account_type. Today there are four:
- user: the default. A single self-serve account, no sub-accounts.
- agency: can create and operate customer sub-accounts. Sees a customers dashboard in the web UI and the `oya account` CLI.
- customer: a sub-account owned by an agency. Has its own agents and billing balance; rolls up to the parent agency.
- customer_archived: soft-deleted customer. Agents are paused, data is retained.
Note
Agency mode is a manual flip today. There's no signup toggle or self-serve upgrade path. Email [email protected] and we'll enable agency mode on your account.
What you get with agency mode
- The `oya account` CLI (whoami, list, create, use, delete).
- An agency dashboard at /agency in the web app: list customers, see usage and last-activity, jump in to operate a single customer.
- Template authoring permission: POST /api/templates, fork, edit. Non-agency users can only deploy existing templates.
- Consolidated billing: every customer agent's usage is recorded against the parent agency's BillingAccount. One card, one invoice.
Day-one workflow
The shortest path from “agency mode enabled” to “first customer running an agent”:
bash
# 1. Log in once
oya login
# 2. Confirm you're in agency mode
oya account whoami
# → account_type: agency
# 3. Create a customer
oya account create --label "Acme Corp" --email "[email protected]" --use
# 4. Build or deploy an agent for Acme (you're now operating as Acme)
oya template list
oya template deploy ai-sdr-saas --input founder_name="Alex" --input domain="acme.com"
# 5. Wire up Acme's Slack / Gmail / etc.
oya agent gateway list <agent_id>
oya agent gateway connect <agent_id> slack
# 6. Deploy the agent
oya agent deploy <agent_id>Next
- Read the full Account CLI reference: every flag, every endpoint.
- Author your own templates with `oya template create --from-agent <id>`.
- Understand the active-target model so you don't accidentally operate on the wrong customer.