# PostHog on boxd

> PostHog is an open-source product analytics platform tracking user interactions and behaviors to help teams refine features, improve funnels, and reduce churn.

- Page: https://boxd.sh/integrations/posthog/
- CLI: `run posthog` (507 commands, 5 marked common)
- SDK: `import { posthog } from "@boxd/run"`; every parameter and response type is at `@boxd/run/posthog`
- Triggers: none
- Connect: `run auth posthog` (API key), or https://app.boxd.sh/integrations/detail/posthog
- All integrations: https://boxd.sh/integrations/ (Markdown: https://boxd.sh/integrations/index.md)

## From the shell

```sh
run auth posthog      # once: prints a link to connect your account
run posthog           # list its commands
run posthog list-project-group-types --help
```

Parameters are flags (`--flag value`); object and array parameters take a JSON string. Output is YAML, or JSON with `--json`. Calls use your own connection; `--scope <name>` uses a connection shared with your team.

## From a script

```ts
import { every, posthog } from "@boxd/run";

every("1 hour", async () => {
  const result = await posthog.listProjectGroupTypes({ project_id: "…" });
  console.log(result);
});
```

Run it with `run posthog.run.ts`. PostHog has no triggers; `every()` polls on a schedule, keeps the script running as a job, and wakes the machine when it is due.

## Commands

Required flags are listed; `run posthog <command> --help` lists the optional ones. "common" marks what `run posthog` shows without `--all`.

| Command | SDK method | Required flags | Optional | Description |
|---|---|---|---|---|
| `add-dashboard-collaborators-with-access-level` | `posthog.addDashboardCollaboratorsWithAccessLevel()` | `--dashboard-id` `--level` `--project-id` `--user-uuid` | 0 | Add collaborators to a specific project dashboard |
| `add-member-to-organization-role` | `posthog.addMemberToOrganizationRole()` | `--organization-id` `--role-id` `--user-uuid` | 0 | Add a member to an organization role by submitting their details and UUID in JSON/form, using organization and role IDs |
| `add-persons-to-static-cohort` | `posthog.addPersonsToStaticCohort()` | `--id` `--person-ids` `--project-id` | 0 | Add persons to a static cohort by their UUIDs |
| `add-product-intent-to-project` | `posthog.addProductIntentToProject()` | `--id` `--organization-id` `--product-type` | 0 | Add a product intent to a PostHog project |
| `add-project-specific-member-roles` | `posthog.addProjectSpecificMemberRoles()` | `--project-id` `--user-uuid` | 1 | Add members with specific roles to a project by providing their user_uuid and level (member or admin) |
| `add-session-recording-to-playlist` | `posthog.addSessionRecordingToPlaylist()` | `--project-id` `--session-recording-id` `--short-id` | 10 | Add an existing session recording to a playlist |
| `append-desktop-recording-segments` | `posthog.appendDesktopRecordingSegments()` | `--id` `--project-id` `--segments` | 0 | Append transcript segments to an existing desktop recording for real-time streaming support |
| `archive-survey-response` | `posthog.archiveSurveyResponse()` | `--id` `--project-id` `--response-uuid` | 0 | Archive a single survey response |
| `assign-feature-flag-role-based-access` | `posthog.assignFeatureFlagRoleBasedAccess()` | `--feature-flag-id` `--project-id` `--role-id` | 0 | Set up role-based access for a feature flag using `project_id` and `feature_flag_id` |
| `bulk-create-organization-invites` | `posthog.bulkCreateOrganizationInvites()` | `--invites` `--organization-id` | 0 | POST /api/organizations/{organization_id}/invites/bulk/: Bulk-create organization invites with customizable levels, sender details, and validation checks |
| `bulk-delete-feature-flags` ·common | `posthog.bulkDeleteFeatureFlags()` | `--project-id` | 2 | Bulk delete feature flags by filter criteria or explicit IDs |
| `bulk-delete-persons` | `posthog.bulkDeletePersons()` | `--project-id` | 6 | Bulk delete persons by PostHog person IDs or distinct IDs |
| `cancel-project-insights` | `posthog.cancelProjectInsights()` | `--project-id` | 30 | The "/api/projects/{project_id}/insights/cancel/" endpoint allows users to cancel insights for a project by providing a project ID and insight details in JSON or CSV, and confirms cancellation in the… |
| `capture-event` ·common | `posthog.captureEvent()` | `--api-key` `--distinct-id` `--event` | 3 | Capture (ingest) a single analytics event into PostHog using the public ingestion API and a project API key |
| `check-pipeline-destination-updates` | `posthog.checkPipelineDestinationUpdates()` | `--id` `--organization-id` | 0 | Check for available updates to a pipeline destination plugin by comparing the currently installed version (tag) with the latest version available in the plugin's repository |
| `check-pipeline-import-app-updates` | `posthog.checkPipelineImportAppUpdates()` | `--id` `--organization-id` | 0 | Retrieve the latest update information for a specific pipeline import app by its ID within an organization |
| `check-pipeline-plugin-update-status` | `posthog.checkPipelinePluginUpdateStatus()` | `--id` `--organization-id` | 0 | Get update status for a specific pipeline transformation plugin by its unique ID within an organization |
| `check-project-demo-data-generation-status` | `posthog.checkProjectDemoDataGenerationStatus()` | `--id` `--organization-id` | 0 | Check if a project is currently generating demo data |
| `create-ai-insight` | `posthog.createAiInsight()` | `--insight-type` `--project-id` `--query` | 0 | Create and query insights using PostHog's Max AI assistant |
| `create-alert` | `posthog.createAlert()` | `--enabled` `--insight` `--name` `--project-id` `--subscribed-users` `--threshold` | 5 | Create a new alert configuration in PostHog |
| `create-batch` | `posthog.createBatch()` | `--api-key` `--batch` | 0 | Capture a batch of analytics events to PostHog using the public batch ingestion API |
| `create-batch-export` | `posthog.createBatchExport()` | `--destination` `--interval` `--name` `--project-id` | 10 | Create a new batch export to automatically export PostHog data to external destinations like S3, BigQuery, or Snowflake |
| `create-batch-export-backfill` | `posthog.createBatchExportBackfill()` | `--batch-export-id` `--end-at` `--project-id` `--start-at` | 0 | Create a new backfill for a BatchExport |
| `create-batch-export-test-run` | `posthog.createBatchExportTestRun()` | `--created-at` `--destination` `--id` `--interval` `--last-updated-at` `--latest-runs` `--name` `--paused` `--project-id` `--team-id` | 10 | Run a test step for a batch export configuration in PostHog |
| `create-custom-project-insights` | `posthog.createCustomProjectInsights()` | `--project-id` | 29 | Create custom analytics insights for a PostHog project |
| `create-customer-profile-config` | `posthog.createCustomerProfileConfig()` | `--project-id` `--scope` | 2 | Create a customer profile configuration for a PostHog project |
| `create-data-color-theme` | `posthog.createDataColorTheme()` | `--colors` `--name` `--project-id` | 0 | Create a new data color theme in a PostHog project |
| `create-dataset` | `posthog.createDataset()` | `--name` `--project-id` | 2 | Create a new dataset in a PostHog project |
| `create-dataset-item` | `posthog.createDatasetItem()` | `--dataset` `--project-id` | 6 | Create a new dataset item in a PostHog project dataset |
| `create-desktop-recording` | `posthog.createDesktopRecording()` | `--project-id` | 1 | Create a new desktop recording and get Recall.ai upload token for the desktop SDK |
| `create-endpoint` | `posthog.createEndpoint()` | `--name` `--project-id` `--query` | 7 | Create a new endpoint for a PostHog project |
| `create-error-tracking-autocapture-control` | `posthog.createErrorTrackingAutocaptureControl()` | `--id` `--library` `--project-id` | 6 | Create a new error tracking autocapture control configuration for a PostHog project |
| `create-error-tracking-release` | `posthog.createErrorTrackingRelease()` | `--created-at` `--hash-id` `--id` `--project` `--project-id` `--team-id` `--version` | 1 | Create a new error tracking release in PostHog |
| `create-error-tracking-suppression-rule` | `posthog.createErrorTrackingSuppressionRule()` | `--filters` `--id` `--order-key` `--project-id` | 0 | Create a new error tracking suppression rule for a project |
| `create-evaluation` | `posthog.createEvaluation()` | `--evaluation-type` `--name` `--output-type` `--project-id` | 7 | Create a new evaluation for a PostHog project to assess AI-generated content or responses |
| `create-evaluation-run` | `posthog.createEvaluationRun()` | `--evaluation-id` `--event` `--project-id` `--target-event-id` `--timestamp` | 0 | Create a new evaluation run and enqueue a Temporal workflow to asynchronously execute the evaluation |
| `create-event-definition` | `posthog.createEventDefinition()` | `--name` `--project-id` | 4 | Create a new event definition in a PostHog project |
| `create-experiment-exposure-cohort` | `posthog.createExperimentExposureCohort()` | `--id` `--project-id` | 0 | Create a new exposure cohort for an experiment in a project by sending a POST request with experiment details and feature flag data |
| `create-experiment-holdout` | `posthog.createExperimentHoldout()` | `--filters` `--name` `--project-id` | 1 | Create a new experiment holdout group in PostHog |
| `create-experiment-saved-metric` | `posthog.createExperimentSavedMetric()` | `--name` `--project-id` `--query` | 2 | Create a new experiment saved metric in a PostHog project |
| `create-feature-flag` ·common | `posthog.createFeatureFlag()` | `--key` `--project-id` | 7 | Create a new feature flag in a PostHog project |
| `create-feature-flag-cohort` | `posthog.createFeatureFlagCohort()` | `--id` `--project-id` | 19 | Manage feature flags for apps with create, read, update, and delete operations using PostHog's JavaScript Library or dedicated endpoint |
| `create-feature-flag-dashboard` | `posthog.createFeatureFlagDashboard()` | `--id` `--project-id` | 19 | Manage feature flags by creating, reading, updating, and deleting them |
| `create-file-system` | `posthog.createFileSystem()` | `--created-at` `--id` `--path` `--project-id` `--type` | 6 | Create a new file system resource in PostHog with specified metadata and hierarchy |
| `create-file-system-shortcut` | `posthog.createFileSystemShortcut()` | `--path` `--project-id` `--type` | 4 | Create a new file system shortcut in a PostHog project |
| `create-group-type-metric` | `posthog.createGroupTypeMetric()` | `--filters` `--group-type-index` `--id` `--name` `--project-id` | 3 | Create a new metric for a specific group type in a PostHog project |
| `create-hog-function` | `posthog.createHogFunction()` | `--inputs` `--name` `--project-id` `--template-id` `--type` | 8 | Create a new hog function in PostHog |
| `create-insight-variable` | `posthog.createInsightVariable()` | `--code-name` `--name` `--project-id` `--type` | 2 | Create a new insight variable for a PostHog project |
| `create-live-debugger-breakpoint` | `posthog.createLiveDebuggerBreakpoint()` | `--filename` `--line-number` `--project-id` | 3 | Create a new live debugger breakpoint in a PostHog project |
| `create-llm-analytics-summarization` | `posthog.createLlmAnalyticsSummarization()` | `--data` `--project-id` `--summarize-type` | 3 | Generate an AI-powered summary of an LLM trace or event |
| `create-llm-analytics-text-representation` | `posthog.createLlmAnalyticsTextRepresentation()` | `--data` `--event-type` `--project-id` | 1 | Generate human-readable text representations of LLM trace events for display, logging, or analysis |
| `create-logs-export` | `posthog.createLogsExport()` | `--project-id` `--query` | 0 | Create a logs export job using HogQL queries in PostHog |
| `create-organization` | `posthog.createOrganization()` | `--name` | 2 | Create a new PostHog organization with configurable security and notification settings |
| `create-organization-invite` | `posthog.createOrganizationInvite()` | `--organization-id` `--target-email` | 5 | Create and send an organization invitation to a user via email |
| `create-organization-proxy-record` | `posthog.createOrganizationProxyRecord()` | `--domain` `--organization-id` | 0 | Create a managed reverse proxy record for an organization to enable custom domain routing for PostHog analytics events |
| `create-organization-role` | `posthog.createOrganizationRole()` | `--name` `--organization-id` | 1 | Create a new custom role within a PostHog organization with optional feature flag access permissions |
| `create-organization-saml-domain` | `posthog.createOrganizationSamlDomain()` | `--domain` `--organization-id` | 5 | Create and configure an authentication domain with SAML SSO for a PostHog organization |
| `create-persisted-folder` | `posthog.createPersistedFolder()` | `--created-at` `--id` `--project-id` `--type` `--updated-at` | 2 | Create a new persisted folder in a PostHog project |
| `create-person-path` | `posthog.createPersonPath()` | `--created-at` `--distinct-ids` `--id` `--name` `--project-id` `--uuid` | 2 | Retrieve path analytics for a specific person within a PostHog project |
| `create-product-tour` | `posthog.createProductTour()` | `--name` `--project-id` | 8 | Create a new product tour in a PostHog project |
| `create-project-action` | `posthog.createProjectAction()` | `--project-id` | 15 | This POST endpoint creates actions for a project, accepts various data types, requires project_id and action data, optionally outputs in CSV/JSON, and needs PersonalAPIKeyAuth, returning a 201 with… |
| `create-project-cohort` | `posthog.createProjectCohort()` | `--name` `--project-id` | 6 | Create cohorts for a specified project by POSTing JSON-form data to "/api/projects/{project_id}/cohorts/" |
| `create-project-dashboard` | `posthog.createProjectDashboard()` | `--name` `--project-id` | 10 | The POST endpoint creates a dashboard within a project using a `project_id`, accepting details in JSON/form formats |
| `create-project-experiment` | `posthog.createProjectExperiment()` | `--feature-flag-key` `--name` `--project-id` | 7 | Create a new experiment in a specific project using JSON, form, or multipart data |
| `create-project-insights-with-format-option` | `posthog.createProjectInsightsWithFormatOption()` | `--project-id` | 12 | Create a new analytics insight in a PostHog project |
| `create-project-notebook` | `posthog.createProjectNotebook()` | `--project-id` | 3 | The API for interacting with Notebooks |
| `create-project-pipeline-frontend-app-job` | `posthog.createProjectPipelineFrontendAppJob()` | `--id` `--project-id` | 1 | Create a job for a pipeline frontend app config in a project |
| `create-project-retention-insight` | `posthog.createProjectRetentionInsight()` | `--project-id` | 2 | Create and retrieve retention insights for a project using PostHog's Query API |
| `create-project-subscription` | `posthog.createProjectSubscription()` | `--frequency` `--project-id` `--start-date` `--target-type` `--target-value` | 10 | Create a subscription for a given project by providing required details such as delivery method, frequency, and starting date |
| `create-project-survey` | `posthog.createProjectSurvey()` | `--name` `--project-id` `--type` | 19 | Create surveys in a project by providing a project ID and details like type, questions, and targets in JSON, form-data, or urlencoded format |
| `create-query-in-project-by-id` | `posthog.createQueryInProjectById()` | `--project-id` `--query` | 3 | The `/api/projects/{project_id}/query/` POST endpoint allows users to submit queries for a specific project by providing the project ID in the URL and the query details in JSON or form data |
| `create-session-recording-playlist` | `posthog.createSessionRecordingPlaylist()` | `--name` `--project-id` `--type` | 9 | Create playlists of session recordings for a specified project |
| `create-session-recording-summary` | `posthog.createSessionRecordingSummary()` | `--id` `--project-id` | 0 | Generate an AI-powered summary for a session recording |
| `create-survey-summary-headline` | `posthog.createSurveySummaryHeadline()` | `--id` `--project-id` | 0 | Create or regenerate a summary headline for a survey |
| `create-warehouse-saved-query` | `posthog.createWarehouseSavedQuery()` | `--name` `--project-id` `--query` | 0 | Create a new warehouse saved query in PostHog for data warehouse operations |
| `create-web-experiment` | `posthog.createWebExperiment()` | `--feature-flag-key` `--id` `--name` `--project-id` `--variants` | 0 | Create a new web experiment in a PostHog project |
| `delete-alert` | `posthog.deleteAlert()` | `--id` `--project-id` | 0 | Delete an alert configuration by providing its UUID and the associated project ID |
| `delete-customer-profile-config` | `posthog.deleteCustomerProfileConfig()` | `--id` `--project-id` | 0 | Delete a customer profile configuration by ID in a PostHog project |
| `delete-desktop-recording` | `posthog.deleteDesktopRecording()` | `--id` `--project-id` | 0 | Delete a desktop meeting recording by its UUID and project ID |
| `delete-endpoint` | `posthog.deleteEndpoint()` | `--name` `--project-id` | 0 | Delete an endpoint and clean up materialized query |
| `delete-error-tracking-autocapture-control` | `posthog.deleteErrorTrackingAutocaptureControl()` | `--id` `--project-id` | 0 | Delete an error tracking autocapture control configuration by UUID and project ID |
| `delete-error-tracking-grouping-rule` | `posthog.deleteErrorTrackingGroupingRule()` | `--id` `--project-id` | 0 | Delete a specific error tracking grouping rule by ID |
| `delete-error-tracking-release` | `posthog.deleteErrorTrackingRelease()` | `--id` `--project-id` | 0 | Delete an error tracking release by its UUID and project ID |
| `delete-error-tracking-suppression-rule` | `posthog.deleteErrorTrackingSuppressionRule()` | `--id` `--project-id` | 0 | Delete an error tracking suppression rule by its UUID |
| `delete-experiment-holdout` | `posthog.deleteExperimentHoldout()` | `--id` `--project-id` | 0 | Delete an experiment holdout by providing its ID and the associated project ID |
| `delete-experiment-saved-metric` | `posthog.deleteExperimentSavedMetric()` | `--id` `--project-id` | 0 | Delete an experiment saved metric by ID from a PostHog project |
| `delete-feature-flag-role-access` | `posthog.deleteFeatureFlagRoleAccess()` | `--feature-flag-id` `--id` `--project-id` | 0 | DELETE /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access/{id}: Remove role access from a feature flag in a project by ID, requiring authorization |
| `delete-file-system` | `posthog.deleteFileSystem()` | `--id` `--project-id` | 0 | Delete a file system resource in PostHog by UUID |
| `delete-group-type-metric` | `posthog.deleteGroupTypeMetric()` | `--group-type-index` `--id` `--project-id` | 0 | Delete a group usage metric by its UUID within a specific project and group type |
| `delete-insight` | `posthog.deleteInsight()` | `--id` `--project-id` | 1 | Attempt to delete an insight by its ID from a specific project |
| `delete-insight-variable` | `posthog.deleteInsightVariable()` | `--id` `--project-id` | 0 | Delete an insight variable by its UUID from a specified project |
| `delete-live-debugger-breakpoint` | `posthog.deleteLiveDebuggerBreakpoint()` | `--id` `--project-id` | 0 | Delete a live debugger breakpoint by providing its UUID and project ID |
| `delete-organization` | `posthog.deleteOrganization()` | `--id` | 0 | Delete an organization by its UUID |
| `delete-organization-batch-export` | `posthog.deleteOrganizationBatchExport()` | `--id` `--organization-id` | 0 | Delete a specific batch export by its UUID in an organization |
| `delete-organization-domain` | `posthog.deleteOrganizationDomain()` | `--id` `--organization-id` | 0 | Delete a specific domain by its UUID within an organization, given valid organization and domain IDs |
| `delete-organization-member` | `posthog.deleteOrganizationMember()` | `--organization-id` `--user--uuid` | 0 | Remove a member from a PostHog organization by their user UUID |
| `delete-organization-pipeline-destination` | `posthog.deleteOrganizationPipelineDestination()` | `--id` `--organization-id` | 0 | Delete a specific pipeline destination in an organization by ID |
| `delete-organization-pipeline-import-app` | `posthog.deleteOrganizationPipelineImportApp()` | `--id` `--organization-id` | 0 | Delete a specific pipeline import app plugin associated with an organization by ID |
| `delete-organization-pipeline-transformation` | `posthog.deleteOrganizationPipelineTransformation()` | `--id` `--organization-id` | 0 | Delete a specific pipeline transformation plugin for an organization by ID |
| `delete-organization-plugin` | `posthog.deleteOrganizationPlugin()` | `--id` `--organization-id` | 0 | Delete a specific plugin (by its integer ID) from the organization (identified by UUID) with no response body on success |
| `delete-organization-project` | `posthog.deleteOrganizationProject()` | `--id` `--organization-id` | 0 | Projects for the current organization |
| `delete-organization-proxy-record` | `posthog.deleteOrganizationProxyRecord()` | `--id` `--organization-id` | 0 | Delete a proxy record by ID for a specific organization |
| `delete-organization-role` | `posthog.deleteOrganizationRole()` | `--id` `--organization-id` | 0 | Delete a role with a specific UUID in an organization |
| `delete-persisted-folder` | `posthog.deletePersistedFolder()` | `--id` `--project-id` | 0 | Delete a persisted folder by providing its UUID and the associated project ID |
| `delete-person` | `posthog.deletePerson()` | `--id` `--project-id` | 2 | This endpoint is used to read and delete user data |
| `delete-person-property` | `posthog.deletePersonProperty()` | `--dollar-unset` `--id` `--project-id` | 1 | Delete specific properties from a person record using the $unset operation |
| `delete-product-tour` | `posthog.deleteProductTour()` | `--id` `--project-id` | 0 | Delete a product tour by providing its UUID and the associated project ID |
| `delete-project-batch-export` | `posthog.deleteProjectBatchExport()` | `--id` `--project-id` | 0 | Delete a specific batch export by providing the UUID and project ID |
| `delete-project-dashboard-collaborator` | `posthog.deleteProjectDashboardCollaborator()` | `--dashboard-id` `--project-id` `--user--uuid` | 0 | Remove a collaborator from a project dashboard |
| `delete-project-early-access-feature` | `posthog.deleteProjectEarlyAccessFeature()` | `--id` `--project-id` | 0 | Delete an early access feature by ID from a specified project |
| `delete-project-event-definition` | `posthog.deleteProjectEventDefinition()` | `--id` `--project-id` | 0 | Delete an event definition by providing its UUID and the associated project ID |
| `delete-project-experiment` | `posthog.deleteProjectExperiment()` | `--id` `--project-id` | 1 | Soft-delete a specific experiment by its unique integer ID within a project |
| `delete-project-member` | `posthog.deleteProjectMember()` | `--parent--membership--user--uuid` `--project-id` | 0 | Delete a specific user (by UUID) from the explicit members of a given project |
| `delete-project-plugin-configuration` | `posthog.deleteProjectPluginConfiguration()` | `--id` `--project-id` | 0 | DELETE /api/projects/{project_id}/plugin_configs/{id}/: Removes a specific plugin configuration by ID from a given project |
| `delete-project-query` | `posthog.deleteProjectQuery()` | `--id` `--project-id` | 0 | (Experimental) |
| `delete-property-definition` | `posthog.deletePropertyDefinition()` | `--id` `--project-id` | 0 | Delete a property definition by providing its UUID and the associated project ID |
| `delete-role-membership` | `posthog.deleteRoleMembership()` | `--id` `--organization-id` `--role-id` | 0 | Remove a user from a custom organization role by deleting their role membership |
| `delete-session-recording` | `posthog.deleteSessionRecording()` | `--id` `--project-id` | 0 | Delete a session recording by providing the session's UUID and the associated project ID |
| `delete-session-recording-from-playlist` | `posthog.deleteSessionRecordingFromPlaylist()` | `--project-id` `--session-recording-id` `--short-id` | 0 | Remove a session recording from a playlist in a PostHog project |
| `delete-survey` | `posthog.deleteSurvey()` | `--id` `--project-id` | 0 | Delete a survey by providing its UUID and the associated project ID |
| `delete-warehouse-saved-query` | `posthog.deleteWarehouseSavedQuery()` | `--id` `--project-id` | 0 | Delete a warehouse saved query from PostHog |
| `delete-web-experiment` | `posthog.deleteWebExperiment()` | `--id` `--project-id` | 0 | Delete a web experiment by its ID from a specific project |
| `duplicate-cohort-to-static` | `posthog.duplicateCohortToStatic()` | `--id` `--project-id` | 0 | This endpoint duplicates a specified cohort as a static one within a project |
| `duplicate-experiment` | `posthog.duplicateExperiment()` | `--id` `--project-id` | 0 | Duplicate an existing experiment in PostHog |
| `duplicate-survey-to-projects` | `posthog.duplicateSurveyToProjects()` | `--id` `--project-id` `--target-team-ids` | 0 | Duplicate a survey to multiple projects in a single transaction |
| `enable-project-early-access-feature` | `posthog.enableProjectEarlyAccessFeature()` | `--created-at` `--id` `--name` `--project-id` `--stage` | 3 | Enables a new early access feature for a project using project ID, payload with details, and PersonalAPIKeyAuth |
| `finish-symbol-sets-bulk-upload` | `posthog.finishSymbolSetsBulkUpload()` | `--created-at` `--id` `--project-id` `--ref` `--release` `--team-id` | 3 | Finalize bulk upload of error tracking symbol sets for a PostHog project |
| `flag-annotation-as-deleted` | `posthog.flagAnnotationAsDeleted()` | `--id` `--project-id` | 1 | Soft delete an annotation by setting 'deleted' to true via PATCH request |
| `generate-insight-name` | `posthog.generateInsightName()` | `--project-id` `--query` | 1 | Generate an AI-suggested name for a PostHog insight based on its query configuration |
| `generate-project-funnel-correlation-insight` | `posthog.generateProjectFunnelCorrelationInsight()` | `--project-id` | 21 | The /api/projects/{project_id}/insights/funnel/correlation endpoint generates a correlation insight for funnel analysis in a project, accepting JSON/CSV and needing 'project_id' and insight details |
| `get-app-metrics` | `posthog.getAppMetrics()` | `--id` `--project-id` | 0 | Retrieve performance and error metrics for a specific plugin configuration (app) in a PostHog project |
| `get-app-metrics-error-details` | `posthog.getAppMetricsErrorDetails()` | `--id` `--project-id` | 0 | Retrieves detailed error information for a specific app metric (plugin config) within a project |
| `get-batch-export-details` | `posthog.getBatchExportDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific batch export by its UUID in a project |
| `get-batch-exports-backfills` | `posthog.getBatchExportsBackfills()` | `--batch-export-id` `--project-id` | 2 | Retrieve backfills for a specific batch export within a project |
| `get-cohort-activity-details` | `posthog.getCohortActivityDetails()` | `--id` `--project-id` | 0 | Retrieve activity details for a specific cohort within a project |
| `get-cohort-person-details` | `posthog.getCohortPersonDetails()` | `--id` `--project-id` | 3 | Retrieve details of persons within a cohort by its unique ID in the specified project |
| `get-cohorts-calculation-history` | `posthog.getCohortsCalculationHistory()` | `--id` `--project-id` | 2 | Retrieve the calculation history for a specific cohort |
| `get-conversation` | `posthog.getConversation()` | `--conversation` `--project-id` | 0 | Retrieve a specific conversation by UUID and project ID |
| `get-conversations` | `posthog.getConversations()` | `--project-id` | 2 | Retrieve conversations for a specific PostHog project with pagination support |
| `get-customer-profile-config` | `posthog.getCustomerProfileConfig()` | `--id` `--project-id` | 0 | Retrieve a specific customer profile configuration by its ID for a given project |
| `get-customer-profile-configs` | `posthog.getCustomerProfileConfigs()` | `--project-id` | 2 | Retrieve customer profile configurations for a project with pagination support |
| `get-dashboard-template-details` | `posthog.getDashboardTemplateDetails()` | `--id` `--project-id` | 0 | Fetch specific dashboard template details by UUID in a project with 'dashboard_template:read' rights using a PersonalAPIKeyAuth |
| `get-dashboard-template-schema` | `posthog.getDashboardTemplateSchema()` | `--project-id` | 0 | Retrieve the JSON schema for dashboard templates of a specific project |
| `get-data-color-theme` | `posthog.getDataColorTheme()` | `--id` `--project-id` | 0 | Retrieve a specific data color theme by ID from a PostHog project |
| `get-data-color-themes` | `posthog.getDataColorThemes()` | `--project-id` | 2 | Retrieve data color themes for a specific project |
| `get-dataset` | `posthog.getDataset()` | `--id` `--project-id` | 0 | Retrieve detailed information about a specific dataset within a project |
| `get-dataset-item` | `posthog.getDatasetItem()` | `--id` `--project-id` | 0 | Retrieve a specific dataset item by its ID from a PostHog project |
| `get-dataset-items` | `posthog.getDatasetItems()` | `--project-id` | 3 | Retrieve paginated dataset items for a specific project in PostHog |
| `get-datasets` | `posthog.getDatasets()` | `--project-id` | 5 | Retrieve datasets for a PostHog project |
| `get-desktop-recordings` | `posthog.getDesktopRecordings()` | `--project-id` | 2 | Retrieve desktop meeting recordings for a specific project |
| `get-endpoint-openapi-specification` | `posthog.getEndpointOpenapiSpecification()` | `--name` `--project-id` | 0 | Get OpenAPI 3.0 specification for a specific PostHog endpoint |
| `get-error-tracking-assignment-rules` | `posthog.getErrorTrackingAssignmentRules()` | `--project-id` | 2 | Retrieve error tracking assignment rules for a project |
| `get-error-tracking-autocapture-control` | `posthog.getErrorTrackingAutocaptureControl()` | `--id` `--project-id` | 0 | Retrieve a specific error tracking autocapture control configuration by its ID |
| `get-error-tracking-fingerprints` | `posthog.getErrorTrackingFingerprints()` | `--project-id` | 2 | Retrieve error tracking fingerprints for a project |
| `get-error-tracking-grouping-rules` | `posthog.getErrorTrackingGroupingRules()` | `--project-id` | 2 | Retrieve error tracking grouping rules for a project |
| `get-error-tracking-release` | `posthog.getErrorTrackingRelease()` | `--id` `--project-id` | 0 | Retrieve details of a specific error tracking release by its UUID and project ID |
| `get-error-tracking-release-by-hash` | `posthog.getErrorTrackingReleaseByHash()` | `--hash-id` `--project-id` | 0 | Retrieve an error tracking release by its hash identifier |
| `get-error-tracking-releases` | `posthog.getErrorTrackingReleases()` | `--project-id` | 2 | Retrieve paginated error tracking releases for a specific project in PostHog |
| `get-error-tracking-suppression-rules` | `posthog.getErrorTrackingSuppressionRules()` | `--project-id` | 2 | Retrieve error tracking suppression rules for a project |
| `get-error-tracking-symbol-sets` | `posthog.getErrorTrackingSymbolSets()` | `--project-id` | 2 | Retrieve error tracking symbol sets for a PostHog project |
| `get-evaluation` | `posthog.getEvaluation()` | `--id` `--project-id` | 0 | Retrieve details of a specific evaluation by its UUID and project ID |
| `get-evaluations` | `posthog.getEvaluations()` | `--project-id` | 6 | Retrieve evaluations configured for a specific PostHog environment/project |
| `get-event-definition` | `posthog.getEventDefinition()` | `--id` `--project-id` | 0 | Retrieve an event definition by its UUID within a specified project |
| `get-event-definition-by-name` | `posthog.getEventDefinitionByName()` | `--name` `--project-id` | 0 | Retrieve an event definition by its exact name for a specific project |
| `get-event-definitions` | `posthog.getEventDefinitions()` | `--project-id` | 0 | Retrieve definitions for events within a specified project by providing the unique project_id |
| `get-event-definitions-golang` | `posthog.getEventDefinitionsGolang()` | `--project-id` | 0 | Retrieve event definitions in Golang format for a specific PostHog project |
| `get-event-definitions-python` | `posthog.getEventDefinitionsPython()` | `--project-id` | 0 | Retrieve Python-formatted event definitions for a specific project |
| `get-event-definitions-typescript` | `posthog.getEventDefinitionsTypescript()` | `--project-id` | 0 | Retrieve TypeScript event definitions for a specific project |
| `get-experiment-details` | `posthog.getExperimentDetails()` | `--id` `--project-id` | 0 | Access detailed experiment info within a project using unique `experiment ID` & `project ID`, with 'experiment:read' rights |
| `get-experiment-holdout-details` | `posthog.getExperimentHoldoutDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific experiment holdout by ID within a project |
| `get-experiment-holdouts` | `posthog.getExperimentHoldouts()` | `--project-id` | 2 | Retrieve experiment holdouts for a specific PostHog project |
| `get-experiment-saved-metric` | `posthog.getExperimentSavedMetric()` | `--id` `--project-id` | 0 | Retrieve a specific experiment saved metric by ID from a PostHog project |
| `get-experiments-eligible-feature-flags` | `posthog.getExperimentsEligibleFeatureFlags()` | `--project-id` | 7 | Retrieve feature flags eligible for use in experiments |
| `get-experiments-requiring-flag-implementation` | `posthog.getExperimentsRequiringFlagImplementation()` | `--project-id` | 0 | Retrieve details for experiments that require feature flag implementation in a specific project |
| `get-experiments-stats` | `posthog.getExperimentsStats()` | `--project-id` | 0 | Retrieve experimentation velocity statistics for a PostHog project |
| `get-export-unsubscribe-configs` | `posthog.getExportUnsubscribeConfigs()` | `--organization-id` | 0 | Retrieves export unsubscribe configurations for pipeline import apps in an organization |
| `get-export-unsubscribe-settings` | `posthog.getExportUnsubscribeSettings()` | `--organization-id` | 0 | Retrieves export unsubscribe configurations for pipeline transformations in an organization |
| `get-external-data-source` | `posthog.getExternalDataSource()` | `--id` `--project-id` | 0 | Retrieve details of a specific external data source by its UUID and project ID |
| `get-external-data-sources` | `posthog.getExternalDataSources()` | `--project-id` | 3 | Retrieve external data sources for a PostHog project with pagination support |
| `get-feature-flag-activity-details` | `posthog.getFeatureFlagActivityDetails()` | `--id` `--project-id` | 0 | Manage feature flags (creation, reading, updating, and deleting) using PostHog's guides or via JavaScript Library/endpoint for user-specific flag status.… |
| `get-feature-flag-details` | `posthog.getFeatureFlagDetails()` | `--id` `--project-id` | 0 | Retrieve detailed information about a specific feature flag in a PostHog project |
| `get-feature-flag-role-access-details` | `posthog.getFeatureFlagRoleAccessDetails()` | `--feature-flag-id` `--id` `--project-id` | 0 | Retrieve details for a specific role's access to a feature flag within a project |
| `get-feature-flag-status` | `posthog.getFeatureFlagStatus()` | `--id` `--project-id` | 0 | Retrieve the status of a specific feature flag in a PostHog project |
| `get-feature-flags-activity-log` | `posthog.getFeatureFlagsActivityLog()` | `--project-id` | 0 | Learn to manage feature flags by creating, reading, updating, and deleting them |
| `get-feature-flags-dependent-flags` | `posthog.getFeatureFlagsDependentFlags()` | `--id` `--project-id` | 0 | Retrieve all active feature flags that depend on a specified flag |
| `get-feature-flags-evaluation-reasons` | `posthog.getFeatureFlagsEvaluationReasons()` | `--distinct-id` `--project-id` | 0 | Manage feature flags (create, read, update, delete) using the PostHog JavaScript Library or endpoint for user-specific flag status |
| `get-feature-flags-matching-ids` | `posthog.getFeatureFlagsMatchingIds()` | `--project-id` | 0 | Get IDs of all feature flags matching the current filters |
| `get-file-system` | `posthog.getFileSystem()` | `--id` `--project-id` | 0 | Retrieve a specific file system resource by UUID and project ID |
| `get-file-system-shortcut` | `posthog.getFileSystemShortcut()` | `--id` `--project-id` | 0 | Retrieve a specific file system shortcut by UUID from a project |
| `get-filtered-project-property-definitions` | `posthog.getFilteredProjectPropertyDefinitions()` | `--project-id` | 11 | Get property definitions for a project using project_id, with filters for event names, property types, exclusions, and numerical or feature flags |
| `get-funnel-insights-in-project` | `posthog.getFunnelInsightsInProject()` | `--project-id` | 8 | Execute a funnel analysis for a specific project |
| `get-group-property-definitions` | `posthog.getGroupPropertyDefinitions()` | `--project-id` | 2 | Retrieve property definitions for a group within a project by providing the project ID |
| `get-group-property-values` | `posthog.getGroupPropertyValues()` | `--group-type-index` `--key` `--project-id` | 0 | Retrieve property values by 'group_type_index' and 'key' within a 'project_id' |
| `get-groups-types-metric-by-id` | `posthog.getGroupsTypesMetricById()` | `--group-type-index` `--id` `--project-id` | 0 | Retrieve detailed information about a specific group usage metric by its ID |
| `get-groups-types-metrics` | `posthog.getGroupsTypesMetrics()` | `--group-type-index` `--project-id` | 2 | Retrieve metrics for a specific group type in a PostHog project |
| `get-hedgehog-configuration` | `posthog.getHedgehogConfiguration()` | `--uuid` | 0 | Retrieve user's hedgehog configuration details by their UUID |
| `get-historical-app-metrics-export` | `posthog.getHistoricalAppMetricsExport()` | `--plugin-config-id` `--project-id` | 0 | Retrieve historical export data for app metrics by supplying the `project_id` and `plugin_config_id` |
| `get-hog-function` | `posthog.getHogFunction()` | `--id` `--project-id` | 0 | Retrieve a specific hog function by UUID and project ID |
| `get-hog-functions` | `posthog.getHogFunctions()` | `--project-id` | 9 | Retrieve hog functions for a specific PostHog project |
| `get-important-project-activity-log` | `posthog.getImportantProjectActivityLog()` | `--project-id` | 0 | Retrieve a log of important activities and changes for a specified project |
| `get-insight-sharing-configurations` | `posthog.getInsightSharingConfigurations()` | `--insight-id` `--project-id` | 0 | Retrieve sharing configurations for a specific insight within a project, requiring project and insight IDs |
| `get-insight-threshold` | `posthog.getInsightThreshold()` | `--id` `--insight-id` `--project-id` | 0 | Retrieve a specific insight threshold by ID for a PostHog project |
| `get-insight-variable` | `posthog.getInsightVariable()` | `--id` `--project-id` | 0 | Retrieve a specific insight variable by UUID and project ID |
| `get-insight-variables` | `posthog.getInsightVariables()` | `--project-id` | 1 | Retrieve paginated list of insight variables for a project |
| `get-insights-thresholds` | `posthog.getInsightsThresholds()` | `--insight-id` `--project-id` | 2 | Retrieve thresholds configured for a specific insight within a project |
| `get-live-debugger-breakpoint` | `posthog.getLiveDebuggerBreakpoint()` | `--id` `--project-id` | 0 | Retrieve a specific live debugger breakpoint by UUID and project ID |
| `get-live-debugger-breakpoints` | `posthog.getLiveDebuggerBreakpoints()` | `--project-id` | 4 | Retrieve live debugger breakpoints for a project |
| `get-llm-analytics-evaluation-config` | `posthog.getLlmAnalyticsEvaluationConfig()` | `--project-id` | 0 | Retrieve the LLM analytics evaluation configuration for a specific PostHog project |
| `get-llm-analytics-models` | `posthog.getLlmAnalyticsModels()` | `--project-id` `--provider` | 0 | List available LLM models for a specific provider in PostHog LLM Analytics |
| `get-llm-analytics-provider-keys` | `posthog.getLlmAnalyticsProviderKeys()` | `--project-id` | 2 | Retrieve LLM analytics provider keys for a project |
| `get-logs-attributes` | `posthog.getLogsAttributes()` | `--project-id` | 0 | Retrieve available log attributes for a PostHog project |
| `get-logs-has-logs` | `posthog.getLogsHasLogs()` | `--project-id` | 0 | Check if a project has logs available |
| `get-logs-values` | `posthog.getLogsValues()` | `--key` `--project-id` | 0 | Retrieve unique values for a specific log field key in a PostHog project |
| `get-organization` | `posthog.getOrganization()` | `--id` | 0 | Retrieve organization details by UUID |
| `get-organization-pipeline-app-repositories` | `posthog.getOrganizationPipelineAppRepositories()` | `--organization-id` | 0 | Retrieve details of pipeline import app repositories for a specific organization by its UUID |
| `get-persisted-folder` | `posthog.getPersistedFolder()` | `--project-id` | 2 | List persisted folders for a PostHog project with pagination support |
| `get-pipeline-destination-details` | `posthog.getPipelineDestinationDetails()` | `--id` `--project-id` | 0 | Retrieve activity logs and metadata for a specific pipeline destination configuration |
| `get-pipeline-transformation-details` | `posthog.getPipelineTransformationDetails()` | `--organization-id` | 0 | Retrieve available pipeline transformation plugins from the organization's plugin repository |
| `get-product-tour` | `posthog.getProductTour()` | `--id` `--project-id` | 0 | Retrieve a specific product tour by UUID from a PostHog project |
| `get-project-person-trends` | `posthog.getProjectPersonTrends()` | `--project-id` | 1 | This endpoint is for reading and deleting persons |
| `get-project-survey-activity-log` | `posthog.getProjectSurveyActivityLog()` | `--project-id` | 0 | Retrieve the activity log of surveys within a specific project by using the project ID |
| `get-role-membership` | `posthog.getRoleMembership()` | `--id` `--organization-id` `--role-id` | 0 | Retrieve details of a specific role membership within an organization by its UUID |
| `get-session-group-summaries` | `posthog.getSessionGroupSummaries()` | `--project-id` | 2 | Retrieve stored group session summaries for a project |
| `get-session-recording-playlist-details` | `posthog.getSessionRecordingPlaylistDetails()` | `--project-id` `--short-id` | 0 | Retrieve session recording playlist details for a specific project by project_id and playlist short_id |
| `get-survey-response-statistics` | `posthog.getSurveyResponseStatistics()` | `--id` `--project-id` | 3 | Get survey response statistics for a specific survey |
| `get-surveys-archived-response-uuids` | `posthog.getSurveysArchivedResponseUuids()` | `--id` `--project-id` | 0 | Get list of archived response UUIDs for HogQL filtering |
| `get-surveys-stats` | `posthog.getSurveysStats()` | `--project-id` | 2 | Get aggregated response statistics across all surveys for a project |
| `get-unused-org-pipeline-frontend-apps` | `posthog.getUnusedOrgPipelineFrontendApps()` | `--organization-id` | 0 | Retrieve a list of pipeline frontend apps that are available but not currently in use within a specific organization |
| `get-user-home-settings` | `posthog.getUserHomeSettings()` | `--uuid` | 0 | Retrieve user home settings including homepage and tab configurations |
| `get-user-interviews` | `posthog.getUserInterviews()` | `--project-id` | 2 | Retrieve paginated list of user interviews for a specific project |
| `get-warehouse-saved-queries-activity` | `posthog.getWarehouseSavedQueriesActivity()` | `--id` `--project-id` | 0 | Retrieve activity details for a specific warehouse saved query in PostHog |
| `get-warehouse-saved-query` | `posthog.getWarehouseSavedQuery()` | `--id` `--project-id` | 0 | Retrieve a warehouse saved query from PostHog data warehouse |
| `get-warehouse-table` | `posthog.getWarehouseTable()` | `--id` `--project-id` | 0 | Retrieve details of a specific data warehouse table by its UUID |
| `get-warehouse-tables` | `posthog.getWarehouseTables()` | `--project-id` | 3 | Retrieve a paginated list of warehouse tables for a specific project |
| `get-web-experiment` | `posthog.getWebExperiment()` | `--id` `--project-id` | 0 | Retrieve a specific web experiment by ID from a PostHog project |
| `get-web-vitals` | `posthog.getWebVitals()` | `--pathname` `--project-id` | 0 | Retrieve web vitals metrics for a specific pathname in a PostHog project |
| `initiate-domain-verification-with-saml-config` | `posthog.initiateDomainVerificationWithSamlConfig()` | `--id` `--organization-id` | 10 | Initiates domain verification for SAML SSO authentication |
| `list-alerts` | `posthog.listAlerts()` | `--project-id` | 2 | Retrieve all alerts configured for a specific PostHog project |
| `list-all-projects-across-organizations` | `posthog.listAllProjectsAcrossOrganizations()` | — | 0 | List all projects the authenticated user can access by enumerating organizations and aggregating each organization's projects |
| `list-and-filter-project-events` | `posthog.listAndFilterProjectEvents()` | `--project-id` | 11 | This endpoint for listing/filtering events is deprecated and maintained only for compatibility |
| `list-and-manage-project-annotations` | `posthog.listAndManageProjectAnnotations()` | `--project-id` | 3 | Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations |
| `list-and-manage-project-feature-flags` | `posthog.listAndManageProjectFeatureFlags()` | `--project-id` | 2 | List all feature flags for a specific project with pagination support |
| `list-batch-export-runs` | `posthog.listBatchExportRuns()` | `--batch-export-id` `--project-id` | 2 | List runs for a batch export by `batch_export_id` within a project |
| `list-conversations-tickets` | `posthog.listConversationsTickets()` | `--project-id` | 2 | List tickets with person data attached for a project |
| `list-dashboard-sharing-configs` | `posthog.listDashboardSharingConfigs()` | `--dashboard-id` `--project-id` | 0 | Retrieve a list of dashboard sharing configurations for a specified project and dashboard |
| `list-endpoint-versions` | `posthog.listEndpointVersions()` | `--name` `--project-id` | 2 | List all versions for a specific endpoint in PostHog |
| `list-endpoints` | `posthog.listEndpoints()` | `--project-id` | 2 | List all endpoints for the team |
| `list-error-tracking-autocapture-controls` | `posthog.listErrorTrackingAutocaptureControls()` | `--project-id` | 2 | List error tracking autocapture controls for a PostHog project |
| `list-experiment-saved-metrics` | `posthog.listExperimentSavedMetrics()` | `--project-id` | 2 | List experiment saved metrics for a project with pagination support |
| `list-feature-flag-role-access-details` | `posthog.listFeatureFlagRoleAccessDetails()` | `--feature-flag-id` `--project-id` | 2 | This GET endpoint returns role access details for a feature flag in a project, needs 'project_id' & 'feature_flag_id', and offers optional 'limit' & 'offset' for pagination |
| `list-file-system` | `posthog.listFileSystem()` | `--project-id` | 3 | List file system resources for a PostHog project with pagination support |
| `list-groups-by-type` | `posthog.listGroupsByType()` | `--group-type-index` `--project-id` `--search` | 1 | List all groups of a specific group type |
| `list-live-debugger-breakpoint-hits` | `posthog.listLiveDebuggerBreakpointHits()` | `--project-id` | 3 | Retrieve breakpoint hit events from ClickHouse with optional filtering and pagination |
| `list-live-debugger-breakpoints-active` | `posthog.listLiveDebuggerBreakpointsActive()` | `--project-id` | 3 | Fetch active live debugger breakpoints for external client applications using Project API key |
| `list-notebooks` | `posthog.listNotebooks()` | `--project-id` | 7 | The API for interacting with Notebooks |
| `list-or-delete-persons-with-optional-filters` | `posthog.listOrDeletePersonsWithOptionalFilters()` | `--project-id` | 7 | This endpoint is for reading/deleting persons |
| `list-organization-batch-exports` | `posthog.listOrganizationBatchExports()` | `--organization-id` | 2 | Retrieve paginated batch exports for an organization, with filters and optional limits |
| `list-organization-domains` | `posthog.listOrganizationDomains()` | `--organization-id` | 2 | Fetch a list of an organization's domains with pagination using `limit` and `offset` |
| `list-organization-integrations` | `posthog.listOrganizationIntegrations()` | `--organization-id` | 2 | List organization-level integrations with read-only access |
| `list-organization-invites` | `posthog.listOrganizationInvites()` | `--organization-id` | 2 | Retrieve a paginated list of all pending and active invites for an organization |
| `list-organization-members` | `posthog.listOrganizationMembers()` | `--organization-id` | 2 | List all members of a specific organization with pagination support |
| `list-organization-pipeline-destinations` | `posthog.listOrganizationPipelineDestinations()` | `--organization-id` | 2 | Retrieve a paginated list of an organization's pipeline destinations by ID, with optional count and offset parameters |
| `list-organization-pipeline-frontend-apps` | `posthog.listOrganizationPipelineFrontendApps()` | `--organization-id` | 2 | Retrieve a paginated list of available pipeline frontend apps for a specific organization |
| `list-organization-pipeline-import-apps` | `posthog.listOrganizationPipelineImportApps()` | `--organization-id` | 2 | Retrieve a paginated list of pipeline import applications for a specified organization by ID |
| `list-organization-pipeline-transformations` | `posthog.listOrganizationPipelineTransformations()` | `--organization-id` | 2 | Retrieve paginated pipeline transformation lists for an organization using `limit` and `offset`, requiring a UUID and PersonalAPIKeyAuth |
| `list-organization-plugins` | `posthog.listOrganizationPlugins()` | `--organization-id` | 2 | Retrieve the list of plugins for a specified organization |
| `list-organization-projects` ·common | `posthog.listOrganizationProjects()` | `--organization-id` | 2 | Projects for the current organization |
| `list-organization-proxy-records` | `posthog.listOrganizationProxyRecords()` | `--organization-id` | 2 | Retrieve a paginated list of custom domain proxy records for an organization |
| `list-organization-roles` | `posthog.listOrganizationRoles()` | `--organization-id` | 2 | List all roles in an organization with pagination support |
| `list-pipeline-destination-configs` | `posthog.listPipelineDestinationConfigs()` | `--project-id` | 2 | List pipeline destination configurations for a given project by ID, with optional pagination through 'limit' and 'offset' query parameters |
| `list-pipeline-frontend-app-configs` | `posthog.listPipelineFrontendAppConfigs()` | `--project-id` | 2 | List all pipeline frontend app configurations for a project |
| `list-product-tours` | `posthog.listProductTours()` | `--project-id` | 3 | Retrieve a paginated list of product tours for a specific project |
| `list-project-actions` | `posthog.listProjectActions()` | `--project-id` | 3 | Get paginated project actions with filters by format |
| `list-project-batch-exports` | `posthog.listProjectBatchExports()` | `--project-id` | 2 | Retrieve an indexed list of batch exports for a specified project with optional pagination |
| `list-project-configuration-plugin-logs` | `posthog.listProjectConfigurationPluginLogs()` | `--plugin-config-id` `--project-id` | 2 | Retrieve logs for a specific plugin configuration within a project |
| `list-project-dashboard-collaborators` | `posthog.listProjectDashboardCollaborators()` | `--dashboard-id` `--project-id` | 0 | Retrieve the list of collaborators for a specific dashboard within a project |
| `list-project-dashboard-templates` | `posthog.listProjectDashboardTemplates()` | `--project-id` | 2 | Retrieve available dashboard templates for a PostHog project |
| `list-project-dashboards` | `posthog.listProjectDashboards()` | `--project-id` | 2 | Get paginated dashboards for a project by ID, using 'limit' and 'offset' |
| `list-project-early-access-features` | `posthog.listProjectEarlyAccessFeatures()` | `--project-id` | 2 | Retrieve a paginated list of a project's early access features by ID with 'limit' and 'offset' parameters |
| `list-project-experiments` | `posthog.listProjectExperiments()` | `--project-id` | 2 | Get a paginated list of experiments within a project using 'limit' and 'offset' parameters |
| `list-project-export-items` | `posthog.listProjectExportItems()` | `--project-id` | 2 | Retrieve a paginated list of export items for a specific project by ID with optional 'limit' and 'offset' query parameters |
| `list-project-group-types` ·common | `posthog.listProjectGroupTypes()` | `--project-id` | 0 | List all group types configured for a PostHog project |
| `list-project-membership-details` | `posthog.listProjectMembershipDetails()` | `--project-id` | 0 | Retrieve a list of project membership details for a specified project by ID |
| `list-project-pipeline-configurations` | `posthog.listProjectPipelineConfigurations()` | `--project-id` | 2 | List all pipeline transformation configurations for a specific project |
| `list-project-pipeline-import-configs` | `posthog.listProjectPipelineImportConfigs()` | `--project-id` | 2 | List pipeline import app configurations for a specified project, with pagination options 'limit' and 'offset' |
| `list-project-plugin-configurations` | `posthog.listProjectPluginConfigurations()` | `--project-id` | 2 | List all plugin configurations for a specific project |
| `list-project-session-recordings` | `posthog.listProjectSessionRecordings()` | `--project-id` | 2 | Retrieve a paginated list of session recordings for a specific project, including viewing times and user interactions |
| `list-project-subscriptions` | `posthog.listProjectSubscriptions()` | `--project-id` | 2 | Retrieve a paginated list of subscriptions for a given project by its ID |
| `list-project-surveys` | `posthog.listProjectSurveys()` | `--project-id` | 2 | Get paginated surveys for a project with its ID, using 'limit' and 'offset' |
| `list-role-memberships` | `posthog.listRoleMemberships()` | `--organization-id` `--role-id` | 2 | List all users assigned to a specific role within an organization |
| `list-session-recording-playlists` | `posthog.listSessionRecordingPlaylists()` | `--project-id` | 4 | List all session recording playlists for a PostHog project, including both user-created playlists and system-generated synthetic playlists (like "Watch history", "Recordings with comments", etc.) |
| `list-session-recording-sharing-configs` | `posthog.listSessionRecordingSharingConfigs()` | `--project-id` `--recording-id` | 0 | Retrieve a list of sharing configurations for a specific session recording in a project, including creation timestamps and access tokens |
| `list-unused-organization-pipeline-transformations` | `posthog.listUnusedOrganizationPipelineTransformations()` | `--organization-id` | 0 | Retrieve a list of unused pipeline transformations for a specified organization, identified by UUID |
| `list-users-with-staff-filter-and-pagination` | `posthog.listUsersWithStaffFilterAndPagination()` | — | 3 | API endpoint fetches a user list with staff filter, pagination (limit, offset), and requires a personal API key |
| `list-warehouse-saved-queries` | `posthog.listWarehouseSavedQueries()` | `--project-id` | 2 | Retrieve warehouse saved queries for a project |
| `list-web-experiments` | `posthog.listWebExperiments()` | `--project-id` | 2 | Retrieve a paginated list of web experiments for a specific project |
| `manage-feature-flag-enrichment-for-usage-dashboard` | `posthog.manageFeatureFlagEnrichmentForUsageDashboard()` | `--id` `--project-id` | 19 | Learn to manage feature flags (creation, access, modification, removal) using PostHog's docs, with options to use a JavaScript Library or a dedicated endpoint for user-specific flag status |
| `manage-project-annotations` | `posthog.manageProjectAnnotations()` | `--created-at` `--dashboard-id` `--dashboard-name` `--id` `--insight-derived-name` `--insight-name` `--insight-short-id` `--project-id` `--updated-at` | 6 | Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations |
| `manage-project-feature-flags-for-local-evaluation` | `posthog.manageProjectFeatureFlagsForLocalEvaluation()` | `--project-id` | 0 | Retrieve all feature flag definitions for a project to enable local evaluation |
| `mark-dashboard-template-as-deleted` | `posthog.markDashboardTemplateAsDeleted()` | `--id` `--project-id` | 0 | Hard delete of this model is not allowed |
| `mark-insight-as-viewed-with-configurable-format` | `posthog.markInsightAsViewedWithConfigurableFormat()` | `--insight-ids` `--project-id` | 1 | Marks one or more insights as viewed by the current user for a specified project |
| `mark-insights-as-viewed` | `posthog.markInsightsAsViewed()` | `--insight-ids` `--project-id` | 1 | Record insights as viewed by updating their last_viewed_at timestamps |
| `mark-notebook-as-deleted` | `posthog.markNotebookAsDeleted()` | `--project-id` `--short-id` | 0 | Hard delete of this model is not allowed |
| `move-dashboard-tile` | `posthog.moveDashboardTile()` | `--id` `--project-id` `--tile` `--toDashboard` | 0 | Endpoint to move a tile from one dashboard to another |
| `patch-alert` | `posthog.patchAlert()` | `--id` `--project-id` | 10 | Update an existing alert configuration in PostHog |
| `patch-batch-export` | `posthog.patchBatchExport()` | `--id` `--project-id` | 12 | Update an existing batch export configuration in PostHog by partially modifying fields like name, paused status, destination, or schedule |
| `patch-complete-product-onboarding` | `posthog.patchCompleteProductOnboarding()` | `--id` `--organization-id` `--product-type` | 0 | Mark a specific product onboarding as complete for a PostHog project |
| `patch-customer-profile-config` | `posthog.patchCustomerProfileConfig()` | `--id` `--project-id` | 3 | Update a customer profile configuration by partially modifying fields like content, scope, or sidebar |
| `patch-dataset` | `posthog.patchDataset()` | `--id` `--project-id` | 3 | Partially update a dataset in a PostHog project |
| `patch-dataset-item` | `posthog.patchDatasetItem()` | `--id` `--project-id` | 7 | Partially update a dataset item by its ID in a PostHog project |
| `patch-endpoint` | `posthog.patchEndpoint()` | `--name` `--project-id` | 6 | Partially update an endpoint for a project |
| `patch-error-tracking-autocapture-controls` | `posthog.patchErrorTrackingAutocaptureControls()` | `--id` `--project-id` | 7 | Partially update an error tracking autocapture control configuration |
| `patch-evaluation` | `posthog.patchEvaluation()` | `--id` `--project-id` | 10 | Update an evaluation by patching specific fields |
| `patch-experiment` | `posthog.patchExperiment()` | `--id` `--project-id` | 12 | Endpoint enables partial updates to an experiment in a project using PATCH, needing `project_id`, `experiment_id`, and various payload types |
| `patch-experiment-saved-metric` | `posthog.patchExperimentSavedMetric()` | `--id` `--project-id` | 4 | Partially update an experiment saved metric by ID in a PostHog project |
| `patch-external-data-source` | `posthog.patchExternalDataSource()` | `--id` `--project-id` | 5 | Update an external data source in PostHog by patching specific fields like description or configuration |
| `patch-file-system` | `posthog.patchFileSystem()` | `--id` `--project-id` | 9 | Partially update a file system resource by UUID and project ID |
| `patch-file-system-shortcut` | `posthog.patchFileSystemShortcut()` | `--id` `--project-id` | 4 | Partially update a file system shortcut in PostHog by its UUID |
| `patch-groups-types-metrics` | `posthog.patchGroupsTypesMetrics()` | `--group-type-index` `--id` `--project-id` | 5 | Update a group usage metric configuration in PostHog |
| `patch-hog-function` | `posthog.patchHogFunction()` | `--id` `--project-id` | 15 | Partially update a hog function by UUID and project ID |
| `patch-insight-variable` | `posthog.patchInsightVariable()` | `--id` `--project-id` | 5 | Update an insight variable by partially modifying its properties (name, type, default value, etc.) |
| `patch-live-debugger-breakpoint` | `posthog.patchLiveDebuggerBreakpoint()` | `--id` `--project-id` | 5 | Update a live debugger breakpoint by UUID and project ID |
| `patch-organization-domain` | `posthog.patchOrganizationDomain()` | `--id` `--organization-id` | 6 | Updates selected properties of a domain in an organization via PATCH request, supports various data formats but SAML fields are immutable |
| `patch-organization-role` | `posthog.patchOrganizationRole()` | `--id` `--organization-id` | 4 | PATCH /api/organizations/{organization_id}/roles/{id}/: Update partial details of a role by ID within an organization, including name and feature flag access level |
| `patch-persisted-folder` | `posthog.patchPersistedFolder()` | `--id` `--project-id` | 3 | Partially update a persisted folder by ID for a PostHog project |
| `patch-person` | `posthog.patchPerson()` | `--id` `--project-id` | 6 | This endpoint allows reading and deleting individuals |
| `patch-product-tour` | `posthog.patchProductTour()` | `--id` `--project-id` | 10 | Partially update a product tour in PostHog |
| `patch-project-action` | `posthog.patchProjectAction()` | `--id` `--project-id` | 14 | Update an action within a project with a specified ID |
| `patch-project-annotation` | `posthog.patchProjectAnnotation()` | `--id` `--project-id` | 13 | Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations |
| `patch-project-cohort` | `posthog.patchProjectCohort()` | `--id` `--project-id` | 13 | Update partial cohort details for a specific project |
| `patch-project-dashboard` | `posthog.patchProjectDashboard()` | `--id` `--project-id` | 12 | Endpoint PATCH /api/projects/{project_id}/dashboards/{id}: Allows partial update of a project's dashboard with specified ID |
| `patch-project-feature-flag` | `posthog.patchProjectFeatureFlag()` | `--id` `--project-id` | 19 | Learn to manage feature flags (create, read, update, delete) using PostHog's docs, with options for JavaScript Library use or dedicated endpoints for user flag status |
| `patch-project-insight` | `posthog.patchProjectInsight()` | `--id` `--project-id` | 28 | The PATCH endpoint supports partial insight updates in a project, allows format specification (CSV/JSON), and requires `PersonalAPIKeyAuth` and `insight:write` scope for access |
| `patch-project-member` | `posthog.patchProjectMember()` | `--parent--membership--user--uuid` `--project-id` | 7 | Update a project member's role using their UUID in a specific project |
| `patch-project-notebook` | `posthog.patchProjectNotebook()` | `--project-id` `--short-id` | 8 | The API for interacting with Notebooks |
| `patch-project-property-definition` | `posthog.patchProjectPropertyDefinition()` | `--id` `--project-id` | 2 | PATCH /api/projects/{project_id}/property_definitions/{id}/: Partially update a specific property definition by UUID in a project |
| `patch-project-subscription` | `posthog.patchProjectSubscription()` | `--id` `--project-id` | 17 | PATCH /api/projects/{project_id}/subscriptions/{id}/: Update partial details of a specific project subscription by ID |
| `patch-project-survey` | `posthog.patchProjectSurvey()` | `--id` `--project-id` | 20 | Update partial survey details by PATCH to /api/projects/{project_id}/surveys/{id}/ with UUID |
| `patch-session-recording-playlist` | `posthog.patchSessionRecordingPlaylist()` | `--project-id` `--short-id` | 9 | Update session recording playlists using PATCH on the endpoint with `project_id` and `short_id` |
| `patch-user` | `posthog.patchUser()` | `--uuid` | 12 | Update user profile settings in PostHog |
| `patch-warehouse-saved-query` | `posthog.patchWarehouseSavedQuery()` | `--id` `--project-id` | 9 | Partially update a warehouse saved query in PostHog |
| `patch-warehouse-tables` | `posthog.patchWarehouseTables()` | `--id` `--project-id` | 6 | Partially update a warehouse table by patching specific fields like name, format, or schema |
| `patch-web-experiment` | `posthog.patchWebExperiment()` | `--id` `--project-id` | 3 | Partially update a web experiment in PostHog |
| `pause-batch-export` | `posthog.pauseBatchExport()` | `--id` `--project-id` | 0 | Pause a batch export in PostHog to temporarily stop scheduled data exports |
| `pause-organization-batch-export` | `posthog.pauseOrganizationBatchExport()` | `--id` `--organization-id` | 0 | Pause an organization-level batch export in PostHog |
| `project-funnel-advanced-analytics` | `posthog.projectFunnelAdvancedAnalytics()` | `--project-id` | 17 | Create comprehensive funnel analysis for a PostHog project with advanced configuration options |
| `project-trend-analytics` | `posthog.projectTrendAnalytics()` | `--project-id` | 10 | The `/api/projects/{project_id}/insights/trend/` endpoint provides project trends in CSV/JSON, requires `project_id` and optional parameters, and needs 'PersonalAPIKeyAuth' |
| `rearrange-frontend-app-pipeline-configs` | `posthog.rearrangeFrontendAppPipelineConfigs()` | `--project-id` | 15 | Rearrange (reorder) the configuration of frontend apps in a project's data pipeline |
| `rearrange-pipeline-transformation-configs` | `posthog.rearrangePipelineTransformationConfigs()` | `--project-id` | 15 | Rearrange the execution order of pipeline transformation configurations for a project |
| `rearrange-project-import-app-configurations` | `posthog.rearrangeProjectImportAppConfigurations()` | `--project-id` | 15 | Rearrange app import settings in a project using PATCH /api/projects/{project_id}/... by updating plug-in order and status |
| `rearrange-project-pipeline-destination-configs` | `posthog.rearrangeProjectPipelineDestinationConfigs()` | `--project-id` | 15 | Rearrange the execution order of pipeline destination configurations for a project |
| `recalculate-experiment-timeseries` | `posthog.recalculateExperimentTimeseries()` | `--fingerprint` `--id` `--metric` `--project-id` | 0 | Create a recalculation request for experiment timeseries data |
| `reconfigure-plugin-order-and-status-in-project` | `posthog.reconfigurePluginOrderAndStatusInProject()` | `--project-id` | 15 | Reconfigure the execution order and status of plugin configurations within a project |
| `replace-desktop-recording` | `posthog.replaceDesktopRecording()` | `--created-by` `--id` `--platform` `--project-id` `--sdk-upload-id` `--team` `--transcript-text` | 17 | Replace a desktop meeting recording in PostHog using PUT |
| `reset-person-distinct-id` | `posthog.resetPersonDistinctId()` | `--distinct-id` `--project-id` | 1 | Reset a distinct_id for a deleted person |
| `retrieve-async-query-status-by-id` | `posthog.retrieveAsyncQueryStatusById()` | `--id` `--project-id` | 0 | (Experimental) |
| `retrieve-last-viewed-insights-for-user` | `posthog.retrieveLastViewedInsightsForUser()` | `--project-id` | 1 | Returns basic details about the last 5 insights viewed by this user |
| `retrieve-matching-events-for-session-recording` | `posthog.retrieveMatchingEventsForSessionRecording()` | `--project-id` | 0 | Retrieves event IDs matching a filter with one session ID and at least one event/action criterion |
| `retrieve-notebook-activity-for-project` | `posthog.retrieveNotebookActivityForProject()` | `--project-id` | 0 | The API for interacting with Notebooks |
| `retrieve-notebook-activity-log` | `posthog.retrieveNotebookActivityLog()` | `--project-id` `--short-id` | 0 | The API for interacting with Notebooks |
| `retrieve-notebook-details` | `posthog.retrieveNotebookDetails()` | `--project-id` `--short-id` | 0 | The API for interacting with Notebooks |
| `retrieve-or-delete-person-retention-data` | `posthog.retrieveOrDeletePersonRetentionData()` | `--project-id` | 1 | This endpoint is for reading and deleting person data; use the capture API, `$set`/`$unset` properties, or SDKs for creation and updates |
| `retrieve-or-delete-project-persons-funnel-data` | `posthog.retrieveOrDeleteProjectPersonsFunnelData()` | `--project-id` | 1 | Retrieves persons who entered or progressed through a funnel in the specified project |
| `retrieve-organization-pipeline-frontend-app` | `posthog.retrieveOrganizationPipelineFrontendApp()` | `--organization-id` | 0 | Retrieve pipeline frontend app details for an organization using its 'organization_id' (UUID) |
| `retrieve-organization-pipeline-repository-details` | `posthog.retrieveOrganizationPipelineRepositoryDetails()` | `--organization-id` | 0 | Retrieve details for repository pipeline destinations within a specific organization by its UUID |
| `retrieve-organization-pipeline-transformation-activi` | `posthog.retrieveOrganizationPipelineTransformationActivi()` | `--organization-id` | 0 | Retrieve org pipeline transformation activity |
| `retrieve-organization-pipeline-unsubscribe-configs` | `posthog.retrieveOrganizationPipelineUnsubscribeConfigs()` | `--organization-id` | 0 | Retrieve export unsubscribe configurations for an organization's pipeline frontend apps |
| `retrieve-organization-plugin-activity` | `posthog.retrieveOrganizationPluginActivity()` | `--organization-id` | 0 | Retrieve activity details for plugins in a specified organization by ID |
| `retrieve-organization-plugin-details` | `posthog.retrieveOrganizationPluginDetails()` | `--id` `--organization-id` | 0 | Retrieve a specific plugin's details for an organization |
| `retrieve-organization-plugin-repository-details` | `posthog.retrieveOrganizationPluginRepositoryDetails()` | `--organization-id` | 0 | Retrieve plugin repository details for a specific organization by its UUID, including plugin type, name, URL, and more |
| `retrieve-organization-plugin-unsubscribe-configs` | `posthog.retrieveOrganizationPluginUnsubscribeConfigs()` | `--organization-id` | 0 | Retrieve export unsubscribe configurations for plugins in an organization |
| `retrieve-organization-project-details` | `posthog.retrieveOrganizationProjectDetails()` | `--id` `--organization-id` | 0 | Projects for the current organization |
| `retrieve-organization-role-details` | `posthog.retrieveOrganizationRoleDetails()` | `--id` `--organization-id` | 0 | Retrieve the details of a specific role within an organization using its UUID |
| `retrieve-organization-unused-pipeline-apps` | `posthog.retrieveOrganizationUnusedPipelineApps()` | `--organization-id` | 0 | Retrieve unused pipeline import apps for a specified organization |
| `retrieve-paginated-organization-list` | `posthog.retrievePaginatedOrganizationList()` | — | 2 | Retrieve a paginated list of organizations with optional 'limit' and 'offset' query parameters |
| `retrieve-persisted-folder` | `posthog.retrievePersistedFolder()` | `--id` `--project-id` | 0 | Retrieve a specific persisted folder by its UUID and project ID |
| `retrieve-person-activity-and-delete-options` | `posthog.retrievePersonActivityAndDeleteOptions()` | `--id` `--project-id` | 1 | This endpoint is for reading and deleting persons; for creating/updating, use the capture API, `$set`/`$unset` properties, or SDKs |
| `retrieve-person-details-by-id` | `posthog.retrievePersonDetailsById()` | `--id` `--project-id` | 1 | This endpoint is used to read and delete persons |
| `retrieve-person-values-by-project` | `posthog.retrievePersonValuesByProject()` | `--key` `--project-id` | 1 | Retrieve unique values for a specific person property across all persons in a project |
| `retrieve-persons-funnel-correlation-data` | `posthog.retrievePersonsFunnelCorrelationData()` | `--project-id` | 1 | Note: This endpoint path appears to be incorrectly defined or deprecated in the PostHog API |
| `retrieve-pipeline-destination-activity` | `posthog.retrievePipelineDestinationActivity()` | `--organization-id` | 2 | Retrieve activity details for pipeline destinations within an organization |
| `retrieve-pipeline-destination-config-details` | `posthog.retrievePipelineDestinationConfigDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific pipeline destination config for a project by its ID |
| `retrieve-pipeline-destination-details` | `posthog.retrievePipelineDestinationDetails()` | `--id` `--organization-id` | 0 | Fetch a pipeline destination's details by ID and organization UUID, using a PersonalAPIKeyAuth with read access to plugins |
| `retrieve-pipeline-destination-plugin-details` | `posthog.retrievePipelineDestinationPluginDetails()` | `--id` `--organization-id` | 0 | Retrieve details of a specific pipeline destination plugin within an organization by its unique ID |
| `retrieve-pipeline-frontend-app-activity` | `posthog.retrievePipelineFrontendAppActivity()` | `--organization-id` | 0 | Retrieve activity details for pipeline front-end apps within a specified organization by organization ID |
| `retrieve-pipeline-frontend-app-details` | `posthog.retrievePipelineFrontendAppDetails()` | `--id` `--organization-id` | 0 | Retrieve detailed information about a specific pipeline frontend app within an organization |
| `retrieve-pipeline-frontend-app-source-details` | `posthog.retrievePipelineFrontendAppSourceDetails()` | `--id` `--organization-id` | 0 | Retrieve details for a specific pipeline frontend app's source by its ID within an organization |
| `retrieve-pipeline-frontend-plugin-config` | `posthog.retrievePipelineFrontendPluginConfig()` | `--id` `--project-id` | 0 | Retrieve the frontend-specific configuration for a pipeline frontend app by its config ID and project ID |
| `retrieve-pipeline-import-apps-activity` | `posthog.retrievePipelineImportAppsActivity()` | `--organization-id` | 2 | Retrieve activity details of pipeline import apps for a given organization |
| `retrieve-pipeline-plugin-details-by-id` | `posthog.retrievePipelinePluginDetailsById()` | `--id` `--organization-id` | 0 | Retrieve detailed information about a specific pipeline transformation plugin by ID |
| `retrieve-pipeline-plugin-source` | `posthog.retrievePipelinePluginSource()` | `--id` `--organization-id` | 0 | Retrieve the source details of a pipeline transformation for a specific plugin by ID within an organization |
| `retrieve-pipeline-transformation-frontend-config` | `posthog.retrievePipelineTransformationFrontendConfig()` | `--id` `--project-id` | 0 | Retrieve the frontend configuration details for a specific pipeline transformation by ID within a given project |
| `retrieve-plugin-source-details` | `posthog.retrievePluginSourceDetails()` | `--id` `--organization-id` | 0 | Retrieve plugin source details by organization and plugin ID |
| `retrieve-plugin-update-info` | `posthog.retrievePluginUpdateInfo()` | `--id` `--organization-id` | 0 | This endpoint retrieves update information for a specific plugin within an organization's pipeline frontend app by its integer ID and the organization's UUID |
| `retrieve-plugin-update-status` | `posthog.retrievePluginUpdateStatus()` | `--id` `--organization-id` | 0 | Retrieve the latest update status for a specific plugin, identified by its integer ID, within an organization specified by UUID |
| `retrieve-project-action-details-by-id` | `posthog.retrieveProjectActionDetailsById()` | `--id` `--project-id` | 1 | Get details on a project action by ID |
| `retrieve-project-activity-details` | `posthog.retrieveProjectActivityDetails()` | `--project-id` | 0 | Retrieve the activity log for a specified project, showing recent changes and events |
| `retrieve-project-activity-insights` | `posthog.retrieveProjectActivityInsights()` | `--project-id` | 3 | Retrieve the activity log history for insights in a specific project |
| `retrieve-project-activity-log-with-pagination` | `posthog.retrieveProjectActivityLogWithPagination()` | `--project-id` | 1 | Retrieve a project's activity log with cursor-based pagination |
| `retrieve-project-annotation-details` | `posthog.retrieveProjectAnnotationDetails()` | `--id` `--project-id` | 0 | Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations |
| `retrieve-project-cohort-details` | `posthog.retrieveProjectCohortDetails()` | `--id` `--project-id` | 0 | Retrieve detailed information about a specific cohort within a project using its ID |
| `retrieve-project-cohorts-activity-log` | `posthog.retrieveProjectCohortsActivityLog()` | `--project-id` | 0 | Retrieve activity log for a specific project's cohorts |
| `retrieve-project-cohorts-with-pagination` | `posthog.retrieveProjectCohortsWithPagination()` | `--project-id` | 2 | Retrieve a paginated list of cohorts for a specific project using `project_id` |
| `retrieve-project-early-access-feature-details` | `posthog.retrieveProjectEarlyAccessFeatureDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific early access feature in a project by ID |
| `retrieve-project-event-details-by-id` | `posthog.retrieveProjectEventDetailsById()` | `--id` `--project-id` | 1 | Retrieve details for a specific event by ID within a project |
| `retrieve-project-event-values` | `posthog.retrieveProjectEventValues()` | `--key` `--project-id` | 1 | Retrieve event values for a specific project by ID |
| `retrieve-project-experiment-results` | `posthog.retrieveProjectExperimentResults()` | `--fingerprint` `--id` `--metric-uuid` `--project-id` | 0 | Retrieve experiment timeseries results within a project by project and experiment ID |
| `retrieve-project-export-details` | `posthog.retrieveProjectExportDetails()` | `--id` `--project-id` | 0 | Retrieve detailed info on a specific export of a project using its unique ID |
| `retrieve-project-funnel-correlation-insights` | `posthog.retrieveProjectFunnelCorrelationInsights()` | `--project-id` | 10 | Retrieve funnel correlation insights for a specific project |
| `retrieve-project-group-details-by-key-and-type` | `posthog.retrieveProjectGroupDetailsByKeyAndType()` | `--group-key` `--group-type-index` `--project-id` | 0 | Retrieves specified group details within a project by group key and type index |
| `retrieve-project-insight-activity-data` | `posthog.retrieveProjectInsightActivityData()` | `--id` `--project-id` | 3 | Retrieve insights activity for a specific project and insight ID, offering data in JSON or CSV format |
| `retrieve-project-insight-details` | `posthog.retrieveProjectInsightDetails()` | `--id` `--project-id` | 3 | Retrieve details for a specific project insight by ID, with options to format as JSON/CSV, request refresh, and specify dashboard context |
| `retrieve-project-insights-with-pagination` | `posthog.retrieveProjectInsightsWithPagination()` | `--project-id` | 5 | The GET `/api/projects/{project_id}/insights/` endpoint retrieves a paginated list of insights for a specified project |
| `retrieve-project-member-details-by-uuid` | `posthog.retrieveProjectMemberDetailsByUuid()` | `--parent--membership--user--uuid` `--project-id` | 0 | Retrieve detailed information about a specific user's membership level and status within a project by their UUID |
| `retrieve-project-person-activity` | `posthog.retrieveProjectPersonActivity()` | `--project-id` | 3 | This endpoint allows reading and deleting individuals |
| `retrieve-project-session-values` | `posthog.retrieveProjectSessionValues()` | `--key` `--project-id` | 0 | Retrieve session values for a specified project |
| `retrieve-project-subscription-details` | `posthog.retrieveProjectSubscriptionDetails()` | `--id` `--project-id` | 0 | Retrieve a specific subscription for a project, identified by 'project_id' and 'id' |
| `retrieve-project-trend-insights` | `posthog.retrieveProjectTrendInsights()` | `--project-id` | 4 | Retrieves saved trend insights from a PostHog project |
| `retrieve-properties-and-events-association` | `posthog.retrievePropertiesAndEventsAssociation()` | `--event-names` `--project-id` `--property-name` | 0 | Allows a caller to provide a list of event names and a single property name Returns a map of the event names to a boolean representing whether that property has ever been seen with that event_name |
| `retrieve-property-definition-details` | `posthog.retrievePropertyDefinitionDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific property definition by UUID within a project |
| `retrieve-related-project-groups` | `posthog.retrieveRelatedProjectGroups()` | `--group-type-index` `--id` `--project-id` | 0 | Retrieve related groups for a specific project and user |
| `retrieve-retention-insights` ·deprecated | `posthog.retrieveRetentionInsights()` | `--project-id` | 2 | Use POSTHOG_CREATE_RETRIEVE_RETENTION_INSIGHTS_FOR_PROJECT instead |
| `retrieve-session-property-definitions` | `posthog.retrieveSessionPropertyDefinitions()` | `--project-id` | 0 | Retrieve property definitions for a specific project by providing the project's ID |
| `retrieve-session-recording-details` | `posthog.retrieveSessionRecordingDetails()` | `--id` `--project-id` | 0 | Retrieve detailed information about a specific session recording by providing the session's UUID and associated project ID |
| `retrieve-session-recording-error-clusters` | `posthog.retrieveSessionRecordingErrorClusters()` | `--project-id` | 0 | Retrieve error clusters from session recordings for a specified project |
| `retrieve-session-recording-playlist-details` | `posthog.retrieveSessionRecordingPlaylistDetails()` | `--project-id` `--short-id` | 0 | Retrieve the list of session recordings within a playlist |
| `retrieve-session-recording-properties-by-project-id` | `posthog.retrieveSessionRecordingPropertiesByProjectId()` | `--project-id` | 2 | Retrieve properties of session recordings for a given project by ID, including activity metrics, timestamps, and participant details |
| `retrieve-session-recording-snapshots` | `posthog.retrieveSessionRecordingSnapshots()` | `--id` `--project-id` | 0 | Snapshots for a session can be loaded from S3 (if old) or Redis (if recent) |
| `retrieve-specific-batch-export-details` | `posthog.retrieveSpecificBatchExportDetails()` | `--id` `--organization-id` | 0 | Retrieve details of a specific batch export for an organization by its UUID |
| `retrieve-specific-batch-export-run-details` | `posthog.retrieveSpecificBatchExportRunDetails()` | `--batch-export-id` `--id` `--project-id` | 0 | Retrieve details for a specific batch export run within a project by ID |
| `retrieve-specific-domain-details` | `posthog.retrieveSpecificDomainDetails()` | `--id` `--organization-id` | 0 | Retrieve complete details of a specific authentication domain within an organization by its UUID |
| `retrieve-specific-exported-asset-content` | `posthog.retrieveSpecificExportedAssetContent()` | `--id` `--project-id` | 0 | Retrieve the content of a specific exported asset by ID within a project |
| `retrieve-specific-historical-plugin-export` | `posthog.retrieveSpecificHistoricalPluginExport()` | `--id` `--plugin-config-id` `--project-id` | 0 | Retrieve historical export data for a specific plugin configuration within a project |
| `retrieve-specific-pipeline-frontend-app-config` | `posthog.retrieveSpecificPipelineFrontendAppConfig()` | `--id` `--project-id` | 0 | Retrieve the configuration details of a specific pipeline frontend app by providing its unique ID and the associated project ID |
| `retrieve-specific-project-dashboard-details` | `posthog.retrieveSpecificProjectDashboardDetails()` | `--id` `--project-id` | 0 | Retrieve details of a specific dashboard within a project |
| `retrieve-survey-activity-logs` | `posthog.retrieveSurveyActivityLogs()` | `--id` `--project-id` | 2 | Retrieve activity logs for specific survey in a project, identified by UUIDs |
| `retrieve-survey-details-with-uuid-and-project-id` | `posthog.retrieveSurveyDetailsWithUuidAndProjectId()` | `--id` `--project-id` | 0 | Retrieve survey details using survey UUID and associated project ID |
| `retrieve-survey-responses-count-by-project-id` | `posthog.retrieveSurveyResponsesCountByProjectId()` | `--project-id` | 0 | Retrieve the count of survey responses for a specific project by its ID |
| `retrieve-unsubscribed-pipeline-configs` | `posthog.retrieveUnsubscribedPipelineConfigs()` | `--organization-id` | 0 | Retrieve export unsubscribe configurations for an organization's pipeline destinations |
| `retrieve-user-profile-and-team-details` | `posthog.retrieveUserProfileAndTeamDetails()` | `--uuid` | 0 | Fetch user profile info including team, organization, and notifications |
| `retry-batch-export-run` | `posthog.retryBatchExportRun()` | `--batch-export-id` `--id` `--project-id` | 0 | Retry a failed or incomplete batch export run |
| `revoke-organization-invite` | `posthog.revokeOrganizationInvite()` | `--id` `--organization-id` | 0 | Delete an organization invite by its UUID |
| `run-endpoint` | `posthog.runEndpoint()` | `--name` `--project-id` | 7 | Execute a PostHog endpoint with optional materialization and filtering |
| `split-person-entities-in-project` | `posthog.splitPersonEntitiesInProject()` | `--id` `--project-id` | 2 | This endpoint allows reading and deleting persons; for creation or updates, use the capture API, `$set`/`$unset` properties, or SDKs |
| `start-error-tracking-symbol-set-upload` | `posthog.startErrorTrackingSymbolSetUpload()` | `--chunk-id` `--created-at` `--id` `--project-id` `--ref` `--release` `--team-id` | 3 | Initiate symbol set upload session for error tracking in PostHog |
| `start-error-tracking-symbol-sets-bulk-upload` | `posthog.startErrorTrackingSymbolSetsBulkUpload()` | `--created-at` `--id` `--project-id` `--ref` `--release` `--team-id` | 3 | Initiate bulk upload of error tracking symbol sets for a PostHog project |
| `summarize-survey-responses` | `posthog.summarizeSurveyResponses()` | `--id` `--project-id` `--question-index` | 0 | Generate an AI-powered summary of survey responses for a specific question |
| `translate-text` | `posthog.translateText()` | `--project-id` `--target-language` `--text` | 0 | Translate text to a target language using PostHog's LLM analytics translation endpoint |
| `trigger-project-export-with-format-option` | `posthog.triggerProjectExportWithFormatOption()` | `--export-format` `--project-id` | 3 | The `/api/projects/{project_id}/exports/` endpoint triggers a project export, requiring `project_id` and `export_format` |
| `unarchive-survey-response` | `posthog.unarchiveSurveyResponse()` | `--id` `--project-id` `--response-uuid` | 0 | Unarchive a single survey response |
| `unpause-batch-export` | `posthog.unpauseBatchExport()` | `--id` `--project-id` | 0 | Unpause a paused batch export in PostHog |
| `unpause-organization-batch-export` | `posthog.unpauseOrganizationBatchExport()` | `--id` `--organization-id` | 0 | Unpause a paused batch export at the organization level |
| `update-alert` | `posthog.updateAlert()` | `--enabled` `--id` `--insight` `--name` `--project-id` `--subscribed-users` `--threshold` | 5 | Fully update an existing alert configuration in PostHog using PUT method |
| `update-annotation-details` | `posthog.updateAnnotationDetails()` | `--id` `--project-id` | 13 | Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations |
| `update-batch-export` | `posthog.updateBatchExport()` | `--id` `--organization-id` | 13 | Update an existing batch export configuration in PostHog |
| `update-customer-profile-config` | `posthog.updateCustomerProfileConfig()` | `--created-at` `--id` `--project-id` `--scope` | 3 | Update a customer profile configuration by completely replacing it with new data via PUT request |
| `update-dataset` | `posthog.updateDataset()` | `--id` `--project-id` | 2 | Update a dataset in PostHog by its ID and project ID |
| `update-dataset-items` | `posthog.updateDatasetItems()` | `--dataset` `--id` `--project-id` | 7 | Fully update a dataset item by its ID in a PostHog project using PUT method |
| `update-desktop-recording` | `posthog.updateDesktopRecording()` | `--id` `--project-id` | 19 | Update desktop meeting recording details via PATCH |
| `update-early-access-project-feature` | `posthog.updateEarlyAccessProjectFeature()` | `--id` `--project-id` | 5 | This PATCH endpoint updates a specific early access project feature |
| `update-endpoint` | `posthog.updateEndpoint()` | `--name` `--project-id` | 8 | Update an existing endpoint for a PostHog project |
| `update-error-tracking-autocapture-control` | `posthog.updateErrorTrackingAutocaptureControl()` | `--id` `--library` `--project-id` | 6 | Fully update an error tracking autocapture control configuration for a PostHog project |
| `update-evaluation` | `posthog.updateEvaluation()` | `--evaluation-type` `--id` `--name` `--output-type` `--project-id` | 7 | Update an existing evaluation in PostHog using PUT request |
| `update-event-definition` | `posthog.updateEventDefinition()` | `--id` `--name` `--project-id` | 2 | Update an event definition by sending a PUT request to '/api/projects/{project_id}/event_definitions/{id}/' using the UUID and project ID, provided you have 'event_definition:write' authorization |
| `update-experiment` | `posthog.updateExperiment()` | `--feature-flag-key` `--id` `--project-id` | 11 | Update an experiment by sending a PUT request with `project_id` and `id`, including new details as JSON/form data |
| `update-experiment-holdout` | `posthog.updateExperimentHoldout()` | `--id` `--project-id` | 3 | Partially update an experiment holdout in a PostHog project |
| `update-experiment-holdout-complete` | `posthog.updateExperimentHoldoutComplete()` | `--filters` `--id` `--name` `--project-id` | 1 | Fully update an experiment holdout in PostHog using PUT method |
| `update-experiment-saved-metric` | `posthog.updateExperimentSavedMetric()` | `--id` `--name` `--project-id` `--query` | 2 | Update an existing experiment saved metric in PostHog |
| `update-external-data-source` | `posthog.updateExternalDataSource()` | `--account-id` `--client-secret` `--id` `--project-id` | 3 | Update an existing external data source in PostHog (e.g., Stripe, Salesforce) |
| `update-feature-flag` | `posthog.updateFeatureFlag()` | `--id` `--key` `--project-id` | 18 | Manage feature flags for your app with creation, reading, updating, and deletion options |
| `update-file-system` | `posthog.updateFileSystem()` | `--created-at` `--id` `--path` `--project-id` | 7 | Update a file system resource in PostHog by UUID and project ID |
| `update-groups-types-metric` | `posthog.updateGroupsTypesMetric()` | `--filters` `--group-type-index` `--id` `--name` `--project-id` | 3 | Update a specific group usage metric by its ID |
| `update-hog-function` | `posthog.updateHogFunction()` | `--id` `--project-id` | 15 | Update a hog function by UUID and project ID using PUT method |
| `update-insight-variable` | `posthog.updateInsightVariable()` | `--code-name` `--id` `--name` `--project-id` `--type` | 4 | Update an insight variable by replacing all its properties |
| `update-live-debugger-breakpoint` | `posthog.updateLiveDebuggerBreakpoint()` | `--filename` `--id` `--line-number` `--project-id` | 3 | Update a live debugger breakpoint for a project |
| `update-organization` | `posthog.updateOrganization()` | `--id` | 11 | Update specific details of an organization using its UUID |
| `update-organization-batch-export` | `posthog.updateOrganizationBatchExport()` | `--destination` `--id` `--interval` `--name` `--organization-id` | 10 | Update an existing organization-level batch export configuration in PostHog |
| `update-organization-by-uuid` | `posthog.updateOrganizationByUuid()` | `--id` `--name` | 3 | PUT /api/organizations/{id}/: Update organization details by providing a UUID as 'id' |
| `update-organization-domain` | `posthog.updateOrganizationDomain()` | `--domain` `--id` `--organization-id` | 5 | Update an organization's authentication domain settings, including SAML SSO configuration and user provisioning policies |
| `update-organization-member` | `posthog.updateOrganizationMember()` | `--organization-id` `--user--uuid` | 1 | Update an organization member's access level and permissions |
| `update-organization-member-complete` | `posthog.updateOrganizationMemberComplete()` | `--has-social-auth` `--id` `--is-2fa-enabled` `--joined-at` `--organization-id` `--updated-at` `--user--uuid` | 0 | Update member details in an organization by ID and user UUID |
| `update-organization-proxy-record` | `posthog.updateOrganizationProxyRecord()` | `--id` `--organization-id` | 7 | Update an organization's proxy record configuration |
| `update-organization-role` | `posthog.updateOrganizationRole()` | `--id` `--name` `--organization-id` | 1 | Update an organization role by submitting its UUID and organization_id in UUID format |
| `update-persisted-folder` | `posthog.updatePersistedFolder()` | `--created-at` `--id` `--project-id` `--type` `--updated-at` | 2 | Update an existing persisted folder in PostHog |
| `update-person-properties` | `posthog.updatePersonProperties()` | `--id` `--project-id` | 6 | Request data's "properties" will be updated on a person using "$set" event, affecting only listed properties without deletion or other changes |
| `update-person-property` | `posthog.updatePersonProperty()` | `--id` `--key` `--project-id` `--value` | 1 | This endpoint allows for reading and deleting individuals |
| `update-product-tour` | `posthog.updateProductTour()` | `--id` `--name` `--project-id` | 7 | Update an existing product tour in PostHog |
| `update-project-action` | `posthog.updateProjectAction()` | `--id` `--project-id` | 14 | PUT endpoint '/api/projects/{project_id}/actions/{id}/' updates actions in a project by ID, accepts JSON/form data, supports 'format' query, and needs 'action:write' authentication |
| `update-project-batch-export` | `posthog.updateProjectBatchExport()` | `--destination` `--id` `--interval` `--name` `--paused` `--project-id` | 9 | Update a batch export configuration within a project using PUT method |
| `update-project-cohort` | `posthog.updateProjectCohort()` | `--id` `--project-id` | 7 | Update cohort details of a specific project by ID |
| `update-project-dashboard` | `posthog.updateProjectDashboard()` | `--id` `--project-id` | 12 | Endpoint to update an existing dashboard within a project |
| `update-project-early-access-feature` | `posthog.updateProjectEarlyAccessFeature()` | `--id` `--name` `--project-id` | 3 | Update a specific early access feature of a project by providing the `project_id` and feature `id` (UUID) |
| `update-project-event-definition` | `posthog.updateProjectEventDefinition()` | `--id` `--project-id` | 3 | Update an existing event definition for a specified project using its UUID |
| `update-project-group-type` | `posthog.updateProjectGroupType()` | `--project-id` | 4 | PATCH /api/projects/{project_id}/groups_types/update_metadata: Update group type metadata for a specific project using its project_id |
| `update-project-insight` | `posthog.updateProjectInsight()` | `--id` `--project-id` | 28 | Endpoint "/api/projects/{project_id}/insights/{id}/" allows for updating an insight's details for a given project and insight ID, supporting JSON and CSV formats, with fields like name, query, and… |
| `update-project-member` | `posthog.updateProjectMember()` | `--parent--membership--user--uuid` `--project-id` | 2 | Update explicit project membership using UUIDs |
| `update-project-notebook` | `posthog.updateProjectNotebook()` | `--project-id` `--short-id` | 5 | The API for interacting with Notebooks |
| `update-project-property-definition` | `posthog.updateProjectPropertyDefinition()` | `--id` `--name` `--project-id` | 2 | Update a property definition in a project by its UUID |
| `update-project-session-recording-playlist` | `posthog.updateProjectSessionRecordingPlaylist()` | `--created-at` `--id` `--last-modified-at` `--project-id` `--short-id` | 6 | Update an existing session recording playlist for a project with the specified project_id and playlist short_id |
| `update-project-settings` | `posthog.updateProjectSettings()` | `--id` `--organization-id` | 22 | Update project settings and configuration within a PostHog organization |
| `update-project-subscription` | `posthog.updateProjectSubscription()` | `--frequency` `--id` `--project-id` `--start-date` `--target-type` `--target-value` | 10 | Update a subscription for a specific project |
| `update-project-survey` | `posthog.updateProjectSurvey()` | `--id` `--name` `--project-id` `--type` | 15 | The `/api/projects/{project_id}/surveys/{id}/` PUT endpoint updates survey details in a project using survey UUID and project ID, accepts JSON/form/multipart data, needs `survey:write` permission… |
| `update-user-home-settings` | `posthog.updateUserHomeSettings()` | `--uuid` | 2 | Update user home settings including homepage and tab configurations |
| `update-warehouse-saved-query` | `posthog.updateWarehouseSavedQuery()` | `--edited-history-id` `--id` `--name` `--project-id` `--query` | 0 | Update a warehouse saved query in PostHog by completely replacing it with new data |
| `update-web-experiment` | `posthog.updateWebExperiment()` | `--feature-flag-key` `--id` `--name` `--project-id` `--variants` | 0 | Completely update a web experiment in PostHog using PUT method |
| `validate-llm-provider-key` | `posthog.validateLlmProviderKey()` | `--api-key` `--project-id` `--provider` | 0 | Validate LLM provider API keys without persisting them to PostHog |
| `whoami` ·deprecated | `posthog.whoami()` | — | 0 | Use list-all-projects-across-organizations instead |

## Docs

- [run CLI](https://docs.boxd.sh/cli/run): Call connected integrations from the shell, connect new ones, and run automations.
- [Quickstart](https://docs.boxd.sh/guides/integrations/quickstart): Connect an integration, call it from the shell, and turn a script into an automation.
- [Connections](https://docs.boxd.sh/guides/integrations/connections): Connect an account once, for yourself or for your whole organization.
- [Scripts](https://docs.boxd.sh/guides/automations/scripts): Typed integrations, triggers, schedules and state in a .run.ts file.
- [Jobs](https://docs.boxd.sh/guides/automations/jobs): How a script becomes a background job: states, retries, sleep and wake.
- [Beyond the catalog](https://docs.boxd.sh/guides/automations/beyond-the-catalog): Reach your own APIs, databases and cloud accounts from a script.
