Connect PostHog to Definable AI

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

About PostHog

PostHog is a productivity tool. Connect it to Definable AI with one-click OAuth2 — no API keys or custom code required.

What you can automate with PostHog

Use Definable AI's agent platform to trigger workflows from PostHog, process results with 50+ AI models, and sync data across 900+ connected apps.

Tools & Actions (518 available)

  • Add dashboard collaborators with access level: Add collaborators to a specific project dashboard. Requires 'project_id' and 'dashboard_id'. Supports JSON, form-urlencoded, and multipart data. Returns added collaborator details. Auth: 'PersonalAPIKeyAuth'. IMPORTANT REQUIREMENTS: 1. The dashboard must have restriction_level > 21 (not on the lowest restriction level). Use POSTHOG_PARTIAL_UPDATE_OF_A_PROJECT_S_DASHBOARD to set restriction_level to 37. 2. The user being added cannot be the dashboard owner or a project admin (they already have inherent access). 3. Currently only level 37 (edit access) can be explicitly specified. 4. Use POSTHOG_LIST_ORGANIZATION_MEMBERS_WITH_PAGINATION to find valid user UUIDs.
  • Add member to organization role: Add a member to an organization role by submitting their details and UUID in JSON/form, using organization and role IDs. Requires PersonalAPIKeyAuth. Success gives a 201 status.
  • Add persons to static cohort: Add persons to a static cohort by their UUIDs. Use when you need to manually add specific users to a static cohort. Only works with static cohorts (is_static=true), not dynamic cohorts.
  • Add product intent to project: Tool to add a product intent to a PostHog project. Use when you need to register a project's intention to use a specific PostHog product feature. Product intents help track which features (product analytics, feature flags, data warehouse, experiments, surveys) a project plans to use.
  • Add project specific member roles: Add members with specific roles to a project by providing their user_uuid and level (member or admin). Requires project_id in the URL. Supports JSON, form-data, and form-urlencoded input. Returns the newly created membership data upon success. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control.
  • Add session recording to playlist: Add an existing session recording to a playlist. This endpoint associates a specific session recording with a playlist, making it part of that collection. Requires 'project_id' (project identifier), 'short_id' (playlist identifier), and 'session_recording_id' (recording identifier) in the URL. Optional body parameters can be used to update playlist properties. Works with both 'collection' and 'filters' type playlists. Returns the updated playlist details on success.
  • Append Desktop Recording Segments: Append transcript segments to an existing desktop recording for real-time streaming support. Use when you need to add new transcript segments to a recording in batches as they become available from transcription services like AssemblyAI. Requires desktop_recording:write scope.
  • Archive survey response: Tool to archive a single survey response. Use when you need to hide a survey response from analytics while preserving it in the database.
  • Assign feature flag role based access: Set up role-based access for a feature flag using `project_id` and `feature_flag_id`. Submit access info in JSON or form format, with `feature_flag:write` rights. Success returns new details with a 201 code.
  • Bulk create organization invites: POST /api/organizations/{organization_id}/invites/bulk/: Bulk-create organization invites with customizable levels, sender details, and validation checks. Supports email automation and private project access settings.
  • Bulk delete feature flags: Bulk delete feature flags by filter criteria or explicit IDs. Use when you need to delete multiple feature flags at once. Accepts either 'filters' (same filter params as list endpoint: search, active, type, etc.) or 'ids' (explicit list of flag IDs). Returns operation status and count of deleted flags. Use '@current' as project_id for the current project context.
  • Cancel insights for a project: 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 response.
  • Capture Event: Capture (ingest) a single analytics event into PostHog using the public ingestion API and a project API key. Use when you need to send custom events like 'lesson_started', 'quiz_completed', or any user behavior tracking. This bypasses the private /api/* endpoints and uses PostHog's public write-only ingestion endpoint.
  • Check pipeline destination updates: 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. Use this to determine if a pipeline destination plugin can be upgraded to a newer version. Returns update information including current tag, latest tag, and whether an update is available. Note: This endpoint may require admin/staff permissions or may only be available for custom organization-owned plugins (not global PostHog Inc. plugins).
  • Check pipeline import app updates: Retrieve the latest update information for a specific pipeline import app by its ID within an organization. This endpoint returns details such as plugin type, name, description, and version data. Requires 'id' and 'organization_id' as path parameters.
  • Check pipeline plugin update status: Get update status for a specific pipeline transformation plugin by its unique ID within an organization. This endpoint requires the 'organization_id' and 'plugin' IDs and returns details like plugin type, name, and update information.
  • Check project's demo data generation status: Check if a project is currently generating demo data. This endpoint retrieves the demo data generation status for a specific project within an organization. Returns whether the project is currently in the process of generating demo data. **Important Authentication Note**: This endpoint requires session-based authentication (cookie-based) and does not support Personal API Key authentication. It may return 403 Forbidden when using API keys. This endpoint is primarily intended for use within the PostHog web application.
  • Cohort duplication to static: This endpoint duplicates a specified cohort as a static one within a project. Path parameters include `project_id` (string) and cohort `id` (integer). Successful requests return cohort details.
  • Create Batch: Capture a batch of analytics events to PostHog using the public batch ingestion API. Use when you need to send multiple events efficiently in a single request (e.g., bulk event imports, offline event syncing).
  • Create Dataset: Tool to create a new dataset in a PostHog project. Use when you need to create a dataset for organizing data. Requires a project ID and a dataset name; description and metadata are optional.
  • Create Dataset Items: Tool to create a new dataset item in a PostHog project dataset. Use when you need to add a new item with input/output data to a dataset for ML/AI experimentation or tracking.
  • Create Evaluation: Create a new evaluation for a PostHog project to assess AI-generated content or responses. Use when you need to set up LLM-based evaluation criteria for quality assessment, content moderation, or performance tracking.
  • Create Feature Flag: Tool to create a new feature flag in a PostHog project. Use when you need to add feature toggles, perform gradual rollouts, or target specific user segments without deploying new code.
  • Create LLM Analytics Summarization: Generate an AI-powered summary of an LLM trace or event. This endpoint analyzes the provided trace/event, generates a line-numbered text representation, and uses an LLM to create a concise summary with line references in [L45] or [L45-52] format. Use when you need to quickly understand complex LLM interactions, debug traces, or generate human-readable explanations of AI system behavior.
  • Create LLM Analytics Text Representation: Tool to generate human-readable text representations of LLM trace events for display, logging, or analysis. Use when you need to convert LLM analytics events ($ai_generation, $ai_span, $ai_embedding, or $ai_trace) into formatted text.
  • Create Logs Export: Tool to create a logs export job using HogQL queries in PostHog. Use when you need to export event logs or query results for analysis. The endpoint creates an asynchronous export job and returns metadata including the export ID, format, and filename that can be used to retrieve the exported data.
  • Create Max AI insight and query: Tool to create and query insights using PostHog's Max AI assistant. Use when you need to generate insights from natural language queries. The AI interprets your query and creates the appropriate insight configuration (trends, funnels, or retention). Returns the generated insight with query configuration and results data.
  • Create Persons Bulk Delete: Tool to bulk delete persons by PostHog person IDs or distinct IDs. Use when you need to delete multiple persons at once (up to 100 per call). Only events captured before the request will be deleted. Deletion is asynchronous and batched at 5AM UTC every Sunday.
  • Create Retrieve Retention Insights For Project: Create and retrieve retention insights for a project using PostHog's Query API. Analyzes how users return over time based on specified events or actions. Uses the /api/projects/{project_id}/query/ endpoint with a RetentionQuery. Requires a project ID and authenticated access with 'insight:read' permission. If no query is provided, returns default retention data for $pageview events over 7 days.
  • Create Surveys Summary Headline: Tool to create or regenerate a summary headline for a survey. Use when you need to generate an AI-powered headline summary of survey responses for a specific project survey. The endpoint processes survey data to create a concise headline.
  • Create Web Experiment: Create a new web experiment in a PostHog project. Web experiments allow you to run A/B tests by dynamically transforming DOM elements on your website based on feature flag variants. Use when you want to test different UI variations, messaging, or layouts without deploying new code.
  • Create a notebook in a project: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Create alert: Tool to create a new alert configuration in PostHog. Use when you need to set up monitoring for insights with specific thresholds and notification settings. The alert will monitor the specified insight and notify subscribed users when threshold conditions are met.
  • Create batch export: Create a new batch export to automatically export PostHog data to external destinations like S3, BigQuery, or Snowflake. Use when you need to set up scheduled data exports with configurable intervals and destination-specific settings.
  • Create batch exports backfills: Tool to create a new backfill for a BatchExport. Use when you need to re-export historical data for a specific time range. Requires valid start_at and end_at timestamps in ISO 8601 format. The end_at timestamp cannot be in the future.
  • Create batch exports run test step: Tool to run a test step for a batch export configuration in PostHog. Use when you need to validate that a batch export is properly configured before enabling it. This endpoint triggers a test run to verify the destination connectivity and configuration.
  • Create customer profile config: Create a customer profile configuration for a PostHog project. Use when you need to configure how customer profiles are displayed and organized for persons or groups within a project.
  • Create data color theme: Tool to create a new data color theme in a PostHog project. Use when you need to define custom color palettes for data visualization. Requires a theme name and list of hex color codes. Returns the created theme with auto-generated ID and metadata.
  • Create desktop recording: Create a new desktop recording and get Recall.ai upload token for the desktop SDK. Use when you need to initiate a new recording session and obtain credentials for uploading audio/video data.
  • Create domain with saml for organization: Create and configure an authentication domain with SAML SSO for a PostHog organization. Requires Enterprise plan. Adds an email domain (e.g., 'company.com') to your organization and configures SAML Single Sign-On for users with matching email addresses. After creation, verify domain ownership via DNS TXT record before SAML activates. SAML parameters (entity_id, acs_url, x509_cert) come from your Identity Provider (Okta, OneLogin, Azure AD, etc.). Workflow: 1) Create domain (this endpoint) 2) Add DNS TXT record from verification_challenge 3) Verify domain 4) Configure IdP with PostHog SAML settings 5) Test authentication. Returns 201 with domain config on success, 403 if not on Enterprise plan.
  • Create endpoint: Tool to create a new endpoint for a PostHog project. Endpoints allow you to define and execute custom queries (HogQL, Trends, Funnels, etc.) that can be accessed via a URL-safe name. Use when you need to set up a new data query endpoint with specific query configuration and caching options.
  • Create error tracking autocapture controls: Tool to create a new error tracking autocapture control configuration for a PostHog project. Use when you need to set up error tracking rules for specific libraries with URL triggers, event triggers, and sampling rates.
  • Create error tracking release: Create a new error tracking release in PostHog. Use when you need to register a new application version or deployment for error tracking purposes. This helps track errors across different versions of your application.
  • Create error tracking suppression rule: Tool to create a new error tracking suppression rule for a project. Use when you need to automatically suppress specific error tracking issues based on filters. Suppression rules prevent matching errors from being reported or displayed.
  • Create error tracking symbol sets bulk start upload: Tool to initiate bulk upload of error tracking symbol sets for a PostHog project. Use when you need to start uploading debug symbols for error tracking and source map resolution. This endpoint initializes the bulk upload process and returns an ID mapping for tracking.
  • Create error tracking symbol sets start upload: Tool to initiate symbol set upload session for error tracking in PostHog. Use when you need to upload symbol files for stack trace symbolication. Returns a presigned S3 URL where the symbol file chunk should be uploaded. The endpoint is part of a multi-step upload process.
  • Create evaluation run: Tool to create a new evaluation run and enqueue a Temporal workflow to asynchronously execute the evaluation. Use when you need to run an evaluation against a specific event in PostHog. Returns HTTP 202 with workflow details.
  • Create event definitions: Create a new event definition in a PostHog project. Event definitions help you organize and document the events being tracked in your application. Use this to formally define events, add descriptions, assign owners, and manage event metadata. This is useful for maintaining a clean event taxonomy and ensuring your team understands what each event represents.
  • Create experiment exposure cohort: Create a new exposure cohort for an experiment in a project by sending a POST request with experiment details and feature flag data. Requires experiment ID and project ID in the path.
  • Create experiment holdout: Tool to create a new experiment holdout group in PostHog. Use when you need to set up a control group for experiments with specific filter configurations and rollout percentages.
  • Create experiment saved metric: Tool to create a new experiment saved metric in a PostHog project. Use when you need to define a reusable metric configuration for experiments. The query field requires 'kind' (ExperimentTrendsQuery or ExperimentFunnelsQuery) with a nested 'count_query' structure.
  • Create experiment timeseries recalculation: Tool to create a recalculation request for experiment timeseries data. Use when you need to recalculate metrics for an experiment. The experiment must have a start_date set (must be started) for recalculation to work.
  • Create feature flag dashboard: Manage feature flags by creating, reading, updating, and deleting them. Utilize JavaScript library or endpoint for user-specific flag status. Refer to documentation for details.
  • Create feature flags for project: Create a new feature flag in a PostHog project. Feature flags allow you to toggle features on/off, perform gradual rollouts, and target specific user segments without deploying new code. Required parameters: - project_id: The project ID where the flag will be created - key: Unique identifier for the flag (used in your code) Optional but recommended: - name: Human-readable description shown in UI - filters: Control rollout percentage and user targeting - active: Whether flag is enabled (defaults to true) - tags: Organize flags with labels Example use cases: - Simple on/off toggle: {"key": "dark-mode", "name": "Dark Mode"} - Gradual rollout: {"key": "new-feature", "filters": {"groups": [{"rollout_percentage": 25}]}} - Targeted release: Use filters.groups[].properties to target specific user segments The API returns the created flag with auto-generated fields like id, created_at, created_by, usage_dashboard, and status.
  • Create file system: Tool to create a new file system resource in PostHog with specified metadata and hierarchy. Use when you need to create folders, files, or other organizational structures in a project.
  • Create file system shortcut: Create a new file system shortcut in a PostHog project. Requires 'file_system_shortcut:write' permission. Returns the created shortcut with all its properties including UUID, path, type, and creation timestamp.
  • Create groups types metrics: Tool to create a new metric for a specific group type in a PostHog project. Use when you need to define custom metrics to track group-level analytics (e.g., company revenue, team activity). Requires project_id, group_type_index, metric id (UUID), name, and filters.
  • Create hog function: Create a new hog function in PostHog. Hog functions are serverless functions that can be triggered by events, used for transformations, destinations, or site applications. Use when you need to set up custom event processing, integrations, or in-app features like notification bars.
  • Create insight variable: Create a new insight variable for a PostHog project. Insight variables allow you to define reusable parameters that can be referenced across insights and queries. Use when you need to create configurable variables like user segments, date ranges, or custom metrics that can be used in multiple insights.
  • Create live debugger breakpoint: Tool to create a new live debugger breakpoint in a PostHog project. Use when you need to set up debugging instrumentation for a specific file and line number in your application code. Client applications will receive this breakpoint configuration and can pause execution or log data when that line is reached.
  • Create new organization with configurable access: Create a new PostHog organization with configurable security and notification settings. This action creates a new organization and automatically provisions a default project with an API token. The organization will be immediately active and ready for use. Returns complete organization details including: - Organization ID, name, and URL slug - Automatically created default project and team - API token for the default team - All security and access control settings Requires organization:write permission. The authenticated user becomes the first member of the newly created organization.
  • Create new project experiment: Create a new experiment in a specific project using JSON, form, or multipart data. Requires project_id and experiment details, secured with PersonalAPIKeyAuth. Generates a 201 response with experiment info.
  • Create organization invite with role and email: Create and send an organization invitation to a user via email. This allows you to invite people to join your PostHog organization with a specific role (member, admin, or owner). The action creates an invite that can optionally send an email notification to the recipient. Returns the complete invite details including invite ID, timestamps, and the user who created it. Successful invitations return a 201 status with full invite details. Use cases: - Invite team members to collaborate on analytics - Grant admin access to manage organization settings - Add owners with full organizational control - Create invites without immediate email notification (set send_email=false)
  • Create organization proxy record for custom domain: Create a managed reverse proxy record for an organization to enable custom domain routing for PostHog analytics events. This bypasses ad blockers by routing analytics through your own domain. After creating the record, you must: 1. Create a CNAME DNS record pointing your domain to the returned target_cname 2. Wait 2-30 minutes for DNS propagation and SSL certificate provisioning 3. The status will progress from 'waiting' → 'issuing' → 'live' IMPORTANT: If using Cloudflare, set the CNAME to "DNS only" (disable proxy) to avoid SSL certificate provisioning issues. Requires organization write access (organization:write permission).
  • Create organization role with feature flag levels: Create a new custom role within a PostHog organization with optional feature flag access permissions. This action creates an organization role that can be assigned to members to control their access levels. The role can include specific feature flag access permissions via the feature_flags_access_level parameter. Returns the created role with its unique ID, name, creation timestamp, and other metadata. Security: Requires PersonalAPIKeyAuth with organization admin permissions.
  • Create persisted folder: Tool to create a new persisted folder in a PostHog project. Use when you need to create a new folder for organizing data storage with a specific type and configuration.
  • Create person path with format option: Retrieve path analytics for a specific person within a PostHog project. This endpoint returns the navigation paths and user journey data for a person. Note: This endpoint requires session-based authentication and does not support Personal API Key access. To use this endpoint, you must be authenticated via the PostHog web application.
  • Create product tour: Tool to create a new product tour in a PostHog project. Use when you need to set up guided tours to onboard users or highlight features. Requires a project_id and a name for the tour.
  • Create project action with format: 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 action details.
  • Create project cohorts: Create cohorts for a specified project by POSTing JSON-form data to "/api/projects/{project_id}/cohorts/". Provide project_id in URL and the necessary payload, adhering to JSON schema constraints. Authentication required. Returns 201 upon success.
  • Create project dashboard: The POST endpoint creates a dashboard within a project using a `project_id`, accepting details in JSON/form formats. It uses 'PersonalAPIKeyAuth' for security and returns HTTP 201 with dashboard details on success.
  • Create project insights with customizable parameters: Create custom analytics insights for a PostHog project. This action allows you to create various types of insights including trends, funnels, retention analysis, and more. Each insight is defined by a query object that specifies the type of analysis and the data to examine. Key Parameters: - project_id (required): The ID of the project to create the insight in - query (recommended): Query configuration object with 'kind' and 'source' defining the insight type - name: Display name for the insight - description: Detailed explanation of what the insight measures - saved: Whether to permanently save the insight (true) or keep it temporary (false) - tags: List of tags for organization - format: Response format ('json' or 'csv') Supported Query Types: - TrendsQuery: Track event trends over time - FunnelsQuery: Analyze conversion funnels - RetentionQuery: Measure user retention - And more (see PostHog documentation) Returns the created insight with ID, short_id, timestamps, and all configured properties.
  • Create project insights with format option: Create a new analytics insight in a PostHog project. Insights are saved queries that visualize data from your analytics events. Use this to create trends, funnels, retention, or other analytics visualizations. You can define the insight using either: - Legacy 'filters' format (simpler, widely supported) - Modern 'query' format (more powerful, recommended for new integrations) The optional 'format' parameter controls response format: - 'json' (default): Returns structured JSON with insight metadata - 'csv': Returns CSV-formatted representation of the insight Requires a valid project_id. Returns HTTP 201 on success with the created insight details including a unique ID and short_id.
  • Create project pipeline frontend app job: Create a job for a pipeline frontend app config in a project. Requires `project_id` and config `id`, accepting JSON/form-data. Returns the created job's details.
  • Create project subscription with delivery options: Create a subscription for a given project by providing required details such as delivery method, frequency, and starting date. Requires a project ID and supports various content types. Returns the newly created subscription. Security: PersonalAPIKeyAuth.
  • Create project surveys with questions and targets: Create surveys in a project by providing a project ID and details like type, questions, and targets in JSON, form-data, or urlencoded format. Use PersonalAPIKeyAuth for security. Get a survey object on success.
  • Create project timing insights: Record insights as viewed by updating their last_viewed_at timestamps. This endpoint tracks when a user views insights, which is useful for: - Activity tracking and analytics - Recently viewed insights features - User engagement metrics **IMPORTANT**: This endpoint requires session-based (cookie) authentication and does NOT support Personal API Key authentication. Attempting to use this endpoint with a Personal API Key (Bearer token) will result in a 403 Forbidden error. Use this action only when authenticated with session cookies from a logged-in PostHog user session.
  • Create query in project by id: 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. Authentication is required and it returns query results.
  • Create session recording playlists: Create playlists of session recordings for a specified project. Requires 'project_id' path parameter and personal API key with write access. Supports JSON, form-encoded, or multipart data. Returns 201 on success with playlist details.
  • Create static cohort for feature flag: Manage feature flags for apps with create, read, update, and delete operations using PostHog's JavaScript Library or dedicated endpoint. More info in the docs.
  • Create warehouse saved query: Create a new warehouse saved query in PostHog for data warehouse operations. Use this to define reusable HogQL queries that can be executed against your warehouse tables. The query name must contain only letters, numbers, underscores, dots, or dollar signs.
  • Crud operations for project annotations: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations.
  • Delete Customer Profile Config: Tool to delete a customer profile configuration by ID in a PostHog project. Use when you need to remove a customer profile config that is no longer needed. Returns a 204 No Content status on successful deletion.
  • Delete Error Tracking Suppression Rule: Tool to delete an error tracking suppression rule by its UUID. Use when you need to remove a suppression rule that is no longer needed. Requires 'error_tracking:write' permission.
  • Delete Groups Types Metrics: Tool to delete a group usage metric by its UUID within a specific project and group type. Use when you need to remove a metric that tracks group-level analytics. Requires 'group:write' permission.
  • Delete alert: Delete an alert configuration by providing its UUID and the associated project ID. Requires 'alert:write' permission. Returns no content with a 204 status on success.
  • Delete desktop recording: Tool to delete a desktop meeting recording by its UUID and project ID. Use when you need to permanently remove a desktop recording from a PostHog project.
  • Delete endpoint: Delete an endpoint and clean up materialized query. Returns no content with a 204 status on success. Use when you need to remove an endpoint configuration from a PostHog project.
  • Delete error tracking autocapture controls: Delete an error tracking autocapture control configuration by UUID and project ID. Use when you need to remove autocapture settings for error tracking.
  • Delete error tracking grouping rule: Delete a specific error tracking grouping rule by ID. Use when you need to remove a custom grouping rule that is no longer needed or was created incorrectly.
  • Delete error tracking release: Delete an error tracking release by its UUID and project ID. Use when you need to remove a specific release from error tracking. Requires 'error_tracking:write' scope. Returns 204 No Content on success.
  • Delete experiment holdout: Delete an experiment holdout by providing its ID and the associated project ID. Requires 'experiment:write' permission. Returns no content with a 204 status on success.
  • Delete experiment saved metric: Tool to delete an experiment saved metric by ID from a PostHog project. Use when you need to remove a saved metric configuration from an experiment. Returns HTTP 204 No Content on success.
  • Delete file system: Tool to delete a file system resource in PostHog by UUID. Use when you need to permanently remove a file system. Returns deletion information including undo options if available.
  • Delete insight variables: Delete an insight variable by its UUID from a specified project. Requires 'insight_variable:write' permission. Returns no content with a 204 status on success.
  • Delete live debugger breakpoint: Delete a live debugger breakpoint by providing its UUID and project ID. Requires 'live_debugger:write' permission. Returns no content with a 204 status on success.
  • Delete organization by uuid: Delete an organization by its UUID. Requires a 'PersonalAPIKeyAuth' with 'organization:write' permission. On success, returns a 204 status code with no response body.
  • Delete organization project: Projects for the current organization.
  • Delete persisted folder: Delete a persisted folder by providing its UUID and the associated project ID. Requires 'persisted_folder:write' permission. Returns no content with a 204 status on success.
  • Delete person and optionally associated events: This endpoint is used to read and delete user data. Use the capture API, `$set`/`$unset` commands, or SDKs for creating/updating persons.
  • Delete person property: Delete specific properties from a person record using the $unset operation. Use when you need to remove one or more properties from a person's profile.
  • Delete product tours: Delete a product tour by providing its UUID and the associated project ID. Requires 'product_tour:write' permission. Returns no content with a 204 status on success.
  • Delete session recording by uuid: Delete a session recording by providing the session's UUID and the associated project ID. Requires `session_recording:write` permission. Returns no content on successful deletion.
  • Delete survey by id: Delete a survey by providing its UUID and the associated project ID. Requires 'survey:write' permission. Returns no content with a 204 status on success.
  • Delete warehouse saved query: Tool to delete a warehouse saved query from PostHog. Use when you need to remove a saved query from the data warehouse. The operation succeeds if the API returns 204 No Content status.
  • Delete web experiment: Delete a web experiment by its ID from a specific project. Use when you need to permanently remove a web experiment. Requires 'experiment:write' scope.
  • Duplicate experiment: Tool to duplicate an existing experiment in PostHog. Use when you need to create a copy of an experiment with the same configuration. The API automatically appends '(Copy)' to the duplicated experiment name and creates a new feature flag for it.
  • Duplicate survey to projects: Duplicate a survey to multiple projects in a single transaction. Accepts a list of target team IDs and creates a copy of the survey in each project. Uses an all-or-nothing approach - if any duplication fails, all changes are rolled back.
  • Enable project early access feature: Enables a new early access feature for a project using project ID, payload with details, and PersonalAPIKeyAuth. Returns a 201 status on success.
  • Fetch batch export details via uuid: Retrieve details for a specific batch export within a project by its UUID. Endpoint requires project_id and export id (UUID). Supports JSON responses detailing export properties, run statuses, destination config, and interval info.
  • Fetch export unsubscribe settings: Retrieves export unsubscribe configurations for pipeline transformations in an organization. This endpoint returns a list of configurations that define how users can unsubscribe from various pipeline transformation exports. Each configuration includes an ID, plugin type identifier, and configuration settings. Use case: Check which export transformations support unsubscribe functionality and their configuration details. This is useful for managing data export preferences and compliance requirements. Note: This endpoint may require specific organization permissions or enterprise features. If you receive a 403 Forbidden error, the organization may not have access to this feature.
  • Fetch organization details by uuid: Retrieve organization details by UUID. Endpoint requires 'organization:read' access. Response includes name, slug, timestamps, membership, plugins access level, and team structure.
  • Fetch organization pipeline app repositories: Retrieve details of pipeline import app repositories for a specific organization by its UUID. Returns JSON with properties like plugin type, name, and URL. Supports 'local', 'custom', 'repository', 'source', 'inline' types.
  • Fetch pipeline destination activity: Retrieve activity logs and metadata for a specific pipeline destination configuration. Returns activity information including latest updates, version tags, and operational status. Use this to monitor the activity and update history of a destination config. For complete destination config details (plugin settings, filters, enabled status), use POSTHOG_RETRIEVE_PIPELINE_DESTINATION_CONFIG_DETAILS instead. Required: project_id (integer) and destination config id (integer).
  • Fetch pipeline transformation details: Retrieve available pipeline transformation plugins from the organization's plugin repository. Returns a list of transformation templates that can be used to modify, enrich, or filter events in real-time. Each plugin includes configuration schemas, capabilities, and metadata. Requires `organization_id` (organization UUID). Note: This endpoint requires specific authentication permissions beyond Personal API Keys and may not be accessible in all environments.
  • Fetch project survey activity log: Retrieve the activity log of surveys within a specific project by using the project ID. This endpoint requires a PersonalAPIKeyAuth with 'activity_log:read' permission and returns survey details including types, flags, questions, and metadata.
  • Fetch session recording playlist details: Retrieve session recording playlist details for a specific project by project_id and playlist short_id. Requires PersonalAPIKeyAuth with read access. Returns playlist metadata including creation and modification info.
  • Finish symbol sets bulk upload: Tool to finalize bulk upload of error tracking symbol sets for a PostHog project. Use when completing a multi-part symbol set upload process. This endpoint marks the upload as complete and makes the symbol sets available for error stack trace symbolication.
  • Flag annotation as deleted: Soft delete an annotation by setting 'deleted' to true via PATCH request. Hard delete of this model is not allowed by the API.
  • Generate AI summary for session recording: Generate an AI-powered summary for a session recording. Requires PostHog AI feature to be enabled. Provide the project_id and the session recording's UUID to get an AI-generated summary including key activities, user interactions, and insights about the session. Note: This endpoint requires PostHog AI to be enabled for your organization and may only be available on paid plans. Returns 403 Forbidden if the feature is not accessible.
  • Generate Insight Name: Tool to generate an AI-suggested name for a PostHog insight based on its query configuration. Use when you need to automatically name an insight instead of manually creating a descriptive title.
  • Generate project funnel correlation insight: 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 Customer Profile Config: Retrieve a specific customer profile configuration by its ID for a given project. Use when you need to fetch details about how customer profiles are configured for persons or groups.
  • Get Data Color Themes: Tool to retrieve data color themes for a specific project. Use when you need to list available color themes for data visualization. Returns paginated results with theme details including colors, creator information, and global status.
  • Get Dataset Item: Tool to retrieve a specific dataset item by its ID from a PostHog project. Use when you need to fetch details about a particular dataset item including its input, output, metadata, and creation information.
  • Get Datasets: Tool to retrieve datasets for a PostHog project. Use when you need to list or search datasets within a specific project. Supports filtering by IDs, searching by name/description, and ordering results.
  • Get Endpoint OpenAPI Specification: Get OpenAPI 3.0 specification for a specific PostHog endpoint. Use this to generate typed SDK clients. Returns the complete OpenAPI schema including paths, components, and security definitions for the specified endpoint.
  • Get Evaluation: Retrieve details of a specific evaluation by its UUID and project ID. Use this to fetch evaluation configuration, type, conditions, and associated model settings.
  • Get LLM Analytics Evaluation Config: Tool to retrieve the LLM analytics evaluation configuration for a specific PostHog project. Use when you need to check evaluation settings, trial limits, or usage statistics for LLM analytics features.
  • Get LLM Analytics Models: Tool to list available LLM models for a specific provider in PostHog LLM Analytics. Use when you need to discover which models are available for a given provider (e.g., openai, anthropic).
  • Get LLM Analytics Provider Keys: Tool to retrieve LLM analytics provider keys for a project. Use when you need to list API keys configured for LLM analytics providers. Returns paginated results with provider key details including masked keys, usage timestamps, and provider information.
  • Get Role Membership: Retrieve details of a specific role membership within an organization by its UUID. Use this to view information about a user's assignment to a particular role, including when they were assigned and their organization member details.
  • Get Warehouse Tables: Tool to retrieve a paginated list of warehouse tables for a specific project. Use when you need to list, search, or discover warehouse tables. Supports pagination via limit/offset and filtering via search term.
  • Get batch exports backfills: Tool to retrieve backfills for a specific batch export within a project. Use when you need to view historical backfill operations for batch exports. Supports pagination via cursor and custom ordering of results.
  • Get cohort calculation history: Tool to retrieve the calculation history for a specific cohort. Use when you need to track cohort recalculations, monitor calculation performance, or debug calculation errors. Returns paginated list of historical calculations with timing metrics and success status.
  • Get conversation: Tool to retrieve a specific conversation by UUID and project ID. Use when you need to access conversation details including messages, status, and associated user information.
  • Get conversations: Tool to retrieve conversations for a specific PostHog project with pagination support. Use when you need to fetch conversation data including messages, status, and user information.
  • Get current user (whoami): Diagnostic tool to validate PostHog credentials and retrieve current user information. Returns the authenticated user's profile along with accessible organizations, teams, and projects. Use this to confirm API key validity and discover team/project IDs for subsequent API calls.
  • Get customer profile configs: Tool to retrieve customer profile configurations for a project with pagination support. Use when you need to list or access customer profile configuration settings for a specific PostHog project.
  • Get data color theme: Tool to retrieve a specific data color theme by ID from a PostHog project. Use when you need to fetch theme configuration details for data visualization.
  • Get dataset details: Retrieve detailed information about a specific dataset within a project. Use this to get dataset properties including name, description, creator info, and timestamps.
  • Get dataset items: Tool to retrieve paginated dataset items for a specific project in PostHog. Use when you need to list or explore dataset items with optional filtering by dataset ID.
  • Get desktop recordings: Tool to retrieve desktop meeting recordings for a specific project. Use when you need to access recorded meetings with transcripts, summaries, and extracted tasks. Returns paginated results with support for limit and offset parameters.
  • Get eligible feature flags for experiments: Tool to retrieve feature flags eligible for use in experiments. Use when you need to find multivariate feature flags that can be used to run A/B tests. Only returns flags with at least 2 variants where the first variant key is 'control'.
  • Get error tracking assignment rules: Tool to retrieve error tracking assignment rules for a project. Use when you need to list the configured rules that automatically assign error tracking issues to team members based on filters. Supports pagination via limit and offset parameters.
  • Get error tracking autocapture control: Retrieve a specific error tracking autocapture control configuration by its ID. Use this to view detailed settings for a particular autocapture control including sample rates, URL triggers, and event filters.
  • Get error tracking fingerprints: Tool to retrieve error tracking fingerprints for a project. Use when you need to list tracked errors with their status, occurrence counts, and timing information. Returns paginated list of error fingerprints that group similar errors together for easier tracking and resolution.
  • Get error tracking grouping rules: Tool to retrieve error tracking grouping rules for a project. Use when you need to list the configured rules that control how error tracking issues are grouped together based on filters. Supports pagination via limit and offset parameters.
  • Get error tracking release: Retrieve details of a specific error tracking release by its UUID and project ID. Use when you need to fetch information about a particular release in error tracking.
  • Get error tracking release by hash: Tool to retrieve an error tracking release by its hash identifier. Use when you need to fetch release details using a hash ID instead of the UUID. Requires 'error_tracking:read' scope.
  • Get error tracking releases: Tool to retrieve paginated error tracking releases for a specific project in PostHog. Use when you need to list releases associated with error tracking to identify version-specific issues.
  • Get error tracking suppression rules: Tool to retrieve error tracking suppression rules for a project. Use when you need to list the configured rules that automatically suppress specific error tracking issues based on filters. Supports pagination via limit and offset parameters.
  • Get error tracking symbol sets: Tool to retrieve error tracking symbol sets for a PostHog project. Use when you need to list symbol sets used for error stack trace symbolication. Returns paginated list of symbol sets including their references, release versions, and processing status.
  • Get evaluations for project: Tool to retrieve evaluations configured for a specific PostHog environment/project. Use when you need to list AI model evaluations, check their configurations, or filter evaluations by status or search terms. Returns paginated list of evaluations with their types, configurations, and metadata.
  • Get event definition by name: Tool to retrieve an event definition by its exact name for a specific project. Use when you need to look up details about a specific event by name rather than UUID.
  • Get event definitions TypeScript: Tool to retrieve TypeScript event definitions for a specific project. Use when you need to generate type-safe event definitions for TypeScript applications.
  • Get event definitions in Golang format: Tool to retrieve event definitions in Golang format for a specific PostHog project. Use when you need Golang code generation or type definitions for events in the specified project.
  • Get event definitions in Python format: Tool to retrieve Python-formatted event definitions for a specific project. Use when you need to access event definitions in Python format for code generation or SDK integration.
  • Get experiment holdout details: Retrieve details of a specific experiment holdout by ID within a project. Use this to get information about an experiment holdout including its name, description, filters, and creation details.
  • Get experiment holdouts: Tool to retrieve experiment holdouts for a specific PostHog project. Use when you need to view holdout groups for experiments. Returns paginated list of holdouts with their configurations and metadata.
  • Get experiment saved metric: Tool to retrieve a specific experiment saved metric by ID from a PostHog project. Use when you need to fetch details about a saved metric configuration for experiments.
  • Get experiments stats: Tool to retrieve experimentation velocity statistics for a PostHog project. Use when you need to understand overall experiment activity and distribution. Returns high-level statistics including total, running, completed, and draft experiment counts.
  • Get external data source: Tool to retrieve details of a specific external data source by its UUID and project ID. Use when you need to access external data source configuration, status, and metadata.
  • Get external data sources: Tool to retrieve external data sources for a PostHog project with pagination support. Use when you need to list or search for configured external data connections like Stripe, Postgres, or Snowflake.
  • Get feature flag status: Tool to retrieve the status of a specific feature flag in a PostHog project. Use when you need to check the operational status or state of a feature flag beyond its basic configuration details.
  • Get feature flags dependent flags: Retrieve all active feature flags that depend on a specified flag. Use when you need to understand flag dependencies before modifying or deleting a flag. Helps prevent breaking dependent flags by showing which flags reference the target flag.
  • Get feature flags matching IDs: Tool to get IDs of all feature flags matching the current filters. Uses the same filtering logic as the list endpoint and returns only IDs that the user has permission to edit.
  • Get file system: Tool to retrieve a specific file system resource by UUID and project ID. Use when you need to access details about a file system in PostHog, including metadata and path information.
  • Get file system shortcut: Retrieve a specific file system shortcut by UUID from a project. Requires 'file_system_shortcut:read' permission. Returns detailed information about the shortcut including path, type, and creation timestamp.
  • Get group type metric by ID: Tool to retrieve detailed information about a specific group usage metric by its ID. Use when you need to get the configuration, filters, display format, and calculation interval for a particular metric within a group type.
  • Get groups types metrics: Tool to retrieve metrics for a specific group type in a PostHog project. Use when you need to list all metrics associated with a particular group type index. Returns paginated results with metric configurations including filters, display settings, and formats.
  • Get hog function: Tool to retrieve a specific hog function by UUID and project ID. Use when you need to access details about a hog function including its configuration, code, filters, and status.
  • Get hog functions: Tool to retrieve hog functions for a specific PostHog project. Use when you need to list, search, or filter hog functions with pagination support.
  • Get insight threshold: Tool to retrieve a specific insight threshold by ID for a PostHog project. Use when you need to view threshold configuration, bounds, and associated alerts for monitoring insights.
  • Get insight thresholds: Tool to retrieve thresholds configured for a specific insight within a project. Use when you need to view alert thresholds or monitoring criteria set up for an insight. Returns paginated list of thresholds with their configurations and associated alerts.
  • Get insight variable: Tool to retrieve a specific insight variable by UUID and project ID. Use when you need to access details about an insight variable including its type, name, and values.
  • Get insight variables: Tool to retrieve paginated list of insight variables for a project. Use when you need to discover available variables for insights or query their configurations. Returns variables with their types, default values, and metadata.
  • Get live debugger breakpoint: Tool to retrieve a specific live debugger breakpoint by UUID and project ID. Use when you need to fetch details about a breakpoint for live debugging.
  • Get live debugger breakpoints: Tool to retrieve live debugger breakpoints for a project. Returns a paginated list of breakpoints with their configuration including filename, line number, condition, and status. Use when you need to list or inspect existing breakpoints for live debugging.
  • Get log field values: Tool to retrieve unique values for a specific log field key in a PostHog project. Use when you need to discover available values for log fields like level, message, source, or other log properties.
  • Get logs attributes: Tool to retrieve available log attributes for a PostHog project. Use when you need to discover what log attribute fields are available for querying or filtering logs. Requires the logs:read scope and returns metadata about log attributes that can be used in log queries.
  • Get logs availability status: Tool to check if a project has logs available. Use when you need to verify log availability before querying logs. Returns a boolean indicator of log presence.
  • Get persisted folders: Tool to list persisted folders for a PostHog project with pagination support. Use when you need to retrieve or browse persisted folder configurations within a project.
  • Get product tour: Tool to retrieve a specific product tour by UUID from a PostHog project. Use when you need to fetch details about a product tour configuration, including targeting and content settings.
  • Get session group summaries: Tool to retrieve stored group session summaries for a project. Use when you need to list or access session grouping summaries. Supports pagination via limit and offset parameters.
  • Get survey response statistics: Get survey response statistics for a specific survey. Returns event counts, unique respondents, and conversion rates. Use when analyzing survey performance and engagement metrics.
  • Get surveys archived response UUIDs: Tool to get list of archived response UUIDs for HogQL filtering. Returns list of UUIDs that the frontend can use to filter out archived responses in HogQL queries.
  • Get surveys stats: Tool to get aggregated response statistics across all surveys for a project. Use when you need to analyze overall survey performance, response rates, and dismissal rates. Optionally filter statistics by date range using ISO timestamps.
  • Get user home settings: Tool to retrieve user home settings including homepage and tab configurations. Use when you need to fetch the personalized home page and tab settings for a user.
  • Get user interviews: Tool to retrieve paginated list of user interviews for a specific project. Use when you need to access interview recordings, transcripts, and summaries.
  • Get warehouse saved queries activity: Tool to retrieve activity details for a specific warehouse saved query in PostHog. Use when you need to check the execution history, status, and metadata of a data warehouse saved query.
  • Get warehouse saved query: Tool to retrieve a warehouse saved query from PostHog data warehouse. Use when you need to get details about a specific saved query including its status, execution history, and configuration. Returns complete information about the saved query including creator details, query definition, and execution status.
  • Get warehouse table: Retrieve details of a specific data warehouse table by its UUID. Use this to inspect warehouse table configuration, credentials, schema, and format.
  • Get web experiment: Tool to retrieve a specific web experiment by ID from a PostHog project. Use when you need to fetch configuration details about a web experiment including variants and feature flag mapping.
  • Get web vitals: Tool to retrieve web vitals metrics for a specific pathname in a PostHog project. Returns Core Web Vitals data including INP (Interaction to Next Paint), LCP (Largest Contentful Paint), CLS (Cumulative Layout Shift), and FCP (First Contentful Paint) as 90th percentile values over the past 7 days.
  • Initiate domain verification with saml config: Initiates domain verification for SAML SSO authentication. This endpoint triggers the verification process for a previously created domain by checking if the required DNS TXT record has been added. **Requirements:** - Enterprise plan with SAML SSO feature - Domain must be created first via CREATE_DOMAIN_WITH_SAML_FOR_ORGANIZATION - DNS TXT record with verification_challenge value must be published **Verification Process:** 1. Create domain and receive verification_challenge value 2. Add TXT record to your domain's DNS: _posthog-challenge.yourdomain.com with the challenge value 3. Call this endpoint to verify - PostHog checks for the DNS record 4. If found, domain is_verified becomes true and SAML SSO is activated **Common Errors:** - 403: Organization lacks Enterprise plan or proper permissions - 404: Domain ID not found in organization - Verification may fail if DNS record not propagated yet (can take up to 48 hours) POST /api/organizations/{organization_id}/domains/{id}/verify/
  • List Batch Export Runs: List runs for a batch export by `batch_export_id` within a project. Supports pagination & ordering of the results. Requires `batch_export:read` permission. Returns status, errors, counts, and timestamps for each run.
  • List Organization Plugins with Pagination: Retrieve the list of plugins for a specified organization. Supports pagination through 'limit' and 'offset' query parameters. Requires a valid organization UUID and PersonalAPIKeyAuth for access. Returns plugin details including types and status.
  • List Organization's Pipeline Frontend Apps: Retrieve a paginated list of available pipeline frontend apps for a specific organization. Frontend apps are site apps that inject code into websites (e.g., notification bars, bug reporters, pineapple mode). Returns detailed information including app configuration schemas, versions, and metadata. Supports pagination via limit and offset parameters. Required: organization_id (UUID format) Optional: limit (number of results per page), offset (starting index)
  • List Role Memberships Paginated: List all users assigned to a specific role within an organization. Role memberships represent the assignment of users to custom roles in PostHog. This endpoint returns a paginated list of users who have been assigned the specified role, allowing you to audit role assignments and manage access control. Use this action to: - View which users are assigned to a particular role - Audit role-based access control in your organization - Track role membership changes over time Pagination is controlled via 'limit' (page size) and 'offset' (starting position) query parameters. The 'organization_id' and 'role_id' are required path parameters that identify the specific role within a specific organization.
  • List active live debugger breakpoints: Tool to fetch active live debugger breakpoints for external client applications using Project API key. Returns a list of breakpoints that client applications can use to instrument their code accordingly. Supports filtering by enabled status, filename, or repository.
  • List alerts for project: Tool to retrieve all alerts configured for a specific PostHog project. Use when you need to view alert configurations, check alert status, or monitor what alerts are set up. Returns paginated list of alerts with their configurations, thresholds, and current states.
  • List all projects across organizations: Tool to list all projects the authenticated user can access by enumerating organizations and aggregating each organization's projects. Use when you need to discover all available projects without knowing organization IDs upfront. Handles pagination internally and returns a unified list with organization context.
  • List and filter project events: This endpoint for listing/filtering events is deprecated and maintained only for compatibility. Users are discouraged from using it and should use the Query endpoint for ad-hoc lists/aggregations or CDP/Batch Exports for bulk exports.
  • List and manage project annotations: 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: List all feature flags for a specific project with pagination support. Returns detailed information about each flag including its key, name, filters, rollout configuration, associated experiments/surveys, user access levels, and metadata. Use the project_id from LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS or similar actions.
  • List conversations tickets: Tool to list tickets with person data attached for a project. Use when you need to retrieve all tickets in a project, with optional pagination support.
  • List dashboard sharing configs: Retrieve a list of dashboard sharing configurations for a specified project and dashboard. Requires dashboard ID, project ID, and sharing read permission via PersonalAPIKeyAuth. Returns JSON array of sharing settings.
  • List endpoint versions: Tool to list all versions for a specific endpoint in PostHog. Use when you need to retrieve version history or check available versions for an endpoint. Requires both the project ID and the endpoint name to fetch the versions list.
  • List endpoints for project: Tool to list all endpoints for the team. Use when you need to retrieve or discover available endpoints within a project.
  • List error tracking autocapture controls: Tool to list error tracking autocapture controls for a PostHog project. Returns paginated list of autocapture configurations including library settings, URL triggers, and sampling rates. Use when you need to view or audit error tracking autocapture settings.
  • List experiment saved metrics: Tool to list experiment saved metrics for a project with pagination support. Use when you need to retrieve saved metric configurations for experiments in a PostHog project.
  • List feature flag role access details: 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 resources: Tool to list file system resources for a PostHog project with pagination support. Use when you need to browse or search through available file system resources in a project.
  • List live debugger breakpoint hits: Tool to retrieve breakpoint hit events from ClickHouse with optional filtering and pagination. Use when you need to view hit events containing stack traces, local variables, and execution context from your application's runtime. Breakpoint IDs are filtered to only include those belonging to the current team for security.
  • List notebooks with filters and pagination: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • List of project s session recording playlists: 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.). Session recording playlists organize recordings into collections or filter-based groups for easier analysis. Two playlist types exist: - 'filters': Dynamic playlists that automatically include recordings matching specified criteria - 'collection': Manual collections where recordings are explicitly added The response includes synthetic playlists (negative IDs) that are automatically maintained by PostHog, along with custom playlists created by users. Use pagination with limit/offset for large result sets. Requires 'session_recording_playlist:read' permission.
  • List or delete persons with optional filters: This endpoint is for reading/deleting persons. For creating/updating, use the capture API, set/unset properties, or SDKs.
  • List organization domains with pagination: Fetch a list of an organization's domains with pagination using `limit` and `offset`. Access requires `organization_id` and a PersonalAPIKeyAuth. Optional parameters available. Provides domain info, verification, and SAML setup.
  • List organization integrations: Tool to list organization-level integrations with read-only access. Use when you need to view integrations scoped to an entire organization (e.g., Vercel, AWS Marketplace). Creation is handled by integration installation flows; deletion requires contacting support.
  • List organization invites with pagination: Retrieve a paginated list of all pending and active invites for an organization. This action lists all organization invites including: - Email address of invitees - Access level (1=member, 8=admin, 15=owner) - Invite status (expired/active) - Creator information - Optional custom messages Use pagination parameters (limit/offset) for large invite lists. The response includes total count and next/previous URLs for easy page navigation. Requires organization_member:read permission.
  • List organization members with pagination: List all members of a specific organization with pagination support. Returns detailed member information including user profiles, membership levels, authentication status, and join dates. Use this to discover who has access to an organization, audit membership, or integrate with user management workflows. Supports pagination via limit and offset parameters for handling organizations with many members. Requires organization_member:read permission.
  • List organization proxy records: Retrieve a paginated list of custom domain proxy records for an organization. Proxy records enable routing PostHog analytics through your own domain to bypass ad blockers. Each record includes the domain, CNAME target, status ('waiting', 'issuing', 'live'), and metadata. Use 'limit' and 'offset' parameters for pagination. Requires organization read access.
  • List organization roles with pagination: List all roles in an organization with pagination support. Returns role details including ID, name, creation timestamp, creator information, assigned members, and default status. Use limit and offset parameters for pagination through large role lists. Requires authentication with PersonalAPIKeyAuth.
  • List organization s batch exports with pagination: Retrieve paginated batch exports for an organization, with filters and optional limits. Includes team, interval, and status details. Access requires PersonalAPIKeyAuth with batch_export:read rights.
  • List organization s pipeline destinations: Retrieve a paginated list of an organization's pipeline destinations by ID, with optional count and offset parameters. Requires PersonalAPIKeyAuth (plugin:read). Returns details like ID, type, and organization info.
  • List organization s pipeline import apps: Retrieve a paginated list of pipeline import applications for a specified organization by ID. Supports optional 'limit' and 'offset' query parameters for result pagination. Requires an organization UUID and a Personal API Key for authentication.
  • List organization s pipeline transformations: Retrieve paginated pipeline transformation lists for an organization using `limit` and `offset`, requiring a UUID and PersonalAPIKeyAuth. Supports filtering and detailed views.
  • List paginated surveys for a project: Get paginated surveys for a project with its ID, using 'limit' and 'offset'. Needs PersonalAPIKeyAuth ('survey:read'). JSON output includes survey info, links, and metadata.
  • List pipeline destination configs with pagination: List pipeline destination configurations for a given project by ID, with optional pagination through 'limit' and 'offset' query parameters. Returns details such as plugin info and delivery rates. Authentication required.
  • List pipeline frontend app configs: List all pipeline frontend app configurations for a project. Pipeline frontend apps are plugins that add UI extensions to PostHog (e.g., custom visualizations, dashboards, etc.). Returns a paginated list of configurations including enabled status, order, plugin details, and filters. Use 'limit' and 'offset' parameters for pagination.
  • List product tours: Tool to retrieve a paginated list of product tours for a specific project. Use when you need to view all product tours configured in a project. Supports pagination with limit and offset, and search filtering.
  • List project actions with pagination and filters: Get paginated project actions with filters by format. Query params: limit, offset. Needs PersonalAPIKeyAuth for read. Includes ID, name, description, metadata.
  • List project batch exports with pagination: Retrieve an indexed list of batch exports for a specified project with optional pagination. View export details, statuses, and pagination links. Requires project ID and supports PersonalAPIKeyAuth.
  • List project configuration plugin logs: Retrieve logs for a specific plugin configuration within a project. Supports pagination with limit and offset query parameters. Requires project and plugin configuration IDs. Auth: PersonalAPIKeyAuth with plugin:read scope.
  • List project dashboard collaborators: Retrieve the list of collaborators for a specific dashboard within a project. This endpoint returns all users who have been explicitly added as collaborators to the dashboard, along with their access levels and timestamps. Dashboard owners and project admins are not included in this list as they have inherent access. **Parameters:** - project_id: The project identifier (string). Get from POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS. - dashboard_id: The dashboard identifier (integer). Get from POSTHOG_LIST_PROJECT_DASHBOARDS_WITH_PAGINATION. **Returns:** A list of collaborators with the following details for each: - user_uuid: Unique identifier of the collaborator - level: Access level (37 = can edit, 21 = can view) - added_at: Timestamp when the collaborator was added - updated_at: Timestamp of last update **Authentication:** Requires PersonalAPIKeyAuth with `dashboard:read` permission. **Note:** Returns an empty list if the dashboard has no explicit collaborators.
  • List project dashboard templates: Retrieve available dashboard templates for a PostHog project. Dashboard templates are pre-configured dashboards that help users quickly set up analytics for common use cases like user research, pirate metrics (AARRR), web analytics, error tracking, and more. Each template includes ready-to-use insights and visualizations. Returns a paginated list of templates with their configuration, including tiles, filters, and preview images. Use the 'limit' and 'offset' parameters to paginate through results.
  • List project dashboards with pagination: Get paginated dashboards for a project by ID, using 'limit' and 'offset'. Must authenticate with PersonalAPIKeyAuth. Includes count, pagination, and dashboard details.
  • List project early access features: Retrieve a paginated list of a project's early access features by ID with 'limit' and 'offset' parameters. An API key is needed. Includes feature info like creation date, stage, and documentation link.
  • List project experiments with pagination: Get a paginated list of experiments within a project using 'limit' and 'offset' parameters. Need a valid project ID and 'experiment:read' permission. Returns details like features and metrics.
  • List project export items with pagination: Retrieve a paginated list of export items for a specific project by ID with optional 'limit' and 'offset' query parameters. Requires PersonalAPIKeyAuth for export:read permission. Supports multiple export formats.
  • List project group types by id: List all group types configured for a PostHog project. Group types are used to organize entities (like companies, organizations, or teams) in PostHog analytics. Each project can have up to 5 group types (indexed 0-4). Returns an array of group type objects, each containing: - group_type: Unique identifier for the group type - group_type_index: Numeric index (0-4) - name_singular: Optional display name (singular form) - name_plural: Optional display name (plural form) Use this action before querying specific groups to discover available group types.
  • List project membership details: Retrieve a list of project membership details for a specified project by ID. Members and their roles, such as member or admin, are included along with their join and update timestamps. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control. To check if a project has access control enabled, use the POSTHOG_RETRIEVE_CURRENT_USER_PROFILE action and look for the "access_control" field in the team/project data.
  • List project pipeline configurations: List all pipeline transformation configurations for a specific project. Pipeline transformations enable you to modify, enrich, or filter events in realtime before they are ingested into PostHog. This endpoint returns a paginated list of all transformation configurations for the specified project. Use the `limit` and `offset` parameters to paginate through results.
  • List project plugin configurations: List all plugin configurations for a specific project. Plugin configurations define which plugins (apps) are installed and enabled for a project, along with their settings and execution order. This endpoint returns a paginated list of all plugin configurations for the specified project. Use the `limit` and `offset` parameters to paginate through results.
  • List project session recordings: Retrieve a paginated list of session recordings for a specific project, including viewing times and user interactions. Specify `project_id`, and use optional `limit` and `offset` query parameters to control result set size and starting point.
  • List project subscriptions with pagination: Retrieve a paginated list of subscriptions for a given project by its ID. Optional query params include 'limit' for results per page and 'offset' for results starting index. Authentication is required. Returns subscription details and navigation links.
  • List projects in organization with pagination: Projects for the current organization.
  • List session recording sharing configs: Retrieve a list of sharing configurations for a specific session recording in a project, including creation timestamps and access tokens. Requires project and recording IDs.
  • List specific type groups with pagination: List all groups of a specific group type. You must pass ?group_type_index= in the URL. To get a list of valid group types, call /api/:project_id/groups_types/
  • List unused organization pipeline transformations: Retrieve a list of unused pipeline transformations for a specified organization, identified by UUID. Includes details like name, plugin type, and configuration. Supports JSON response format.
  • List users with staff filter and pagination: API endpoint fetches a user list with staff filter, pagination (limit, offset), and requires a personal API key. Data includes UUIDs, emails, and organizational details.
  • List warehouse saved queries: Tool to retrieve warehouse saved queries for a project. Use when you need to list or search saved queries from the data warehouse. Supports pagination via page parameter and filtering via search term.
  • List web experiments: Tool to retrieve a paginated list of web experiments for a specific project. Use when you need to discover available web experiments. Supports pagination via 'limit' and 'offset' parameters.
  • Listprojectpipelineimportconfigs: List pipeline import app configurations for a specified project, with pagination options 'limit' and 'offset'. Requires a project ID and supports PersonalAPIKeyAuth for security. Responds with JSON objects including configuration details.
  • Manage feature flag enrichment for usage dashboard: 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 feature flags for local evaluation: Retrieve all feature flag definitions for a project to enable local evaluation. This endpoint returns flag configurations, cohort definitions, and group type mappings that allow SDKs and applications to evaluate feature flags locally without making additional API calls for each flag check. This improves performance and reduces latency when checking feature flags for users. Use this when implementing server-side local evaluation in your application or when you need to cache flag definitions.
  • Mark dashboard template as deleted: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Mark insight as viewed with configurable format: Marks one or more insights as viewed by the current user for a specified project. This endpoint records user engagement with insights and is idempotent. Requires `project_id` and `insight_ids` (a list of insight IDs to mark as viewed). Supports optional `format` parameter ('csv' or 'json') to control response serialization. Use this to track which insights a user has viewed, helping to surface new or unviewed insights in the UI or analytics.
  • Mark product onboarding complete: Tool to mark a specific product onboarding as complete for a PostHog project. Use when a user has finished onboarding for features like product_analytics, session_replay, feature_flags, surveys, error_tracking, or data_warehouse. Updates the project's onboarding completion status.
  • Mark project action as deleted: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Mark session recording playlist deleted: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Mark subscription as deleted by id: Mark a subscription as deleted (soft delete). Hard delete is not allowed for subscriptions. This action uses PATCH to set the "deleted" field to true.
  • Modify org info via uuid: PUT /api/organizations/{id}/: Update organization details by providing a UUID as 'id'. Supports JSON, form-urlencoded, multipart/form-data. Requires 'organization:write' permission. Returns updated organization data.
  • Move dashboard tile: Endpoint to move a tile from one dashboard to another. Requires `project_id` (in path), `id` (source dashboard ID in path), `tile` (object with `id` of the tile to move), and `toDashboard` (destination dashboard ID). Returns the updated source dashboard info after the tile has been moved.
  • Partial experiment update in project: Endpoint enables partial updates to an experiment in a project using PATCH, needing `project_id`, `experiment_id`, and various payload types. Returns updated details. Authentication is mandatory.
  • Partial update of a project insight: The PATCH endpoint supports partial insight updates in a project, allows format specification (CSV/JSON), and requires `PersonalAPIKeyAuth` and `insight:write` scope for access.
  • Partial update of a project s dashboard: Endpoint PATCH /api/projects/{project_id}/dashboards/{id}: Allows partial update of a project's dashboard with specified ID. Accepts JSON, form data, and provides a detailed response schema based on user license. Requires dashboard write access.
  • Partial update of a project s feature flag: 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.
  • Partial update of project notebook: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Partial update project annotation: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations.
  • Partially update project property definition: PATCH /api/projects/{project_id}/property_definitions/{id}/: Partially update a specific property definition by UUID in a project. Requires property_definition:write auth. No response body.
  • Patch Batch Export: Update an existing batch export configuration in PostHog by partially modifying fields like name, paused status, destination, or schedule. Use when you need to modify batch export settings without replacing the entire configuration.
  • Patch Customer Profile Config: Update a customer profile configuration by partially modifying fields like content, scope, or sidebar. Use when you need to modify specific fields of an existing customer profile config without replacing the entire object.
  • Patch Dataset: Tool to partially update a dataset in a PostHog project. Use when you need to modify dataset properties like name or description. Only the fields provided in the request will be updated; other fields remain unchanged.
  • Patch Dataset Item: Tool to partially update a dataset item by its ID in a PostHog project. Use when you need to modify specific fields of a dataset item such as input, output, metadata, or reference fields.
  • Patch Evaluation: Update an evaluation by patching specific fields. Use when you need to modify evaluation settings like description, enabled status, or configuration.
  • Patch External Data Source: Tool to update an external data source in PostHog by patching specific fields like description or configuration. Use when you need to modify an existing data source without replacing all fields.
  • Patch Insight Variable: Update an insight variable by partially modifying its properties (name, type, default value, etc.). Use when you need to modify specific fields of an existing insight variable without replacing the entire object.
  • Patch endpoint: Tool to partially update an endpoint for a project. Use when you need to modify specific fields of an existing endpoint without replacing the entire configuration.
  • Patch error tracking autocapture controls: Partially update an error tracking autocapture control configuration. Use this to modify settings like sample rate, URL triggers, event triggers, and match type for a specific autocapture control.
  • Patch experiment saved metric: Tool to partially update an experiment saved metric by ID in a PostHog project. Use when you need to modify specific fields of a saved metric configuration for experiments.
  • Patch file system: Tool to partially update a file system resource by UUID and project ID. Use when you need to update specific fields like last_viewed_at, metadata, or other file system attributes without replacing the entire resource.
  • Patch file system shortcut: Tool to partially update a file system shortcut in PostHog by its UUID. Use when you need to modify specific fields of an existing shortcut without replacing all data.
  • Patch hog function: Tool to partially update a hog function by UUID and project ID. Use when you need to modify specific fields of a hog function such as description, enabled status, filters, or configuration without replacing the entire resource.
  • Patch live debugger breakpoint: Tool to update a live debugger breakpoint by UUID and project ID. Use when you need to modify breakpoint properties like line number, enabled state, or condition without recreating it.
  • Patch persisted folder: Tool to partially update a persisted folder by ID for a PostHog project. Use when you need to modify specific attributes of an existing persisted folder configuration.
  • Patch product tour: Tool to partially update a product tour in PostHog. Use when you need to modify specific fields of an existing tour like description, archived status, dates, or content.
  • Patch warehouse saved query: Tool to partially update a warehouse saved query in PostHog. Use when you need to modify properties like name, query definition, or sync frequency. Only the fields provided in the request will be updated; other fields remain unchanged.
  • Patch warehouse tables: Tool to partially update a warehouse table by patching specific fields like name, format, or schema. Use when you need to modify an existing warehouse table without replacing all fields.
  • Patch web experiment: Tool to partially update a web experiment in PostHog. Use when you need to modify specific fields of an existing web experiment without replacing the entire configuration.
  • Pause Batch Export: Pause a batch export in PostHog to temporarily stop scheduled data exports. Use when you need to halt data exports without deleting the batch export configuration.
  • Pause Organization Batch Export: Pause an organization-level batch export in PostHog. Use when you need to temporarily stop scheduled data exports at the organization level without deleting the batch export configuration.
  • Person partial update via project id: This endpoint allows reading and deleting individuals. For creation or updates, use the capture API, `$set`/`$unset` properties, or SDKs.
  • Post Project Trends With Filters: The `/api/projects/{project_id}/insights/trend/` endpoint provides project trends in CSV/JSON, requires `project_id` and optional parameters, and needs 'PersonalAPIKeyAuth'. It outputs event data and cache status.
  • Prevent hard delete notebook by flagging: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Project Funnel Advanced Analytics: Create comprehensive funnel analysis for a PostHog project with advanced configuration options. Analyze user conversion through multi-step funnels with customizable time windows, ordering rules, visualization types, breakdowns, and exclusions. Requires at least 2 funnel steps defined via 'events' or 'actions'. Returns conversion rates, drop-off points, and completion metrics in JSON or CSV format. Supports strict/ordered/unordered step sequences, property-based segmentation, and group-level aggregation.
  • Rearrange frontend app pipeline configs: Rearrange (reorder) the configuration of frontend apps in a project's data pipeline. Pipeline frontend apps are plugins that add UI extensions to PostHog such as custom visualizations, dashboards, and interactive components. This endpoint allows you to change the order in which these frontend apps are loaded or displayed, and update their configuration settings. **Usage**: Provide the project_id and the configuration details you want to update, including the order parameter to control sequencing. The order parameter determines the priority/sequence of frontend app execution. **Permissions**: Requires 'plugin:write' permission for the specified project. **Note**: This endpoint modifies existing frontend app configurations. Use the list_pipeline_frontend_app_configs action first to see current configurations before rearranging them.
  • Rearrange pipeline transformation configs: Rearrange the execution order of pipeline transformation configurations for a project. This endpoint allows you to change the order in which transformation plugins are executed in the data pipeline. You can also enable/disable specific transformations or update their configuration settings. **Important**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It can only be used with browser session authentication. **Use case**: When you have multiple transformation plugins configured for a project, this endpoint lets you control their execution order by updating the 'order' field, or toggle them on/off using the 'enabled' field. **Note**: To list existing transformation configs first, use the GET endpoint: `/api/projects/{project_id}/pipeline_transformation_configs/`
  • Rearrange project import app configurations: Rearrange app import settings in a project using PATCH /api/projects/{project_id}/... by updating plug-in order and status. Requires `project_id` and a JSON with configurations.
  • Rearrange project pipeline destination configs: Rearrange the execution order of pipeline destination configurations for a project. This endpoint allows you to change the order in which destination plugins receive events in the data pipeline. You can also enable/disable specific destinations or update their configuration settings. **Important**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It can only be used with browser session authentication. **Use case**: When you have multiple destination plugins configured for a project, this endpoint lets you control their execution order by updating the 'order' field, or toggle them on/off using the 'enabled' field. **Note**: To list existing destination configs first, use the GET endpoint: `/api/projects/{project_id}/pipeline_destination_configs/`
  • Reconfigure plugin order and status in project: Reconfigure the execution order and status of plugin configurations within a project. This endpoint allows you to update plugin configuration settings including: - Execution order (which plugins run first) - Enabled/disabled status - Configuration parameters **IMPORTANT:** This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser/UI access only). **Note:** PostHog has transitioned from "plugins" to "pipeline destinations/transformations". This endpoint is part of the legacy plugin system and may have limited functionality. Consider using the pipeline destination/transformation endpoints instead for new integrations.
  • Remove domain by uuid from organization: Delete a specific domain by its UUID within an organization, given valid organization and domain IDs. Requires 'organization:write' permission; no response body on success (204).
  • Remove early access feature from project: Delete an early access feature by ID from a specified project. Requires a UUID for the feature and the project's ID. Authentication via PersonalAPIKeyAuth is necessary. No response body upon success.
  • Remove explicit project member by uuid: Delete a specific user (by UUID) from the explicit members of a given project. Requires 'project_id' and member's 'parent_membership__user__uuid'. Returns 204 on success with no response body. Note: This endpoint only works for projects with access control enabled (private projects). Access control is an Enterprise feature. If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error.
  • Remove feature flag role access by id: 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. Expect no response body upon success (204).
  • Remove member from organization by uuid: Remove a member from a PostHog organization by their user UUID. This action is idempotent - calling it multiple times with the same parameters will always succeed without error, even if the member has already been removed or never existed. Use this to revoke a user's access to an organization, remove team members, or clean up organization memberships. The member will immediately lose access to all projects and data within the organization. API: DELETE /api/organizations/{organization_id}/members/{user_uuid}/ Returns: - HTTP 204: Member successfully removed - HTTP 404: Member not found (treated as success due to idempotent behavior) Requires: 'organization_member:write' permission Note: You cannot remove yourself from an organization using this action. To get user UUIDs, use the list_organization_members_with_pagination action.
  • Remove org pipeline import app by id: Delete a specific pipeline import app plugin associated with an organization by ID. Requires a personal API key with write permissions for plugins. Responds with no content on success (204).
  • Remove organization batch export by uuid: Delete a specific batch export by its UUID in an organization. Requires PersonalAPIKeyAuth with batch_export:write permission. Returns 204 on success with no response body.
  • Remove organization pipeline destination: Delete a specific pipeline destination in an organization by ID. Requires an integer 'id' of the destination, and the organization's 'uuid'. Auth: PersonalAPIKey with plugin:write. No return body on success (204).
  • Remove organization pipeline transformation: Delete a specific pipeline transformation plugin for an organization by ID. Requires a UUID for the organization and an integer for the plugin. Auth: PersonalAPIKey with write access. No response body on success (204).
  • Remove organization plugin by id: Delete a specific plugin (by its integer ID) from the organization (identified by UUID) with no response body on success. Requires plugin:write authorization via PersonalAPIKeyAuth.
  • Remove organization proxy record: Delete a proxy record by ID for a specific organization. Requires an authenticated user with 'organization:write' permission. On success, it responds with a 204 status and no content.
  • Remove organization role by id: Delete a role with a specific UUID in an organization. Requires 'organization:write' permission. No response body on success (204). Path parameters include 'id' and 'organization_id'.
  • Remove project dashboard collaborator: Remove a collaborator from a project dashboard. Provide the project_id, dashboard_id, and user's UUID. Requires 'dashboard:write' permissions. Expect no response body on success (204). Project ID guidance at '/api/projects/'.
  • Remove project event definition: Delete an event definition by providing its UUID and the associated project ID. Requires `event_definition:write` permission. Successful deletion returns no content (204 status).
  • Remove project experiment by id: Soft-delete a specific experiment by its unique integer ID within a project. Uses PATCH to set the 'deleted' field to true since PostHog experiments do not support hard DELETE. Requires a Project ID and personal API key with experiment write permission.
  • Remove project plugin configuration: DELETE /api/projects/{project_id}/plugin_configs/{id}/: Removes a specific plugin configuration by ID from a given project. Requires 'plugin:write' permissions and project ID. Returns 204 with no body on success.
  • Remove property definition by uuid: Delete a property definition by providing its UUID and the associated project ID. Requires 'property_definition:write' permission. On success, no response body is returned (204).
  • Remove rolemembership by uuid: Remove a user from a custom organization role by deleting their role membership. This action permanently removes the specified user's membership in the role, revoking any permissions associated with that role. The operation is idempotent - attempting to remove a non-existent membership returns success. Use this action to: - Remove a user's access to a custom role - Revoke role-based permissions from a user - Clean up role memberships when users change responsibilities - Manage access control in your PostHog organization Requirements: - The organization must have access control enabled - You must have write permissions for the organization - The role must exist in the specified organization The action returns 204 No Content on successful deletion. Note that this removes the role membership but does not delete the user from the organization or the role itself.
  • Remove session recording from playlist: Remove a session recording from a playlist in a PostHog project. This action only removes the recording from the playlist - it does not delete the recording itself. The recording remains available in the project and can be re-added to playlists later. Requires project_id (get via /api/projects/), short_id (playlist identifier), and session_recording_id. Returns HTTP 204 on success. The operation is idempotent - removing a non-existent recording succeeds. Useful for curating playlists by removing irrelevant or accidentally added recordings. Works with 'collection' type playlists.
  • Remove specific project batch export: Delete a specific batch export by providing the UUID and project ID. Requires a personal API key with 'batch_export:write' permissions. Responds with no body upon successful deletion (HTTP 204).
  • Remove specific project query: (Experimental)
  • Replace Desktop Recording: Replace a desktop meeting recording in PostHog using PUT. Use when you need to completely replace all recording data including metadata, transcript, participants, and status. Unlike PATCH, this requires all mandatory fields and replaces the entire resource.
  • Reset person distinct ID: Reset a distinct_id for a deleted person. This allows the distinct_id to be used again. Use when you need to recycle a distinct_id from a previously deleted person for reuse.
  • Retrieve Current User Profile: Retrieve the authenticated user's own profile (and associated org/team context) without needing to know their UUID. Use this to verify authentication is working and to obtain the project ID needed for subsequent API requests.
  • Retrieve Org Pipeline Repo Details: Retrieve details for repository pipeline destinations within a specific organization by its UUID. Returns objects like ID, name, and URLs with support for various plugin types (local, custom, etc.).
  • Retrieve Pipeline Plugin Source: Retrieve the source details of a pipeline transformation for a specific plugin by ID within an organization. Access plugin metadata, like its type, URL, and config, relevant to organizing and managing pipeline operations.
  • Retrieve Retention Insights: Retrieve retention insights for a specified project using PostHog's Query API. Analyzes how users return over time based on specified events or actions. Uses the /api/projects/{project_id}/query/ endpoint with a RetentionQuery. Requires a project ID and authenticated access with 'insight:read' permission. If no query is provided, returns default retention data for $pageview events over 7 days.
  • Retrieve and delete project person trends: This endpoint is for reading and deleting persons. Use the capture API, `$set`/`$unset` properties, or SDKs for creating/updating persons.
  • Retrieve app metrics by ids: Retrieve performance and error metrics for a specific plugin configuration (app) in a PostHog project. This action returns time-series data showing the success rate, failures, and retry statistics for a plugin configuration over the last 31 days. Use this to monitor the health and performance of installed apps/plugins in your PostHog project. The metrics include: - Daily counts of successful executions - Daily counts of executions that succeeded after retrying - Daily counts of failed executions - Aggregated totals across the time period - Error details (if any errors occurred) To find available plugin configuration IDs, first call the list_project_plugin_configurations action. Requires a personal API key with plugin:read access.
  • Retrieve app metrics error details: Retrieves detailed error information for a specific app metric (plugin config) within a project. This endpoint provides error details for plugins/apps that have experienced failures. If the plugin config has no recorded errors, the API returns a 403 Forbidden response. To check if errors exist before calling this endpoint, use the base app_metrics endpoint which shows error counts. Parameters: - project_id: The ID of the project containing the plugin config - id: The plugin config ID (integer) for which to retrieve error details Note: This endpoint only returns data when errors have been recorded for the specified plugin config. Check the failures count in the base app_metrics endpoint first to determine if error details are available.
  • Retrieve async query status by id: (Experimental)
  • Retrieve batch export details: Retrieve details of a specific batch export by its UUID in a project. Requires project_id and batch export ID. Supports PersonalAPIKeyAuth and responds with export details including destination, interval, and status.
  • Retrieve cohort activity details: Retrieve activity details for a specific cohort within a project. Requires a project ID and cohort ID, returning status, filters, query, and creator data. Auth: PersonalAPIKeyAuth with 'activity_log:read' scope.
  • Retrieve cohort person details: Retrieve details of persons within a cohort by its unique ID in the specified project. The endpoint supports JSON and CSV formats and requires authorization. Project and cohort IDs must be provided.
  • Retrieve dashboard template details by uuid: Fetch specific dashboard template details by UUID in a project with 'dashboard_template:read' rights using a PersonalAPIKeyAuth. Returns name, description, filters, and creation info.
  • Retrieve dashboard template schema: Retrieve the JSON schema for dashboard templates of a specific project. Pass the project_id in the path and receive details such as template name, description, filters, and more. Supports GET requests.
  • Retrieve event definition by uuid: Retrieve an event definition by its UUID within a specified project. Requires a project_id and an event definition ID, with access secured by PersonalAPIKeyAuth. (GET /api/projects/{project_id}/event_definitions/{id})
  • Retrieve event definitions by project id: Retrieve definitions for events within a specified project by providing the unique project_id. Requires PersonalAPIKeyAuth privileges for event_definition:read. No response body provided upon a successful call.
  • Retrieve experiment details by ids: Access detailed experiment info within a project using unique `experiment ID` & `project ID`, with 'experiment:read' rights. Response includes dates, feature flag key, metrics, creator details.
  • Retrieve experiments requiring flag implementation: Retrieve details for experiments that require feature flag implementation in a specific project. Requires a valid 'project_id' and user must have 'experiment:read' permission. Returns information like experiment names, dates, flags, and creation data.
  • Retrieve export unsubscribe configs: Retrieves export unsubscribe configurations for pipeline import apps in an organization. This endpoint returns a list of configurations that define how users can unsubscribe from various pipeline import app exports. Each configuration includes an ID, plugin type identifier, and configuration settings. Use case: Check which export import apps support unsubscribe functionality and their configuration details. This is useful for managing data export preferences and compliance requirements. Note: This endpoint may require specific organization permissions or enterprise features. If you receive a 403 Forbidden error, the organization may not have access to pipeline import apps or this specific feature may not be enabled.
  • Retrieve feature flag activity details: Manage feature flags (creation, reading, updating, and deleting) using PostHog's guides or via JavaScript Library/endpoint for user-specific flag status. [Details](https://posthog.com/docs/user-guides/feature-flags)
  • Retrieve feature flag details: Retrieve detailed information about a specific feature flag in a PostHog project. This action fetches comprehensive details including: - Basic information (id, name, key) - Filter configuration and rollout percentages - Status (active, deleted) - Creator and modification history - Associated experiments, surveys, and features - Analytics and dashboard configurations - Access control and permissions - Tags and metadata Use this to inspect feature flag configuration, check status, or gather information before making updates. Requires a valid project_id and feature flag id.
  • Retrieve feature flag role access details: Retrieve details for a specific role's access to a feature flag within a project. Requires 'feature_flag_id', 'id' for role access, and 'project_id'. Returns a JSON object with access details.
  • Retrieve feature flags activity log: Learn to manage feature flags by creating, reading, updating, and deleting them. Use PostHog's JavaScript Library or endpoint for application integration. Details in the [docs](https://posthog.com/docs/user-guides/feature-flags).
  • Retrieve feature flags evaluation reasons: Manage feature flags—create, read, update, delete—using the PostHog JavaScript Library or endpoint for user-specific flag status. (More in docs).
  • Retrieve filtered project property definitions: Get property definitions for a project using project_id, with filters for event names, property types, exclusions, and numerical or feature flags. Also, view properties relevant to specific events.
  • Retrieve funnel insights in project: Execute a funnel analysis for a specific project. Requires specifying funnel steps via 'events' or 'actions' parameter (at least 2 steps). Returns conversion data showing how users progress through the funnel. Supports JSON/CSV output formats.
  • Retrieve group property definitions by project id: Retrieve property definitions for a group within a project by providing the project ID. This endpoint returns details like group type index, key, and creation time in JSON format.
  • Retrieve group property values by index and key: Retrieve property values by 'group_type_index' and 'key' within a 'project_id'. Parameters must be provided. Output is a JSON with property details and creation timestamp.
  • Retrieve hedgehog configuration by uuid: Retrieve user's hedgehog configuration details by their UUID. This endpoint returns hedgehog-related settings (PostHog's mascot customization) for a user. Use '@me' as the uuid parameter to reference the current user. IMPORTANT: This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser login) and will return a 403 "permission_denied" error with message "This action does not support Personal API Key access" when called with an API key. This is a limitation of the PostHog API, not the action implementation.
  • Retrieve historical app metrics export: Retrieve historical export data for app metrics by supplying the `project_id` and `plugin_config_id`. Requires `plugin:read` permission. No response body provided upon a successful request.
  • Retrieve important project activity log: Retrieve a log of important activities and changes for a specified project. This endpoint returns significant project events including creation, updates, and deletions of resources like dashboards, feature flags, insights, session recording playlists, tags, and other key entities. Each entry includes the activity type, affected item details, user information (if user-initiated), timestamps, and a detailed change log. System-generated activities are also included. Results are paginated and ordered by most recent first. Requires a `project_id`. Use the LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS action to obtain available project IDs.
  • Retrieve insight sharing configurations: Retrieve sharing configurations for a specific insight within a project, requiring project and insight IDs. Validates access via PersonalAPIKeyAuth. Returns data such as creation time and access tokens.
  • Retrieve last viewed insights for user: Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.
  • Retrieve matching events for session recording: Retrieves event IDs matching a filter with one session ID and at least one event/action criterion. Intended for internal use and may have sudden changes. IMPORTANT: This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser login) and will return a 403 "permission_denied" error with message "This action does not support Personal API Key access" when called with an API key. This is a limitation of the PostHog API, not the action implementation.
  • Retrieve notebook activity for project: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Retrieve notebook activity log: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Retrieve notebook details: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Retrieve or delete person retention data: 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: Retrieves persons who entered or progressed through a funnel in the specified project. Note: This endpoint requires that a funnel has been previously created and analyzed in PostHog. The endpoint returns person-level data for funnel analysis. For creating or analyzing new funnels, use the insights API endpoint at /api/projects/{project_id}/insights/funnel/. This is a read-only endpoint. To create or update persons, use the capture API with $set and $unset properties, or use PostHog SDKs.
  • Retrieve org pipeline transformation activity: Retrieve pipeline transformation activity details for a specific organization using its UUID. Returns data such as plugin type, name, description, and related metrics. Requires 'organization_id' in URL path.
  • Retrieve organization pipeline frontend app details: Retrieve pipeline frontend app details for an organization using its 'organization_id' (UUID). Response includes ID, plugin type, name, URL in JSON format, covering various plugin types.
  • Retrieve organization pipeline unsubscribe configs: Retrieve export unsubscribe configurations for an organization's pipeline frontend apps. Returns a list of unsubscribe configurations defining how users can opt out of frontend app exports (e.g., notification bars, bug reporters). Each config includes an ID, plugin type, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_CURRENT_USER_PROFILE to get it. **IMPORTANT**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It may return a 403 error stating "This action does not support Personal API Key access" when used with API keys.
  • Retrieve organization plugin activity: Retrieve activity details for plugins in a specified organization by ID. Supports various plugin types, including local, custom, and repository. Response includes plugin's id, name, type, and relevant metrics. Requires a valid UUID for 'organization_id'.
  • Retrieve organization plugin details: Retrieve a specific plugin's details for an organization. Requires the plugin's integer ID and the organization's UUID. Only returns plugin info if authenticated with 'plugin:read' permission. Responds with plugin data in JSON format.
  • Retrieve organization plugin repository details: Retrieve plugin repository details for a specific organization by its UUID, including plugin type, name, URL, and more. Accessible via GET request to '/api/organizations/{organization_id}/plugins/repository/'.
  • Retrieve organization plugin unsubscribe configs: Retrieve export unsubscribe configurations for plugins in an organization. Returns a list of unsubscribe configurations for various plugin types (local, custom, repository, source, inline) that define how users can opt out of plugin-based exports. Each config includes details like plugin ID, type, name, description, URL, icon, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_PAGINATED_ORGANIZATION_LIST to get it. **IMPORTANT**: This endpoint requires session-based authentication and may NOT support Personal API Key access. It may return a 403 Forbidden error when used with API keys. The endpoint may not be available on all PostHog instances or plans, or may require specific organizational permissions. If you receive a 403 error, the organization may not have access to this feature or the endpoint may be deprecated/removed from the PostHog API.
  • Retrieve organization project details: Projects for the current organization.
  • Retrieve organization role details: Retrieve the details of a specific role within an organization using its UUID. Requires the organization's UUID and role's UUID in the path and is protected by PersonalAPIKeyAuth with 'organization:read' scope. Returns role data in JSON.
  • Retrieve organization s unused pipeline apps: Retrieve unused pipeline import apps for a specified organization. Endpoint requires an organization_id (UUID) and returns details like plugin type, name, description, and more in JSON format.
  • Retrieve paginated organization list: Retrieve a paginated list of organizations with optional 'limit' and 'offset' query parameters. The response includes organization details like ID, name, and membership level, with secure access controlled via PersonalAPIKeyAuth.
  • Retrieve persisted folder: Tool to retrieve a specific persisted folder by its UUID and project ID. Use when you need to get details about a persisted folder including its type, path, and timestamps.
  • Retrieve person details by id: This endpoint is used to read and delete persons. For creating or updating, use the capture API, `$set` and `$unset` properties, or SDKs.
  • Retrieve person details by project: This endpoint allows reading and deleting persons; for creation or updates, use the capture API, the `$set` and `$unset` properties, or SDKs.
  • Retrieve person property values: Retrieve unique values for a specific person property across all persons in a project. Returns a list of distinct values for the specified property key, along with the count of persons who have that value. Useful for understanding the distribution of person properties like cities, countries, email domains, or any custom person property. Example use cases: - Get all unique cities where users are located ($geoip_city_name) - Get all unique email domains in your user base (extract from email property) - Get distribution of any custom person property Note: For person creation or updates, use the capture API or SDKs.
  • Retrieve person s activity and delete options: This endpoint is for reading and deleting persons; for creating/updating, use the capture API, `$set`/`$unset` properties, or SDKs.
  • Retrieve persons funnel correlation data: **Note**: This endpoint path appears to be incorrectly defined or deprecated in the PostHog API. The documented endpoint `/api/projects/{project_id}/persons/funnel/correlation/` returns 403 Forbidden, suggesting it either: 1. Does not exist as a standalone endpoint (correlation data may be accessed via `/api/projects/{project_id}/persons/funnel/` with query parameters) 2. Is an Enterprise Edition feature requiring a paid plan 3. Has been deprecated in favor of other funnel correlation endpoints For funnel correlation analysis, consider using: - `GENERATE_PROJECT_FUNNEL_CORRELATION_INSIGHT` to create correlation insights - `RETRIEVE_PROJECT_FUNNEL_CORRELATION_INSIGHTS` to retrieve correlation insights - `RETRIEVE_OR_DELETE_PROJECT_PERSONS_FUNNEL_DATA` for general funnel persons data This action requires additional query parameters beyond project_id to specify the funnel configuration (events, date ranges, correlation type, etc.) which are not currently defined in the request schema.
  • Retrieve pipeline destination activity: Retrieve activity details for pipeline destinations within an organization. **Parameters:** - `organization_id` (required): UUID-formatted organization identifier **Returns:** JSON object with pipeline destination activity data including plugin IDs, names, versions, update information, and configuration details. **Note:** This endpoint requires session-based authentication and does not support Personal API Key access.
  • Retrieve pipeline destination config details: Retrieve details of a specific pipeline destination config for a project by its ID. Requires project ID and destination config ID. Supports PersonalAPIKeyAuth for read access. Responds with config details including plugin info, status, and timestamps.
  • Retrieve pipeline destination details: Fetch a pipeline destination's details by ID and organization UUID, using a PersonalAPIKeyAuth with read access to plugins. Returns JSON with plugin info.
  • Retrieve pipeline destination plugin details: Retrieve details of a specific pipeline destination plugin within an organization by its unique ID. The response includes various properties like name, description, URL, and plugin type for the given organization UUID.
  • Retrieve pipeline frontend app activity: Retrieve activity details for pipeline front-end apps within a specified organization by organization ID. Returns JSON object with app properties such as ID, type, name, and configuration. UUID path parameter required.
  • Retrieve pipeline frontend app details: Retrieve detailed information about a specific pipeline frontend app within an organization. Pipeline frontend apps are site apps that inject code into websites to provide features like notification bars, bug reporters, pineapple mode, and early access features. This action returns comprehensive details including the app's configuration schema, version information, capabilities, and metadata. Use LIST_ORGANIZATION_S_PIPELINE_FRONTEND_APPS to discover available app IDs first, then use this action to get detailed information about a specific app. Required parameters: - organization_id (UUID): Use RETRIEVE_CURRENT_USER_PROFILE to get your organization ID - id (integer): The unique app ID from the list action
  • Retrieve pipeline frontend app source details: Retrieve details for a specific pipeline frontend app's source by its ID within an organization. Requires an integer ID of the app and UUID of the organization. Returns JSON object with app properties.
  • Retrieve pipeline frontend plugin config: Retrieve the frontend-specific configuration for a pipeline frontend app by its config ID and project ID. This endpoint returns only the client-side configuration that the frontend app needs to run in the browser, such as site app settings, UI customization options, and feature toggles. This is different from the full config endpoint which includes server-side details like enabled status, order, and timestamps. Pipeline frontend apps are plugins that extend PostHog's UI with custom visualizations, site apps, notification bars, and other frontend components. Returns: A configuration object with frontend-specific settings. The structure varies depending on the type of frontend app (e.g., Notification Bar, Pineapple Mode, Early Access Features, etc.). Raises: ExecutionFailed with 404 status code if the config doesn't exist or 403/401 if you don't have permission to access it. Permissions required: Access to the project and pipeline frontend app configs.
  • Retrieve pipeline import apps activity: Retrieve activity details of pipeline import apps for a given organization. Requires 'organization_id' (UUID). Returns app ID, type, name, URL, and other metadata. Supports 'local', 'custom', 'repository', 'source', and 'inline' plugin types.
  • Retrieve pipeline plugin details by id: Retrieve detailed information about a specific pipeline transformation plugin by ID. Returns comprehensive plugin details including: - Plugin type (inline/custom), name, and description - Configuration schema for setting up the plugin - Capabilities (supported methods like processEvent, setupPlugin) - Version information (tag, latest_tag) - Organization ownership details - Availability for Hog function migration Use this to understand how to configure a pipeline transformation before creating a configuration for it. Requires organization-level access.
  • Retrieve pipeline transformation frontend config: Retrieve the frontend configuration details for a specific pipeline transformation by ID within a given project. This endpoint requires the project ID and transformation config ID in the path.
  • Retrieve plugin source details: Retrieve plugin source details by organization and plugin ID. Requires integer 'id' for the plugin and 'organization_id' as UUID. Responds with plugin attributes including type, name, and URL.
  • Retrieve plugin update info: 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. It returns details such as plugin type, name, and latest version.
  • Retrieve plugin update status: Retrieve the latest update status for a specific plugin, identified by its integer ID, within an organization specified by UUID. Check compatibility and change logs.
  • Retrieve project action details by id: Get details on a project action by ID. Supports JSON/CSV format via query. Needs 'project_id' and 'id' path parameters. Secured by PersonalAPIKeyAuth.
  • Retrieve project activity details: Retrieve the activity log for a specified project, showing recent changes and events. Returns a paginated list of activity entries including user actions, system events, and changes to resources like dashboards, feature flags, insights, cohorts, and other entities. Each entry includes details about what changed, who made the change, timestamps, and whether it was a user or system action. Useful for auditing project changes, tracking team activity, and understanding the history of modifications to your PostHog project resources. Requires a `project_id`. Use the LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS action to obtain available project IDs.
  • Retrieve project activity insights: Retrieve the activity log history for insights in a specific project. Returns a paginated list of all insight-related activities (created, updated, deleted) with details about who performed each action and when. Useful for auditing changes, tracking insight modifications, and understanding insight usage patterns. Supports both JSON (default, structured data) and CSV formats for export. Requires an API key with activity_log:read permission.
  • Retrieve project activity log with pagination: Retrieve a project's activity log with cursor-based pagination. Returns activities like resource creation, updates, and deletions with details about the user who performed the action, timestamps, and change history. Use the cursor parameter from the 'next' field to fetch subsequent pages of results.
  • Retrieve project annotation details: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations.
  • Retrieve project cohort details: Retrieve detailed information about a specific cohort within a project using its ID. Requires project ID and cohort ID; returns cohort details including name, creator info, and status. Auth: PersonalAPIKeyAuth with cohort:read permission.
  • Retrieve project cohorts activity log: Retrieve activity log for a specific project's cohorts. Requires a project_id and PersonalAPIKeyAuth with activity_log:read permission. Response includes cohort details and creator info.
  • Retrieve project cohorts with pagination: Retrieve a paginated list of cohorts for a specific project using `project_id`. Supports `limit` and `offset` query params to customize the response. Requires `PersonalAPIKeyAuth` with `cohort:read` permissions.
  • Retrieve project early access feature details: Retrieve details of a specific early access feature in a project by ID. Requires project_id and feature UUID. Must have 'early_access_feature:read' permission. Returns feature details including status, flag info, and timestamps.
  • Retrieve project event details by id: Retrieve details for a specific event by ID within a project. Supports CSV or JSON format. Requires project_id in path and adheres to PersonalAPIKeyAuth for security.
  • Retrieve project event values: Retrieve event values for a specific project by ID. Supports querying in CSV or JSON format. Requires a project_id and personal API key with query:read permission. Responds with event details such as ID, distinct_id, properties, etc.
  • Retrieve project experiment results: Retrieve experiment timeseries results within a project by project and experiment ID. Aggregates daily results into a timeseries format for frontend compatibility. Requires project_id and experiment id in the path, plus metric_uuid and fingerprint query parameters. Returns experiment timeseries details in JSON, with authentication via PersonalAPIKeyAuth.
  • Retrieve project export details: Retrieve detailed info on a specific export of a project using its unique ID. Requires project ID and supports various export formats like PNG, PDF, CSV, and XLSX. Auth: PersonalAPIKeyAuth with export:read scope.
  • Retrieve project funnel correlation insights: Retrieve funnel correlation insights for a specific project. Analyzes which events or properties correlate with conversion success or failure in a funnel. Requires defining a funnel with at least 2 steps via 'events' or 'actions'. Returns correlation data showing which factors positively or negatively impact funnel conversion rates. Supports JSON/CSV output formats.
  • Retrieve project group details by key and type: Retrieves specified group details within a project by group key and type index. Requires 'group_key', 'group_type_index', and 'project_id'. Responds with group details, including creation timestamp.
  • Retrieve project insight activity data: Retrieve insights activity for a specific project and insight ID, offering data in JSON or CSV format. Requires project_id and insight id in the path, with optional data format query. Secure access via PersonalAPIKeyAuth.
  • Retrieve project insight details: Retrieve details for a specific project insight by ID, with options to format as JSON/CSV, request refresh, and specify dashboard context. Supports PersonalAPIKeyAuth with insight read access. Responses include metadata, results, and caching info.
  • Retrieve project insights with pagination: The GET `/api/projects/{project_id}/insights/` endpoint retrieves a paginated list of insights for a specified project. Filter by creator, response format (CSV/JSON), and use limit/offset for result batching. Requires `insight:read` permission.
  • Retrieve project member details by uuid: Retrieve detailed information about a specific user's membership level and status within a project by their UUID. Access project members' data, roles, and timestamps. (GET /api/projects/{project_id}/explicit_members/{uuid}) Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control.
  • Retrieve project person activity: This endpoint allows reading and deleting individuals. For creating or updating, use the capture API, `$set`/`$unset` properties, or SDKs.
  • Retrieve project session values: Retrieve session values for a specified project. Pass the project_id in the URL path to obtain the information. Only the project's ID is required as a parameter. No response body for the 200 OK status code.
  • Retrieve project subscription details: Retrieve a specific subscription for a project, identified by 'project_id' and 'id'. Requires valid API key with read access. Supports GET method, returns subscription details including frequency, type, and creator info.
  • Retrieve project trend insights: Retrieves saved trend insights from a PostHog project. Returns a list of all trend insights or a specific insight by short_id. Supports pagination via limit/offset and CSV/JSON output formats. Use this to access previously created trend analysis reports. For creating new trend insights, use the POST trends endpoint instead. Requires PersonalAPIKeyAuth authentication.
  • Retrieve properties and events association: 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: Retrieve details of a specific property definition by UUID within a project. Requires project_id and property definition id. Security: PersonalAPIKeyAuth with read access. No response body provided.
  • Retrieve recordings from playlist: Retrieve the list of session recordings within a playlist. Returns paginated results containing recording details like duration, activity counts, and timestamps. Use this to access recordings that have been added to a specific playlist in a project.
  • Retrieve related project groups: Retrieve related groups for a specific project and user. Requires 'project_id' (path), 'group_type_index', and user 'id' (query). Returns group details with type, key, and creation date.
  • Retrieve session property definitions: Retrieve property definitions for a specific project by providing the project's ID. Access this GET endpoint at `/api/projects/{project_id}/sessions/property_definitions/`. Project ID is mandatory. No response body is returned upon a successful call.
  • Retrieve session recording details: Retrieve detailed information about a specific session recording by providing the session's UUID and associated project ID. The response includes metrics such as duration, activity, timestamps, and user data. Authentication is required.
  • Retrieve session recording error clusters: Retrieve error clusters from session recordings for a specified project. This endpoint provides details on user interactions, console logs, and activity times in JSON format, requiring the project ID in the path.
  • Retrieve session recording properties: Retrieve properties of session recordings for a given project by ID, including activity metrics, timestamps, and participant details. Requires project_id in the path. Returns JSON data with recording details.
  • Retrieve session recording snapshots: Snapshots for a session can be loaded from S3 (if old) or Redis (if recent). Clients call the API without a source to get supported sources, then per source for snapshots. API v1 is deprecated; ClickHouse support removed.
  • Retrieve specific batch export details: Retrieve details of a specific batch export for an organization by its UUID. Requires a PersonalAPIKeyAuth with 'batch_export:read' permission. Responses include export details like name, model, destination, interval, and more.
  • Retrieve specific batch export run details: Retrieve details for a specific batch export run within a project by ID. Requires a UUID for batch_export_id and run ID. Provides run status, record count, timestamps, latest error, and intervals. Security: PersonalAPIKeyAuth.
  • Retrieve specific domain details: Retrieve complete details of a specific authentication domain within an organization by its UUID. Returns domain verification status, SAML SSO configuration, JIT provisioning settings, and SSO enforcement policies. Use this to check if a domain has been verified via DNS, view SAML configuration details, or audit authentication settings for a specific domain. Returns 200 with domain details on success, 404 if the domain doesn't exist or you don't have access. Requires authentication with `organization:read` scope.
  • Retrieve specific exported asset content: Retrieve the content of a specific exported asset by ID within a project. Requires 'export:read' permission. Supports fetching details like creation time, format (PNG, PDF, CSV, Excel), etc.
  • Retrieve specific historical plugin export: Retrieve historical export data for a specific plugin configuration within a project. Requires project, plugin config, and export item IDs. Auth via PersonalAPIKeyAuth. No body in 200 response.
  • Retrieve specific pipeline frontend app config: Retrieve the configuration details of a specific pipeline frontend app by providing its unique ID and the associated project ID. Pipeline frontend apps are plugins that extend PostHog's UI with custom visualizations, dashboards, and other frontend components. Returns config details including: - id: Unique identifier for the config - enabled: Whether the app is active - order: Display order in the UI - plugin: Plugin ID and metadata - config: Plugin-specific configuration - filters: Event filters applied - created_at, updated_at: Timestamps Note: Returns 404 error if the config ID doesn't exist in the specified project. Permissions required: 'plugin:read'.
  • Retrieve specific project dashboard details: Retrieve details of a specific dashboard within a project. Requires a dashboard ID & project ID, and returns information such as dashboard properties, owner, and access levels. Auth: PersonalAPIKeyAuth[dashboard:read].
  • Retrieve survey activity logs: Retrieve activity logs for specific survey in a project, identified by UUIDs. Requires valid API key with 'activity_log:read' permissions. Supports JSON response detailing survey's properties, types, and creator info.
  • Retrieve survey details with uuid and project id: Retrieve survey details using survey UUID and associated project ID. Supports secure access with 'PersonalAPIKeyAuth'. Returns survey name, type, linking, targeting flags, creator info, and questions with branching logic descriptions.
  • Retrieve survey responses count by project id: Retrieve the count of survey responses for a specific project by its ID. It requires the project_id parameter and returns details like the survey type, linked flags, and creator info.
  • Retrieve unsubscribed pipeline configs: Retrieve export unsubscribe configurations for an organization's pipeline destinations. Returns a list of unsubscribe configurations defining how users can opt out of data exports to destinations (e.g., S3, BigQuery, Snowflake, Redshift). Each config includes an ID, plugin type, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_CURRENT_USER_PROFILE or POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS to get it. **IMPORTANT**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It may return a 403 error stating "This action does not support Personal API Key access" when used with API keys.
  • Retrieve unused organization pipeline frontend apps: Retrieve a list of pipeline frontend apps that are available but not currently in use within a specific organization. This is useful for discovering apps that could be enabled or removed. Returns details including app IDs, types, names, descriptions, and URLs. **IMPORTANT AUTHENTICATION NOTE**: This endpoint requires session-based authentication (cookie-based auth from browser sessions) and does NOT support Personal API Key authentication. When using Personal API Keys, this endpoint will return a 403 Forbidden error. To use this endpoint, authentication must be done through a browser session with proper organization access. Args: organization_id: The UUID of the organization to query Returns: A list of unused pipeline frontend apps with their metadata
  • Retrieve user profile and team details: Fetch user profile info including team, organization, and notifications. Non-staff users can only retrieve their own profile using '@me' as the uuid parameter. Staff users can retrieve any user's profile using their actual UUID. Returns JSON with name, email, teams, organizations, and status.
  • Retry batch export run: Tool to retry a failed or incomplete batch export run. Uses the same backfill mechanism as batch export backfills. Use when you need to re-execute a specific batch export run that failed or needs to be re-processed.
  • Revoke organization invite: Delete an organization invite by its UUID. Requires a valid PersonalAPIKeyAuth with organization member write permission. No response body returned on success (HTTP 204).
  • Run batch export test step: Tool to run a test step for a batch export configuration in PostHog. Use when you need to validate that a batch export is properly configured before enabling it. This endpoint triggers a test run to verify the destination connectivity and configuration.
  • Run endpoint: Tool to execute a PostHog endpoint with optional materialization and filtering. Endpoints can be HogQL queries, insights (Trends, Funnels, etc.), or other query types. Use this when you need to run a predefined endpoint with custom parameters or filters.
  • Set insight deletion flag: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Soft delete a specific cohort by id: Soft delete a cohort by setting the "deleted" field to true via PATCH. Hard delete of this model is not allowed.
  • Soft delete feature flag by setting status: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Soft delete project dashboard: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
  • Split person entities in project: This endpoint allows reading and deleting persons; for creation or updates, use the capture API, `$set`/`$unset` properties, or SDKs.
  • Summarize survey responses: Tool to generate an AI-powered summary of survey responses for a specific question. Use when you need to analyze and summarize feedback from survey respondents for a particular question.
  • Translate text: Tool to translate text to a target language using PostHog's LLM analytics translation endpoint. Use when you need to translate content for analytics or internationalization purposes.
  • Trigger project export with format option: The `/api/projects/{project_id}/exports/` endpoint triggers a project export, requiring `project_id` and `export_format`. It accepts JSON, form-encoded, and multipart data, responding with a 201 code and export information.
  • Unarchive survey response: Tool to unarchive a single survey response. Use when you need to restore a previously archived survey response to make it visible again in survey analytics.
  • Unpause Batch Export: Tool to unpause a paused batch export in PostHog. Use when you need to resume a previously paused batch export to restart data exports.
  • Unpause Organization Batch Export: Tool to unpause a paused batch export at the organization level. Use when you need to resume a previously paused organization-level batch export to restart data exports.
  • Update Customer Profile Config: Update a customer profile configuration by completely replacing it with new data via PUT request. Use when you need to update the entire customer profile config object including all fields.
  • Update Dataset Items: Tool to fully update a dataset item by its ID in a PostHog project using PUT method. Use when you need to replace all fields of a dataset item including dataset, input, output, and metadata.
  • Update Datasets: Tool to update a dataset in PostHog by its ID and project ID. Use when you need to modify the name or description of an existing dataset.
  • Update Desktop Recording: Update desktop meeting recording details via PATCH. Use to modify meeting title, notes, status, transcripts, or AI-extracted tasks and summaries. Requires desktop_recording:write scope.
  • Update External Data Sources: Tool to update an existing external data source in PostHog (e.g., Stripe, Salesforce). Use when you need to modify the description, credentials, or configuration of an external data source. Requires both project_id and the data source UUID.
  • Update Insight Variable: Update an insight variable by replacing all its properties. Use when you need to completely update all fields of an existing insight variable.
  • Update alert (full replacement): Tool to fully update an existing alert configuration in PostHog using PUT method. Use when you need to completely replace alert settings including name, enabled status, insight, thresholds, and subscribed users. Unlike PATCH, this performs a full replacement of the alert configuration.
  • Update alert configuration: Tool to update an existing alert configuration in PostHog. Use when you need to modify alert settings such as name, enabled status, thresholds, or subscribed users. Performs a partial update (PATCH) - only fields provided in the request will be updated.
  • Update annotation details: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations.
  • Update batch export: Tool to update an existing batch export configuration in PostHog. Use when you need to modify batch export settings like name, schedule, destination, or filtering options.
  • Update early access project feature: This PATCH endpoint updates a specific early access project feature. It requires `project_id` and `id` (UUID) as path parameters. The body can include feature details like `name`, `description`, and `stage`. Security: `PersonalAPIKeyAuth`.
  • Update endpoint: Tool to update an existing endpoint for a PostHog project. Use when you need to replace endpoint configuration with new values. All parameters are optional. Pass version in body or ?version=N query param to target a specific version.
  • Update error tracking autocapture controls: Tool to fully update an error tracking autocapture control configuration for a PostHog project. Use when you need to replace all settings of an existing autocapture control, including library, sample rate, URL triggers, event triggers, and match type.
  • Update evaluation: Tool to update an existing evaluation in PostHog using PUT request. Use when you need to fully replace an evaluation configuration. For partial updates, consider using the patch_evaluation action instead.
  • Update event definition by uuid: 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 details: Update an experiment by sending a PUT request with `project_id` and `id`, including new details as JSON/form data. Changes to name, description, dates, etc., allowed. `experiment:write` permission needed.
  • Update experiment holdout: Tool to partially update an experiment holdout in a PostHog project. Use when you need to modify a holdout's name, description, or filter configuration. Updates only the fields provided in the request.
  • Update experiment holdout (full): Tool to fully update an experiment holdout in PostHog using PUT method. Use when you need to replace all holdout configuration including name, description, and filters. All required fields must be provided.
  • Update experiment saved metrics: Tool to update an existing experiment saved metric in PostHog. Use when you need to modify the name, description, query, or tags of a saved experiment metric. Requires the experiment saved metric ID and project ID.
  • Update feature flag configuration: Manage feature flags for your app with creation, reading, updating, and deletion options. Utilize PostHog's JS library or endpoint for flag status. More info in docs.
  • Update file system: Tool to update a file system resource in PostHog by UUID and project ID. Use when you need to modify details of an existing file system resource such as path, type, depth, or metadata.
  • Update group type metric: Tool to update a specific group usage metric by its ID. Use when you need to modify the configuration, filters, display format, name, or calculation interval for a particular metric within a group type.
  • Update group usage metric: Tool to update a group usage metric configuration in PostHog. Use when you need to modify metric settings such as display format, filters, or interval. Performs a partial update (PATCH) - only fields provided in the request will be updated.
  • Update hog function: Tool to update a hog function by UUID and project ID using PUT method. Use when you need to modify a hog function with full replacement semantics.
  • Update live debugger breakpoint: Tool to update a live debugger breakpoint for a project. Use when you need to modify breakpoint configuration such as filename, line number, enabled status, or condition.
  • Update organization batch export: Tool to update an existing organization-level batch export configuration in PostHog. Use when you need to modify batch export settings like name, schedule, destination, or filtering options at the organization level.
  • Update organization details by uuid: Update specific details of an organization using its UUID. Allows PATCH requests with JSON, form data, or multipart. Requires `organization:write` permission. Returns updated organization info.
  • Update organization domain info and saml config: Update an organization's authentication domain settings, including SAML SSO configuration and user provisioning policies. This action allows you to modify: - Domain name for authentication - Just-in-time (JIT) user provisioning settings - SSO enforcement policies - SAML identity provider configuration (Entity ID, ACS URL, X.509 certificate) Prerequisites: - The domain must be verified (DNS TXT record validation on PostHog Cloud) - SAML features require a PostHog Enterprise plan - User must have admin permissions for the organization Use cases: - Configure SAML SSO for enterprise authentication - Enable automatic user provisioning for verified domains - Enforce SSO login for specific email domains - Update SAML IdP certificates during rotation
  • Update organization domain properties: Updates selected properties of a domain in an organization via PATCH request, supports various data formats but SAML fields are immutable. Authentication needed.
  • Update organization member by uuids: Update an organization member's access level and permissions. Use this to promote members to admin/owner or demote them to basic member access. Supports partial updates - only send the fields you want to change (typically just 'level'). Returns the complete updated membership record including user details, access level, authentication status, and timestamps. Requires organization_member:write permission. Common use cases: promoting a member to admin (level=8), granting owner access (level=15), or downgrading permissions (level=1). Note: You cannot modify your own membership level as a security restriction - use a different owner/admin to change your permissions.
  • Update organization member details: Update member details in an organization by ID and user UUID. Requires org member write permission. Accepts JSON, form, or multipart. Responses reflect member info, including roles and security settings.
  • Update organization proxy record: Update an organization's proxy record configuration. Proxy records enable custom domain routing for PostHog analytics to bypass ad blockers. **WARNING**: This endpoint may have server-side issues and return 500 errors. The PostHog API for updating proxy records appears to have stability issues. Consider creating a new proxy record instead if updates fail. **Typical Use Cases**: - Update proxy record metadata or messages - Modify domain configuration (requires DNS reconfiguration) **Important Notes**: - Most proxy record fields (target_cname, status, timestamps) are managed by PostHog and should not be manually updated - Changing the domain requires updating your DNS CNAME records accordingly - Requires organization write access (organization:write permission) **Authentication**: Requires a valid API token with organization write permissions.
  • Update partial project cohort details: Update partial cohort details for a specific project. Requires a cohort ID and project ID, supports JSON, form data, and accepts patch changes like name or description. Returns updated cohort data. Auth required.
  • Update partial role details in organization: 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. Requires UUIDs for both organization and role. Supports JSON, form, and multipart data.
  • Update partial subscription details: PATCH /api/projects/{project_id}/subscriptions/{id}/: Update partial details of a specific project subscription by ID. Modify target, frequency, and more. Requires subscription:write permission.
  • Update partial survey details: Update partial survey details by PATCH to /api/projects/{project_id}/surveys/{id}/ with UUID. Edit attributes like name, type, questions, targeting, and flags. Needs PersonalAPIKeyAuth for write access.
  • Update persisted folder: Tool to update an existing persisted folder in PostHog. Use when you need to modify folder properties like path, protocol, or type.
  • Update person properties: Request data's "properties" will be updated on a person using "$set" event, affecting only listed properties without deletion or other changes. For property removal, use 'delete_property' endpoint.
  • Update person property endpoint: This endpoint allows for reading and deleting individuals. Use the capture API, `$set` and `$unset` properties, or SDKs for creating or updating persons.
  • Update product tour: Update an existing product tour in PostHog. Use this to modify tour name, description, targeting, content, and scheduling. Requires project_id and product tour id (UUID).
  • Update project action by id: 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 action with partial data: Update an action within a project with a specified ID. Supports partial updates. Accepts JSON, form-data, and query parameters including 'project_id' and 'id'. Formats response in CSV or JSON. Requires 'action:write' permission.
  • Update project batch export: Tool to update a batch export configuration within a project using PUT method. Use when you need to modify batch export settings like name, destination, interval, or pause status.
  • Update project cohort details: Update cohort details of a specific project by ID. Requires project and cohort ID in the path and a JSON, form-encoded, or multipart form body. Permissions: cohort:write. Returns updated cohort data.
  • Update project dashboard details: Endpoint to update an existing dashboard within a project. Provide `project_id` and `dashboard_id` in path, send JSON or form data with dashboard details. Requires `dashboard:write` permission; responds with updated dashboard data.
  • Update project early access feature: Update a specific early access feature of a project by providing the `project_id` and feature `id` (UUID). Requires a JSON body with feature details and responds with the updated status. Authentication via PersonalAPIKeyAuth is mandatory.
  • Update project event definition: Update an existing event definition for a specified project using its UUID. Requires a project ID and event definition write permissions. Responds without a body on success.
  • Update project group type metadata: PATCH /api/projects/{project_id}/groups_types/update_metadata: Update group type metadata for a specific project using its project_id. Can modify name_singular and name_plural fields up to 400 characters each.
  • Update project insight details: 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 various timestamps. Requires insight write permission.
  • Update project member role by uuid: Update a project member's role using their UUID in a specific project. Accepts partial data to modify membership details such as role level, provided the member's UUID and project ID. Note: This endpoint only works for projects with access control enabled (private projects). Access control is an Enterprise feature that can be enabled in Project Settings > Access Control. If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error. To use this endpoint: 1. Ensure the project has access_control: true (Enterprise feature) 2. Use list explicit_members endpoint to get existing member UUIDs 3. Provide the parent_membership_user_uuid (the user's UUID from membership)
  • Update project member s role by uuid: Update explicit project membership using UUIDs. This PUT endpoint modifies a project member's role, where '1' stands for member and '8' for administrator. Requires `project_id` and `parent_membership__user__uuid`. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 "Endpoint not found" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control.
  • Update project notebook details: The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.
  • Update project property definition: Update a property definition in a project by its UUID. Requires a project_id and definition id, both as path parameters. Security: PersonalAPIKeyAuth with write access. No body in the response.
  • Update project session recording playlist: Update an existing session recording playlist for a project with the specified project_id and playlist short_id. Requires JSON or form data input to modify the playlist's properties like name, description, and status.
  • Update project settings: Tool to update project settings and configuration within a PostHog organization. Use when you need to modify project properties such as timezone, feature toggles, or recording settings.
  • Update project subscription details: Update a subscription for a specific project. Provide project_id and subscription id in the path and use MIME types like application/json with fields like frequency, target_type, etc. Requires `subscription:write` permission.
  • Update project survey details: 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, and returns the updated survey.
  • Update role details in organization: Update an organization role by submitting its UUID and organization_id in UUID format. Role details must be in JSON or form-data. Only users with 'organization:write' can do this. Returns updated role data.
  • Update session recording playlist partially: Update session recording playlists using PATCH on the endpoint with `project_id` and `short_id`. Accepts JSON and forms data for detail amendments. Partial updates allowed. `PersonalAPIKeyAuth` needed.
  • Update user home settings: Tool to update user home settings including homepage and tab configurations. Use when you need to modify the personalized home page and tab settings for a user.
  • Update user profile: Tool to update user profile settings in PostHog. Use when you need to modify user information such as name, email, role, theme preferences, or notification settings. Performs a partial update (PATCH) - only fields provided in the request will be updated. Use uuid '@me' to update the authenticated user.
  • Update warehouse saved query: Update a warehouse saved query in PostHog by completely replacing it with new data. Use when you need to update the name, query definition, or edit history of an existing saved query. This performs a complete update (PUT) operation requiring the edited_history_id for tracking changes.
  • Update web experiment: Tool to completely update a web experiment in PostHog using PUT method. Use when you need to replace the entire web experiment configuration with new values. Unlike PATCH, this requires all fields to be provided.
  • Validate LLM Provider API Key: Tool to validate LLM provider API keys without persisting them to PostHog. Use when you need to verify if an API key for an LLM provider is valid before saving it.

How to connect PostHog

  1. Sign in to Definable AI and go to Apps
  2. Search for PostHog and click Connect
  3. Authorize via OAuth2 — takes under 30 seconds
  4. Use PostHog actions in your AI agents and workflows