Go to Settings -> Store Connection. Connect Shopify, WooCommerce, BigCommerce, or Custom Website/API. Do this before marketing data if the account sells products.
Browse by category
Search results
Detailed setup and feature documentation
Use the paginated reference reader below instead of scrolling through the entire manual at once.
Start here: the correct setup order
Go to Settings -> Data Source Connections. Add GA4, Search Console, Bing, Sheets, CSV, Drive, Tag Manager, Merchant Center, or YouTube only when the workflow needs that data.
Go to Settings -> Tools Connections. Add tools that BAAM may prepare actions for: ads, social, publishing, webhooks, or storage.
Go to Data Dashboard and Settings -> Data Source Connections. Fix connection, permission, field, or approval blockers before enabling live automation.
If BAAM can use a provider login button, use that first. Only use API token, webhook, CSV, or advanced JSON when the normal login/app install path is unavailable or the source is custom.
Where to do each setup in BAAM
| What you are trying to connect | Go here | Use this first | Fallback |
|---|---|---|---|
| Shopify, WooCommerce, BigCommerce, custom store | Settings -> Store Connection | Login/app install | Official API token, plugin key, or signed webhook |
| GA4, Search Console, Google Ads, Merchant Center, Tag Manager, Sheets, Drive, YouTube | Settings -> Data Source Connections | Login with Google | OAuth token package only if support provides one |
| Bing Webmaster Tools | Settings -> Data Source Connections | Bing Webmaster API key | CSV import from Bing export |
| Meta Business or Facebook Pages | Settings -> Tools Connections | Login with Meta/Facebook | Manual export/reminder until Meta permissions are approved |
| CSV, spreadsheet, private webhook, custom API | Settings -> Data Source Connections | CSV/Sheet upload or custom webhook | Manual task if fields cannot be mapped |
Help Docs: every Command Center feature
Each feature below is its own help page section. Use the section that matches where the user is stuck, then follow the setup path and fallback notes.
Settings
- What it does
- Controls store connection, data sources, external tools, AI setup, workspace rules, governance, and account-level setup.
- Setup
- Start with Store Connection, then Data Source Connections, then Tools Connections, then AI Setup.
- If stuck
- Open the exact provider setup guide, use OAuth first, and leave optional IDs blank until BAAM asks for them.
Store Connection
- What it does
- Connects the one ecommerce store BAAM may read and operate for the account.
- Setup
- Pick Shopify, WooCommerce, BigCommerce, Wix, Squarespace, Shoptet, or Custom Website/API. Use login/app install first.
- If stuck
- Confirm the store URL, admin role, webhook secret, and minimum read/write scopes. Revoke the saved store before choosing a different one.
Data Source Connections
- What it does
- Feeds dashboards, reports, and automations with official analytics, search, ads, sheets, CSV, storage, and webhook data.
- Setup
- Connect the provider, validate a small read, then map columns only for CSV, Sheets, webhooks, or custom APIs.
- If stuck
- Check property IDs, site URL, account role, OAuth account, and whether BAAM says Missing connection, Missing permission, or Field unavailable.
Tools Connections
- What it does
- Connects external platforms BAAM can prepare actions for, such as ads, social, publishing, webhooks, and storage.
- Setup
- Connect only tools required by a workflow. Direct writes stay blocked until credentials, scopes, guardrails, and approval rules pass.
- If stuck
- Use draft-only, export reminder, or manual task mode until the provider supports the requested action.
AI Setup
- What it does
- Configures AI providers, default models, usage visibility, Brand Brain, governance, and safety rules.
- Setup
- Add a provider key or workspace fallback, test it, then define governance rules and review requirements.
- If stuck
- Confirm encrypted key storage, provider key format, default model, usage budget, and whether the provider test passes.
Data Dashboard
- What it does
- Shows source health, connected data, sync history, dashboard blocks, charts, and missing-data warnings.
- Setup
- Connect at least one source, verify the provider setup, then customize dashboard blocks by source and metric.
- If stuck
- If charts are empty, check whether the source has synced and whether required fields are mapped.
Data Dashboard Overview
- What it does
- Summarizes connected source health, important records, readiness warnings, recent syncs, and the fastest next setup action.
- Setup
- Connect a store or data source, open Data Dashboard -> Overview, then use source cards to inspect records before building automations.
- If stuck
- If the overview is empty, validate one source connection, check the account/property ID, and run a small read or import first.
Data Dashboard Statistics
- What it does
- Shows charts, tables, scorecards, source comparisons, UTM performance, sync freshness, and configurable dashboard blocks.
- Setup
- Open Data Dashboard -> Statistics, choose the source, metric, date range, and chart style, then save the dashboard layout.
- If stuck
- If a chart has no rows, check source freshness, mapped fields, date filters, and whether the provider returned the requested metric.
Data Dashboard Sync
- What it does
- Shows connection freshness, last run, last error, manual refresh controls, revoke controls, and source validation states.
- Setup
- Open Data Dashboard -> Sync, validate each configured source, reconnect expired OAuth sources, and rerun only the affected source.
- If stuck
- Use the exact last error, provider, account ID, and failed run time in the support path. Do not delete a connection just to hide a failed run.
Data Dashboard Tracking
- What it does
- Manages UTM naming, campaign tracking links, source/channel attribution checks, and links used by campaigns and reports.
- Setup
- Open Data Dashboard -> Tracking, create consistent UTM links before publishing assets, then connect GA4 or CSV data to verify results.
- If stuck
- If tracked results are missing, confirm the generated URL was used, GA4 has received traffic, and campaign/source/medium names match exactly.
Automated AI Data Processing
- Status
- Removed from the Command Center UI. The old recommendation scan was not reliable enough for business decisions.
- Use instead
- Use Data Dashboard for source records, Command Centre for manual work, Reports for editable summaries, and AI Automation Builder for guarded workflows.
- If stuck
- Do not use scan-generated recommendations as decision support. Create a manual task or verify the source data directly.
AI Automation Builder
- What it does
- Builds workflows from trigger, analysis, decision, creation, guardrail, review, output, report, and tool-action blocks.
- Setup
- Use a recipe, edit every block, add guardrails, choose action modes, save, then run only after readiness checks pass.
- If stuck
- Use the canvas walkthrough, selected-block help, and the full block reference below.
AI Automation Dashboard
- What it does
- Shows runtime status, saved workflow counts, action queue health, recent runs, usage warnings, and the next automation setup task.
- Setup
- Open AI Automation -> Dashboard after saving at least one workflow. Use it to confirm whether workflows are draft, active, paused, blocked, or deleted.
- If stuck
- If status does not match the builder, refresh the dashboard and inspect the workflow run history, action queue, and readiness blockers.
Automation Recipes and Fast Starts
- What it does
- Creates starter workflows for weekly reporting, SEO refreshes, ecommerce follow-up, content drafting, tool actions, and guarded store operations.
- Setup
- Open AI Automation -> Start here or Fast starts, choose the closest recipe, then edit every block before saving or running.
- If stuck
- Templates are editable starting points. Replace missing providers, switch unsafe blocks to draft-only, and remove channels the user does not need.
Commerce OS
- What it does
- Coordinates store events, product/customer/order context, guarded drafts, preflight diffs, approvals, and store/API action requests.
- Setup
- Connect one store, verify webhooks or store reads, add margin/refund/consent guardrails, then test with a non-critical product or order workflow.
- If stuck
- Do not enable live writes until the store connector, webhook secret, entity IDs, approval rule, and preflight simulator all pass.
Action Queue and Tool Overview
- What it does
- Shows connector-aware actions waiting for draft push, webhook send, manual fallback, approval, or approved executor request.
- Setup
- Open AI Automation -> Tool actions or Tools, connect the target provider, review each queued action, then approve only actions with a valid diff and destination.
- If stuck
- Blocked actions need exact provider setup, scopes, entity IDs, guardrails, and approval state. Use manual task or export reminder until those are ready.
Usage and Cost
- What it does
- Estimates AI tokens, run cost, monthly risk, connector call volume, batch size, and recurring automation budget exposure.
- Setup
- Open AI Automation -> Usage cost, review estimates before frequent schedules or large batches, then reduce source limits or frequency when needed.
- If stuck
- High usage warnings are not cosmetic. Lower batch size, switch to manual start, or pause the workflow until the expected monthly cost is acceptable.
Active, Paused, and Deleted Automations
- What it does
- Shows workflows that can run, workflows intentionally stopped, and deleted workflows kept for audit context.
- Setup
- Save a workflow from the builder, confirm status, then run after provider setup and safety checks.
- If stuck
- Open the workflow in the builder and review the completion, usage estimate, and action queue blockers.
Generated Files and Outputs
- What it does
- Collects reports, exports, datasets, automation outputs, drafts, and attached files in one reviewable place.
- Setup
- Run a workflow, export a report, attach media, or create a draft. Outputs appear with source, status, and format.
- If stuck
- Check the workflow result panel and blocked action queue to see why no file was created.
Command Centre
- What it does
- Gives users the operational view for campaigns, content, calendar, reports, tools, and manual tasks.
- Setup
- Connect data sources, create or edit the work manually, and keep approval checks on for anything that affects publishing, customers, or spend.
- If stuck
- Use Data Dashboard to inspect source records, then create a campaign, content asset, report, or manual task.
Campaigns
- What it does
- Turns one idea into editable campaign briefs, channel output queues, assets, checks, media notes, UTMs, and reminders.
- Setup
- Choose the goal, audience, offer, proof, CTA, channels, start date, and end date before creating the package.
- If stuck
- Uncheck channels not needed, create one manual asset first, and attach media before scheduling.
Content, Library, Prompt Sets, and Growth Memory
- What it does
- Stores editable assets, reusable prompt sets, workflows, playbooks, approvals, version history, and saved learnings.
- Setup
- Create assets manually or from campaigns, collect customer/brand/product/voice files, and use version history for review.
- If stuck
- Open the asset editor, run a risk check, attach media, and use approvals only when needed.
Calendar
- What it does
- Schedules export reminders, draft pushes, and direct publishing only when official integrations and checks are ready.
- Setup
- Create assets first, run checks, approve or revise them, then schedule reminders or provider handoffs.
- If stuck
- If no assets show up, return to Campaigns or Library and create approved, non-blocked assets.
Reports
- What it does
- Creates editable, source-cited reports for weekly briefs, search performance, campaigns, channels, and executive summaries.
- Setup
- Connect data, choose a report template, edit the body, then export or send for approval.
- If stuck
- If no data is connected, write manual notes and clearly say performance data is unavailable.
Create and Tool Builders
- What it does
- Starts manual content, campaign, report, audience, ad, email, social, ecommerce, and tool-specific draft builders.
- Setup
- Choose the output type, enter the goal, audience, offer, proof, channel, constraints, and source notes, then review the generated draft before scheduling or exporting.
- If stuck
- Use Create manually when AI setup or data is missing. Use tool-specific builders only after the related data source or action tool is connected.
Leads and Consent
- What it does
- Stores CRM-ready leads, consent status, suppression rules, lifecycle stage, segment tasks, and CSV-ready audience data.
- Setup
- Add or import leads, map consent and suppression fields, then use audience tasks or draft exports until an official email/CRM connector is ready.
- If stuck
- Do not send or sync contacts without consent status. Fix missing email, consent, suppression, source, or lifecycle fields first.
Approvals, Compliance, and Privacy
- What it does
- Handles human review, risk checks, consent, legal workflows, privacy requests, retention, incidents, and audit logs.
- Setup
- Define governance rules, run checks before approval, and keep legal configuration reviewed by qualified counsel.
- If stuck
- Blocked content cannot be approved. Fix claims, consent, disclaimers, source notes, or policy risk first.
Canvas Editors walkthrough
The canvas editors are no-code workflow builders. They exist so a non-technical user can see every step before BAAM runs anything: trigger, data read, AI reasoning, branch, draft, guardrail, approval, output, report, and tool action.
Write the plain business goal first: for example, recover abandoned carts, refresh SEO pages, prepare weekly reports, or create product-page updates.
Use a recipe when the user knows the outcome but does not know the block sequence. Templates create editable blocks, not locked automation.
The trigger tells BAAM when to wake up. Use Manual start for sensitive workflows, Schedule for recurring work, Data change for connected-source changes, and store events only after webhooks are verified.
Click a block and fill Block type, Name, Connected tool/source, Action mode, Plain-language instruction, Saved output name, and Human approval only when that exact block must pause.
Use Brand check, Compliance check, Margin guardrail, Refund approval guardrail, or Human approval before publishing, sending, syncing, changing store data, refunds, discounts, or customer-impacting actions.
The inspector shows whether the workflow has a trigger, decision logic, useful output, and safety gate. It also estimates tokens, run cost, and monthly risk for frequent triggers.
Save the automation, then review active status, run history, generated files, action queue, blockers, approvals, and API usage before relying on it.
Do not force live action. Switch the block to Draft-only, Export reminder, or Manual review. Then connect the missing provider, map the missing field, or create a setup task.
Canvas editor panels
Undo, redo, Blocks, Workflow, Block settings, quick-add AI decision, quick-add Split, quick-add Parallel, Help Docs, completion, and Save.
Shows the workflow sequence. Click a block to edit it, drag blocks to reorder, use plus buttons to insert, and use zoom/pan controls to inspect larger workflows.
Shows recipes and every available block by type. Click or drag a block into the workflow.
Shows selected-block setup, full selected-block help, split/AI reasoning fields, readiness checks, usage estimate, and move/remove controls.
Controls whole-workflow approval rule, target tool, failure mode, and description.
Shows a compact step list with edit, move, and add controls so the builder is still usable on phones.
Automation block reference
This is the full block-by-block help document for the Canvas Editor. Every block below explains what it does, what the user can set up, what the block can do, and what to check when the user gets stuck.
Support path when a user is stuck
Use this path before the user guesses, deletes blocks, pastes secrets, or enables live action. The goal is to collect the exact facts support needs while keeping the workspace safe.
Capture the page, tab, feature, workflow, block name, provider, account email, and workspace where the issue appears.
Look for Missing connection, Missing permission, Field unavailable, Action unsupported, Manual fallback, Cost warning, Approval required, or Blocked.
Switch risky work to draft-only, export reminder, manual review, test mode, schema required, citations required, or approval required until readiness passes.
Reconnect with the right account, add the missing role/scope, map custom columns, add required IDs, import a test CSV/Sheet, or rerun the provider test.
Record the last successful run, failed run time, exact error, expected result, actual result, and whether a customer, billing, security, or live publishing issue is involved.
Send a ticket only after the facts above are captured. Do not paste account passwords, unrestricted API tokens, recovery codes, card numbers, or customer-sensitive data.
What to include in a support ticket
Good ticket evidence
- Account email and workspace name.
- Feature, page, tab, workflow, block, provider, or connector.
- Readiness state, blocker, exact error text, or failed sync result.
- Expected result, actual result, and what changed recently.
- Safe screenshot, short screen recording, or copied error text with secrets removed.
Never include
- Normal account passwords, MFA codes, recovery codes, or session cookies.
- Unrestricted provider API tokens or secret keys.
- Full card numbers, private customer records, or unrelated personal data.
- Production webhook secrets unless support explicitly provides a secure handoff path.
Support routing and response targets
| Problem | Ticket category | Include | Target first response |
|---|---|---|---|
| Paid workspace cannot log in or use the account | Account Access | Account email, workspace, login URL, exact error, reset/MFA status. | 1 business day |
| Live connector, sync, or workflow is blocked | Technical Issue | Provider, workflow/block name, readiness state, last successful run, failed run time. | 1 business day |
| Billing, invoice, plan, refund, cancellation, or checkout | Billing | Account email, order or invoice reference if available, plan, requested change. | 2 business days |
| Privacy, legal, data request, or security concern | Legal / Privacy | Verified account email, request type, affected workspace, urgency, safe contact method. | 1 business day for security/privacy triage |
| How-to, implementation, setup, or feature question | Support | Goal, current setup step, help doc section, screenshots without secrets, blocker. | 2 business days |
They are not a separate service-level guarantee unless the customer's plan, order, or contract states one. Keep live publishing, spend, store writes, refunds, and customer-impacting actions paused until support confirms readiness.
What BAAM readiness messages mean
Credentials validate, required scope exists, sample read works, and required fields are available or mapped.
The tool has not been connected yet, or OAuth/API validation did not complete.
The account connected, but a required permission, role, Page task, store access, or ads access is missing.
BAAM can read the source, but a workflow needs a value the source does not provide yet, such as margin, SKU, email, spend, or conversion value.
BAAM can create a task, draft, export, reminder, or checklist instead of pretending an unsupported action ran.
The action should not run. Typical causes: missing secret, unsafe write, unavailable provider API, failed compliance check, or unsupported direct publishing.
Field reference: what each input means
| BAAM field | What to enter | Example | Leave blank when |
|---|---|---|---|
| Connection name | A friendly label users recognize inside BAAM. | Main Shopify store, GA4 - baamai.com | Never. Give every setup a clear name. |
| Refresh schedule | How often BAAM checks read-only data. | manual during setup, daily after validation | Use manual if unsure. |
| Account ID | The provider account, customer, business, store, or verified site ID. | 123456789, your-store.myshopify.com | OAuth can detect one available account automatically. |
| Property ID | The specific property, dataset, feed, sheet, campaign, list, container, or channel. | GA4 property 123456789, GTM-XXXXXXX | The provider login lets the user pick later. |
| Site URL | The related public site, store, sheet, profile, verified property, or webhook destination. | https://www.example.com/ | The connector is not website-specific. |
| API key / access token | An official provider-generated credential. Not a normal login password. | shpat_..., Bing API key, webhook token package | OAuth stores credentials automatically. |
| Scopes / permissions | Permission names shown for transparency. | read_orders, analytics.readonly | Do not edit unless support asks. |
| Advanced JSON | Optional transform or payload rules for custom sources only. | {"type":"number","currency":"USD"} | Almost always. Leave empty unless you were given exact JSON. |
Provider-specific setup
Shopify store
- Go to Settings -> Store Connection -> Shopify.
- Use Login with Shopify first.
- Enter the store domain as
your-store.myshopify.com. - Approve BAAM on the Shopify screen.
- For event automations, add the Shopify client secret/webhook secret so BAAM can verify order, cart, product, inventory, refund, and fulfillment events.
Fallback: Admin API token from a Shopify custom app. Never paste your Shopify password.
WooCommerce store
- Install or use the BAAM WooCommerce/plugin path when available.
- If using REST keys, create a dedicated API user/key in WooCommerce.
- Use the site URL, consumer key, and consumer secret.
- Start read-only; enable write actions only after webhooks and approval rules work.
BigCommerce store
- Create an API account in BigCommerce Advanced Settings.
- Copy the store hash and access token/client credentials.
- Use read scopes first for products, orders, customers, and carts.
- Enable modify scopes only for workflows that have approval and guardrails.
Wix store
- Use Wix when the customer store runs on Wix Stores.
- Use the official Wix app install/OAuth flow first; BAAM should not ask for a Wix password.
- Approve the requested Wix Stores, Orders, Inventory, CRM, and Marketing permissions in Wix.
- BAAM stores the app instance token encrypted and validates it before any store data appears ready.
- Keep writes queued behind guardrails, preflight diff, and approval until the Wix executor path is ready.
Squarespace Commerce store
- Use Squarespace Commerce when the customer sells through Squarespace.
- Use the official Squarespace OAuth screen first; API key setup is a fallback only when support asks for it.
- Approve Commerce API access for the selected website.
- BAAM validates the selected website, products, orders, inventory, transactions, and contacts through official APIs.
- Keep product/order writes blocked until Commerce API permissions, entity IDs, guardrails, and approval rules pass.
Shoptet store
- Use Shoptet when the customer store runs on Shoptet.
- Install the official Shoptet add-on/OAuth path instead of asking for the Shoptet admin password.
- Set BAAM's callback URL in the Shoptet partner/add-on settings and confirm the returned e-shop ID.
- BAAM exchanges the add-on code for an encrypted token package and validates the e-shop through the Shoptet API.
- Enable live store actions only after products, orders, customers, stock, discounts, and store events validate through the official API.
Custom Website / API store
Use this only when the store is not Shopify, WooCommerce, BigCommerce, Wix, Squarespace, Ecwid, or Shoptet. BAAM needs a normal public website URL plus either a custom API URL for reads/writes or a webhook URL for events.
- Create a dedicated integration token in the custom site. Do not use a normal admin password.
- Use a public HTTPS webhook endpoint for store events. It must start with
https://and must not be localhost, a private IP address, or a password-protected browser page. - Use one action endpoint only if BAAM should submit live writes. The action endpoint is the URL BAAM posts to when it needs the custom site to create, update, tag, or record something.
- Paste the API base URL or action webhook URL, the auth header name, and the secret/token into BAAM. BAAM stores the secret encrypted and does not show it again.
- Test with non-production data before live automations. A setup-only row is not proof that the custom site received anything.
Expected event examples: order.created cart.abandoned product.updated inventory.low
Google Analytics 4 analytics
- Go to Google Analytics -> Admin -> Property settings.
- Copy the numeric Property ID.
- Do not use the Measurement ID that starts with
G-. - Use Login with Google in BAAM.
Google Search Console SEO
- Copy the exact property from Search Console.
- Use
sc-domain:example.comor the full URL-prefix exactly as Google shows it. - Use Login with Google.
- BAAM validates the property by listing Search Console sites and reading a small Search Analytics sample.
Google Ads ads
- Copy the Google Ads customer ID from the account switcher.
- Dashes are fine.
- Use Login with Google.
- BAAM checks Ads API readiness and account access before sync can validate.
Google Business Profile local
- Use the Google account that manages the Business Profile.
- Enter account/location IDs only when several profiles exist.
- BAAM checks accessible accounts and locations through Google APIs.
Google Merchant Center commerce data
- Use Login with Google Merchant Center.
- Enter Merchant ID only if multiple accounts are available.
- BAAM validates product access through the Merchant API.
Google Tag Manager tracking
- Use Login with Google Tag Manager.
- Enter GTM account/container only if the Google login sees multiple containers.
- BAAM reads tags, triggers, variables, and workspaces; it should not scrape public pages.
Bing Webmaster Tools SEO
- Open Bing Webmaster Tools -> API Access.
- Create/copy the API key.
- Paste the exact verified site URL.
- BAAM validates against Bing verified sites before marking connected.
Google Sheets custom spreadsheet data
Use this only when the data BAAM should analyze lives in a spreadsheet instead of a native connector like GA4, Search Console, Shopify, or Google Ads. Good examples are campaign plans, manual lead lists, product margin sheets, content inventories, exported reports, or client-owned tracker sheets.
- Open the Google Sheet that contains the data table.
- Copy the full Sheet URL from the browser address bar, or copy only the long ID between
/d/and/edit. - Optional range: use
Sheet1!A1:Z100only when BAAM should read one specific tab or area. Otherwise leave it blank. - BAAM uses read-only access, validates that the signed-in Google account can open the Sheet, reads a small sample, then stores the OAuth token encrypted.
- After connection, map custom columns only if BAAM cannot infer what the headers mean.
Google Drive storage
- Use Login with Google Drive.
- Paste a folder/file URL only when BAAM should validate a specific item.
- Default scope is app/file-limited, not unrestricted full Drive access.
Dropbox storage
- Use Login with Dropbox first. Paste a folder path only when BAAM should validate one specific folder.
- BAAM redirects to Dropbox with scoped OAuth permissions and refresh support for scheduled scans.
- After OAuth returns, BAAM validates the connected account and lists folder metadata through the official Dropbox API.
- Use manual setup only when support provides an official access package.
- Never paste a normal Dropbox password or unrestricted personal access token.
YouTube Analytics analytics
- Use the Google account that owns or manages the channel.
- Enter channel ID, URL, or handle only if there are several channels.
- BAAM validates channel access and runs a small report query.
Meta Business Suite social
- Use Login with Meta Business.
- Business Manager ID is optional unless several businesses are available.
- Meta app approval may be required before BAAM can validate some permissions.
Facebook Pages social
- Use Login with Facebook Pages.
- Enter Page ID only if the login manages several Pages.
- Publishing stays blocked unless Page access and required Page permissions are granted.
eBay marketplace
- Use eBay only for seller workflows that need marketplace listings, inventory, orders, offers, returns, or performance signals.
- Configure the Production keyset and RuName in eBay Developer Program before OAuth.
- Set BAAM's eBay callback URL as the Accept URL, then use Login with eBay from Tools Connections.
- BAAM exchanges the authorization code for an encrypted user token package.
- Keep live sync and writes blocked until the native eBay sync/executor path is implemented, tested, and approved.
CSV Import data
- Export from the source tool using its official export button.
- Keep the header row and include date, source platform, URL or campaign name, and the metrics BAAM should evaluate.
- In BAAM, give the import a clear dataset name, related site URL, and leave the credential field empty.
- Preview rows, map unknown columns, fix validation errors, then run a small report or workflow test.
- Do not paste secrets into CSV import; if a source needs credentials, use the real provider connector instead.
Custom Webhook custom
A webhook is a URL that receives a message from BAAM. For Custom Webhook, BAAM sends a JSON POST to the URL you provide. Use it when BAAM needs to send an action, lead, report, store event, or custom payload to a system that does not have a native BAAM connector.
- Decide where the message should go. For the first beta test, use a capture URL such as webhook.site or a staging endpoint owned by the destination system. Do not start with a production order, customer, or payment endpoint.
- Copy the webhook URL. It must start with
https://. BAAM rejectshttp://,localhost, private IPs, and internal-only URLs because the Worker cannot safely deliver to them. - Create a test secret. Use a header name such as
x-baam-beta-secretand a random test value. Never paste a normal account password, browser cookie, or personal login token. - In BAAM, open Settings -> Data Source Connections or Settings -> Tools Connections, choose Custom Webhook, paste the webhook URL, paste the secret header name and secret value, then save.
- Run the readiness check. If BAAM still says
configuration_required, the URL or credential package is missing. Setup-only examples are expected to stay blocked because they do not contain real credentials. - Run one test workflow or tool action with harmless data. The destination should receive one JSON
POSTand return a 2xx success response. - Open the destination logs or capture page and confirm the request time, URL, method, headers, and JSON body. Save the request ID or screenshot in the beta notes.
- Keep live automation blocked until one test delivery succeeds and one failure test returns a clear blocker instead of pretending the send worked.
Minimum proof of success: method = POST URL starts with https:// content-type = application/json secret header is present when configured response status = 200-299 BAAM records the delivery result
If nothing arrives, check these first: the row is setup-only, the endpoint is not public HTTPS, the secret/header names were put in the wrong fields, the endpoint returned 401/403/500, or the workflow was run in test mode instead of live delivery mode.
OAuth/login vs API token: which one to use
Use OAuth/login when available
This is the safest path. The provider shows the account, permissions, and approval screen. BAAM receives tokens through a callback and stores them encrypted.
- Shopify, WooCommerce, Wix, Squarespace, Shoptet, Dropbox, eBay, Google, Bing, Meta, and Facebook login/install paths.
- Use the same admin or owner account that can access the store, folder, marketplace, Page, property, or account.
- Reconnect from BAAM if the provider token expires, scopes change, or the wrong account was selected.
Use API token only as fallback
Use provider-generated tokens for private apps, plugin keys, custom websites, or systems that do not support OAuth in BAAM yet.
- Do not paste normal account passwords.
- Use minimum permissions and one dedicated integration credential.
- Rotate/revoke the token in the provider if access changes.
- CSV Import needs no secret. Leave the credential field empty.
CSV and Google Sheets setup
- Export from the provider using the provider's official export button.
- Keep the first row as readable headers.
- Include a date, source platform, URL or campaign name, and metrics BAAM should evaluate.
- Upload or connect the sheet, then map only the columns BAAM cannot understand automatically.
CSV Import flow
- Use CSV Import when OAuth/API access is unavailable, not as a replacement for an available native connector.
- Name the import after the source and date range, for example
May 2026 GSC queries. - Leave the credential field empty. CSV import must not contain passwords, API keys, session cookies, or unrestricted tokens.
- Preview rows and fix mapping before using the data in reports or automations.
When to switch to a connector
- If the workflow needs scheduled refresh, connect the native provider instead of repeatedly uploading CSVs.
- If the workflow needs live writes, CSV is not enough. Use a provider connector, draft push, webhook, or manual task path.
- If rows contain customer data, verify consent, suppression, and retention rules before creating audience tasks.
| Good header | Means | BAAM mapping |
|---|---|---|
SKU | Product identifier | product.sku |
Customer Email | Customer email address | customer.email |
Order Total | Revenue/order amount | order.total_price |
Ad Spend | Paid media cost | metric.ad_spend |
Landing Page | Page URL | page.url |
Webhook setup
A webhook is how another tool sends BAAM an event. Use it for custom systems, store events, lead events, publishing handoffs, or internal tools.
The destination URL that receives JSON. It must be HTTPS.
A shared secret used to verify the event is real. Missing secret means no live automation.
The JSON keys sent by the tool, such as customer.email or order.total.
Know whether the webhook creates a draft, stores data, sends a notification, or requests a live write.
Example custom event payload:
{
"event": "order.created",
"order_id": "1001",
"customer": { "email": "buyer@example.com" },
"total": 129.00,
"currency": "USD"
}
Column and field matching
Use matching only for CSV, Google Sheets, custom webhook, or private API sources where BAAM cannot know what your field means.
| Input | Meaning | Example |
|---|---|---|
| Source object type | The real-world thing represented by one row/event. | product, order, customer, campaign |
| Source field | The exact column header or JSON path from the source. | Customer Email, customer.email |
| Normalized object type | The BAAM object this value belongs to. | customer, product, metric |
| BAAM field name | The simple name BAAM should use for the value. | email, sku, total_price |
| Transform preset | How BAAM should read the value. | Text, Number, Money, Date, Lowercase text |
Troubleshooting
Check that the correct account was selected, the property/account ID matches, and BAAM has the required permission. Try reconnecting from an incognito browser if the wrong Google/Meta/Microsoft account was used.
Use the numeric Property ID from GA4 Admin. Do not use the G- Measurement ID.
Paste the property exactly as shown in Search Console, including sc-domain: or the full URL-prefix.
Add the Shopify client secret/webhook secret and run a test event. Read-only Shopify data can work while event automations stay blocked.
Map date, URL/campaign/product, and at least one metric such as clicks, spend, revenue, orders, impressions, sessions, or conversions.
Reconnect with the Dropbox account that owns or can access the folder, then paste only a folder URL/path if BAAM must validate a specific folder.
Confirm the app install or OAuth callback finished, the returned site/store ID matches the customer store, and store API permissions include the objects the workflow needs.
Check the Production keyset, RuName, Accept URL, marketplace, requested scopes, and whether the eBay developer app is approved for seller access.
Open the queued action and confirm connector, entity ID, preflight diff, guardrail result, approval state, and whether the provider supports the requested live action.
Lower batch size, source limit, recurrence frequency, or AI-heavy blocks before enabling a scheduled workflow.
Connect exactly one store, validate webhooks or store reads, add margin/refund/consent guardrails, and run the preflight simulator before approval.
Confirm official provider API, write scope, approval setting, compliance check, and connected destination. Otherwise use export reminders or draft push.
Account and billing
The account area is for profile details, membership state, invoices, notifications, course access, and billing self-service outside the Command Center workspace.
Open /account?tab=my-info to confirm the signed-in user's name, email, workspace identity, plan summary, and account status. Use this view when a customer says the wrong account is active or they cannot find their workspace.
Open /account?tab=membership to review the active tier, renewal state, trial status, and upgrade prompts. If the user just paid and the tier still looks old, check for a pending checkout or Stripe webhook delay before asking them to retry.
Open /account?tab=billing for payment status and /account?tab=invoices for invoice records. Use /account/billing/portal when the customer needs Stripe-hosted card changes, cancellations, tax details, or invoice downloads.
Open /account?tab=notifications or /account/notifications for message preferences. Marketing and product updates can be changed, but billing, security, legal, and account-critical notices must remain deliverable.
Open /account?tab=courses when a user cannot find course or onboarding content. Confirm the user is signed into the same account that owns the plan or invitation.
Open /account?tab=api-automations when a user is looking for account-level automation access rather than workspace automations in the Command Center. Route workflow setup questions back to Command Center -> AI Automation.
Checkout flow
Use /account/plan/checkout when a signed-in user starts or resumes plan purchase from the account area.
| Step | What the user sees | What to verify if it fails |
|---|---|---|
| Plan selection | Pricing offers monthly and yearly billing, a visible yearly discount where enabled, and a 14-day trial message where the plan supports it. | Confirm the selected plan slug exists, the billing interval is valid, and the account is signed in before checkout starts. |
| Checkout readiness | The checkout page explains that secure payment is handled by Stripe and shows any readiness or setup notice if checkout cannot start. | Check Stripe price IDs, checkout environment settings, and whether the user already has an active subscription that should use the billing portal instead. |
| Legal consent | The user must accept required checkout legal confirmations before continuing. | Confirm the terms, privacy, refund, and subscription consent text is present and that no client-side disabled state is hiding the real blocker. |
| Post-checkout return | The user returns to account membership or billing after payment or cancellation. | Check webhook delivery, pending checkout records, subscription status, and customer email matching if the return page does not show the new plan. |
The plan tab matches the subscription, invoices are visible, Stripe portal opens for card and tax changes, and Command Center plan-gated features match the entitlement.
Collect the account email, plan selected, billing interval, checkout time, browser error, and whether the user reached Stripe. Do not ask for card numbers or banking details.
Login and security
Use this guide for sign-in issues, password resets, MFA setup, recovery codes, email verification, session behavior, and safe account handling.
Use the public login/signup flow for new accounts. If sign-in loops, confirm the user is using the same email, cookies are allowed, and any email verification or anti-spam challenge has completed.
Use the password reset flow when the user cannot sign in. Password reset links are account-specific and time-sensitive, so expired links should be regenerated instead of reused.
Use /account/password from a signed-in session when the user knows the current password. If the session is not trusted, sign out and use the reset flow.
Start setup at /account/security/totp/start and finish at /account/security/totp/enable. The user scans the QR code or enters the secret into an authenticator app, then confirms a current code.
Use /account/security/email-code when email verification is the fallback factor. Confirm the user can receive mail at the account address and check spam filtering before disabling MFA.
Recovery codes are one-time backup codes. Regenerate at /account/security/recovery-codes/regenerate only after warning the user that old recovery codes stop working.
Open /account?tab=security for MFA state, recovery code handling, password actions, and security notifications.
If a user sees an unexpected sign-out, verify cookie settings, clock skew, browser privacy mode, and whether security changes invalidated older sessions.
Security boundaries
| Situation | Correct handling | Never ask for |
|---|---|---|
| MFA lost | Use recovery codes first. Escalate ownership verification if no factor remains. | Authenticator seed screenshots, mailbox passwords, or full identity documents in chat. |
| Suspicious login | Change password, regenerate recovery codes, review notification settings, and contact support with timestamps. | Session cookies, bearer tokens, browser storage exports, or device passwords. |
| Upload rejected | Use allowed image/document formats and remove active scripts, oversized files, archives, or unrelated customer exports. | Raw database dumps, executable files, server private keys, or third-party account passwords. |
| API or connector credential issue | Use official OAuth, provider API keys, or scoped tokens in the integration setup form only. | Normal account passwords, credit card data, SSH keys, or production database credentials. |
Escalate to support or admin security operations when the user reports account takeover, billing fraud, unauthorized admin access, exposed credentials, or a login email they do not control.
Public site, support, and legal
The public site covers product discovery, pricing, checkout entry, support intake, legal pages, blog content, affiliate disclosures, and cookie consent before or outside a Command Center session.
Use pricing when a visitor asks what plan to choose. Confirm monthly versus yearly billing, plan limits, trial messaging, included Command Center capabilities, and which features require a paid tier.
Checkout should clearly show the selected plan, billing interval, legal confirmations, Stripe handling, and any readiness notice. If checkout is unavailable, the page should explain whether configuration, authentication, or plan selection is blocking it.
Use /support or Contact support when a user needs human review. Ask for account email, workspace, route, browser, timestamp, screenshots, and the exact action attempted.
Contact forms should reject spammy or incomplete submissions, keep sensitive credentials out of the message, and route billing, support, sales, privacy, or security topics to the right queue.
Terms, privacy, refund/subscription language, cookie information, and required checkout disclosures should be reachable before payment and from the public footer or legal area.
Cookie controls should let visitors manage non-essential tracking choices while preserving necessary security, checkout, and account cookies.
Blog posts and resource pages should be readable without Command Center access unless intentionally gated. Affiliate review content must preserve clear disclosure and avoid implying unsupported guarantees.
Public careers or course marketing pages should distinguish browsing content from account-owned course access in /account?tab=courses.
Support routing
| Topic | Route to | Evidence to include |
|---|---|---|
| Billing, invoice, failed payment, subscription cancellation | Billing support or admin finance queue | Account email, plan, invoice ID if visible, checkout time, and Stripe portal error if any. |
| Cannot sign in, MFA lost, suspicious account activity | Security support or admin security operations | Account email, approximate time, device/browser, MFA method, and whether recovery codes remain. |
| Connector setup or automation blocker | Command Center support path | Provider, source ID, OAuth/API-key path, scopes, readiness state, workflow ID, and latest sync error. |
| Privacy, deletion, data export, legal request | Privacy or legal support queue | Requester email, jurisdiction if provided, requested action, account/workspace identifiers, and verification state. |
| Bug report or broken public page | Product support | URL, browser, viewport/device, screenshots, console error if available, and steps to reproduce. |
The user knows whether they need self-service account action, Command Center setup, billing portal access, or a support ticket. The support ticket includes evidence without passwords, card numbers, API secrets, or private keys.
Admin operations
The admin console is permission-gated. Use it for customer operations, finance, support, integrations, analytics, marketing, content, team access, security operations, imports, exports, and enterprise administration.
Open /admin for the operating dashboard. Use menu search, grouped navigation, and walkthrough prompts to locate the right operations page before editing customer or site data.
Use /admin/team and /admin/access-control to manage staff accounts, roles, permissions, invitations, and least-privilege access.
Use /admin/security for the admin user's own MFA, session, and recovery-code work. Do not use customer repair tools for staff login hygiene.
Use /admin/users to search customers, inspect account state, repair account records, review privacy actions, and coordinate support without exposing credentials.
Use /admin/payments, /admin/billing-ops, and /admin/product-config for payments, plans, prices, product configuration, checkout readiness, and subscription support.
Use /admin/support, /admin/support-ops, and /admin/contacts for tickets, contact form submissions, routing, evidence, and customer communications.
Use /admin/integrations, /admin/integration-ops, /admin/automation-ops, and /admin/ai-governance for connector health, workflow failures, AI usage governance, and executor controls.
Use /admin/analytics, /admin/analytics-reporting-ops, /admin/reports, /admin/audit, and /admin/data for reporting, exports, event review, and operational analysis.
Use /admin/marketing, /admin/tracking-ops, /admin/email-marketing, /admin/email-lifecycle-ops, and /admin/affiliates for campaigns, tracking, lifecycle email, and affiliate review kit management.
Use /admin/site-settings, /admin/pages, /admin/blog, /admin/media, /admin/seo, and /admin/legal for CMS publishing, media, SEO metadata, and the Legal document catalog.
Use /admin/courses and /admin/careers to manage training content, course availability, careers pages, and job listings.
Use /admin/tools/import, /admin/tools/export, /admin/tools/export/download, /admin/enterprise, /admin/security-center, /admin/incidents, and /admin/system-ops for data movement and high-risk operational work.
Permission map
| Admin area | Primary routes | Permission | Operational notes |
|---|---|---|---|
| Admin access | /admin, /admin/enterprise, /api/admin/summary | admin_access | Basic console entry and enterprise overview. Missing access means the staff account is not allowed into admin at all. |
| Team management | /admin/team, /admin/access-control | manage_team | Use for staff invitations, permission review, and role cleanup. Record why elevated access is needed. |
| Customer management | /admin/users, customer admin APIs | manage_customers | Use for account repair, customer lookup, privacy status, and support-assisted account changes. |
| Finance | /admin/payments, /admin/billing-ops, /admin/product-config | manage_finance | Use for plan configuration, checkout problems, payment status, invoices, and subscription operations. |
| Support | /admin/support, /admin/support-ops, /admin/contacts | manage_support | Use for Support ticket queues, contact submissions, routing, notes, and evidence collection. |
| Integrations | /admin/integrations, /admin/integration-ops, /admin/automation-ops, /admin/ai-governance | manage_integrations | Use for provider failures, connector state, workflow operations, usage limits, and live action governance. |
| Reports and data | /admin/analytics, /admin/analytics-reporting-ops, /admin/reports, /admin/audit, /admin/data | view_reports | Use for operational reporting, audit trails, data review, and export preparation. |
| Marketing | /admin/marketing, /admin/tracking-ops, /admin/email-marketing, /admin/email-lifecycle-ops, /admin/affiliates | manage_marketing | Use for campaign settings, tracking diagnostics, lifecycle email, affiliate content, and review kit status. |
| Training | /admin/courses, /admin/careers | manage_training | Use for course catalog changes and job/careers content. |
| Content | /admin/site-settings, /admin/pages, /admin/blog, /admin/media, /admin/seo, /admin/legal, /admin/tools/import | manage_content | Use for CMS publishing, media management, SEO fields, Legal document catalog updates, and content imports. |
| Security operations | /admin/security-center, /admin/incidents, /admin/system-ops | manage_security_ops | Use for incidents, high-risk operations, system health, and security escalations. |
Admin workflow guardrails
Confirm the ticket, account email, workspace, requested outcome, evidence, and permission. Add an admin note before and after the change when the tool supports notes.
Confirm plan, customer email, subscription ID if visible, invoice status, checkout session timing, and whether the user should self-serve in the Stripe portal.
Preview pages, posts, media, SEO metadata, affiliate disclosure, and legal text. Check that drafts, scheduled content, and published status match the requested outcome.
If an admin route returns access denied, use access-control review. Do not work around permission checks with direct URLs, copied session data, or another staff member's account.
AI retrieval reference for user features
This section is written for help bots and support AI. Each article uses the same retrieval shape: feature key, route or view, user intent, prerequisites, normal actions, outputs, blockers, safe fallback, and support evidence.
When a user asks how to use a BAAM feature, first match the feature key, route, tab, label, or action phrase. Then answer with the shortest safe path: where to open it, what the user must already have, what fields to fill, what result to expect, and what blocker means.
Never infer that a live publish, live store write, ad spend, customer email send, or billing change is allowed just because a draft can be created. Live actions require official connector support, correct scopes, configured guardrails, and approval status when approval is enabled.
For any support handoff, collect account email, workspace, route or tab, feature key, provider, object ID, workflow ID, run ID, browser/device, timestamp, screenshot, visible readiness state, exact error message, and the last safe action attempted.
Do not ask users for normal passwords, card numbers, recovery-code screenshots, session cookies, bearer tokens, SSH keys, database credentials, or unrelated customer exports.
Read-only dashboards, manual drafts, exports, previews, tests, and generated files are safe first steps. Direct publish, direct send, direct store changes, billing operations, admin permission changes, and privacy/security actions need explicit readiness and permission checks.
If readiness is missing, tell the user to use draft-only, export reminder, manual review, support escalation, or connector setup instead of suggesting a live action.
| Surface | Main docs | Common retrieval terms | Default safe answer |
|---|---|---|---|
| Command Center | Command Center feature reference | dashboard, settings, data, campaign, report, calendar, leads, library, generated files, global search | Open Command Center, choose the named view or tab, verify setup/readiness, then create a draft or test output before live use. |
| Automation and data processing | Automation feature reference | AI Automation, builder, canvas, blocks, Commerce OS, action queue, data automations, runs, costs | Build with read-only or draft-only blocks first, run a test, inspect blockers, then enable scheduled or live actions only after guardrails pass. |
| Account and public site | Account and public feature reference | login, signup, MFA, account tabs, billing portal, invoices, pricing, checkout, support, legal, cookies, blog | Use self-service account pages for profile, plan, invoices, security, notifications, and training. Use support when identity, billing, or security cannot be self-served. |
| Admin | Admin feature reference | admin users, billing ops, support ops, integrations ops, automation ops, AI governance, CMS, legal, reports, security center | Verify admin permission, customer/support context, and audit notes before changing account, billing, content, integration, security, or automation state. |
Command Center user feature reference
Use these articles when a user asks about a Command Center screen, navigation item, dashboard, editor, or workspace action.
Feature key: command_center.shell. Route: /command-center. User intent: open the marketing workspace, move between modules, use the collapsible rail, mobile drawer, topbar actions, account shortcut, help docs link, and global status surfaces.
Prerequisites: signed-in account with workspace access. Actions: choose the left navigation item, use subtabs inside the page, open Help Docs, open Account Settings, collapse or expand the rail, and use mobile hamburger on narrow screens. Blockers: login required, workspace not seeded, stale browser session, or account permission problem. Support evidence: route, visible module name, whether the drawer opens, browser width/device, and screenshot.
Feature key: command_center.global_search. Route/view: Command Center search. User intent: find commands, pages, setup items, integrations, providers, generated files, records, and workspace objects by typing terms like store, Stripe, Search Console, campaign, report, approval, calendar, generated file, or provider name.
Actions: enter a search term, open the matched page/action, or clear search. Outputs: result rows that navigate to the related feature. Blockers: no matching text, stale local app data, or missing workspace records. Fallback: use the left nav or setup walkthrough. Support evidence: query text, expected result, visible result count, and route after clicking.
Feature key: command_center.setup_walkthrough. User intent: complete the no-code setup path in the right order: store, data sources, tool connections, AI setup, Brand Brain, compliance, workflow test, generated output, and support evidence.
Prerequisites: account and workspace. Actions: follow setup cards, open provider setup, save source records, run validation, and use readiness labels. Outputs: Ready, Needs setup, Manual fallback, Blocked, Missing permission, Field unavailable, or Action pending approval. Safe fallback: manual draft, CSV import, export reminder, or support ticket. Support evidence: readiness label, provider, scopes, property/store ID, and latest validation message.
Feature key: settings.store_connection. Route/view: Command Center -> Settings -> Store Connection or Tools & Stores. User intent: connect the main ecommerce store such as Shopify, WooCommerce, BigCommerce, Wix, Squarespace, or Shoptet.
Prerequisites: owner/admin access to the store and official OAuth or provider-generated API credentials. Actions: select provider, choose OAuth when available, paste exact store URL or store ID when asked, save setup, validate read access, and confirm store object support. Outputs: store profile, product/order/customer data readiness, webhook readiness, and live action eligibility. Blockers: wrong store URL, missing scopes, callback not completed, webhook secret missing, or multiple stores when only one store is allowed. Fallback: CSV import or draft-only commerce workflows.
Feature key: settings.data_sources. User intent: connect analytics, search, ads, sheets, CSV, storage, webhook, or custom API data so dashboards, reports, and automations have evidence.
Inputs: connection name, refresh schedule, account ID, property/site/sheet/dataset ID, site URL, provider credential when needed, and scopes. Actions: add connection, use OAuth or official API key, map fields for CSV/custom data, run validation, and inspect sync status. Outputs: source records, normalized metrics, registry entries, datasets, and dashboard panels. Blockers: wrong GA4 property ID, missing Search Console property, no metric columns, expired OAuth, inaccessible sheet/file, or unsafe custom endpoint. Fallback: manual CSV with required mapping.
Feature key: settings.tool_connections. User intent: connect publishing, marketplace, social, email, ads, storage, and action tools used by campaigns and automations.
Prerequisites: provider account role that can authorize the requested scopes. Actions: choose provider, complete OAuth/API setup, confirm account label and marketplace/site/page, then run a small read or draft push. Outputs: available destinations, draft export support, live action eligibility, and blocked action reasons. Blockers: provider has setup-only support, write scopes missing, marketplace approval missing, wrong page selected, or official executor not implemented. Fallback: export reminder, manual upload, or draft-only output.
Feature keys: settings.ai_providers, settings.brand_brain, settings.compliance, settings.privacy, settings.governance. User intent: configure model providers, voice, proof, forbidden phrases, claims rules, consent rules, privacy handling, and approval behavior.
Prerequisites: provider key or supported provider connection for AI-assisted generation. Actions: add provider key, select model where available, add brand voice and proof, define claims that must not be made, configure consent/suppression rules, and require approval for risky outputs. Outputs: safer prompts, brand-aligned drafts, blocked claims, audit notes, and usage estimates. Blockers: no AI provider, insufficient credits, blocked claims, missing consent, or approval required. Fallback: manual creation and human review.
Feature key: data_dashboard. Route/view: Command Center -> Data Dashboard. User intent: inspect connected and imported data, performance statistics, source records, sync status, tracking links, and custom dashboard layout.
Subtabs: Overview shows executive and coverage panels; Statistics shows configurable charts and timelines; Sources lists records from GA4, search, ads, stores, CSV, Sheets, webhooks, and custom APIs; Sync shows ingestion activity; Tracking manages UTM links and attribution naming. Actions: customize dashboard, connect data, refresh registry, inspect a source row, generate tracking URLs, and compare chart metrics. Outputs: metrics, timelines, source rows, coverage warnings, sync status, tracking links. Blockers: no connected data, missing date/metric mapping, stale OAuth, or no events yet.
Feature key: command_centre. Route/view: Command Center -> Command Centre. User intent: operate manual marketing work from one control surface when automated recommendations are not trusted or not ready.
Subtabs: Start here answers what to do next; Settings reviews governance; Tools reviews platforms; Campaigns handles plans and assets; Content handles drafts and approvals; Calendar handles scheduling; Reports handles client output. Actions: create a manual task, open relevant builder, review connected tools, open report/export, or move to calendar. Outputs: tasks, campaign assets, content drafts, reports, scheduling reminders. Blockers: missing data or connector means use manual work, not scan-generated recommendations.
Feature key: channel_performance. User intent: compare channels and decide where to increase, reduce, or change marketing work.
Prerequisites: GA4, ads, email, CRM, CSV, or other connected performance data. Actions: open Channel Performance, review timeline charts and action summary, recommend channel mix only after data exists. Outputs: channel status, contribution, trend, and suggested manual actions. Blockers: no source data. Fallback: connect/import data or create a manual campaign task.
Feature key: content_portfolio. User intent: manage pages, posts, emails, ads, and assets by performance, freshness, quality, status, and next action.
Prerequisites: content records, generated assets, imported content, or connected source data. Actions: create content from data, inspect quality timeline, review asset freshness, approve or revise drafts, and use generated files or library outputs. Outputs: content quality views, asset actions, drafts, and refresh tasks. Blockers: no assets or no data. Fallback: Create Hub, Library, or manual content plan.
Feature keys: reports, generated_files. User intent: create weekly, client-ready, or executive-ready reports and find every saved report, export, dataset, automation output, draft, and attached file.
Actions: generate weekly report, export a report, download private export when available, open reusable dataset, review automation output, or create a new automation from output context. Outputs: report files, exported content, datasets, automation outputs, file metadata, and download URLs when the file is private and ready. Blockers: no data, no generated outputs, blocked workflow, missing R2/download URL, or stale report source. Fallback: manual report notes or data connection setup.
Feature keys: create_hub, campaigns, campaign_editor, calendar, library, leads. User intent: turn one idea into editable assets, create store campaigns, schedule approved drafts, manage prompt sets and marketing IP, and handle CRM-ready leads with consent.
Actions: open Create Hub, choose campaign package, fill goal/audience/offer/proof/channel constraints, preview campaign, create editable package, schedule export reminders or direct publish only when integrations are ready, create prompt sets/playbooks, add leads, and review consent/suppression. Outputs: campaign drafts, content assets, calendar items, prompt sets, playbooks, lead records, CSV-ready lead structure. Blockers: missing data, missing official publishing integration, blocked claims, missing consent, or provider-send email not supported. Fallback: manual writing, export reminder, or CSV lead export.
Feature keys: opportunities_removed, seo_intelligence_removed, ai_data_processing_retired. User intent: understand why old scan-generated recommendations or SEO intelligence are not available.
Status: retired because scan-generated recommendations were not reliable enough for business decisions. Correct answer: use Data Dashboard source records, Channel Performance, Content Portfolio, Reports, Command Centre manual tasks, or AI Automation Builder with explicit data sources and tests. Never answer: do not claim the retired analyzer can generate strategic recommendations. Fallback: connect/import source data and create manual tasks.
Automation and data-processing feature reference
Use these articles when a user asks about AI Automation, the drag-and-drop canvas, Commerce OS, action queues, data automations, runtime status, costs, or generated outputs.
Feature key: ai_automation.centre. Route/view: Command Center -> AI Automation. User intent: build, monitor, pause, and run AI workflows on connected data and official tool permissions.
Subtabs: Templates for starter recipes and fast starts; Usage Cost for AI and run cost; Dashboard for runtime overview. Custom workflow panels may expose active, paused, deleted, saved, and tool-action views. Actions: Create New Automation, customize tabs, open a template, review usage cost, inspect dashboard, and open builder. Outputs: saved workflow, usage estimate, runtime overview, action queue status. Blockers: no data, no AI provider, no connector, workflow blocked, budget limit, or approval required.
Feature key: ai_automation.builder_canvas. Route/view: Command Center -> AI Automation -> Create New Automation. User intent: build no-code workflows with triggers, source reads, AI steps, conditions, waits, outputs, approvals, and tool actions.
Actions: drag blocks onto the canvas, select a node, edit inspector fields, use pan/zoom, reorder or duplicate blocks, configure workflow settings separately from block settings, run a test, save workflow, and monitor runs. Outputs: workflow draft, workflow settings, block configuration, test run, generated output, action queue entry, or blocker. Blockers: missing source, invalid field mapping, unsafe live action, missing connector, approval wait, or unsupported executor. Fallback: draft-only output or manual export.
Feature key: ai_automation.blocks. User intent: configure each workflow step with plain-English no-code fields rather than code.
Common block groups: Trigger, Source, Transform, AI, Condition, Wait, Output, Approval, Store action, Marketing action, Notification, Webhook, and Safety. Fields: block type, mode, name, instructions, input, output, provider, entity, matching rules, guardrails, approval toggle, test mode, and budget/cost constraints. Outputs: normalized step config and runtime-ready workflow. Blockers: required field missing, schema required, citations required, PII redaction required, unsupported provider action, or output name collision.
Feature key: action_queue. User intent: review external actions before BAAM sends, publishes, updates, spends, or changes store/customer/provider data.
Actions: open queued action, review provider, execution mode, entity ID, preflight diff, guardrail result, approval requirement, blocker reason, and last error. Statuses: queued, needs_review, ready, approved, executing, executed, blocked, canceled, completed. Safe answer: approval alone is not enough if connector, scope, guardrail, or executor support is missing. Fallback: draft export or manual instruction. Support evidence: queue ID, workflow ID, action key, provider, execution mode, status, blocker, and preflight diff.
Feature key: usage_cost. User intent: understand AI/provider usage, run costs, credits, budget limits, and whether a workflow is safe to schedule.
Actions: open AI Automation -> Usage Cost, review current API token usage, workflow estimate, step breakdown, run count, credit balance, and cost warnings. Outputs: usage timeline, cost estimate, budget warning, and per-step usage. Blockers: no credits, budget cap, provider key missing, token limit, batch size too large, or recurrence too frequent. Fallback: lower batch size, shorten source range, reduce recurrence, switch to manual, or buy usage credits in account billing where available.
Feature key: automation_runtime.dashboard. User intent: inspect active automation health, run history, waits, failures, outputs, and commerce action state.
Actions: open Dashboard, check runtime timeline, workflow status, trigger summary, last run, failed run, waiting step, approval wait, generated result, and blocked action queue. Outputs: status panels, run history, usage charts, runtime metrics, and next required action. Blockers: failed run, canceled run, paused workflow, disabled workflow, missing wake source, dedupe/replay state, or retry backoff. Support evidence: workflow ID, run ID, status, error, last step, and timestamp.
Feature key: commerce_os. User intent: build ecommerce automations for products, inventory, orders, abandoned checkout, merchandising, and store actions using connected store data.
Prerequisites: exactly one ready store connection when the workflow needs live store context, store read scopes, webhook/read validation, margin/refund/consent guardrails, and official executor support for live writes. Actions: compile commerce intent, review capability graph, create starter automation, simulate preflight, create action draft, and approve only when ready. Outputs: store automation plan, product/order/customer reads, action draft, blocked action, or live execution. Blockers: no store, multiple stores, missing entity ID, missing scope, unsupported write, refund/margin guardrail, or approval wait. Fallback: manual store task or export draft.
Feature key: data_automations.dashboard. Route/view: Command Center -> Data Automations. User intent: build data-processing workflows that read sources, normalize rows, save datasets, create cited reports, and track costs.
Subtabs: Statistics, Draft, Templates, Paused datasets, Generated Files outputs, Deleted registry records, Active runs, and Costs. Actions: create data workflow, open canvas builder, customize tabs, refresh universal data registry, compile plain-English plan, save setup requirements, and run data processing. Outputs: query plan, setup requirements, datasets, generated outputs, run records, registry records, usage costs. Blockers: unknown variable, missing source, unmapped column, schema failure, unsafe endpoint, no citations, or no credits.
Feature key: data_processing.builder. User intent: create a visual data workflow with deterministic, AI-read-only, save-output, draft-only, test-mode, guardrail, and optional-approval modes.
Fields: block type, mode, category, name, instructions, input, output, output tab name, redact PII, schema required, citations required, test mode, requires approval, move up/down, duplicate, remove. Actions: add source, transform, AI, output, and safety blocks; map inputs; require citations; test before live use. Outputs: saved workflow, dataset, cited report, generated file, or blocked run. Blockers: missing schema, missing citations, PII rule, unmapped source, or approval required.
Feature key: universal_data_registry. User intent: know which connected tools can provide data, what fields are available, how unknown variables become setup requirements, and where saved datasets/runs appear.
Actions: refresh registry, inspect source capability profile, map columns, save dataset, review run, open generated file, and check cost. Outputs: registry record, normalized source field, dataset memory, output table, report, action draft, run status, or cost row. Blockers: provider unsupported, source lacks required object, field unavailable, column not mapped, event not received, or unsafe custom API. Fallback: CSV import with explicit field mapping.
Feature key: fast_starts_tool_actions. User intent: start common workflows from templates or use connected tools for supported actions.
Actions: choose a starter recipe, confirm connected provider, review setup notes, create workflow, inspect generated action, and approve or export. Outputs: template workflow, provider-specific setup checklist, action draft, blocked action, or manual fallback. Blockers: provider setup-only, no write scope, missing account role, unsupported executor, approval required, or compliance guardrail. Support evidence: recipe name, provider, workflow ID, and action key.
Account and public user feature reference
Use these articles when a user asks about login, signup, account tabs, billing, pricing, checkout, support, public content, or legal controls.
Feature keys: auth.login, auth.signup, auth.password_reset, auth.mfa_challenge. Routes: /login, /create-account, /login/mfa, password reset routes.
User intent: create an account, sign in, pass MFA, recover from forgotten password, or reach the correct next page. Prerequisites: valid account email, password, Turnstile when configured, and MFA method when enabled. Actions: submit login/signup, follow password reset email, enter MFA code, use recovery code when needed. Blockers: wrong email, expired reset token, missing Turnstile, MFA delivery not configured, bad authenticator code, or browser cookies disabled. Support evidence: email, route, MFA method, error message, and timestamp.
Feature key: account.overview. Route: /account?tab=my-info. User intent: review profile, workspace identity, account status, plan summary, and basic access state.
Actions: open Account, confirm name/email, verify active workspace, use account shortcuts, and return to Command Center. Outputs: profile details and account state. Blockers: signed into wrong email, no workspace, stale session, or account not linked to checkout. Fallback: sign out and back in, or support with account email and checkout email.
Feature key: account.membership. Route: /account?tab=membership. User intent: understand current plan, plan limits, trial/subscription state, add-ons, credits, and upgrade options.
Actions: compare upgrade options, choose monthly or yearly checkout, open billing portal for existing Stripe subscriptions, and review entitlements. Outputs: current plan, connected store limit, active automation limit, team user limit, monthly event limit, run history limit, usage credits, locked add-ons. Blockers: live subscription must use Stripe portal, checkout not configured, pending webhook, or plan slug/price missing. Support evidence: account email, selected plan, billing interval, subscription status, and checkout time.
Feature keys: account.billing, account.invoices, account.usage_credits. Routes: /account?tab=billing, /account?tab=invoices, /account/billing/portal.
User intent: manage billing, payment method, cancellation, tax details, receipts, invoices, subscription, and credit balance. Actions: open Stripe portal, download invoices, review customer/subscription IDs, buy credits where custom credit checkout is available, and inspect recent credit ledger. Outputs: billing status, Stripe portal session, invoice access, available/reserved/spendable credits. Blockers: no Stripe customer, portal unavailable, checkout incomplete, webhook delay, failed payment, or credit checkout minimum not met. Never ask: card numbers or bank details.
Feature key: account.api_automations. Route: /account?tab=api-automations. User intent: save account-level AI, WordPress, or automation provider keys used by account API automation features.
Actions: add official provider key, add WordPress.com connection where required, inspect connected credential rows, and open Command Center for store/ecommerce OAuth. Outputs: encrypted provider credential record and account API profile. Blockers: missing provider key, wrong WordPress site ID, revoked token, provider delivery not configured, or using this tab for store OAuth by mistake. Fallback: use Command Center -> Settings for ecommerce, ads, analytics, and tool connections.
Feature key: account.security. Route: /account?tab=security. User intent: manage password, authenticator app MFA, email login codes, recovery codes, and login protection status.
Actions: start authenticator setup at /account/security/totp/start, enable at /account/security/totp/enable, toggle email code at /account/security/email-code, regenerate recovery codes at /account/security/recovery-codes/regenerate, and change password at /account/password. Outputs: MFA method status, recovery code count, last MFA verification, and password update. Blockers: current password required, invalid 6-digit code, no email delivery, lost recovery codes, or suspicious account activity. Escalate: account takeover, unauthorized access, billing fraud, or lost all factors.
Feature keys: account.notifications, account.training. Routes: /account?tab=notifications, /account/notifications, /account?tab=courses.
Actions: edit automation report emails and product update emails, review primary email routing, open training library, open public courses, and contact support for training access. Always on: security emails and billing emails. Outputs: saved preferences and visible training content when enabled. Blockers: training not enabled, signed into wrong account, or email preference disabled only for non-critical messages.
Feature keys: public.pricing, public.checkout. Routes: /pricing, /account/plan/checkout. User intent: compare plans, select monthly/yearly billing, start trial, accept legal confirmations, and pay through Stripe.
Actions: choose billing interval, review order summary, confirm selected plan, accept required legal consent, continue to Stripe, and return to account. Outputs: pending checkout, Stripe checkout session, subscription, trial state, or readiness notice. Blockers: checkout setup missing, Stripe price ID missing, legal consent unchecked, not signed in, existing subscription should use portal, or checkout webhook delayed. Support evidence: selected plan, interval, account email, checkout time, and whether Stripe opened.
Feature keys: public.support, public.contact. Routes: /support and public contact sections. User intent: submit a support ticket, sales question, billing request, privacy request, or bug report.
Actions: choose category, describe the issue, include account/workspace/provider details, attach safe screenshots where available, and avoid secrets. Outputs: support ticket or contact submission routed to support/admin queues. Blockers: incomplete form, anti-spam failure, unsafe payload, oversized attachment, or missing category. Evidence: account email, URL, route, browser, timestamp, screenshots, exact error, provider/workflow IDs, and steps to reproduce.
Feature keys: public.legal, public.cookie_consent, public.blog, public.courses, public.careers. User intent: read terms/privacy/refund/cookie information, manage cookie choices, read resources, access course marketing, or view careers.
Actions: open legal footer pages, accept or manage non-essential cookies, read blog posts, follow affiliate disclosures, open public courses, and view careers listings. Outputs: readable public content and consent state. Blockers: legal page missing, cookie preference not saved, blog slug not found, media not loading, or gated course content requiring account access. Fallback: support ticket with URL and screenshot.
Admin user feature reference
Use these articles when a staff user asks about permissioned admin features. Admin answers must mention the required permission and should avoid telling a user to bypass access controls.
Feature key: admin.shell. Routes: /admin, /admin/login, /admin/login/mfa, /admin/logout. Permission: admin_access for console entry.
User intent: navigate grouped admin modules, search for billing/support/integrations/blog/security, collapse/open mobile menu, follow admin walkthrough, and log out. Blockers: admin auth required, MFA challenge required, permission denied, stale session, or static asset issue. Support evidence: admin email, route, required permission shown, menu group, and screenshot.
Feature keys: admin.dashboard, admin.enterprise. Routes: /admin, /admin/enterprise. Permission: admin_access.
Actions: review counts, recent audit, quick actions, launch blockers, checkout readiness, Stripe webhook readiness, legal profile, integration state, and operations map. Outputs: high-level admin health and links to customers, finance, integrations, support, automation ops, security center, data, audit, blog, analytics, and reports. Blockers: missing Stripe setup, webhook missing, no integrations, or permission denied. Fallback: open the specific readiness card instead of guessing.
Feature key: admin.customers. Route: /admin/users. Permission: manage_customers.
Actions: search users, create customer account, review billing interval, subscription status, account repair state, support context, privacy status, and customer access. Outputs: account records, created user, repair action, or support note. Blockers: duplicate email, weak password, missing permission, account already linked to Stripe, or privacy/security escalation. Safe handling: never ask for a customer's password; use reset/repair flows and audit notes.
Feature keys: admin.finance, admin.billing_ops, admin.product_config. Routes: /admin/payments, /admin/billing-ops, /admin/product-config. Permission: manage_finance.
Actions: set Stripe publishable key, monthly/yearly price IDs, mark webhook secret configured, inspect required webhook events, review checkout readiness, review unfinished signups, grant support-approved add-ons, set usage credits, and manage plan visibility signals. Outputs: billing readiness, effective prices, webhook endpoint, product entitlement state, credit grant, or blocked checkout diagnosis. Blockers: server secret missing, webhook secret missing, wrong price ID, customer subscription mismatch, or Stripe portal should handle live subscription changes.
Feature keys: admin.support, admin.support_ops, admin.contacts. Routes: /admin/support, /admin/support-ops, /admin/contacts. Permission: manage_support.
Actions: review support tickets, contact submissions, categories, status, notes, customer context, privacy requests, and routing. Outputs: assigned ticket, status change, response note, closed contact, or escalation. Blockers: missing evidence, spam/unsafe payload, identity not verified for privacy action, or security/billing escalation needed. Evidence: ticket ID, contact ID, customer email, route, category, status, and safe attachments.
Feature keys: admin.integrations, admin.integration_ops, admin.automation_ops, admin.ai_governance. Routes: /admin/integrations, /admin/integration-ops, /admin/automation-ops, /admin/ai-governance. Permission: manage_integrations.
Actions: review provider settings, connector health, workflow status, run status, wait queues, approval queue, action blockers, AI policy, provider readiness, model preferences, usage, and workspace governance. Outputs: connector diagnosis, workflow pause/reactivation, run requeue/cancel, queue status update, AI policy setting, or usage governance. Blockers: missing provider scopes, unsafe live action, usage cap, model/provider not configured, or audit context missing. Never expose: raw secrets or encrypted token packages.
Feature keys: admin.analytics, admin.reporting, admin.data, admin.audit, admin.tools_import, admin.tools_export. Routes: /admin/analytics, /admin/analytics-reporting-ops, /admin/reports, /admin/audit, /admin/data, /admin/tools/import, /admin/tools/export, /admin/tools/export/download.
Permissions: view_reports for analytics/reports/audit/data/export; manage_content for import. Actions: review page views/events, export reports, inspect audit logs, review operational data, import content/data bundles, and download exports. Blockers: no events, unsafe import media, missing embedded payload, access denied, or export not ready. Evidence: date range, export type, audit actor, import source label, and error.
Feature keys: admin.cms, admin.site_settings, admin.pages, admin.blog, admin.media, admin.seo, admin.legal. Routes: /admin/site-settings, /admin/pages, /admin/blog, /admin/blog/new, /admin/blog/{id}/edit, /admin/media, /admin/seo, /admin/legal. Permission: manage_content.
Actions: update site settings, edit public pages, create/edit/preview blog posts, use block editor, choose featured image from media library, upload allowlisted images, manage media records, edit SEO key values, and maintain Legal document catalog. Outputs: published page, draft post, scheduled/published blog status, media URL, SEO metadata, legal document. Blockers: unsafe upload, missing media payload, slug conflict, preview unavailable, legal document deletion confirmation, or permission denied. Fallback: save draft and preview before publishing.
Feature keys: admin.marketing, admin.tracking_ops, admin.email_marketing, admin.email_lifecycle_ops, admin.affiliates. Routes: /admin/marketing, /admin/tracking-ops, /admin/email-marketing, /admin/email-lifecycle-ops, /admin/affiliates. Permission: manage_marketing.
Actions: manage tracking settings, Google/Bing configuration links, unfinished signups, contacts, templates, campaigns, workflows, affiliate program, partners, links, commissions, payouts, and review kit content. Outputs: tracking setting, dismissed unfinished signup, email lifecycle record, affiliate record, payout state, or campaign setting. Blockers: consent missing, suppression active, provider not configured, affiliate disclosure missing, or permission denied.
Feature keys: admin.team, admin.access_control, admin.own_security, admin.security_center, admin.incidents, admin.system_ops. Routes: /admin/team, /admin/access-control, /admin/security, /admin/security-center, /admin/incidents, /admin/system-ops.
Permissions: manage_team for team/access-control, manage_own_security for own admin security, manage_security_ops for security center/incidents/system ops. Actions: manage staff roles, invitations, least-privilege access, admin MFA/session, rate limits, incidents, risky configuration, runtime blockers, and operational runbooks. Blockers: insufficient permission, missing MFA, unverified incident context, or high-risk operation without support context. Safe answer: escalate rather than bypass permissions.
Feature keys: admin.courses, admin.careers. Routes: /admin/courses, /admin/careers. Permission: manage_training.
Actions: manage course catalog, lessons, training availability, career openings, and applications. Outputs: course record, lesson record, published training content, job listing, or application review state. Blockers: missing permission, unpublished content, invalid form fields, or account user expecting training in /account?tab=courses before admin has enabled it.
Never paste these into BAAM
- Normal passwords for Shopify, Google, Meta, Microsoft, WooCommerce, email, hosting, or ads tools.
- Credit card numbers, bank details, or Stripe dashboard passwords.
- Private SSH keys, server passwords, database dumps, unrelated personal files, or private customer exports that the workflow does not need.
- Code snippets, advanced JSON, or webhook payloads unless the setup path explicitly asks for them.