Zodiac Tech CRM Docs

Agency panel (Meta Ops)

The agency console at /agency — which role sees which menu, and the daily operating loop for each job.

ad-specialist support admin Medium ⏱ 15 min Updated 2026-10-05

Agency panel (Meta Ops)

The agency console (/agency) is the workplace for the team that runs Meta ads for clients: account managers, ads specialists, creative specialists, QA reviewers and support agents. It is deliberately separate from both the client CRM (/admin) and the platform Super Admin (/super-admin) — agency staff see client workspaces, not the platform's plumbing.

Everything in the panel sits under one navigation group: Meta Ads.

Who this is for

  • Agency staff — your menu and your loop are below.

  • Platform admins — how the console is locked down.

  • Clients — know that this console exists and what it can/cannot do with your account.

  • Difficulty: Medium

  • Time: 15 minutes

  • Prerequisites: An agency account (created on the platform side). Five failed logins lock an account for 15 minutes — by design.

Access model in one minute

  • The console is permission-gated per page: every screen declares the meta.* permission it needs. Two people with different roles can log in to the same panel and see genuinely different menus.
  • The Super Admin bypasses the per-page gates (platform staff oversight).
  • Only the QA reviewer can launch campaigns (meta.campaign.launch). This is the control that makes the campaign workflow meaningful.
  • The client workspace list is viewable with the view permission, editable with client-manage, and not creatable or deletable from here — client workspaces are provisioned by the platform (leadhub:meta-ops-provision).

The full page map (and the permission each page needs)

Screen Purpose Permission
Overview Portfolio health at a glance. meta.view
Setup Queue New client workspaces waiting for connection & setup. meta.setup
Needs Attention Open issues across clients (see Ads health). meta.performance.view + lifecycle actions
Active Campaigns Live campaigns with spend, attributed leads and CPL. meta.performance.view
QA Queue The 12-point QA and the launch gate. meta.campaign.launch
Support Desk Client support work. meta.support.manage
Live Chat Real-time client chat. meta.support.manage
Requests Queue Client requests routed to the team. meta.support.manage
Team Workload Who is carrying what. meta.view
Daily Brief The morning summary the platform composes for the team. meta.view
Portfolio Report Roll-up reporting across client workspaces. meta.performance.view
Clients (All Clients) Client workspace records — view / edit contact, budget, objective, team assignments. meta.view (edit: meta.client.manage)
Creatives The creative pipeline (see Creatives). meta.creative.manage

Your daily loop, by role

Account manager

Permissions: view, setup, connect, performance, client manage, support manage.

  1. Daily Brief — read the morning summary (issues, support items, changes overnight).
  2. Needs Attention — triage anything on your clients: acknowledge what you are handling, act on criticals.
  3. Setup Queue — push new client connections forward (assets connected, pages selected, forms mapped).
  4. Support Desk / Requests — work client asks; keep response times in the clients' own reports healthy.
  5. Portfolio Report — weekly: spend, leads, CPL per client before any client call.

Ads specialist

Permissions: view, setup, connect, campaign create/edit/pause, performance.

  1. Active Campaigns — spend and CPL first; pause runaway spend when warranted.
  2. Overview — compare clients; spot the outlier before it becomes a complaint.
  3. Setup Queue — help connections and asset selections land correctly.
  4. Team Workload — balance hands-on work across specialists.
  5. Escalate anything that looks like a broken pipeline to the client's CRM side (missing leads is often form selection, not ads).

Creative specialist

Permissions: view, creative manage.

  1. Creatives — work the production queue: internal review → in progress.
  2. Send to client for review when a version is genuinely ready.
  3. Handle changes requested feedback by producing a new version (never overwrite).
  4. Mark ready for ads on approved creatives.

QA reviewer

Permissions: view, campaign launch (only role).

  1. QA Queue — work approved drafts: Start QA (auto-mandatory items must pass), complete the five reviewer checks.
  2. Pass QA only with all 12 items done; Fail QA with written notes otherwise.
  3. Launch — the only role that can. Campaigns go live paused, then Verify Launch checks found/active/spending/producing leads.
  4. Keep the audit trail clean — every pass, fail and launch is recorded.

Support agent

Permissions: view, connect, support manage.

  1. Support Desk / Live Chat / Requests — own the client conversation.
  2. connect — help clients (or do it for them with permission) re-authorize Meta connections and refresh pages.
  3. Hand technical bugs to the platform side with the client workspace and symptom noted.

Expected result

Each agency role opens /agency and sees exactly the tools for their job — no more, no less — with the launch authority concentrated where it belongs and every client action auditable.

Common mistakes

  • Expecting the client to see the agency console. They cannot — different panel, different accounts. Clients see results in their CRM and approve creatives there.
  • Looking for "create client". Deliberately absent — provisioning is a platform operation.
  • Asking a non-QA teammate to "just launch it". Fails by design. Route it through QA.
  • Sharing logins. Roles are the security model; shared logins defeat it (and the lockout policy still applies).

Troubleshooting

Symptom Fix
A menu item is missing Your role lacks that page's permission — see the page map table; ask the platform admin.
Locked out 5 failed attempts → 15-minute lockout. Wait, then retry carefully.
Can view a client but not edit View is meta.view; editing needs meta.client.manage.
Campaign stuck before launch QA not passed, or the auto-mandatory items are incomplete — the queue explains.

Technical details

  • Panel: App\Providers\Filament\AgencyPanelProvider (/agency) — a single nav group Meta Ads; login page AgencyLogin with a 5-failure / 15-minute lockout. Per-page gate: protected static string $metaPermission + the ChecksMetaPermission trait; Super Admin bypasses via User::hasMetaPermission.
  • Roles/permissions: database/seeders/AgencyRolesSeeder — permissions meta.view, meta.setup, meta.connect, meta.campaign.create, meta.campaign.edit, meta.campaign.launch, meta.campaign.pause, meta.creative.manage, meta.performance.view, meta.client.manage, meta.support.manage, meta.billing.view, meta.audit.view. Role mapping: account_manager (view, setup, connect, client.manage, support.manage, performance.view); ads_specialist (view, setup, connect, campaign.create/edit/pause, performance.view); creative_specialist (view, creative.manage); qa_reviewer (view, campaign.launch — launch is exclusive); support_agent (view, connect, support.manage).
  • Pages: MetaAdsOverview, SetupQueue, MetaNeedsAttention, MetaActiveCampaigns, MetaQaQueue, MetaSupportDesk, MetaLiveChat, MetaRequestsQueue, MetaTeamWorkload, MetaDailyBriefPage, MetaPortfolioReport. Resources: MetaClientWorkspaceResource (view/edit only), MetaCreativeResource.
  • Client workspaces are created by the platform command leadhub:meta-ops-provision, not from the console.

Was this page helpful?