> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended**:
> ```bash
> npx @scalekit-inc/cli setup
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for 40+ agents.
> Features: full-stack-auth, agent-auth, mcp-auth, modular-sso, modular-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Mixpanel Analytics connector

Connect to Mixpanel''s Query API, Lexicon Schemas, and Warehouse Connectors to run segmentation, funnel, retention, and Insights reports, execute custom...

**Authentication:** Service Account
**Categories:** Analytics
1. ### Install the SDK

   
     ### Node.js

```bash frame="terminal"
npm install @scalekit-sdk/node
```

     ### Python

```bash frame="terminal"
pip install scalekit
```

   

   Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/)

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

```sh showLineNumbers=false title=".env"
SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
SCALEKIT_CLIENT_ID=<your-client-id>
SCALEKIT_CLIENT_SECRET=<your-client-secret>
```

3. ### Set up the connector

   Register your Mixpanel Analytics credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment.

   ## Dashboard setup steps

Register your Mixpanel Service Account username and secret with Scalekit so it can authenticate and proxy requests on behalf of your users. Mixpanel uses HTTP Basic Auth — the Service Account username is the username and the secret is the password. There is no redirect URI or OAuth flow.

1. ### Find your Mixpanel data residency region

   Mixpanel hosts projects in three separate data residency regions. Before generating a Service Account, confirm which region your project lives in:

   | Region | API host |
   |--------|----------|
   | United States (default) | `mixpanel.com/api` |
   | European Union | `eu.mixpanel.com/api` |
   | India | `in.mixpanel.com/api` |

   > caution: Region must match your project
>
> A Service Account works only against the API host for the region your project was created in. Using the wrong region in Scalekit means every request fails to find your data.

2. ### Create a Service Account

   - Sign in to Mixpanel and go to **Settings** → **Project** → **Service Accounts**.
   - Click **Add Service Account**, give it a name (for example, `Agent Auth`), and choose a role.
   - Copy the generated **Username** and **Secret** immediately — Mixpanel shows the secret only once.

     > Image: Mixpanel Add Service Account modal showing the generated Username and Secret fields

   > tip: Legacy Project Secret also works
>
> If your project still uses a legacy Project Secret instead of a Service Account, enter the secret as the **Username** and leave **Secret** blank in Scalekit.

3. ### Create a connection in Scalekit

   - In the [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** → **Connections** → **Create Connection**.
   - Search for **Mixpanel Analytics** and click **Create**.
   - Note the **Connection name** — use this as `connection_name` in your code (e.g., `mixpanelanalytics`).

4. ### Add a connected account

   Connected accounts link a specific user identifier in your system to a Mixpanel Service Account and region. Add them via the dashboard for testing, or via the Scalekit API in production.

   **Via dashboard (for testing)**

   - Open the connection and click the **Connected Accounts** tab → **Add account**.
   - Fill in **Your User's ID**, the **Username**, **Secret**, and select the matching **Data Residency**.
   - Click **Save**.

   **Via API (for production)**

   
     ### Node.js

```ts
// US region (default) — omit `domain` or set it to 'mixpanel.com/api'
await scalekit.connect.upsertConnectedAccount({
  connectionName: 'mixpanelanalytics',
  identifier: 'user@example.com',
  credentials: {
    username: 'your-service-account-username',
    password: 'your-service-account-secret',
    domain: 'mixpanel.com/api',
  },
})

// EU region
await scalekit.connect.upsertConnectedAccount({
  connectionName: 'mixpanelanalytics',
  identifier: 'eu-user@example.com',
  credentials: {
    username: 'your-eu-service-account-username',
    password: 'your-eu-service-account-secret',
    domain: 'eu.mixpanel.com/api',
  },
})
```

     ### Python

```python
# US region (default) — omit domain or set it to "mixpanel.com/api"
scalekit_client.connect.upsert_connected_account(
    connection_name="mixpanelanalytics",
    identifier="user@example.com",
    credentials={
        "username": "your-service-account-username",
        "password": "your-service-account-secret",
        "domain": "mixpanel.com/api",
    },
)

# EU region
scalekit_client.connect.upsert_connected_account(
    connection_name="mixpanelanalytics",
    identifier="eu-user@example.com",
    credentials={
        "username": "your-eu-service-account-username",
        "password": "your-eu-service-account-secret",
        "domain": "eu.mixpanel.com/api",
    },
)
```

   

   > tip: Running multiple regions side by side
>
> If your organization has projects in more than one region, create a separate connected account per user (or per project) with the matching `domain` value. Scalekit routes each account's requests to the correct regional host automatically.

## What you can do

Connect this agent connector to let your agent:

- **Stream activity** — Get the raw event stream (activity feed) for one or more specific users over a date range — every event each user did, in order
- **List cohorts, funnels, schemas** — List every saved cohort in a Mixpanel project, including each cohort's numeric id, name, member count, description, and creation date
- **Properties event, event top** — Get a time series broken down by the values of a single event property, e.g
- **Values event top property** — List the most common values seen for a given event property, e.g
- **Query events, funnels, insights** — Get aggregate counts for one or more events over time, without any property segmentation
- **Names events top** — List the most common event names tracked in the project over its lifetime, ranked by the given analysis type

## Tool list

Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first.

## Tool list

### `mixpanelanalytics_activity_stream`

Get the raw event stream (activity feed) for one or more specific users over a date range — every event each user did, in order. Useful for inspecting an individual user's journey rather than aggregate analytics. Rate limited to 60 queries/hour and 5 concurrent queries.

Parameters:

- `distinct_ids` (`array`, required): The user distinct_ids to fetch activity for, as a JSON array of strings.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_cohorts_list`

List every saved cohort in a Mixpanel project, including each cohort's numeric id, name, member count, description, and creation date. Use the id with 'mixpanelanalytics_profiles_query' (filter_by_cohort) to fetch the profiles in a cohort.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_event_properties`

Get a time series broken down by the values of a single event property, e.g. purchase count per day segmented by product_category. Similar to segmentation, but focused on exploring one property's values rather than an arbitrary 'on' expression.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "purchase". Not an array.
- `name` (`string`, required): The name of the event property to analyze, e.g. "product_category".
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `type` (`string`, required): The analysis type: 'general' for total count, 'unique' for distinct user count, or 'average' for count per unique user.
- `unit` (`string`, required): The time bucket granularity: 'minute', 'hour', 'day', 'week', or 'month'.
- `from_date` (`string`, optional): Start date of the query range, in yyyy-mm-dd format (inclusive). Required unless 'interval' is set.
- `interval` (`integer`, optional): Number of time units (see 'unit') to return, counting back from now. Alternative to 'from_date'/'to_date'.
- `limit` (`integer`, optional): Maximum number of property values to return.
- `to_date` (`string`, optional): End date of the query range, in yyyy-mm-dd format (inclusive). Required unless 'interval' is set.
- `values` (`array`, optional): A specific list of property values to return data for, as a JSON array. Omit to return the top values automatically.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_event_top_properties`

List the property names most commonly sent with a given event, along with how many times each appears. Useful for discovering what properties are available before writing a segmentation query or property-values lookup.

Parameters:

- `event` (`string`, required): The single event name to get property data for, e.g. "purchase". Not an array.
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `limit` (`integer`, optional): Maximum number of properties to return.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_event_top_property_values`

List the most common values seen for a given event property, e.g. the top product_category values sent with the 'purchase' event. Useful for discovering what filter/segment values are available before writing a query.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "purchase". Not an array.
- `name` (`string`, required): The name of the event property to list values for, e.g. "product_category".
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `limit` (`integer`, optional): Maximum number of values to return.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_events_query`

Get aggregate counts for one or more events over time, without any property segmentation. Faster and simpler than 'mixpanelanalytics_segmentation_query' when you just need raw counts for a set of events, e.g. daily counts of 'login' and 'signup' side by side.

Parameters:

- `event` (`array`, required): The event name(s) to get data for, as a JSON array of strings, e.g. ["login", "signup"].
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `type` (`string`, required): The analysis type: 'general' for total count, 'unique' for distinct user count, or 'average' for count per unique user.
- `unit` (`string`, required): The time bucket granularity: 'minute', 'hour', 'day', 'week', or 'month'.
- `from_date` (`string`, optional): Start date of the query range, in yyyy-mm-dd format (inclusive). Required unless 'interval' is set.
- `interval` (`integer`, optional): How many time buckets to return: 1 for the current period only, 2 for current plus previous, etc. Alternative to 'from_date'/'to_date'.
- `to_date` (`string`, optional): End date of the query range, in yyyy-mm-dd format (inclusive). Required unless 'interval' is set.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_events_top_names`

List the most common event names tracked in the project over its lifetime, ranked by the given analysis type. Useful for discovering what events exist before writing a segmentation or funnel query.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `type` (`string`, required): The analysis type to rank by: 'general' for total event count, 'unique' for distinct user count, or 'average' for count per unique user.
- `limit` (`integer`, optional): Maximum number of event names to return.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_events_top_today`

Get the top events for today, ranked by count, along with their percent change compared to the same time yesterday. Useful for a quick 'what's happening right now' snapshot.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `type` (`string`, required): The analysis type: 'general' for total event count, 'unique' for distinct user count, or 'average' for count per unique user.
- `limit` (`integer`, optional): Maximum number of events to return.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_funnels_list_saved`

List all saved funnels in a Mixpanel project, returning each funnel's numeric funnel_id and name. Use the funnel_id with 'mixpanelanalytics_funnels_query' to fetch its conversion data.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_funnels_query`

Get conversion data for an existing saved funnel by its funnel_id, showing per-step counts and conversion ratios over time. Use 'mixpanelanalytics_funnels_list_saved' to find a funnel_id. Note: Mixpanel considers this endpoint in maintenance mode and recommends building the funnel in the Insights report and using 'mixpanelanalytics_insights_query' instead where possible.

Parameters:

- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `funnel_id` (`integer`, required): The numeric ID of the saved funnel to get data for. Find this via 'mixpanelanalytics_funnels_list_saved'.
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `interval` (`integer`, optional): Number of days per bucket in the returned time series.
- `length` (`integer`, optional): The number of time units (see 'length_unit') a user has to complete the funnel. Max 90 days. Defaults to the funnel's saved conversion window if omitted.
- `length_unit` (`string`, optional): The unit for 'length': 'second', 'minute', 'hour', or 'day'. Defaults to the funnel's saved setting if omitted.
- `limit` (`integer`, optional): Maximum number of top property values to return when 'on' is set. Max 10,000.
- `on` (`string`, optional): A Mixpanel property expression to segment the funnel by, e.g. properties["Plan"].
- `unit` (`string`, optional): Alternative to 'interval': time bucket granularity as 'day', 'week', or 'month'.
- `where` (`string`, optional): A Mixpanel expression to filter which events are included, e.g. properties["plan"] == "paid".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_insights_query`

Get the computed data for an existing saved Insights report by its bookmark_id. This is Mixpanel's recommended, actively maintained way to pull report data (in place of the older segmentation/funnels/retention query endpoints), but it can only run a report that already exists in the Mixpanel UI — it does not accept an ad hoc query definition. Find the bookmark_id in the report's URL, e.g. the number after 'report-' in .../reports/1234/report-56789.

Parameters:

- `bookmark_id` (`integer`, required): The ID of the saved Insights report, found in its URL (the number after 'report-').
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_jql_query`

Run a custom JQL (JavaScript Query Language) script against raw Mixpanel event/profile data for analysis that the standard segmentation/funnel/retention/insights endpoints can't express, e.g. custom aggregations, joins across events and profiles, or arbitrary groupBy/reduce pipelines. The script must define a top-level 'function main(){...}' that returns the result. Returns a JSON array.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `script` (`string`, required): The JQL script to run, as JavaScript source defining 'function main(){...}'. Example: function main(){ return Events(params).groupBy(["name"], mixpanel.reducer.count()) }
- `params` (`object`, optional): A JSON object made available to the script as the global 'params' variable, e.g. {"from_date": "2024-01-01T00:00:00.000Z"}. Use this to parameterize the script instead of hard-coding values.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_profiles_query`

Query Mixpanel user (or group) profiles and return a paginated list of profiles matching the given filters. Supports filtering by a specific list of distinct_ids, a free-form 'where' expression, or a saved cohort. Rate limited to 60 queries/hour and 5 concurrent queries.

Parameters:

- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `as_of_timestamp` (`integer`, optional): Unix timestamp to evaluate 'behaviors' against. Required if using 'behaviors' against more than 1,000 profiles.
- `data_group_id` (`string`, optional): The group key ID to query group profiles instead of user profiles. Omit to query user profiles.
- `distinct_id` (`string`, optional): Return only the single profile with this distinct_id.
- `distinct_ids` (`array`, optional): Return only the profiles matching these distinct_ids, as a JSON array of strings.
- `filter_by_cohort` (`object`, optional): Restrict results to members of a saved cohort, e.g. {"id": 12345}. Mutually exclusive with 'behaviors'. Find cohort IDs via 'mixpanelanalytics_cohorts_list'.
- `include_all_users` (`boolean`, optional): When using 'filter_by_cohort', whether to include profiles with no associated user data. Defaults to true.
- `output_properties` (`array`, optional): Restrict which profile properties are returned, as a JSON array of property names. Omit to return all properties.
- `page` (`integer`, optional): The page of results to return, starting at 0. Requires 'session_id' when greater than 0.
- `session_id` (`string`, optional): The session_id token returned by a previous call, used to fetch subsequent pages of the same query.
- `where` (`string`, optional): A Mixpanel expression to filter profiles by, e.g. properties["$email"] == "test@example.com".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_retention_frequency_query`

Measure how frequently users return to do an event within a period, broken into fine-grained buckets (e.g. how many of the hours in each day a user was active). Useful for engagement/'stickiness' analysis.

Parameters:

- `addiction_unit` (`string`, required): The granularity of each bucket within a period: 'hour' or 'day'.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `unit` (`string`, required): The overall period each bucket set covers: 'day', 'week', or 'month'.
- `event` (`string`, optional): The event to measure return frequency for. Omit to measure across any event.
- `limit` (`integer`, optional): Return only the top N segmentation values. Only applies when 'on' is set.
- `on` (`string`, optional): A Mixpanel property expression to segment results by, e.g. properties["Plan"].
- `where` (`string`, optional): A Mixpanel expression to filter which occurrences of the event count.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_retention_query`

Measure how many users who did a 'born' event came back to do a later event, bucketed into cohorts. Supports 'birth' retention (users grouped by when they first did the born event) or 'compounded' retention (users grouped by every time they did the born event).

Parameters:

- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `born_event` (`string`, optional): The event that defines when a user enters a cohort. Required when 'retention_type' is 'birth' (the default).
- `born_where` (`string`, optional): A Mixpanel expression to filter which occurrences of 'born_event' count.
- `event` (`string`, optional): The returning event to measure retention against. Omit to measure retention against any event.
- `interval` (`integer`, optional): Number of units (see 'unit') per retention bucket. Max 90 days.
- `interval_count` (`integer`, optional): Number of intervals to return in the response.
- `limit` (`integer`, optional): Return only the top N segmentation values. Only applies when 'on' is set.
- `on` (`string`, optional): A Mixpanel property expression to segment the returning event by, e.g. properties["Plan"].
- `retention_type` (`string`, optional): 'birth' groups users by when they first did 'born_event'. 'compounded' groups users by every time they did 'born_event'.
- `unbounded_retention` (`boolean`, optional): If true, accumulate retention counts from right to left across all subsequent intervals instead of a single fixed bucket.
- `unit` (`string`, optional): The bucket time unit: 'day', 'week', or 'month'.
- `where` (`string`, optional): A Mixpanel expression to filter which occurrences of the returning event count.
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_schema_delete`

Permanently delete the Lexicon schema for a single event or profile property, identified by entity type and name. This removes only the Lexicon schema definition; the underlying event or profile property is not deleted and will show as un-schematized until a new schema is uploaded. This action is irreversible.

Parameters:

- `entity_type` (`string`, required): Which kind of Lexicon entity this schema describes: 'event' for a Mixpanel event schema, or 'profile' for a user profile property schema.
- `name` (`string`, required): The exact event name or profile property name this schema describes, matching how it appears in Lexicon, e.g. "Added to Cart" for an event or "Plan" for a profile property.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_schema_get`

Retrieve the Lexicon schema for a single event or profile property, identified by entity type and name. Returns the schema's description, JSON-schema-style property definitions, and Lexicon metadata such as display name, tags, and owners. Returns an error if no schema exists for that entity type and name; use 'mixpanelanalytics_schemas_list_by_entity' first if you're unsure of the exact name.

Parameters:

- `entity_type` (`string`, required): Which kind of Lexicon entity this schema describes: 'event' for a Mixpanel event schema, or 'profile' for a user profile property schema.
- `name` (`string`, required): The exact event name or profile property name this schema describes, matching how it appears in Lexicon, e.g. "Added to Cart" for an event or "Plan" for a profile property.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_schema_upload`

Create or replace the Lexicon schema for a single event or profile property, identified by entity type and name. Any existing schema for this entity type and name is fully overwritten with the fields you provide. Use 'description' for a human-readable summary of the entity, 'properties' for JSON-schema-style definitions of its data properties, and 'metadata' for Lexicon display settings such as tags, owners, or visibility. Use 'mixpanelanalytics_schemas_upload_batch' instead to upload many schemas in one call.

Parameters:

- `entity_type` (`string`, required): Which kind of Lexicon entity this schema describes: 'event' for a Mixpanel event schema, or 'profile' for a user profile property schema.
- `name` (`string`, required): The exact event name or profile property name this schema describes, matching how it appears in Lexicon, e.g. "Added to Cart" for an event or "Plan" for a profile property.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `description` (`string`, optional): A human-readable description of this event or profile property, shown in Lexicon.
- `metadata` (`object`, optional): Lexicon display metadata for this entity, such as a custom display name, tags, or ownership contacts, nested under a "com.mixpanel" key. Example: {"com.mixpanel": {"displayName": "Added to Cart", "tags": ["ecommerce"]}}.
- `properties` (`object`, optional): JSON-schema-style definitions for this entity's data properties, keyed by property name. Each value is an object such as {"type": "string", "description": "..."}. Omit to leave the entity's property definitions unset.

### `mixpanelanalytics_schemas_delete_all`

Permanently delete every schema in the project's Lexicon data dictionary, for both event and profile-property entity types. This removes only the Lexicon schema definitions (descriptions, JSON-schema property definitions, and metadata); the underlying events and profile properties are not deleted and will simply show as un-schematized until new schemas are uploaded. This action is irreversible and removes ALL schemas in the project; use 'mixpanelanalytics_schemas_delete_by_entity' or 'mixpanelanalytics_schema_delete' if you only need to remove a narrower subset.

Parameters:

- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_schemas_delete_by_entity`

Permanently delete every Lexicon schema for one entity type ('event' or 'profile') in a Mixpanel project, leaving schemas for the other entity type untouched. Pass 'entity_name' to narrow this to a single schema by name instead of deleting all schemas for the entity type. This removes only the Lexicon schema definitions; the underlying events or profile properties are not deleted and will show as un-schematized until new schemas are uploaded. This action is irreversible; use 'mixpanelanalytics_schema_delete' to remove a single schema by path instead, or 'mixpanelanalytics_schemas_delete_all' to clear the entire project.

Parameters:

- `entity_type` (`string`, required): Which kind of Lexicon entity to delete schemas for: 'event' for Mixpanel event schemas, or 'profile' for user profile property schemas. All schemas of this entity type are deleted unless 'entity_name' narrows it further.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `entity_name` (`string`, optional): Narrow the deletion down to the schema with this exact entity name. Omit to delete every schema for the given entity type.

### `mixpanelanalytics_schemas_list`

List all schemas (data dictionary entries) defined in a Mixpanel project's Lexicon, across both event and profile-property entity types. Each schema includes the entity's description, JSON-schema-style property definitions, and Lexicon metadata such as display name, tags, and owners. Only entities that already have an associated schema are returned; events or properties visible in the Lexicon UI without one won't appear here. Use 'mixpanelanalytics_schemas_list_by_entity' to filter to a single entity type, or 'mixpanelanalytics_schema_get' to fetch one schema by name.

Parameters:

- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_schemas_list_by_entity`

List the Lexicon schemas for one entity type ('event' or 'profile') in a Mixpanel project. Optionally pass 'entity_name' to filter the results down to a single schema by name. Only entities that already have an associated schema are returned. Use 'mixpanelanalytics_schemas_list' to list schemas across both entity types at once, or 'mixpanelanalytics_schema_get' to fetch a single schema directly.

Parameters:

- `entity_type` (`string`, required): Which kind of Lexicon entity to list schemas for: 'event' for Mixpanel event schemas, or 'profile' for user profile property schemas.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `entity_name` (`string`, optional): Filter the results down to the schema with this exact entity name. Omit to list every schema for the given entity type.

### `mixpanelanalytics_schemas_upload_batch`

Create or replace multiple Lexicon schemas in a single call. Each object in 'entries' defines one event or profile property's schema (entity type, name, and JSON-schema definition) and is merged into the project's existing data dictionary. Set 'truncate' to true to first remove every schema not present in this upload, effectively replacing the entire data dictionary; use with caution, since this permanently deletes any schemas you don't include. Use 'mixpanelanalytics_schema_upload' instead when you only need to create or update a single schema.

Parameters:

- `entries` (`array`, required): Array of schema entries to create or replace, merged into the project's existing data dictionary. Each entry is a JSON object describing one event or profile property's schema, e.g. {"entityType": "event", "name": "Added to Cart", "schemaJson": {"properties": {"amount": {"type": "number"}}}}. Passed through as-is; see Mixpanel's Lexicon Schemas API docs for the full entry shape.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `truncate` (`boolean`, optional): If true, removes every existing schema not present in this upload before inserting the new entries, effectively replacing the entire data dictionary. If false (default), the uploaded entries are merged with existing schemas and nothing is removed.

### `mixpanelanalytics_segmentation_average_query`

Get the average value of a numeric property expression per unit time for a single event, e.g. average order value per day. Note: in maintenance mode per Mixpanel — prefer 'mixpanelanalytics_insights_query' for new use cases where possible.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "Purchase". Not an array.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `on` (`string`, required): The numeric property expression to average per unit time, e.g. properties["amount"]. Must evaluate to a number.
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `unit` (`string`, optional): Time bucket granularity: 'hour' or 'day'.
- `where` (`string`, optional): A Mixpanel expression to filter which events are included, e.g. properties["plan"] == "paid".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_segmentation_numeric_query`

Get event counts for a single event, bucketed by the numeric value of a property expression (e.g. distribution of purchase amounts). Note: in maintenance mode per Mixpanel — prefer 'mixpanelanalytics_insights_query' for new use cases where possible.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "Purchase". Not an array.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `on` (`string`, required): A numeric property expression to bucket by, e.g. properties["amount"]. The expression must evaluate to a number.
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `type` (`string`, optional): The analysis type: 'general' for total, 'unique' for distinct user count, or 'average' for average per unique user.
- `unit` (`string`, optional): Time bucket granularity: 'hour' or 'day'.
- `where` (`string`, optional): A Mixpanel expression to filter which events are included, e.g. properties["plan"] == "paid".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_segmentation_query`

Get event counts for a single event over time, optionally segmented and filtered by properties. Note: Mixpanel's Query API team considers this endpoint in maintenance mode and recommends 'mixpanelanalytics_insights_query' (against a saved Insights report) for new use cases, but this remains fully supported for ad hoc queries.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "Purchased item". Not an array.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `interval` (`integer`, optional): Number of days to bucket results into. Alternative to 'unit' for custom bucket sizes.
- `limit` (`integer`, optional): Maximum number of top segment values to return. Defaults to 60, max 10,000.
- `on` (`string`, optional): A Mixpanel property expression to segment the results by, e.g. properties["Plan"]. Omit for an unsegmented total.
- `type` (`string`, optional): The analysis type: 'general' for total event count, 'unique' for distinct user count, or 'average' for count per unique user.
- `unit` (`string`, optional): Time bucket granularity: 'minute', 'hour', 'day', or 'month'.
- `where` (`string`, optional): A Mixpanel expression to filter which events are included, e.g. properties["plan"] == "paid".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_segmentation_sum_query`

Get the sum of a numeric property expression per unit time for a single event, e.g. total revenue per day. Note: in maintenance mode per Mixpanel — prefer 'mixpanelanalytics_insights_query' for new use cases where possible.

Parameters:

- `event` (`string`, required): The single event name to get data for, e.g. "Purchase". Not an array.
- `from_date` (`string`, required): Start date of the query range, in yyyy-mm-dd format (inclusive).
- `on` (`string`, required): The numeric property expression to sum per unit time, e.g. properties["amount"]. Must evaluate to a number.
- `project_id` (`integer`, required): Your Mixpanel numeric Project ID (Project Settings > Overview). Required when authenticating with a Service Account; not needed with a legacy Project Secret.
- `to_date` (`string`, required): End date of the query range, in yyyy-mm-dd format (inclusive).
- `unit` (`string`, optional): Time bucket granularity: 'hour' or 'day'.
- `where` (`string`, optional): A Mixpanel expression to filter which events are included, e.g. properties["plan"] == "paid".
- `workspace_id` (`integer`, optional): The numeric ID of the Mixpanel workspace to query, for projects with multiple workspaces. Omit to use the project's default workspace.

### `mixpanelanalytics_warehouse_import_create_event_stream`

Create a new warehouse import that streams warehouse rows into Mixpanel as events. Maps a warehouse table to Mixpanel's Events dataset using 'table_params' to select the source table/columns and 'time_column_name' (plus 'event_name' or 'event_column_name') to derive each event's timestamp and name. Requires a warehouse source to already be configured in Mixpanel (Lexicon > Warehouse Sources) — pass its id as 'warehouse_source_id'. Requires Warehouse Connectors to be enabled on your Mixpanel plan; without it, calls to this endpoint return a 403 Forbidden regardless of input.

Parameters:

- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `sync_mode` (`string`, required): How this import stays in sync with the warehouse table over time, e.g. a full re-sync mode or an incremental mode based on a time column. Mixpanel's Warehouse Connectors API does not fully document every valid value for this import type in one place — the sibling lookup-table import accepts 'full_sync' or 'one_time', but event/people/group streaming imports may support additional incremental modes. Check your warehouse source configuration in the Mixpanel dashboard, or current Mixpanel documentation, to confirm the exact values accepted before relying on a value here.
- `table_params` (`object`, required): JSON object describing which warehouse table (and columns) this import reads from, e.g. the database, schema, and table name. The exact shape depends on your warehouse type (Snowflake, BigQuery, Databricks, or Redshift) and is passed through to Mixpanel as-is — check an existing import's configuration (via 'mixpanelanalytics_warehouse_import_get') or current Mixpanel documentation for the precise fields your warehouse type expects. Example: {"schema": "public", "table_name": "events"}.
- `time_column_name` (`string`, required): The name of the warehouse column containing each row's event timestamp. Mixpanel uses this column to set the imported event's time.
- `warehouse_source_id` (`integer`, required): The numeric ID of the warehouse source (the connected Snowflake, BigQuery, Databricks, or Redshift warehouse) this import reads from. Warehouse sources are configured separately in Mixpanel under Lexicon > Warehouse Sources.
- `company_column_name` (`string`, optional): The name of the warehouse column containing a company/account identifier to associate with each imported event, for B2B group analytics.
- `databricks_params` (`object`, optional): Databricks-specific cluster configuration for this import, passed through to Mixpanel as-is. Only relevant when the underlying warehouse source is Databricks — omit for Snowflake, BigQuery, or Redshift sources. Check current Mixpanel documentation or an existing Databricks import (via 'mixpanelanalytics_warehouse_import_get') for the exact fields expected, such as a cluster id or SQL warehouse id.
- `device_column_name` (`string`, optional): The name of the warehouse column containing a device identifier to associate with each imported event.
- `event_column_name` (`string`, optional): The name of the warehouse column whose value supplies each row's event name, when different rows should become different event types. Provide this or a fixed 'event_name'.
- `event_name` (`string`, optional): A fixed event name to apply to every row imported from this table. Provide this or 'event_column_name' (a column whose value supplies the event name per-row) — check Mixpanel's current Warehouse Connectors documentation for which one your use case requires.
- `insert_time_column_name` (`string`, optional): The name of a warehouse column marking when each row was inserted into the warehouse, used by Mixpanel to incrementally pick up only new rows on subsequent syncs instead of rescanning the whole table.
- `json_properties_column_name` (`string`, optional): The name of a warehouse column containing a JSON blob of additional event properties to merge into each imported event, for schemas that store extra attributes as a single JSON column rather than one column per property.
- `property_mappings` (`object`, optional): JSON object remapping warehouse column names to different Mixpanel property names on import, e.g. {"warehouse_col": "Mixpanel Property Name"}. Omit to import columns using their original warehouse column names.
- `run_every` (`integer`, optional): How often this warehouse import syncs, in NANOSECONDS — not seconds or milliseconds. This unit is easy to get wrong: 86400000000000 nanoseconds = 1 day (86400 seconds × 1,000,000,000). Common values: 3600000000000 = hourly, 86400000000000 = daily, 604800000000000 = weekly. Omit to keep Mixpanel's default sync frequency for this import type.
- `user_column_name` (`string`, optional): The name of the warehouse column containing the user identifier (Mixpanel distinct_id) to associate with each imported event.

### `mixpanelanalytics_warehouse_import_create_groups`

Create a new warehouse import that syncs warehouse rows into Mixpanel as group profile updates, analogous to 'mixpanelanalytics_warehouse_import_create_people' but for group analytics (e.g. company/account-level profiles) instead of individual users. Maps a warehouse table using 'table_params', with 'group_key' naming the configured Mixpanel group type and 'group_id_column' identifying which warehouse column holds each row's group id. Requires a warehouse source to already be configured in Mixpanel (Lexicon > Warehouse Sources) — pass its id as 'warehouse_source_id'. Requires Group Analytics to be enabled on your Mixpanel project, and Warehouse Connectors to be enabled on your Mixpanel plan; without the latter, calls to this endpoint return a 403 Forbidden regardless of input.

Parameters:

- `group_id_column` (`string`, required): The name of the warehouse column containing each row's group identifier (the value for the group key above), e.g. the company name or account ID column.
- `group_key` (`string`, required): The name of the group key as configured in Mixpanel for this group analytics type, e.g. "Company" or "Account ID". This must match a group key already defined in your project.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `sync_mode` (`string`, required): How this import stays in sync with the warehouse table over time, e.g. a full re-sync mode or an incremental mode based on a time column. Mixpanel's Warehouse Connectors API does not fully document every valid value for this import type in one place — the sibling lookup-table import accepts 'full_sync' or 'one_time', but event/people/group streaming imports may support additional incremental modes. Check your warehouse source configuration in the Mixpanel dashboard, or current Mixpanel documentation, to confirm the exact values accepted before relying on a value here.
- `table_params` (`object`, required): JSON object describing which warehouse table (and columns) this import reads from, e.g. the database, schema, and table name. The exact shape depends on your warehouse type (Snowflake, BigQuery, Databricks, or Redshift) and is passed through to Mixpanel as-is — check an existing import's configuration (via 'mixpanelanalytics_warehouse_import_get') or current Mixpanel documentation for the precise fields your warehouse type expects. Example: {"schema": "public", "table_name": "events"}.
- `warehouse_source_id` (`integer`, required): The numeric ID of the warehouse source (the connected Snowflake, BigQuery, Databricks, or Redshift warehouse) this import reads from. Warehouse sources are configured separately in Mixpanel under Lexicon > Warehouse Sources.
- `databricks_params` (`object`, optional): Databricks-specific cluster configuration for this import, passed through to Mixpanel as-is. Only relevant when the underlying warehouse source is Databricks — omit for Snowflake, BigQuery, or Redshift sources. Check current Mixpanel documentation or an existing Databricks import (via 'mixpanelanalytics_warehouse_import_get') for the exact fields expected, such as a cluster id or SQL warehouse id.
- `insert_time_column_name` (`string`, optional): The name of a warehouse column marking when each row was inserted into the warehouse, used by Mixpanel to incrementally pick up only new rows on subsequent syncs instead of rescanning the whole table.
- `json_properties_column_name` (`string`, optional): The name of a warehouse column containing a JSON blob of additional group properties to merge into each imported group profile, for schemas that store extra attributes as a single JSON column rather than one column per property.
- `property_mappings` (`object`, optional): JSON object remapping warehouse column names to different Mixpanel property names on import, e.g. {"warehouse_col": "Mixpanel Property Name"}. Omit to import columns using their original warehouse column names.
- `run_every` (`integer`, optional): How often this warehouse import syncs, in NANOSECONDS — not seconds or milliseconds. This unit is easy to get wrong: 86400000000000 nanoseconds = 1 day (86400 seconds × 1,000,000,000). Common values: 3600000000000 = hourly, 86400000000000 = daily, 604800000000000 = weekly. Omit to keep Mixpanel's default sync frequency for this import type.

### `mixpanelanalytics_warehouse_import_create_lookup_table`

Create a new warehouse import that syncs a warehouse table into Mixpanel as a Lookup Table, joining additional properties onto events or user profiles by a shared key (similar in effect to 'mixpanelingestion_lookup_table_replace', but kept continuously in sync from the warehouse instead of being replaced manually via CSV). 'mixpanel_property' identifies which Mixpanel property this table enriches, and 'property_key_column_name' is the warehouse column holding the join key. Requires a warehouse source to already be configured in Mixpanel (Lexicon > Warehouse Sources) — pass its id as 'warehouse_source_id'. Requires Warehouse Connectors to be enabled on your Mixpanel plan; without it, calls to this endpoint return a 403 Forbidden regardless of input.

Parameters:

- `mixpanel_property` (`object`, required): JSON object identifying which Mixpanel property this lookup table enriches. Shape: {"value": <property name, string>, "resourceType": <"event" or "user">, "customPropertyId": <integer id of a custom/computed property, or null for a standard property>}. Example: {"value": "Total Revenue", "resourceType": "event", "customPropertyId": null} enriches the event property "Total Revenue". Find the exact property identifiers in Lexicon.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `property_key_column_name` (`string`, required): The name of the warehouse column containing the lookup key — the value that matches this property's values on incoming events or profiles.
- `sync_mode` (`string`, required): How this lookup table import stays in sync with the warehouse table. 'full_sync' re-imports the entire table on every scheduled run (see 'run_every'), keeping it continuously up to date. 'one_time' imports the table once and does not sync again automatically.
- `table_params` (`object`, required): JSON object describing which warehouse table (and columns) this import reads from, e.g. the database, schema, and table name. The exact shape depends on your warehouse type (Snowflake, BigQuery, Databricks, or Redshift) and is passed through to Mixpanel as-is — check an existing import's configuration (via 'mixpanelanalytics_warehouse_import_get') or current Mixpanel documentation for the precise fields your warehouse type expects. Example: {"schema": "public", "table_name": "events"}.
- `warehouse_source_id` (`integer`, required): The numeric ID of the warehouse source (the connected Snowflake, BigQuery, Databricks, or Redshift warehouse) this import reads from. Warehouse sources are configured separately in Mixpanel under Lexicon > Warehouse Sources.
- `databricks_params` (`object`, optional): Databricks-specific cluster configuration for this import, passed through to Mixpanel as-is. Only relevant when the underlying warehouse source is Databricks — omit for Snowflake, BigQuery, or Redshift sources. Check current Mixpanel documentation or an existing Databricks import (via 'mixpanelanalytics_warehouse_import_get') for the exact fields expected, such as a cluster id or SQL warehouse id.
- `run_every` (`integer`, optional): How often this warehouse import syncs, in NANOSECONDS — not seconds or milliseconds. This unit is easy to get wrong: 86400000000000 nanoseconds = 1 day (86400 seconds × 1,000,000,000). Common values: 3600000000000 = hourly, 86400000000000 = daily, 604800000000000 = weekly. Omit to keep Mixpanel's default sync frequency for this import type.

### `mixpanelanalytics_warehouse_import_create_people`

Create a new warehouse import that syncs warehouse rows into Mixpanel as user profile updates (equivalent to Engage '$set'). Maps a warehouse table to Mixpanel user profiles using 'table_params' to select the source table/columns and 'user_column_name' to identify which column holds each profile's distinct_id. Requires a warehouse source to already be configured in Mixpanel (Lexicon > Warehouse Sources) — pass its id as 'warehouse_source_id'. Requires Warehouse Connectors to be enabled on your Mixpanel plan; without it, calls to this endpoint return a 403 Forbidden regardless of input.

Parameters:

- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `sync_mode` (`string`, required): How this import stays in sync with the warehouse table over time, e.g. a full re-sync mode or an incremental mode based on a time column. Mixpanel's Warehouse Connectors API does not fully document every valid value for this import type in one place — the sibling lookup-table import accepts 'full_sync' or 'one_time', but event/people/group streaming imports may support additional incremental modes. Check your warehouse source configuration in the Mixpanel dashboard, or current Mixpanel documentation, to confirm the exact values accepted before relying on a value here.
- `table_params` (`object`, required): JSON object describing which warehouse table (and columns) this import reads from, e.g. the database, schema, and table name. The exact shape depends on your warehouse type (Snowflake, BigQuery, Databricks, or Redshift) and is passed through to Mixpanel as-is — check an existing import's configuration (via 'mixpanelanalytics_warehouse_import_get') or current Mixpanel documentation for the precise fields your warehouse type expects. Example: {"schema": "public", "table_name": "events"}.
- `user_column_name` (`string`, required): The name of the warehouse column containing the user identifier (Mixpanel distinct_id) that each row's profile updates apply to.
- `warehouse_source_id` (`integer`, required): The numeric ID of the warehouse source (the connected Snowflake, BigQuery, Databricks, or Redshift warehouse) this import reads from. Warehouse sources are configured separately in Mixpanel under Lexicon > Warehouse Sources.
- `databricks_params` (`object`, optional): Databricks-specific cluster configuration for this import, passed through to Mixpanel as-is. Only relevant when the underlying warehouse source is Databricks — omit for Snowflake, BigQuery, or Redshift sources. Check current Mixpanel documentation or an existing Databricks import (via 'mixpanelanalytics_warehouse_import_get') for the exact fields expected, such as a cluster id or SQL warehouse id.
- `insert_time_column_name` (`string`, optional): The name of a warehouse column marking when each row was inserted into the warehouse, used by Mixpanel to incrementally pick up only new rows on subsequent syncs instead of rescanning the whole table.
- `json_properties_column_name` (`string`, optional): The name of a warehouse column containing a JSON blob of additional profile properties to merge into each imported profile, for schemas that store extra attributes as a single JSON column rather than one column per property.
- `property_mappings` (`object`, optional): JSON object remapping warehouse column names to different Mixpanel property names on import, e.g. {"warehouse_col": "Mixpanel Property Name"}. Omit to import columns using their original warehouse column names.
- `run_every` (`integer`, optional): How often this warehouse import syncs, in NANOSECONDS — not seconds or milliseconds. This unit is easy to get wrong: 86400000000000 nanoseconds = 1 day (86400 seconds × 1,000,000,000). Common values: 3600000000000 = hourly, 86400000000000 = daily, 604800000000000 = weekly. Omit to keep Mixpanel's default sync frequency for this import type.

### `mixpanelanalytics_warehouse_import_delete`

Delete a warehouse import's sync configuration, stopping future syncs. By default this only removes the connector configuration — data already imported into Mixpanel is kept. Set 'delete_data' to true to also permanently delete the data previously imported by this connector. Use 'mixpanelanalytics_warehouse_imports_list' to find the import_id first. This cannot be undone.

Parameters:

- `import_id` (`string`, required): The numeric ID of the warehouse import to operate on. Use 'mixpanelanalytics_warehouse_imports_list' to look up the id for each configured import.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `delete_data` (`boolean`, optional): If true, also permanently deletes the data previously imported into Mixpanel by this connector, not just the sync configuration. If false or omitted (default), only the import configuration is removed and previously imported data is kept.

### `mixpanelanalytics_warehouse_import_get`

Get the full configuration and current status of a single warehouse import by id, including its sync schedule ('run_every'), pause state, and warehouse-specific parameters. Use 'mixpanelanalytics_warehouse_imports_list' first to find the import_id.

Parameters:

- `import_id` (`string`, required): The numeric ID of the warehouse import to operate on. Use 'mixpanelanalytics_warehouse_imports_list' to look up the id for each configured import.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_warehouse_import_history`

Get the history of past sync runs for a warehouse import, e.g. to check when it last ran, whether recent runs succeeded, and how long each run took. Use 'mixpanelanalytics_warehouse_imports_list' to find the import_id first.

Parameters:

- `import_id` (`string`, required): The numeric ID of the warehouse import to operate on. Use 'mixpanelanalytics_warehouse_imports_list' to look up the id for each configured import.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_warehouse_import_run_sync`

Manually trigger an immediate sync run for a warehouse import, outside its configured schedule ('run_every'). Use this to pull the latest warehouse data on demand instead of waiting for the next scheduled run, e.g. after fixing an upstream data issue. Use 'mixpanelanalytics_warehouse_imports_list' to find the import_id first. Requires Warehouse Connectors to be enabled on your Mixpanel plan; without it, calls to this endpoint return a 403 Forbidden regardless of input.

Parameters:

- `import_id` (`string`, required): The numeric ID of the warehouse import to operate on. Use 'mixpanelanalytics_warehouse_imports_list' to look up the id for each configured import.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.

### `mixpanelanalytics_warehouse_import_update`

Pause, resume, or reschedule an existing warehouse import. Use this to stop a sync temporarily ('paused': true), resume it ('paused': false), change how often it runs ('run_every'), or update Databricks-specific cluster settings. Use 'mixpanelanalytics_warehouse_imports_list' or 'mixpanelanalytics_warehouse_import_get' to find the import_id first. This does not change what data the import reads — to change the source table or columns, delete and recreate the import.

Parameters:

- `import_id` (`string`, required): The numeric ID of the warehouse import to operate on. Use 'mixpanelanalytics_warehouse_imports_list' to look up the id for each configured import.
- `paused` (`boolean`, required): Whether this warehouse import's sync schedule is paused. Set to true to pause the sync (no new data will be imported until resumed), or false to resume or keep it actively running.
- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.
- `run_every` (`integer`, required): How often this warehouse import syncs, in NANOSECONDS — not seconds or milliseconds. This unit is easy to get wrong: 86400000000000 nanoseconds = 1 day (86400 seconds × 1,000,000,000). Common values: 3600000000000 = hourly, 86400000000000 = daily, 604800000000000 = weekly.
- `databricks_params` (`object`, optional): Databricks-specific cluster configuration for this import, passed through to Mixpanel as-is. Only relevant when the underlying warehouse source is Databricks — omit for Snowflake, BigQuery, or Redshift sources. Check current Mixpanel documentation or an existing Databricks import (via 'mixpanelanalytics_warehouse_import_get') for the exact fields expected, such as a cluster id or SQL warehouse id.

### `mixpanelanalytics_warehouse_imports_list`

List all warehouse import connectors configured for a Mixpanel project, across every warehouse source (Snowflake, BigQuery, Databricks, Redshift). Each entry includes its import id, import type (event stream, people, groups, or lookup table), warehouse source, and current sync status — use the id with 'mixpanelanalytics_warehouse_import_get' or 'mixpanelanalytics_warehouse_import_update' to inspect or change a specific import.

Parameters:

- `project_id` (`string`, required): Your numeric Mixpanel Project ID, required to authenticate Service Account requests. Find it in Mixpanel under Project Settings > Overview.


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
