Setup checklist
1
Create a view or table in your data warehouse
Expose only the metrics Minoa should read, shaped the way the connector expects.
2
Connect Minoa to your warehouse
Add the credentials in Settings → Data ingestion and test the connection.
3
Add tables and map columns
Pick the table or view, then map each column to a role (account, metric ID, value, timestamp, cursor).
4
Map external metrics to business case inputs
Tell Minoa which input each external metric should write into.
You need administrator (or integration) permissions in Minoa to complete the in-product steps. The warehouse side is
usually owned by your data team.
1. Create a view or table in your data warehouse
Focus on the metrics you want to bring into Minoa — your source doesn’t need to line up one-to-one with every input on every deal. We recommend exposing a dedicated view instead of a raw production table. A view lets you filter, rename, and reshape without granting Minoa access to the underlying data.Required schema
Minoa expects one row per (account, metric, period). Column names are flexible — you’ll map them later — but the types and semantics need to match the table below.Pick a good cursor
The cursor column drives incremental polling, so getting it right matters. We recommend a timestamp that:- Only moves forward for a given (account, metric) pair — never goes back when a row is updated.
- Sits after
measured_atso closing-the-month writes show up promptly. A common pattern: setcursor_tsto the first day of the month after the row’s period. - Is set explicitly in your view — don’t reuse a generic
updated_atif it can regress when rows are reshuffled.
Least-privilege access
Create a dedicated service principal or user for Minoa with read-only access to the view, not the whole warehouse. Exact grants depend on the platform — for exampleUSAGE on the database/schema and SELECT on the view in Snowflake. Authenticate with the method your security team requires (key pair or short-lived credentials are the usual call).
Network allowlisting
If your network policy requires IP allowlisting for inbound connections, contact our support team for the current egress addresses.2. Connect Minoa to your warehouse
Once the view is ready in your warehouse, add the connection inside Minoa.1
Open data ingestion settings
Go to Settings → Data ingestion.
2
Pick your warehouse
Click Connect Snowflake (username + private key) or Connect BigQuery (service-account JSON).
3
Fill in account-level details
Depending on the warehouse, you’ll be asked for details like an account URL or project ID. Add a friendly name
so the connection is easy to spot later.
4
Test the connection
Click Test connection. Minoa attempts to authenticate against your warehouse and reports back. Fix any
errors before saving.
5
Save
Click Save to store the connection. Credentials are encrypted at rest; only the connection metadata is
visible in the panel afterwards.
3. Add tables and map columns
A connection on its own doesn’t read any data. You add one or more tables under the connection, each pointing at a specific view in your warehouse.1
Open the connection
From Settings → Data ingestion, click into the connection you just created.
2
Click Add table
A modal opens that walks you through schema → table → column mapping.
3
Pick the schema or dataset
Minoa lists the available schemas or datasets (e.g. schemas in Snowflake, datasets in BigQuery) your principal
can see. Pick the one that contains your view.
4
Pick the table or view
Minoa lists tables and views inside the schema. Pick the one you prepared in step 1.
5
Map each column
For each role — account identifier, external metric ID, metric value, measurement time, cursor, business
interval — pick the matching column from your view. Refer to the schema table above if you renamed any of them.
6
Choose a sync interval
Pick Hourly or Daily depending on how fresh you need the values. Daily is usually plenty for monthly
metrics; hourly makes sense if your team watches metrics intraday.
7
Optionally backfill from a date
Set a backfill start date if you want the first run to pull historic rows. Leave it empty to only ingest data
from today forward.
8
Save
Minoa re-validates the mapping against fresh warehouse metadata when you save, so schema changes since you
opened the picker are caught immediately.
You can add multiple tables under the same connection — one per logical feed. Each table runs on its own schedule
and tracks its own cursor.
4. Map external metrics to business case inputs
The connector pulls rows into Minoa, but it still needs to know which input each external metric belongs on. That’s what metric links do.1
Open the Mapping subpage
From Settings → Data ingestion, click Mapping. You’ll see one row per external metric ID that has
appeared in any synced table.
2
Pick the Minoa input
For each external metric, choose the input it should write into. The dropdown lets you filter by use case or
input type so finding the right one is quick on long lists.
3
Save the link
Once saved, future syncs route matching rows to that input automatically. Existing unmatched rows are
reprocessed on the next run.
You’re done with admin setup. Sales reps and customer success managers can now turn syncing on inside any business
case — see Use ingested data in a business case.