openapi: 3.0.3 info: title: PostHog actions core API version: 1.0.0 description: '' tags: - name: core paths: /api/environments/{environment_id}/dashboards/: get: operationId: environments_dashboards_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer tags: - core security: - PersonalAPIKeyAuth: - dashboard:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedDashboardBasicList' text/event-stream: schema: $ref: '#/components/schemas/PaginatedDashboardBasicList' description: '' deprecated: true x-explicit-tags: - core - dashboards post: operationId: environments_dashboards_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core - dashboards /api/environments/{environment_id}/dashboards/{dashboard_id}/sharing/: get: operationId: environments_dashboards_sharing_list parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{dashboard_id}/sharing/passwords/: post: operationId: environments_dashboards_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{dashboard_id}/sharing/passwords/{password_id}/: delete: operationId: environments_dashboards_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: password_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{dashboard_id}/sharing/refresh/: post: operationId: environments_dashboards_sharing_refresh_create parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/: get: operationId: environments_dashboards_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core security: - PersonalAPIKeyAuth: - dashboard:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core put: operationId: environments_dashboards_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core patch: operationId: environments_dashboards_partial_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDashboard' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core delete: operationId: environments_dashboards_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core security: - PersonalAPIKeyAuth: - dashboard:write responses: '405': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/analyze_refresh_result/: post: operationId: environments_dashboards_analyze_refresh_result_create description: 'Generate AI analysis comparing before/after dashboard refresh. Expects cache_key in request body pointing to the stored ''before'' state.' parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/copy_tile/: post: operationId: environments_dashboards_copy_tile_create description: Copy an existing dashboard tile to another dashboard (insight or text card; new tile row). parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' multipart/form-data: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' required: true security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/move_tile/: patch: operationId: environments_dashboards_move_tile_partial_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDashboard' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDashboard' responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/reorder_tiles/: post: operationId: environments_dashboards_reorder_tiles_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ReorderTilesRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ReorderTilesRequest' multipart/form-data: schema: $ref: '#/components/schemas/ReorderTilesRequest' required: true security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/run_insights/: get: operationId: environments_dashboards_run_insights_retrieve description: Run all insights on a dashboard and return their results. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - in: query name: output_format schema: type: string enum: - json - optimized description: '''optimized'' (default) returns LLM-friendly formatted text per insight. ''json'' returns the raw query result objects.' - in: query name: refresh schema: type: string enum: - blocking - force_blocking - force_cache description: Cache behavior. 'force_cache' (default) serves from cache even if stale. 'blocking' uses cache if fresh, otherwise recalculates. 'force_blocking' always recalculates. - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core security: - PersonalAPIKeyAuth: - query:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/RunInsightsResponse' text/event-stream: schema: $ref: '#/components/schemas/RunInsightsResponse' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/snapshot/: post: operationId: environments_dashboards_snapshot_create description: 'Snapshot the current dashboard state (from cache) for AI analysis. Returns a cache_key representing the ''before'' state, to be used with analyze_refresh_result.' parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/{id}/stream_tiles/: get: operationId: environments_dashboards_stream_tiles_retrieve description: Stream dashboard metadata and tiles via Server-Sent Events. Sends metadata first, then tiles as they are rendered. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - in: query name: layoutSize schema: type: string enum: - sm - xs description: Layout size for tile positioning. 'sm' (default) for standard, 'xs' for mobile. The snake_case alias `layout_size` is also accepted for backward compatibility. - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/dashboards/bulk_update_tags/: post: operationId: environments_dashboards_bulk_update_tags_create description: 'Bulk update tags on multiple objects. Accepts: - {"ids": [...], "action": "add"|"remove"|"set", "tags": ["tag1", "tag2"]} Actions: - "add": Add tags to existing tags on each object - "remove": Remove specific tags from each object - "set": Replace all tags on each object with the provided list' parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' multipart/form-data: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' text/event-stream: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' description: '' deprecated: true x-explicit-tags: - core - dashboards /api/environments/{environment_id}/dashboards/create_from_template_json/: post: operationId: environments_dashboards_create_from_template_json_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body deprecated: true x-explicit-tags: - core - dashboards /api/environments/{environment_id}/dashboards/create_unlisted_dashboard/: post: operationId: environments_dashboards_create_unlisted_dashboard_create description: 'Creates an unlisted dashboard from template by tag. Enforces uniqueness (one per tag per team). Returns 409 if unlisted dashboard with this tag already exists.' parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: format schema: type: string enum: - json - txt tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body deprecated: true x-explicit-tags: - core - dashboards /api/environments/{environment_id}/exports/: get: operationId: environments_exports_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedExportedAssetList' description: '' deprecated: true x-explicit-tags: - core post: operationId: environments_exports_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExportedAsset' multipart/form-data: schema: $ref: '#/components/schemas/ExportedAsset' required: true security: - PersonalAPIKeyAuth: - export:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/exports/{id}/: get: operationId: environments_exports_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this exported asset. required: true tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/exports/{id}/content/: get: operationId: environments_exports_content_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this exported asset. required: true tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/: get: operationId: environments_file_system_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - name: search required: false in: query description: A search term. schema: type: string tags: - core security: - PersonalAPIKeyAuth: - file_system:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedFileSystemList' description: '' deprecated: true x-explicit-tags: - core post: operationId: environments_file_system_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true security: - PersonalAPIKeyAuth: - file_system:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/{id}/: get: operationId: environments_file_system_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core security: - PersonalAPIKeyAuth: - file_system:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' deprecated: true x-explicit-tags: - core put: operationId: environments_file_system_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true security: - PersonalAPIKeyAuth: - file_system:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' deprecated: true x-explicit-tags: - core patch: operationId: environments_file_system_partial_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedFileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedFileSystem' multipart/form-data: schema: $ref: '#/components/schemas/PatchedFileSystem' security: - PersonalAPIKeyAuth: - file_system:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' deprecated: true x-explicit-tags: - core delete: operationId: environments_file_system_destroy parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core security: - PersonalAPIKeyAuth: - file_system:write responses: '204': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/{id}/count/: post: operationId: environments_file_system_count_create description: Get count of all files in a folder. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/{id}/link/: post: operationId: environments_file_system_link_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/{id}/move/: post: operationId: environments_file_system_move_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/count_by_path/: post: operationId: environments_file_system_count_by_path_create description: Get count of all files in a folder. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/log_view/: get: operationId: environments_file_system_log_view_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core responses: '200': description: No response body deprecated: true x-explicit-tags: - core post: operationId: environments_file_system_log_view_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/undo_delete/: post: operationId: environments_file_system_undo_delete_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/file_system/unfiled/: get: operationId: environments_file_system_unfiled_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/: get: operationId: environments_groups_list description: 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/ parameters: - name: cursor required: false in: query description: The pagination cursor value. schema: type: string - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_type_index schema: type: integer description: Specify the group type to list required: true - in: query name: search schema: type: string description: Search the group name required: true tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedGroupList' description: '' deprecated: true x-explicit-tags: - core post: operationId: environments_groups_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroup' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CreateGroup' multipart/form-data: schema: $ref: '#/components/schemas/CreateGroup' required: true security: - PersonalAPIKeyAuth: - group:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/activity/: get: operationId: environments_groups_activity_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - in: query name: id schema: type: string description: Specify the id of the user to find groups for required: true tags: - core security: - PersonalAPIKeyAuth: - activity_log:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/delete_property/: post: operationId: environments_groups_delete_property_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Group' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Group' multipart/form-data: schema: $ref: '#/components/schemas/Group' required: true security: - PersonalAPIKeyAuth: - group:write responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/find/: get: operationId: environments_groups_find_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/property_definitions/: get: operationId: environments_groups_property_definitions_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/property_values/: get: operationId: environments_groups_property_values_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/related/: get: operationId: environments_groups_related_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - in: query name: id schema: type: string description: Specify the id of the user to find groups for required: true tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/groups/update_property/: post: operationId: environments_groups_update_property_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Group' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Group' multipart/form-data: schema: $ref: '#/components/schemas/Group' required: true security: - PersonalAPIKeyAuth: - group:write responses: '200': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/insights/{insight_id}/sharing/: get: operationId: environments_insights_sharing_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: insight_id schema: type: integer required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/insights/{insight_id}/sharing/passwords/: post: operationId: environments_insights_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: insight_id schema: type: integer required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/insights/{insight_id}/sharing/passwords/{password_id}/: delete: operationId: environments_insights_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: insight_id schema: type: integer required: true - in: path name: password_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/insights/{insight_id}/sharing/refresh/: post: operationId: environments_insights_sharing_refresh_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: insight_id schema: type: integer required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/project_secret_api_keys/: get: operationId: environments_project_secret_api_keys_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer tags: - core security: - PersonalAPIKeyAuth: - project:read - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedProjectSecretAPIKeyList' description: '' deprecated: true x-explicit-tags: - core post: operationId: environments_project_secret_api_keys_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' required: true security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/project_secret_api_keys/{id}/: get: operationId: environments_project_secret_api_keys_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true tags: - core security: - PersonalAPIKeyAuth: - project:read - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' deprecated: true x-explicit-tags: - core put: operationId: environments_project_secret_api_keys_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' required: true security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' deprecated: true x-explicit-tags: - core patch: operationId: environments_project_secret_api_keys_partial_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' deprecated: true x-explicit-tags: - core delete: operationId: environments_project_secret_api_keys_destroy parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true tags: - core security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '204': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/project_secret_api_keys/{id}/roll/: post: operationId: environments_project_secret_api_keys_roll_create description: Roll a project secret API key parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true tags: - core responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/session_recordings/{recording_id}/sharing/: get: operationId: environments_session_recordings_sharing_list parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: recording_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/session_recordings/{recording_id}/sharing/passwords/: post: operationId: environments_session_recordings_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: recording_id schema: type: string required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/session_recordings/{recording_id}/sharing/passwords/{password_id}/: delete: operationId: environments_session_recordings_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: password_id schema: type: string required: true - in: path name: recording_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/session_recordings/{recording_id}/sharing/refresh/: post: operationId: environments_session_recordings_sharing_refresh_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: recording_id schema: type: string required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/subscriptions/: get: operationId: environments_subscriptions_list parameters: - in: query name: created_by schema: type: string description: Filter by creator user UUID. - in: query name: dashboard schema: type: integer description: Filter by dashboard ID. - $ref: '#/components/parameters/EnvironmentIdPath' - in: query name: insight schema: type: integer description: Filter by insight ID. - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: resource_type schema: type: string enum: - dashboard - insight description: 'Filter by subscription resource: insight vs dashboard export.' - name: search required: false in: query description: A search term. schema: type: string - in: query name: target_type schema: type: string enum: - email - slack - webhook description: Filter by delivery channel (email, Slack, or webhook). tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedSubscriptionList' description: '' deprecated: true x-explicit-tags: - core post: operationId: environments_subscriptions_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Subscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Subscription' multipart/form-data: schema: $ref: '#/components/schemas/Subscription' required: true security: - PersonalAPIKeyAuth: - subscription:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/subscriptions/{id}/: get: operationId: environments_subscriptions_retrieve parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' deprecated: true x-explicit-tags: - core put: operationId: environments_subscriptions_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Subscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Subscription' multipart/form-data: schema: $ref: '#/components/schemas/Subscription' required: true security: - PersonalAPIKeyAuth: - subscription:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' deprecated: true x-explicit-tags: - core patch: operationId: environments_subscriptions_partial_update parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSubscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedSubscription' multipart/form-data: schema: $ref: '#/components/schemas/PatchedSubscription' security: - PersonalAPIKeyAuth: - subscription:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' deprecated: true x-explicit-tags: - core delete: operationId: environments_subscriptions_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true tags: - core security: - PersonalAPIKeyAuth: - subscription:write responses: '405': description: No response body deprecated: true x-explicit-tags: - core /api/environments/{environment_id}/subscriptions/{id}/test-delivery/: post: operationId: environments_subscriptions_test_delivery_create parameters: - $ref: '#/components/parameters/EnvironmentIdPath' - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true tags: - core security: - PersonalAPIKeyAuth: - subscription:write responses: '202': description: Test delivery workflow started deprecated: true x-explicit-tags: - core /api/environments/{project_id}/subscriptions/{subscription_id}/deliveries/: get: operationId: subscriptions_deliveries_list description: Paginated delivery history for a subscription. Requires premium subscriptions. summary: List subscription deliveries parameters: - name: cursor required: false in: query description: The pagination cursor value. schema: type: string - $ref: '#/components/parameters/ProjectIdPath' - in: query name: status schema: type: string enum: - completed - failed - skipped - starting description: Return only deliveries in this run status (starting, completed, failed, or skipped). - in: path name: subscription_id schema: type: integer required: true tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedSubscriptionDeliveryList' description: '' x-explicit-tags: - core /api/environments/{project_id}/subscriptions/{subscription_id}/deliveries/{id}/: get: operationId: subscriptions_deliveries_retrieve description: Fetch one delivery row by id. summary: Retrieve subscription delivery parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this subscription delivery. required: true - $ref: '#/components/parameters/ProjectIdPath' - in: path name: subscription_id schema: type: integer required: true tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/SubscriptionDelivery' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/domains/: get: operationId: domains_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedOrganizationDomainList' description: '' x-explicit-tags: - core post: operationId: domains_create parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationDomain' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationDomain' required: true security: - PersonalAPIKeyAuth: - organization:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/domains/{id}/: get: operationId: domains_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' description: '' x-explicit-tags: - core put: operationId: domains_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationDomain' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationDomain' required: true security: - PersonalAPIKeyAuth: - organization:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' description: '' x-explicit-tags: - core patch: operationId: domains_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOrganizationDomain' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedOrganizationDomain' multipart/form-data: schema: $ref: '#/components/schemas/PatchedOrganizationDomain' security: - PersonalAPIKeyAuth: - organization:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' description: '' x-explicit-tags: - core delete: operationId: domains_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:write responses: '204': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/domains/{id}/scim/logs/: get: operationId: domains_scim_logs_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/domains/{id}/scim/token/: post: operationId: domains_scim_token_create description: Regenerate SCIM bearer token. parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationDomain' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationDomain' required: true responses: '200': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/domains/{id}/verify/: post: operationId: domains_verify_create parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this domain. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationDomain' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationDomain' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationDomain' required: true responses: '200': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/invites/: get: operationId: invites_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization_member:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedOrganizationInviteList' description: '' x-explicit-tags: - core post: operationId: invites_create parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationInvite' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationInvite' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationInvite' required: true security: - PersonalAPIKeyAuth: - organization_member:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/OrganizationInvite' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/invites/{id}/: delete: operationId: invites_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this organization invite. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization_member:write responses: '204': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/invites/bulk/: post: operationId: invites_bulk_create parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationInvite' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationInvite' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationInvite' required: true security: - PersonalAPIKeyAuth: - organization_member:write responses: '200': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/legal_documents/: get: operationId: legal_documents_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - legal_document:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedLegalDocumentDTOList' description: '' x-explicit-tags: - core - legal_documents post: operationId: legal_documents_create parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateLegalDocument' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CreateLegalDocument' multipart/form-data: schema: $ref: '#/components/schemas/CreateLegalDocument' required: true security: - PersonalAPIKeyAuth: - legal_document:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/LegalDocumentDTO' description: '' x-explicit-tags: - core - legal_documents /api/organizations/{organization_id}/legal_documents/{id}/: get: operationId: legal_documents_retrieve parameters: - in: path name: id schema: type: string required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - legal_document:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/LegalDocumentDTO' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/legal_documents/{id}/download/: get: operationId: legal_documents_download_retrieve description: 'Short-lived redirect to the signed PDF in object storage. 404 while the envelope is still out for signature (or if the upload hasn''t completed yet). The underlying presigned URL expires in ~60s; clients should hit this endpoint each time they want to view the PDF rather than caching.' parameters: - in: path name: id schema: type: string required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core responses: '302': description: No response body '404': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/members/: get: operationId: members_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - in: query name: order schema: type: string enum: - -joined_at - joined_at description: Sort order. Defaults to `-joined_at`. - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization_member:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedOrganizationMemberList' description: '' x-explicit-tags: - core - platform_features /api/organizations/{organization_id}/members/{user__uuid}/: put: operationId: members_update parameters: - $ref: '#/components/parameters/OrganizationIdPath' - in: path name: user__uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationMember' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrganizationMember' multipart/form-data: schema: $ref: '#/components/schemas/OrganizationMember' security: - PersonalAPIKeyAuth: - organization_member:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationMember' description: '' x-explicit-tags: - core - platform_features patch: operationId: members_partial_update parameters: - $ref: '#/components/parameters/OrganizationIdPath' - in: path name: user__uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOrganizationMember' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedOrganizationMember' multipart/form-data: schema: $ref: '#/components/schemas/PatchedOrganizationMember' security: - PersonalAPIKeyAuth: - organization_member:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationMember' description: '' x-explicit-tags: - core - platform_features delete: operationId: members_destroy parameters: - $ref: '#/components/parameters/OrganizationIdPath' - in: path name: user__uuid schema: type: string format: uuid required: true tags: - core security: - PersonalAPIKeyAuth: - organization_member:write responses: '204': description: No response body x-explicit-tags: - core - platform_features /api/organizations/{organization_id}/members/{user__uuid}/scoped_api_keys/: get: operationId: members_scoped_api_keys_retrieve parameters: - $ref: '#/components/parameters/OrganizationIdPath' - in: path name: user__uuid schema: type: string format: uuid required: true tags: - core responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationMember' description: '' x-explicit-tags: - core - platform_features /api/organizations/{organization_id}/oauth_applications/: get: operationId: oauth_applications_list description: ViewSet for listing OAuth applications at the organization level (read-only). parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedOrganizationOAuthApplicationList' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/: get: operationId: organizations_projects_list description: Projects for the current organization. parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' - name: search required: false in: query description: A search term. schema: type: string tags: - core security: - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedProjectBackwardCompatBasicList' description: '' x-explicit-tags: - core post: operationId: organizations_projects_create description: Projects for the current organization. parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/ProjectBackwardCompat' security: - PersonalAPIKeyAuth: - project:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/: get: operationId: organizations_projects_retrieve description: Retrieve a project and its settings. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core put: operationId: organizations_projects_update description: Replace a project and its settings. Prefer the PATCH endpoint for partial updates — PUT requires every writable field to be provided. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/ProjectBackwardCompat' security: - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core patch: operationId: organizations_projects_partial_update description: Update one or more of a project's settings. Only the fields included in the request body are changed. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' security: - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core delete: operationId: organizations_projects_destroy description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - project:write responses: '204': description: No response body x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/activity/: get: operationId: organizations_projects_activity_retrieve description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/add_product_intent/: patch: operationId: organizations_projects_add_product_intent_partial_update description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' security: - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/change_organization/: post: operationId: organizations_projects_change_organization_create description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/ProjectBackwardCompat' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/complete_product_onboarding/: patch: operationId: organizations_projects_complete_product_onboarding_partial_update description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' security: - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/delete_secret_token_backup/: patch: operationId: organizations_projects_delete_secret_token_backup_partial_update description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/generate_conversations_public_token/: post: operationId: organizations_projects_generate_conversations_public_token_create description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/ProjectBackwardCompat' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/is_generating_demo_data/: get: operationId: organizations_projects_is_generating_demo_data_retrieve description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/reset_token/: patch: operationId: organizations_projects_reset_token_partial_update description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/projects/{id}/rotate_secret_token/: patch: operationId: organizations_projects_rotate_secret_token_partial_update description: Projects for the current organization. parameters: - in: path name: id schema: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: A unique value identifying this project. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectBackwardCompat' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectBackwardCompat' description: '' x-explicit-tags: - core /api/organizations/{organization_id}/roles/: get: operationId: roles_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedRoleList' description: '' x-explicit-tags: - core - platform_features post: operationId: roles_create parameters: - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Role' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Role' multipart/form-data: schema: $ref: '#/components/schemas/Role' required: true security: - PersonalAPIKeyAuth: - organization:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Role' description: '' x-explicit-tags: - core - platform_features /api/organizations/{organization_id}/roles/{id}/: get: operationId: roles_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this role. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Role' description: '' x-explicit-tags: - core - platform_features put: operationId: roles_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this role. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Role' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Role' multipart/form-data: schema: $ref: '#/components/schemas/Role' required: true security: - PersonalAPIKeyAuth: - organization:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Role' description: '' x-explicit-tags: - core - platform_features patch: operationId: roles_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this role. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRole' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedRole' multipart/form-data: schema: $ref: '#/components/schemas/PatchedRole' security: - PersonalAPIKeyAuth: - organization:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Role' description: '' x-explicit-tags: - core - platform_features delete: operationId: roles_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this role. required: true - $ref: '#/components/parameters/OrganizationIdPath' tags: - core security: - PersonalAPIKeyAuth: - organization:write responses: '204': description: No response body x-explicit-tags: - core - platform_features /api/projects/{project_id}/annotations/: get: operationId: annotations_list description: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/data/annotations) for more information on annotations. parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' - name: search required: false in: query description: A search term. schema: type: string tags: - core security: - PersonalAPIKeyAuth: - annotation:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedAnnotationList' description: '' x-explicit-tags: - core post: operationId: annotations_create description: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/data/annotations) for more information on annotations. parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Annotation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Annotation' multipart/form-data: schema: $ref: '#/components/schemas/Annotation' security: - PersonalAPIKeyAuth: - annotation:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Annotation' description: '' x-explicit-tags: - core /api/projects/{project_id}/annotations/{id}/: get: operationId: annotations_retrieve description: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/data/annotations) for more information on annotations. parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this annotation. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - annotation:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Annotation' description: '' x-explicit-tags: - core put: operationId: annotations_update description: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/data/annotations) for more information on annotations. parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this annotation. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Annotation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Annotation' multipart/form-data: schema: $ref: '#/components/schemas/Annotation' security: - PersonalAPIKeyAuth: - annotation:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Annotation' description: '' x-explicit-tags: - core patch: operationId: annotations_partial_update description: Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/data/annotations) for more information on annotations. parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this annotation. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAnnotation' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedAnnotation' multipart/form-data: schema: $ref: '#/components/schemas/PatchedAnnotation' security: - PersonalAPIKeyAuth: - annotation:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Annotation' description: '' x-explicit-tags: - core delete: operationId: annotations_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this annotation. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - annotation:write responses: '405': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/: get: operationId: cohorts_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - cohort:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedCohortList' description: '' x-explicit-tags: - core post: operationId: cohorts_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Cohort' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Cohort' multipart/form-data: schema: $ref: '#/components/schemas/Cohort' security: - PersonalAPIKeyAuth: - cohort:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Cohort' description: '' x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/: get: operationId: cohorts_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - cohort:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Cohort' description: '' x-explicit-tags: - core put: operationId: cohorts_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Cohort' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Cohort' multipart/form-data: schema: $ref: '#/components/schemas/Cohort' security: - PersonalAPIKeyAuth: - cohort:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Cohort' description: '' x-explicit-tags: - core patch: operationId: cohorts_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCohort' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCohort' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCohort' security: - PersonalAPIKeyAuth: - cohort:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Cohort' description: '' x-explicit-tags: - core delete: operationId: cohorts_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - cohort:write responses: '405': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/activity/: get: operationId: cohorts_activity_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - activity_log:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/add_persons_to_static_cohort/: patch: operationId: cohorts_add_persons_to_static_cohort_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAddPersonsToStaticCohortRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedAddPersonsToStaticCohortRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedAddPersonsToStaticCohortRequest' security: - PersonalAPIKeyAuth: - cohort:write responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/calculation_history/: get: operationId: cohorts_calculation_history_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - cohort:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/persons/: get: operationId: cohorts_persons_retrieve parameters: - in: query name: format schema: type: string enum: - csv - json - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - in: query name: limit schema: type: integer description: Maximum number of persons to return per page (defaults to 100). - in: query name: offset schema: type: integer description: Number of persons to skip before starting to return results. - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - cohort:read - person:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/CohortPersonsResponse' text/csv: schema: $ref: '#/components/schemas/CohortPersonsResponse' description: '' x-explicit-tags: - core /api/projects/{project_id}/cohorts/{id}/remove_person_from_static_cohort/: patch: operationId: cohorts_remove_person_from_static_cohort_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this cohort. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRemovePersonRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedRemovePersonRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedRemovePersonRequest' security: - PersonalAPIKeyAuth: - cohort:write responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/cohorts/activity/: get: operationId: cohorts_all_activity_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - activity_log:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/comments/: get: operationId: comments_list parameters: - name: cursor required: false in: query description: The pagination cursor value. schema: type: string - in: query name: item_id schema: type: string minLength: 1 description: Filter by the ID of the resource being commented on. - $ref: '#/components/parameters/ProjectIdPath' - in: query name: scope schema: type: string minLength: 1 description: Filter by resource type (e.g. Dashboard, FeatureFlag, Insight, Replay). - in: query name: search schema: type: string minLength: 1 description: Full-text search within comment content. - in: query name: source_comment schema: type: string minLength: 1 description: Filter replies to a specific parent comment. tags: - core security: - PersonalAPIKeyAuth: - comment:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedCommentList' description: '' x-explicit-tags: - core - platform_features post: operationId: comments_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Comment' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Comment' multipart/form-data: schema: $ref: '#/components/schemas/Comment' required: true security: - PersonalAPIKeyAuth: - comment:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' x-explicit-tags: - core - platform_features /api/projects/{project_id}/comments/{id}/: get: operationId: comments_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this comment. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - comment:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' x-explicit-tags: - core - platform_features put: operationId: comments_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this comment. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Comment' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Comment' multipart/form-data: schema: $ref: '#/components/schemas/Comment' required: true security: - PersonalAPIKeyAuth: - comment:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' x-explicit-tags: - core - platform_features patch: operationId: comments_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this comment. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedComment' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedComment' multipart/form-data: schema: $ref: '#/components/schemas/PatchedComment' security: - PersonalAPIKeyAuth: - comment:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' x-explicit-tags: - core - platform_features delete: operationId: comments_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this comment. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - comment:write responses: '405': description: No response body x-explicit-tags: - core - platform_features /api/projects/{project_id}/comments/{id}/thread/: get: operationId: comments_thread_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this comment. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - comment:read responses: '200': description: No response body x-explicit-tags: - core - platform_features /api/projects/{project_id}/comments/count/: get: operationId: comments_count_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - comment:read responses: '200': description: No response body x-explicit-tags: - core - platform_features /api/projects/{project_id}/dashboard_templates/: get: operationId: dashboard_templates_list parameters: - in: query name: is_featured schema: type: boolean description: Omit for all templates. When set, filter by featured flag; parsed with str_to_bool (same as other API query booleans). - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - in: query name: ordering schema: type: string enum: - -created_at - -template_name - created_at - template_name description: Optional. When not using `search`, results are sorted with featured templates first (`is_featured=true`), then by `template_name` (case-insensitive A–Z; `-template_name` for Z–A) or by `created_at` (`-created_at` for newest first). When `search` is set, order is featured first, then relevance rank, then case-insensitive name for ties. - $ref: '#/components/parameters/ProjectIdPath' - in: query name: scope schema: type: string enum: - feature_flag - global - team description: 'Optional. `global`: official templates only. `team`: this project''s saved templates only (`scope=team` rows for the current project). `feature_flag`: feature-flag dashboard templates only. Omit for both official and this project''s templates (default dashboard template picker behavior).' tags: - core security: - PersonalAPIKeyAuth: - dashboard_template:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedDashboardTemplateList' description: '' x-explicit-tags: - core - dashboards post: operationId: dashboard_templates_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DashboardTemplate' multipart/form-data: schema: $ref: '#/components/schemas/DashboardTemplate' security: - PersonalAPIKeyAuth: - dashboard_template:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' description: '' x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboard_templates/{id}/: get: operationId: dashboard_templates_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this dashboard template. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - dashboard_template:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' description: '' x-explicit-tags: - core put: operationId: dashboard_templates_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this dashboard template. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DashboardTemplate' multipart/form-data: schema: $ref: '#/components/schemas/DashboardTemplate' security: - PersonalAPIKeyAuth: - dashboard_template:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' description: '' x-explicit-tags: - core patch: operationId: dashboard_templates_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this dashboard template. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDashboardTemplate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDashboardTemplate' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDashboardTemplate' security: - PersonalAPIKeyAuth: - dashboard_template:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' description: '' x-explicit-tags: - core delete: operationId: dashboard_templates_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this dashboard template. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - dashboard_template:write responses: '405': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboard_templates/copy_between_projects/: post: operationId: dashboard_templates_copy_between_projects_create description: Creates a new team-scoped template in the **target** project (URL) from a **team-scoped** source template in the same organization. Global and feature-flag templates return 400. Cross-organization or inaccessible sources return 404. Source and destination projects must differ (400 if equal). Conflicting `template_name` values on the destination are auto-suffixed with `(copy)`, `(copy 2)`, … summary: Copy a team template to this project parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CopyDashboardTemplate' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CopyDashboardTemplate' multipart/form-data: schema: $ref: '#/components/schemas/CopyDashboardTemplate' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/DashboardTemplate' description: '' x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboard_templates/json_schema/: get: operationId: dashboard_templates_json_schema_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core responses: '200': description: No response body x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboards/: get: operationId: dashboards_list parameters: - in: query name: format schema: type: string enum: - json - txt - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - dashboard:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedDashboardBasicList' text/event-stream: schema: $ref: '#/components/schemas/PaginatedDashboardBasicList' description: '' x-explicit-tags: - core - dashboards post: operationId: dashboards_create parameters: - in: query name: format schema: type: string enum: - json - txt - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboards/{dashboard_id}/sharing/: get: operationId: dashboards_sharing_list parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{dashboard_id}/sharing/passwords/: post: operationId: dashboards_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{dashboard_id}/sharing/passwords/{password_id}/: delete: operationId: dashboards_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - in: path name: dashboard_id schema: type: integer required: true - in: path name: password_id schema: type: string required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/{dashboard_id}/sharing/refresh/: post: operationId: dashboards_sharing_refresh_create parameters: - in: path name: dashboard_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/: get: operationId: dashboards_retrieve parameters: - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core security: - PersonalAPIKeyAuth: - dashboard:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core put: operationId: dashboards_update parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core patch: operationId: dashboards_partial_update parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDashboard' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDashboard' security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core delete: operationId: dashboards_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - dashboard:write responses: '405': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/analyze_refresh_result/: post: operationId: dashboards_analyze_refresh_result_create description: 'Generate AI analysis comparing before/after dashboard refresh. Expects cache_key in request body pointing to the stored ''before'' state.' parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/copy_tile/: post: operationId: dashboards_copy_tile_create description: Copy an existing dashboard tile to another dashboard (insight or text card; new tile row). parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' multipart/form-data: schema: $ref: '#/components/schemas/CopyDashboardTileRequest' required: true security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/move_tile/: patch: operationId: dashboards_move_tile_partial_update parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDashboard' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDashboard' responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/reorder_tiles/: post: operationId: dashboards_reorder_tiles_create parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ReorderTilesRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ReorderTilesRequest' multipart/form-data: schema: $ref: '#/components/schemas/ReorderTilesRequest' required: true security: - PersonalAPIKeyAuth: - dashboard:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dashboard' text/event-stream: schema: $ref: '#/components/schemas/Dashboard' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/run_insights/: get: operationId: dashboards_run_insights_retrieve description: Run all insights on a dashboard and return their results. parameters: - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - in: query name: output_format schema: type: string enum: - json - optimized description: '''optimized'' (default) returns LLM-friendly formatted text per insight. ''json'' returns the raw query result objects.' - $ref: '#/components/parameters/ProjectIdPath' - in: query name: refresh schema: type: string enum: - blocking - force_blocking - force_cache description: Cache behavior. 'force_cache' (default) serves from cache even if stale. 'blocking' uses cache if fresh, otherwise recalculates. 'force_blocking' always recalculates. - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core security: - PersonalAPIKeyAuth: - query:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/RunInsightsResponse' text/event-stream: schema: $ref: '#/components/schemas/RunInsightsResponse' description: '' x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/snapshot/: post: operationId: dashboards_snapshot_create description: 'Snapshot the current dashboard state (from cache) for AI analysis. Returns a cache_key representing the ''before'' state, to be used with analyze_refresh_result.' parameters: - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/{id}/stream_tiles/: get: operationId: dashboards_stream_tiles_retrieve description: Stream dashboard metadata and tiles via Server-Sent Events. Sends metadata first, then tiles as they are rendered. parameters: - in: query name: filters_override schema: type: string description: JSON object to override dashboard filters for this request only (not persisted). Top-level keys replace; nested values are not deep-merged — pass the complete value for any key you override. See the dashboard filters schema for available keys (e.g., `date_from`, `date_to`, `properties`). Ignored when accessed via a dashboard sharing token. - in: query name: format schema: type: string enum: - json - txt - in: path name: id schema: type: integer description: A unique integer value identifying this dashboard. required: true - in: query name: layoutSize schema: type: string enum: - sm - xs description: Layout size for tile positioning. 'sm' (default) for standard, 'xs' for mobile. The snake_case alias `layout_size` is also accepted for backward compatibility. - $ref: '#/components/parameters/ProjectIdPath' - in: query name: variables_override schema: type: string description: 'JSON object to override dashboard variables for this request only (not persisted). Format: {"": {"code_name": "", "variableId": "", "value": }}. Each entry must include `code_name` — partial entries are silently dropped. The simplest workflow is to call `dashboard-get` first, copy the matching entry from the response''s `variables` field, and mutate `value`. Top-level keys replace; nested values are not deep-merged. Ignored when accessed via a dashboard sharing token.' tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/dashboards/bulk_update_tags/: post: operationId: dashboards_bulk_update_tags_create description: 'Bulk update tags on multiple objects. Accepts: - {"ids": [...], "action": "add"|"remove"|"set", "tags": ["tag1", "tag2"]} Actions: - "add": Add tags to existing tags on each object - "remove": Remove specific tags from each object - "set": Replace all tags on each object with the provided list' parameters: - in: query name: format schema: type: string enum: - json - txt - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' multipart/form-data: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' text/event-stream: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' description: '' x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboards/create_from_template_json/: post: operationId: dashboards_create_from_template_json_create parameters: - in: query name: format schema: type: string enum: - json - txt - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body x-explicit-tags: - core - dashboards /api/projects/{project_id}/dashboards/create_unlisted_dashboard/: post: operationId: dashboards_create_unlisted_dashboard_create description: 'Creates an unlisted dashboard from template by tag. Enforces uniqueness (one per tag per team). Returns 409 if unlisted dashboard with this tag already exists.' parameters: - in: query name: format schema: type: string enum: - json - txt - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Dashboard' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dashboard' multipart/form-data: schema: $ref: '#/components/schemas/Dashboard' responses: '200': description: No response body x-explicit-tags: - core - dashboards /api/projects/{project_id}/event_definitions/: get: operationId: event_definitions_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedEnterpriseEventDefinitionList' description: '' x-explicit-tags: - core post: operationId: event_definitions_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' multipart/form-data: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' required: true security: - PersonalAPIKeyAuth: - event_definition:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' description: '' x-explicit-tags: - core /api/projects/{project_id}/event_definitions/{id}/: get: operationId: event_definitions_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this event definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' description: '' x-explicit-tags: - core put: operationId: event_definitions_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this event definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' multipart/form-data: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' required: true security: - PersonalAPIKeyAuth: - event_definition:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' description: '' x-explicit-tags: - core patch: operationId: event_definitions_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this event definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedEnterpriseEventDefinition' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedEnterpriseEventDefinition' multipart/form-data: schema: $ref: '#/components/schemas/PatchedEnterpriseEventDefinition' security: - PersonalAPIKeyAuth: - event_definition:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterpriseEventDefinition' description: '' x-explicit-tags: - core delete: operationId: event_definitions_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this event definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/event_definitions/{id}/metrics/: get: operationId: event_definitions_metrics_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this event definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/event_definitions/bulk_update_tags/: post: operationId: event_definitions_bulk_update_tags_create description: 'Bulk update tags on multiple objects. Accepts: - {"ids": [...], "action": "add"|"remove"|"set", "tags": ["tag1", "tag2"]} Actions: - "add": Add tags to existing tags on each object - "remove": Remove specific tags from each object - "set": Replace all tags on each object with the provided list' parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' multipart/form-data: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' description: '' x-explicit-tags: - core /api/projects/{project_id}/event_definitions/by_name/: get: operationId: event_definitions_by_name_retrieve description: Get event definition by exact name parameters: - in: query name: name schema: type: string description: The exact event name to look up required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventDefinitionRecord' description: '' x-explicit-tags: - core /api/projects/{project_id}/event_definitions/golang/: get: operationId: event_definitions_golang_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/event_definitions/promoted_properties/: get: operationId: event_definitions_promoted_properties_retrieve description: 'Resolve team-configured promoted properties for event definitions. The response only contains entries where a non-null promoted_property is set on the EventDefinition. Callers should fall back to the core taxonomy defaults client-side for names not present in the response.' parameters: - in: query name: names schema: type: array items: type: string description: 'Optional: restrict the response to these event names. Repeat the parameter for multiple names (e.g. `?names=a&names=b`). When omitted, returns every team-configured promoted property.' - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PromotedPropertiesResponse' description: '' x-explicit-tags: - core /api/projects/{project_id}/event_definitions/python/: get: operationId: event_definitions_python_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/event_definitions/typescript/: get: operationId: event_definitions_typescript_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - event_definition:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/exports/: get: operationId: exports_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedExportedAssetList' description: '' x-explicit-tags: - core post: operationId: exports_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExportedAsset' multipart/form-data: schema: $ref: '#/components/schemas/ExportedAsset' required: true security: - PersonalAPIKeyAuth: - export:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' description: '' x-explicit-tags: - core /api/projects/{project_id}/exports/{id}/: get: operationId: exports_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this exported asset. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExportedAsset' description: '' x-explicit-tags: - core /api/projects/{project_id}/exports/{id}/content/: get: operationId: exports_content_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this exported asset. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - export:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/: get: operationId: file_system_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' - name: search required: false in: query description: A search term. schema: type: string tags: - core security: - PersonalAPIKeyAuth: - file_system:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedFileSystemList' description: '' x-explicit-tags: - core post: operationId: file_system_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true security: - PersonalAPIKeyAuth: - file_system:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' x-explicit-tags: - core /api/projects/{project_id}/file_system/{id}/: get: operationId: file_system_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - file_system:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' x-explicit-tags: - core put: operationId: file_system_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true security: - PersonalAPIKeyAuth: - file_system:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' x-explicit-tags: - core patch: operationId: file_system_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedFileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedFileSystem' multipart/form-data: schema: $ref: '#/components/schemas/PatchedFileSystem' security: - PersonalAPIKeyAuth: - file_system:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/FileSystem' description: '' x-explicit-tags: - core delete: operationId: file_system_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - file_system:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/{id}/count/: post: operationId: file_system_count_create description: Get count of all files in a folder. parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/{id}/link/: post: operationId: file_system_link_create parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/{id}/move/: post: operationId: file_system_move_create parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this file system. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/count_by_path/: post: operationId: file_system_count_by_path_create description: Get count of all files in a folder. parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/log_view/: get: operationId: file_system_log_view_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core responses: '200': description: No response body x-explicit-tags: - core post: operationId: file_system_log_view_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/undo_delete/: post: operationId: file_system_undo_delete_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/FileSystem' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FileSystem' multipart/form-data: schema: $ref: '#/components/schemas/FileSystem' required: true responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/file_system/unfiled/: get: operationId: file_system_unfiled_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/: get: operationId: groups_list description: 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/ parameters: - name: cursor required: false in: query description: The pagination cursor value. schema: type: string - in: query name: group_type_index schema: type: integer description: Specify the group type to list required: true - $ref: '#/components/parameters/ProjectIdPath' - in: query name: search schema: type: string description: Search the group name required: true tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedGroupList' description: '' x-explicit-tags: - core post: operationId: groups_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroup' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CreateGroup' multipart/form-data: schema: $ref: '#/components/schemas/CreateGroup' required: true security: - PersonalAPIKeyAuth: - group:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' x-explicit-tags: - core /api/projects/{project_id}/groups/activity/: get: operationId: groups_activity_retrieve parameters: - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - in: query name: id schema: type: string description: Specify the id of the user to find groups for required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - activity_log:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/delete_property/: post: operationId: groups_delete_property_create parameters: - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Group' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Group' multipart/form-data: schema: $ref: '#/components/schemas/Group' required: true security: - PersonalAPIKeyAuth: - group:write responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/find/: get: operationId: groups_find_retrieve parameters: - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/property_definitions/: get: operationId: groups_property_definitions_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/property_values/: get: operationId: groups_property_values_retrieve parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/related/: get: operationId: groups_related_retrieve parameters: - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - in: query name: id schema: type: string description: Specify the id of the user to find groups for required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - group:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/groups/update_property/: post: operationId: groups_update_property_create parameters: - in: query name: group_key schema: type: string description: Specify the key of the group to find required: true - in: query name: group_type_index schema: type: integer description: Specify the group type to find required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Group' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Group' multipart/form-data: schema: $ref: '#/components/schemas/Group' required: true security: - PersonalAPIKeyAuth: - group:write responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/insights/{insight_id}/sharing/: get: operationId: insights_sharing_list parameters: - in: path name: insight_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/insights/{insight_id}/sharing/passwords/: post: operationId: insights_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - in: path name: insight_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/insights/{insight_id}/sharing/passwords/{password_id}/: delete: operationId: insights_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - in: path name: insight_id schema: type: integer required: true - in: path name: password_id schema: type: string required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/insights/{insight_id}/sharing/refresh/: post: operationId: insights_sharing_refresh_create parameters: - in: path name: insight_id schema: type: integer required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/project_secret_api_keys/: get: operationId: project_secret_api_keys_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - project:read - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedProjectSecretAPIKeyList' description: '' x-explicit-tags: - core post: operationId: project_secret_api_keys_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' required: true security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' x-explicit-tags: - core /api/projects/{project_id}/project_secret_api_keys/{id}/: get: operationId: project_secret_api_keys_retrieve parameters: - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - project:read - PersonalAPIKeyAuth: - project:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' x-explicit-tags: - core put: operationId: project_secret_api_keys_update parameters: - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' required: true security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' x-explicit-tags: - core patch: operationId: project_secret_api_keys_partial_update parameters: - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectSecretAPIKey' security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' x-explicit-tags: - core delete: operationId: project_secret_api_keys_destroy parameters: - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - project:write - PersonalAPIKeyAuth: - project:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/project_secret_api_keys/{id}/roll/: post: operationId: project_secret_api_keys_roll_create description: Roll a project secret API key parameters: - in: path name: id schema: type: string description: A unique value identifying this project secret api key. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectSecretAPIKey' description: '' x-explicit-tags: - core /api/projects/{project_id}/property_definitions/: get: operationId: property_definitions_list parameters: - in: query name: event_names schema: type: string minLength: 1 description: If sent, response value will have `is_seen_on_filtered_events` populated. JSON-encoded - in: query name: exclude_core_properties schema: type: boolean default: false description: Whether to exclude core properties - in: query name: exclude_hidden schema: type: boolean default: false description: Whether to exclude properties marked as hidden - in: query name: excluded_properties schema: type: string minLength: 1 description: JSON-encoded list of excluded properties - in: query name: filter_by_event_names schema: type: boolean nullable: true description: Whether to return only properties for events in `event_names` - in: query name: group_type_index schema: type: integer description: What group type is the property for. Only should be set if `type=group` - in: query name: is_feature_flag schema: type: boolean nullable: true description: Whether to return only (or excluding) feature flag properties - in: query name: is_numerical schema: type: boolean nullable: true description: Whether to return only (or excluding) numerical property definitions - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' - in: query name: properties schema: type: string minLength: 1 description: Comma-separated list of properties to filter - in: query name: search schema: type: string description: Searches properties by name - in: query name: type schema: enum: - event - person - group - session type: string default: event minLength: 1 description: 'What property definitions to return * `event` - event * `person` - person * `group` - group * `session` - session' - in: query name: verified schema: type: boolean nullable: true description: Filter by verified status. True returns only verified, false returns only unverified. tags: - core security: - PersonalAPIKeyAuth: - property_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedEnterprisePropertyDefinitionList' description: '' x-explicit-tags: - core /api/projects/{project_id}/property_definitions/{id}/: get: operationId: property_definitions_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this property definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - property_definition:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' description: '' x-explicit-tags: - core put: operationId: property_definitions_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this property definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' multipart/form-data: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' security: - PersonalAPIKeyAuth: - property_definition:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' description: '' x-explicit-tags: - core patch: operationId: property_definitions_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this property definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedEnterprisePropertyDefinition' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedEnterprisePropertyDefinition' multipart/form-data: schema: $ref: '#/components/schemas/PatchedEnterprisePropertyDefinition' security: - PersonalAPIKeyAuth: - property_definition:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnterprisePropertyDefinition' description: '' x-explicit-tags: - core delete: operationId: property_definitions_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this property definition. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - property_definition:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/property_definitions/bulk_update_tags/: post: operationId: property_definitions_bulk_update_tags_create description: 'Bulk update tags on multiple objects. Accepts: - {"ids": [...], "action": "add"|"remove"|"set", "tags": ["tag1", "tag2"]} Actions: - "add": Add tags to existing tags on each object - "remove": Remove specific tags from each object - "set": Replace all tags on each object with the provided list' parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' multipart/form-data: schema: $ref: '#/components/schemas/BulkUpdateTagsRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkUpdateTagsResponse' description: '' x-explicit-tags: - core /api/projects/{project_id}/property_definitions/seen_together/: get: operationId: property_definitions_seen_together_retrieve description: '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' parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - property_definition:read responses: '200': description: No response body x-explicit-tags: - core /api/projects/{project_id}/session_recordings/{recording_id}/sharing/: get: operationId: session_recordings_sharing_list parameters: - $ref: '#/components/parameters/ProjectIdPath' - in: path name: recording_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:read responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/session_recordings/{recording_id}/sharing/passwords/: post: operationId: session_recordings_sharing_passwords_create description: Create a new password for the sharing configuration. parameters: - $ref: '#/components/parameters/ProjectIdPath' - in: path name: recording_id schema: type: string required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/session_recordings/{recording_id}/sharing/passwords/{password_id}/: delete: operationId: session_recordings_sharing_passwords_destroy description: Delete a password from the sharing configuration. parameters: - in: path name: password_id schema: type: string required: true - $ref: '#/components/parameters/ProjectIdPath' - in: path name: recording_id schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '204': description: No response body x-explicit-tags: - core /api/projects/{project_id}/session_recordings/{recording_id}/sharing/refresh/: post: operationId: session_recordings_sharing_refresh_create parameters: - $ref: '#/components/parameters/ProjectIdPath' - in: path name: recording_id schema: type: string required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SharingConfiguration' multipart/form-data: schema: $ref: '#/components/schemas/SharingConfiguration' security: - PersonalAPIKeyAuth: - sharing_configuration:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/SharingConfiguration' description: '' x-explicit-tags: - core /api/projects/{project_id}/subscriptions/: get: operationId: subscriptions_list parameters: - in: query name: created_by schema: type: string description: Filter by creator user UUID. - in: query name: dashboard schema: type: integer description: Filter by dashboard ID. - in: query name: insight schema: type: integer description: Filter by insight ID. - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/ProjectIdPath' - in: query name: resource_type schema: type: string enum: - dashboard - insight description: 'Filter by subscription resource: insight vs dashboard export.' - name: search required: false in: query description: A search term. schema: type: string - in: query name: target_type schema: type: string enum: - email - slack - webhook description: Filter by delivery channel (email, Slack, or webhook). tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedSubscriptionList' description: '' x-explicit-tags: - core post: operationId: subscriptions_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Subscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Subscription' multipart/form-data: schema: $ref: '#/components/schemas/Subscription' required: true security: - PersonalAPIKeyAuth: - subscription:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' x-explicit-tags: - core /api/projects/{project_id}/subscriptions/{id}/: get: operationId: subscriptions_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - subscription:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' x-explicit-tags: - core put: operationId: subscriptions_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/Subscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Subscription' multipart/form-data: schema: $ref: '#/components/schemas/Subscription' required: true security: - PersonalAPIKeyAuth: - subscription:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' x-explicit-tags: - core patch: operationId: subscriptions_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSubscription' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedSubscription' multipart/form-data: schema: $ref: '#/components/schemas/PatchedSubscription' security: - PersonalAPIKeyAuth: - subscription:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/Subscription' description: '' x-explicit-tags: - core delete: operationId: subscriptions_destroy description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - subscription:write responses: '405': description: No response body x-explicit-tags: - core /api/projects/{project_id}/subscriptions/{id}/test-delivery/: post: operationId: subscriptions_test_delivery_create parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this subscription. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - core security: - PersonalAPIKeyAuth: - subscription:write responses: '202': description: Test delivery workflow started x-explicit-tags: - core /api/users/: get: operationId: users_list parameters: - in: query name: email schema: type: string - in: query name: is_staff schema: type: boolean - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedUserList' description: '' x-explicit-tags: - core /api/users/{uuid}/: get: operationId: users_retrieve description: Retrieve a user's profile and settings. Pass `@me` as the UUID to fetch the authenticated user; non-staff callers may only access their own account. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' x-explicit-tags: - core put: operationId: users_update description: Replace the authenticated user's profile and settings. Pass `@me` as the UUID to update the authenticated user. Prefer the PATCH endpoint for partial updates — PUT requires every writable field to be provided. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true security: - PersonalAPIKeyAuth: - user:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' x-explicit-tags: - core patch: operationId: users_partial_update description: Update one or more of the authenticated user's profile fields or settings. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUser' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUser' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUser' security: - PersonalAPIKeyAuth: - user:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' x-explicit-tags: - core delete: operationId: users_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core responses: '204': description: No response body x-explicit-tags: - core /api/users/{uuid}/github_login/: get: operationId: users_github_login_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/hedgehog_config/: get: operationId: users_hedgehog_config_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': description: No response body x-explicit-tags: - core patch: operationId: users_hedgehog_config_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUser' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUser' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUser' security: - PersonalAPIKeyAuth: - user:write responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/integrations/: get: operationId: users_integrations_list description: '`/api/users/@me/integrations/` — manage the user''s personal GitHub integrations.' summary: List personal GitHub integrations parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - in: path name: uuid schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedUserGitHubIntegrationListResponseList' description: '' x-explicit-tags: - core /api/users/{uuid}/integrations/github/{installation_id}/: delete: operationId: users_integrations_github_destroy description: Remove a specific GitHub installation by its installation_id. summary: Disconnect a personal GitHub integration parameters: - in: path name: installation_id schema: type: string pattern: ^\d+$ required: true - in: path name: uuid schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - user:write responses: '204': description: Integration removed. x-explicit-tags: - core /api/users/{uuid}/integrations/github/{installation_id}/branches/: get: operationId: users_integrations_github_branches_retrieve description: List branches for a repository accessible to a personal GitHub installation. summary: List branches for a personal GitHub installation repository parameters: - in: path name: installation_id schema: type: string pattern: ^\d+$ required: true - in: query name: limit schema: type: integer maximum: 1000 minimum: 1 default: 100 description: Maximum number of branches to return - in: query name: offset schema: type: integer minimum: 0 default: 0 description: Number of branches to skip - in: query name: repo schema: type: string minLength: 1 description: Repository in owner/repo format required: true - in: query name: search schema: type: string default: '' description: Optional case-insensitive branch name search query. - in: path name: uuid schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/GitHubBranchesResponse' description: '' x-explicit-tags: - core /api/users/{uuid}/integrations/github/{installation_id}/repos/: get: operationId: users_integrations_github_repos_retrieve description: List repositories accessible to a specific GitHub installation (paginated, cached). summary: List repositories for a personal GitHub installation parameters: - in: path name: installation_id schema: type: string pattern: ^\d+$ required: true - in: query name: limit schema: type: integer maximum: 500 minimum: 1 default: 100 description: Maximum number of repositories to return per request (max 500). - in: query name: offset schema: type: integer minimum: 0 default: 0 description: Number of repositories to skip before returning results. - in: query name: search schema: type: string default: '' description: Optional case-insensitive repository name search query. - in: path name: uuid schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - user:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/GitHubReposResponse' description: '' x-explicit-tags: - core /api/users/{uuid}/integrations/github/{installation_id}/repos/refresh/: post: operationId: users_integrations_github_repos_refresh_create description: Refresh repositories accessible to a specific GitHub installation. summary: Refresh repositories for a personal GitHub installation parameters: - in: path name: installation_id schema: type: string pattern: ^\d+$ required: true - in: path name: uuid schema: type: string required: true tags: - core security: - PersonalAPIKeyAuth: - user:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/GitHubReposRefreshResponse' description: '' x-explicit-tags: - core /api/users/{uuid}/integrations/github/start/: post: operationId: users_integrations_github_start_create description: 'Start GitHub linking: either full App install or OAuth-only (user-to-server). ``**_kwargs`` absorbs ``parent_lookup_uuid`` from the nested ``/api/users/{uuid}/integrations/`` router (same pattern as ``local_evaluation`` under projects). Usually returns ``install_url`` pointing at ``/installations/new`` so the user can pick any GitHub org (new or already connected). GitHub''s install page handles both cases: orgs where the app is installed show "Configure" (no admin needed), orgs where it isn''t show "Install" (needs admin). **PostHog Code fast path:** when ``connect_from`` is ``"posthog_code"``, the current project already has a team-level GitHub installation, and the user has no ``UserIntegration`` for that installation yet, we skip the org picker and redirect straight to ``/login/oauth/authorize`` so the user only authorizes themselves and returns to PostHog Code immediately. In both cases the response key is ``install_url`` for compatibility with callers.' summary: Start GitHub personal integration linking parameters: - in: path name: uuid schema: type: string required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/UserGitHubLinkStartRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserGitHubLinkStartRequest' multipart/form-data: schema: $ref: '#/components/schemas/UserGitHubLinkStartRequest' security: - PersonalAPIKeyAuth: - user:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserGitHubLinkStartResponse' description: '' x-explicit-tags: - core /api/users/{uuid}/scene_personalisation/: post: operationId: users_scene_personalisation_create parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/start_2fa_setup/: get: operationId: users_start_2fa_setup_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/two_factor_backup_codes/: post: operationId: users_two_factor_backup_codes_create description: Generate new backup codes, invalidating any existing ones parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/two_factor_disable/: post: operationId: users_two_factor_disable_create description: Disable 2FA and remove all related devices parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/two_factor_start_setup/: get: operationId: users_two_factor_start_setup_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/two_factor_status/: get: operationId: users_two_factor_status_retrieve description: Get current 2FA status including backup codes if enabled parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/two_factor_validate/: post: operationId: users_two_factor_validate_create parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true responses: '200': description: No response body x-explicit-tags: - core /api/users/{uuid}/validate_2fa/: post: operationId: users_validate_2fa_create parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true responses: '200': description: No response body x-explicit-tags: - core /api/users/cancel_email_change_request/: patch: operationId: users_cancel_email_change_request_partial_update tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUser' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUser' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUser' responses: '200': description: No response body x-explicit-tags: - core /api/users/request_email_verification/: post: operationId: users_request_email_verification_create tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true security: - {} responses: '200': description: No response body x-explicit-tags: - core /api/users/verify_email/: post: operationId: users_verify_email_create tags: - core requestBody: content: application/json: schema: $ref: '#/components/schemas/User' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/User' multipart/form-data: schema: $ref: '#/components/schemas/User' required: true security: - {} responses: '200': description: No response body x-explicit-tags: - core components: schemas: GitHubReposResponse: type: object properties: repositories: type: array items: $ref: '#/components/schemas/GitHubRepo' has_more: type: boolean description: Whether more repositories are available beyond this page. required: - has_more - repositories BulkUpdateTagsResponse: type: object properties: updated: type: array items: $ref: '#/components/schemas/BulkUpdateTagsItem' skipped: type: array items: $ref: '#/components/schemas/BulkUpdateTagsError' required: - skipped - updated PatchedProjectSecretAPIKey: type: object properties: id: type: string readOnly: true label: type: string maxLength: 40 value: type: string readOnly: true mask_value: type: string readOnly: true nullable: true created_at: type: string format: date-time readOnly: true created_by: type: integer readOnly: true nullable: true last_used_at: type: string format: date-time readOnly: true nullable: true last_rolled_at: type: string format: date-time readOnly: true nullable: true scopes: type: array items: type: string PaginatedUserGitHubIntegrationListResponseList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/UserGitHubIntegrationListResponse' PaginatedSubscriptionList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/Subscription' ReorderTilesRequest: type: object properties: tile_order: type: array items: type: integer description: Array of tile IDs in the desired display order (top to bottom, left to right). minItems: 1 required: - tile_order PaginatedProjectSecretAPIKeyList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/ProjectSecretAPIKey' PatchedAddPersonsToStaticCohortRequest: type: object properties: person_ids: type: array items: type: string format: uuid description: List of person UUIDs to add to the cohort RoleAtOrganizationEnum: enum: - engineering - data - product - founder - leadership - marketing - sales - other type: string description: '* `engineering` - Engineering * `data` - Data * `product` - Product Management * `founder` - Founder * `leadership` - Leadership * `marketing` - Marketing * `sales` - Sales / Success * `other` - Other' SubscriptionFrequencyEnum: enum: - daily - weekly - monthly - yearly type: string description: '* `daily` - Daily * `weekly` - Weekly * `monthly` - Monthly * `yearly` - Yearly' RunInsightsResponse: type: object properties: results: type: array items: $ref: '#/components/schemas/DashboardTileResult' description: Results for each insight tile on the dashboard. required: - results Role: type: object properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 200 created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true members: type: array items: type: object additionalProperties: true description: Members assigned to this role readOnly: true is_default: type: boolean readOnly: true required: - created_at - created_by - id - is_default - members - name NullEnum: enum: - null ProjectBackwardCompat: type: object description: 'Like `ProjectBasicSerializer`, but also works as a drop-in replacement for `TeamBasicSerializer` by way of passthrough fields. This allows the meaning of `Team` to change from "project" to "environment" without breaking backward compatibility of the REST API. Do not use this in greenfield endpoints!' properties: id: type: integer readOnly: true organization: type: string format: uuid readOnly: true name: type: string description: Human-readable project name. maxLength: 200 minLength: 1 product_description: type: string nullable: true description: Short description of what the project is about. This is helpful to give our AI agents context about your project. maxLength: 1000 created_at: type: string format: date-time readOnly: true effective_membership_level: allOf: - $ref: '#/components/schemas/EffectiveMembershipLevelEnum' nullable: true readOnly: true has_group_types: type: boolean readOnly: true group_types: type: array items: type: object additionalProperties: true readOnly: true live_events_token: type: string nullable: true readOnly: true updated_at: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true api_token: type: string readOnly: true app_urls: type: array items: type: string nullable: true maxLength: 200 anonymize_ips: type: boolean description: When true, PostHog drops the IP address from every ingested event. completed_snippet_onboarding: type: boolean ingested_event: type: boolean readOnly: true test_account_filters: description: Filter groups that identify internal/test traffic to be excluded from insights. test_account_filters_default_checked: type: boolean nullable: true description: When true, new insights default to excluding internal/test users. path_cleaning_filters: nullable: true description: Regex rewrite rules that collapse dynamic path segments (e.g. user IDs) before displaying URLs in paths. is_demo: type: boolean timezone: allOf: - $ref: '#/components/schemas/TimezoneEnum' description: 'IANA timezone used for date-based filters and reporting (e.g. `America/Los_Angeles`). * `Africa/Abidjan` - Africa/Abidjan * `Africa/Accra` - Africa/Accra * `Africa/Addis_Ababa` - Africa/Addis_Ababa * `Africa/Algiers` - Africa/Algiers * `Africa/Asmara` - Africa/Asmara * `Africa/Asmera` - Africa/Asmera * `Africa/Bamako` - Africa/Bamako * `Africa/Bangui` - Africa/Bangui * `Africa/Banjul` - Africa/Banjul * `Africa/Bissau` - Africa/Bissau * `Africa/Blantyre` - Africa/Blantyre * `Africa/Brazzaville` - Africa/Brazzaville * `Africa/Bujumbura` - Africa/Bujumbura * `Africa/Cairo` - Africa/Cairo * `Africa/Casablanca` - Africa/Casablanca * `Africa/Ceuta` - Africa/Ceuta * `Africa/Conakry` - Africa/Conakry * `Africa/Dakar` - Africa/Dakar * `Africa/Dar_es_Salaam` - Africa/Dar_es_Salaam * `Africa/Djibouti` - Africa/Djibouti * `Africa/Douala` - Africa/Douala * `Africa/El_Aaiun` - Africa/El_Aaiun * `Africa/Freetown` - Africa/Freetown * `Africa/Gaborone` - Africa/Gaborone * `Africa/Harare` - Africa/Harare * `Africa/Johannesburg` - Africa/Johannesburg * `Africa/Juba` - Africa/Juba * `Africa/Kampala` - Africa/Kampala * `Africa/Khartoum` - Africa/Khartoum * `Africa/Kigali` - Africa/Kigali * `Africa/Kinshasa` - Africa/Kinshasa * `Africa/Lagos` - Africa/Lagos * `Africa/Libreville` - Africa/Libreville * `Africa/Lome` - Africa/Lome * `Africa/Luanda` - Africa/Luanda * `Africa/Lubumbashi` - Africa/Lubumbashi * `Africa/Lusaka` - Africa/Lusaka * `Africa/Malabo` - Africa/Malabo * `Africa/Maputo` - Africa/Maputo * `Africa/Maseru` - Africa/Maseru * `Africa/Mbabane` - Africa/Mbabane * `Africa/Mogadishu` - Africa/Mogadishu * `Africa/Monrovia` - Africa/Monrovia * `Africa/Nairobi` - Africa/Nairobi * `Africa/Ndjamena` - Africa/Ndjamena * `Africa/Niamey` - Africa/Niamey * `Africa/Nouakchott` - Africa/Nouakchott * `Africa/Ouagadougou` - Africa/Ouagadougou * `Africa/Porto-Novo` - Africa/Porto-Novo * `Africa/Sao_Tome` - Africa/Sao_Tome * `Africa/Timbuktu` - Africa/Timbuktu * `Africa/Tripoli` - Africa/Tripoli * `Africa/Tunis` - Africa/Tunis * `Africa/Windhoek` - Africa/Windhoek * `America/Adak` - America/Adak * `America/Anchorage` - America/Anchorage * `America/Anguilla` - America/Anguilla * `America/Antigua` - America/Antigua * `America/Araguaina` - America/Araguaina * `America/Argentina/Buenos_Aires` - America/Argentina/Buenos_Aires * `America/Argentina/Catamarca` - America/Argentina/Catamarca * `America/Argentina/ComodRivadavia` - America/Argentina/ComodRivadavia * `America/Argentina/Cordoba` - America/Argentina/Cordoba * `America/Argentina/Jujuy` - America/Argentina/Jujuy * `America/Argentina/La_Rioja` - America/Argentina/La_Rioja * `America/Argentina/Mendoza` - America/Argentina/Mendoza * `America/Argentina/Rio_Gallegos` - America/Argentina/Rio_Gallegos * `America/Argentina/Salta` - America/Argentina/Salta * `America/Argentina/San_Juan` - America/Argentina/San_Juan * `America/Argentina/San_Luis` - America/Argentina/San_Luis * `America/Argentina/Tucuman` - America/Argentina/Tucuman * `America/Argentina/Ushuaia` - America/Argentina/Ushuaia * `America/Aruba` - America/Aruba * `America/Asuncion` - America/Asuncion * `America/Atikokan` - America/Atikokan * `America/Atka` - America/Atka * `America/Bahia` - America/Bahia * `America/Bahia_Banderas` - America/Bahia_Banderas * `America/Barbados` - America/Barbados * `America/Belem` - America/Belem * `America/Belize` - America/Belize * `America/Blanc-Sablon` - America/Blanc-Sablon * `America/Boa_Vista` - America/Boa_Vista * `America/Bogota` - America/Bogota * `America/Boise` - America/Boise * `America/Buenos_Aires` - America/Buenos_Aires * `America/Cambridge_Bay` - America/Cambridge_Bay * `America/Campo_Grande` - America/Campo_Grande * `America/Cancun` - America/Cancun * `America/Caracas` - America/Caracas * `America/Catamarca` - America/Catamarca * `America/Cayenne` - America/Cayenne * `America/Cayman` - America/Cayman * `America/Chicago` - America/Chicago * `America/Chihuahua` - America/Chihuahua * `America/Ciudad_Juarez` - America/Ciudad_Juarez * `America/Coral_Harbour` - America/Coral_Harbour * `America/Cordoba` - America/Cordoba * `America/Costa_Rica` - America/Costa_Rica * `America/Creston` - America/Creston * `America/Cuiaba` - America/Cuiaba * `America/Curacao` - America/Curacao * `America/Danmarkshavn` - America/Danmarkshavn * `America/Dawson` - America/Dawson * `America/Dawson_Creek` - America/Dawson_Creek * `America/Denver` - America/Denver * `America/Detroit` - America/Detroit * `America/Dominica` - America/Dominica * `America/Edmonton` - America/Edmonton * `America/Eirunepe` - America/Eirunepe * `America/El_Salvador` - America/El_Salvador * `America/Ensenada` - America/Ensenada * `America/Fort_Nelson` - America/Fort_Nelson * `America/Fort_Wayne` - America/Fort_Wayne * `America/Fortaleza` - America/Fortaleza * `America/Glace_Bay` - America/Glace_Bay * `America/Godthab` - America/Godthab * `America/Goose_Bay` - America/Goose_Bay * `America/Grand_Turk` - America/Grand_Turk * `America/Grenada` - America/Grenada * `America/Guadeloupe` - America/Guadeloupe * `America/Guatemala` - America/Guatemala * `America/Guayaquil` - America/Guayaquil * `America/Guyana` - America/Guyana * `America/Halifax` - America/Halifax * `America/Havana` - America/Havana * `America/Hermosillo` - America/Hermosillo * `America/Indiana/Indianapolis` - America/Indiana/Indianapolis * `America/Indiana/Knox` - America/Indiana/Knox * `America/Indiana/Marengo` - America/Indiana/Marengo * `America/Indiana/Petersburg` - America/Indiana/Petersburg * `America/Indiana/Tell_City` - America/Indiana/Tell_City * `America/Indiana/Vevay` - America/Indiana/Vevay * `America/Indiana/Vincennes` - America/Indiana/Vincennes * `America/Indiana/Winamac` - America/Indiana/Winamac * `America/Indianapolis` - America/Indianapolis * `America/Inuvik` - America/Inuvik * `America/Iqaluit` - America/Iqaluit * `America/Jamaica` - America/Jamaica * `America/Jujuy` - America/Jujuy * `America/Juneau` - America/Juneau * `America/Kentucky/Louisville` - America/Kentucky/Louisville * `America/Kentucky/Monticello` - America/Kentucky/Monticello * `America/Knox_IN` - America/Knox_IN * `America/Kralendijk` - America/Kralendijk * `America/La_Paz` - America/La_Paz * `America/Lima` - America/Lima * `America/Los_Angeles` - America/Los_Angeles * `America/Louisville` - America/Louisville * `America/Lower_Princes` - America/Lower_Princes * `America/Maceio` - America/Maceio * `America/Managua` - America/Managua * `America/Manaus` - America/Manaus * `America/Marigot` - America/Marigot * `America/Martinique` - America/Martinique * `America/Matamoros` - America/Matamoros * `America/Mazatlan` - America/Mazatlan * `America/Mendoza` - America/Mendoza * `America/Menominee` - America/Menominee * `America/Merida` - America/Merida * `America/Metlakatla` - America/Metlakatla * `America/Mexico_City` - America/Mexico_City * `America/Miquelon` - America/Miquelon * `America/Moncton` - America/Moncton * `America/Monterrey` - America/Monterrey * `America/Montevideo` - America/Montevideo * `America/Montreal` - America/Montreal * `America/Montserrat` - America/Montserrat * `America/Nassau` - America/Nassau * `America/New_York` - America/New_York * `America/Nipigon` - America/Nipigon * `America/Nome` - America/Nome * `America/Noronha` - America/Noronha * `America/North_Dakota/Beulah` - America/North_Dakota/Beulah * `America/North_Dakota/Center` - America/North_Dakota/Center * `America/North_Dakota/New_Salem` - America/North_Dakota/New_Salem * `America/Nuuk` - America/Nuuk * `America/Ojinaga` - America/Ojinaga * `America/Panama` - America/Panama * `America/Pangnirtung` - America/Pangnirtung * `America/Paramaribo` - America/Paramaribo * `America/Phoenix` - America/Phoenix * `America/Port-au-Prince` - America/Port-au-Prince * `America/Port_of_Spain` - America/Port_of_Spain * `America/Porto_Acre` - America/Porto_Acre * `America/Porto_Velho` - America/Porto_Velho * `America/Puerto_Rico` - America/Puerto_Rico * `America/Punta_Arenas` - America/Punta_Arenas * `America/Rainy_River` - America/Rainy_River * `America/Rankin_Inlet` - America/Rankin_Inlet * `America/Recife` - America/Recife * `America/Regina` - America/Regina * `America/Resolute` - America/Resolute * `America/Rio_Branco` - America/Rio_Branco * `America/Rosario` - America/Rosario * `America/Santa_Isabel` - America/Santa_Isabel * `America/Santarem` - America/Santarem * `America/Santiago` - America/Santiago * `America/Santo_Domingo` - America/Santo_Domingo * `America/Sao_Paulo` - America/Sao_Paulo * `America/Scoresbysund` - America/Scoresbysund * `America/Shiprock` - America/Shiprock * `America/Sitka` - America/Sitka * `America/St_Barthelemy` - America/St_Barthelemy * `America/St_Johns` - America/St_Johns * `America/St_Kitts` - America/St_Kitts * `America/St_Lucia` - America/St_Lucia * `America/St_Thomas` - America/St_Thomas * `America/St_Vincent` - America/St_Vincent * `America/Swift_Current` - America/Swift_Current * `America/Tegucigalpa` - America/Tegucigalpa * `America/Thule` - America/Thule * `America/Thunder_Bay` - America/Thunder_Bay * `America/Tijuana` - America/Tijuana * `America/Toronto` - America/Toronto * `America/Tortola` - America/Tortola * `America/Vancouver` - America/Vancouver * `America/Virgin` - America/Virgin * `America/Whitehorse` - America/Whitehorse * `America/Winnipeg` - America/Winnipeg * `America/Yakutat` - America/Yakutat * `America/Yellowknife` - America/Yellowknife * `Antarctica/Casey` - Antarctica/Casey * `Antarctica/Davis` - Antarctica/Davis * `Antarctica/DumontDUrville` - Antarctica/DumontDUrville * `Antarctica/Macquarie` - Antarctica/Macquarie * `Antarctica/Mawson` - Antarctica/Mawson * `Antarctica/McMurdo` - Antarctica/McMurdo * `Antarctica/Palmer` - Antarctica/Palmer * `Antarctica/Rothera` - Antarctica/Rothera * `Antarctica/South_Pole` - Antarctica/South_Pole * `Antarctica/Syowa` - Antarctica/Syowa * `Antarctica/Troll` - Antarctica/Troll * `Antarctica/Vostok` - Antarctica/Vostok * `Arctic/Longyearbyen` - Arctic/Longyearbyen * `Asia/Aden` - Asia/Aden * `Asia/Almaty` - Asia/Almaty * `Asia/Amman` - Asia/Amman * `Asia/Anadyr` - Asia/Anadyr * `Asia/Aqtau` - Asia/Aqtau * `Asia/Aqtobe` - Asia/Aqtobe * `Asia/Ashgabat` - Asia/Ashgabat * `Asia/Ashkhabad` - Asia/Ashkhabad * `Asia/Atyrau` - Asia/Atyrau * `Asia/Baghdad` - Asia/Baghdad * `Asia/Bahrain` - Asia/Bahrain * `Asia/Baku` - Asia/Baku * `Asia/Bangkok` - Asia/Bangkok * `Asia/Barnaul` - Asia/Barnaul * `Asia/Beirut` - Asia/Beirut * `Asia/Bishkek` - Asia/Bishkek * `Asia/Brunei` - Asia/Brunei * `Asia/Calcutta` - Asia/Calcutta * `Asia/Chita` - Asia/Chita * `Asia/Choibalsan` - Asia/Choibalsan * `Asia/Chongqing` - Asia/Chongqing * `Asia/Chungking` - Asia/Chungking * `Asia/Colombo` - Asia/Colombo * `Asia/Dacca` - Asia/Dacca * `Asia/Damascus` - Asia/Damascus * `Asia/Dhaka` - Asia/Dhaka * `Asia/Dili` - Asia/Dili * `Asia/Dubai` - Asia/Dubai * `Asia/Dushanbe` - Asia/Dushanbe * `Asia/Famagusta` - Asia/Famagusta * `Asia/Gaza` - Asia/Gaza * `Asia/Harbin` - Asia/Harbin * `Asia/Hebron` - Asia/Hebron * `Asia/Ho_Chi_Minh` - Asia/Ho_Chi_Minh * `Asia/Hong_Kong` - Asia/Hong_Kong * `Asia/Hovd` - Asia/Hovd * `Asia/Irkutsk` - Asia/Irkutsk * `Asia/Istanbul` - Asia/Istanbul * `Asia/Jakarta` - Asia/Jakarta * `Asia/Jayapura` - Asia/Jayapura * `Asia/Jerusalem` - Asia/Jerusalem * `Asia/Kabul` - Asia/Kabul * `Asia/Kamchatka` - Asia/Kamchatka * `Asia/Karachi` - Asia/Karachi * `Asia/Kashgar` - Asia/Kashgar * `Asia/Kathmandu` - Asia/Kathmandu * `Asia/Katmandu` - Asia/Katmandu * `Asia/Khandyga` - Asia/Khandyga * `Asia/Kolkata` - Asia/Kolkata * `Asia/Krasnoyarsk` - Asia/Krasnoyarsk * `Asia/Kuala_Lumpur` - Asia/Kuala_Lumpur * `Asia/Kuching` - Asia/Kuching * `Asia/Kuwait` - Asia/Kuwait * `Asia/Macao` - Asia/Macao * `Asia/Macau` - Asia/Macau * `Asia/Magadan` - Asia/Magadan * `Asia/Makassar` - Asia/Makassar * `Asia/Manila` - Asia/Manila * `Asia/Muscat` - Asia/Muscat * `Asia/Nicosia` - Asia/Nicosia * `Asia/Novokuznetsk` - Asia/Novokuznetsk * `Asia/Novosibirsk` - Asia/Novosibirsk * `Asia/Omsk` - Asia/Omsk * `Asia/Oral` - Asia/Oral * `Asia/Phnom_Penh` - Asia/Phnom_Penh * `Asia/Pontianak` - Asia/Pontianak * `Asia/Pyongyang` - Asia/Pyongyang * `Asia/Qatar` - Asia/Qatar * `Asia/Qostanay` - Asia/Qostanay * `Asia/Qyzylorda` - Asia/Qyzylorda * `Asia/Rangoon` - Asia/Rangoon * `Asia/Riyadh` - Asia/Riyadh * `Asia/Saigon` - Asia/Saigon * `Asia/Sakhalin` - Asia/Sakhalin * `Asia/Samarkand` - Asia/Samarkand * `Asia/Seoul` - Asia/Seoul * `Asia/Shanghai` - Asia/Shanghai * `Asia/Singapore` - Asia/Singapore * `Asia/Srednekolymsk` - Asia/Srednekolymsk * `Asia/Taipei` - Asia/Taipei * `Asia/Tashkent` - Asia/Tashkent * `Asia/Tbilisi` - Asia/Tbilisi * `Asia/Tehran` - Asia/Tehran * `Asia/Tel_Aviv` - Asia/Tel_Aviv * `Asia/Thimbu` - Asia/Thimbu * `Asia/Thimphu` - Asia/Thimphu * `Asia/Tokyo` - Asia/Tokyo * `Asia/Tomsk` - Asia/Tomsk * `Asia/Ujung_Pandang` - Asia/Ujung_Pandang * `Asia/Ulaanbaatar` - Asia/Ulaanbaatar * `Asia/Ulan_Bator` - Asia/Ulan_Bator * `Asia/Urumqi` - Asia/Urumqi * `Asia/Ust-Nera` - Asia/Ust-Nera * `Asia/Vientiane` - Asia/Vientiane * `Asia/Vladivostok` - Asia/Vladivostok * `Asia/Yakutsk` - Asia/Yakutsk * `Asia/Yangon` - Asia/Yangon * `Asia/Yekaterinburg` - Asia/Yekaterinburg * `Asia/Yerevan` - Asia/Yerevan * `Atlantic/Azores` - Atlantic/Azores * `Atlantic/Bermuda` - Atlantic/Bermuda * `Atlantic/Canary` - Atlantic/Canary * `Atlantic/Cape_Verde` - Atlantic/Cape_Verde * `Atlantic/Faeroe` - Atlantic/Faeroe * `Atlantic/Faroe` - Atlantic/Faroe * `Atlantic/Jan_Mayen` - Atlantic/Jan_Mayen * `Atlantic/Madeira` - Atlantic/Madeira * `Atlantic/Reykjavik` - Atlantic/Reykjavik * `Atlantic/South_Georgia` - Atlantic/South_Georgia * `Atlantic/St_Helena` - Atlantic/St_Helena * `Atlantic/Stanley` - Atlantic/Stanley * `Australia/ACT` - Australia/ACT * `Australia/Adelaide` - Australia/Adelaide * `Australia/Brisbane` - Australia/Brisbane * `Australia/Broken_Hill` - Australia/Broken_Hill * `Australia/Canberra` - Australia/Canberra * `Australia/Currie` - Australia/Currie * `Australia/Darwin` - Australia/Darwin * `Australia/Eucla` - Australia/Eucla * `Australia/Hobart` - Australia/Hobart * `Australia/LHI` - Australia/LHI * `Australia/Lindeman` - Australia/Lindeman * `Australia/Lord_Howe` - Australia/Lord_Howe * `Australia/Melbourne` - Australia/Melbourne * `Australia/NSW` - Australia/NSW * `Australia/North` - Australia/North * `Australia/Perth` - Australia/Perth * `Australia/Queensland` - Australia/Queensland * `Australia/South` - Australia/South * `Australia/Sydney` - Australia/Sydney * `Australia/Tasmania` - Australia/Tasmania * `Australia/Victoria` - Australia/Victoria * `Australia/West` - Australia/West * `Australia/Yancowinna` - Australia/Yancowinna * `Brazil/Acre` - Brazil/Acre * `Brazil/DeNoronha` - Brazil/DeNoronha * `Brazil/East` - Brazil/East * `Brazil/West` - Brazil/West * `CET` - CET * `CST6CDT` - CST6CDT * `Canada/Atlantic` - Canada/Atlantic * `Canada/Central` - Canada/Central * `Canada/Eastern` - Canada/Eastern * `Canada/Mountain` - Canada/Mountain * `Canada/Newfoundland` - Canada/Newfoundland * `Canada/Pacific` - Canada/Pacific * `Canada/Saskatchewan` - Canada/Saskatchewan * `Canada/Yukon` - Canada/Yukon * `Chile/Continental` - Chile/Continental * `Chile/EasterIsland` - Chile/EasterIsland * `Cuba` - Cuba * `EET` - EET * `EST` - EST * `EST5EDT` - EST5EDT * `Egypt` - Egypt * `Eire` - Eire * `Etc/GMT` - Etc/GMT * `Etc/GMT+0` - Etc/GMT+0 * `Etc/GMT+1` - Etc/GMT+1 * `Etc/GMT+10` - Etc/GMT+10 * `Etc/GMT+11` - Etc/GMT+11 * `Etc/GMT+12` - Etc/GMT+12 * `Etc/GMT+2` - Etc/GMT+2 * `Etc/GMT+3` - Etc/GMT+3 * `Etc/GMT+4` - Etc/GMT+4 * `Etc/GMT+5` - Etc/GMT+5 * `Etc/GMT+6` - Etc/GMT+6 * `Etc/GMT+7` - Etc/GMT+7 * `Etc/GMT+8` - Etc/GMT+8 * `Etc/GMT+9` - Etc/GMT+9 * `Etc/GMT-0` - Etc/GMT-0 * `Etc/GMT-1` - Etc/GMT-1 * `Etc/GMT-10` - Etc/GMT-10 * `Etc/GMT-11` - Etc/GMT-11 * `Etc/GMT-12` - Etc/GMT-12 * `Etc/GMT-13` - Etc/GMT-13 * `Etc/GMT-14` - Etc/GMT-14 * `Etc/GMT-2` - Etc/GMT-2 * `Etc/GMT-3` - Etc/GMT-3 * `Etc/GMT-4` - Etc/GMT-4 * `Etc/GMT-5` - Etc/GMT-5 * `Etc/GMT-6` - Etc/GMT-6 * `Etc/GMT-7` - Etc/GMT-7 * `Etc/GMT-8` - Etc/GMT-8 * `Etc/GMT-9` - Etc/GMT-9 * `Etc/GMT0` - Etc/GMT0 * `Etc/Greenwich` - Etc/Greenwich * `Etc/UCT` - Etc/UCT * `Etc/UTC` - Etc/UTC * `Etc/Universal` - Etc/Universal * `Etc/Zulu` - Etc/Zulu * `Europe/Amsterdam` - Europe/Amsterdam * `Europe/Andorra` - Europe/Andorra * `Europe/Astrakhan` - Europe/Astrakhan * `Europe/Athens` - Europe/Athens * `Europe/Belfast` - Europe/Belfast * `Europe/Belgrade` - Europe/Belgrade * `Europe/Berlin` - Europe/Berlin * `Europe/Bratislava` - Europe/Bratislava * `Europe/Brussels` - Europe/Brussels * `Europe/Bucharest` - Europe/Bucharest * `Europe/Budapest` - Europe/Budapest * `Europe/Busingen` - Europe/Busingen * `Europe/Chisinau` - Europe/Chisinau * `Europe/Copenhagen` - Europe/Copenhagen * `Europe/Dublin` - Europe/Dublin * `Europe/Gibraltar` - Europe/Gibraltar * `Europe/Guernsey` - Europe/Guernsey * `Europe/Helsinki` - Europe/Helsinki * `Europe/Isle_of_Man` - Europe/Isle_of_Man * `Europe/Istanbul` - Europe/Istanbul * `Europe/Jersey` - Europe/Jersey * `Europe/Kaliningrad` - Europe/Kaliningrad * `Europe/Kiev` - Europe/Kiev * `Europe/Kirov` - Europe/Kirov * `Europe/Kyiv` - Europe/Kyiv * `Europe/Lisbon` - Europe/Lisbon * `Europe/Ljubljana` - Europe/Ljubljana * `Europe/London` - Europe/London * `Europe/Luxembourg` - Europe/Luxembourg * `Europe/Madrid` - Europe/Madrid * `Europe/Malta` - Europe/Malta * `Europe/Mariehamn` - Europe/Mariehamn * `Europe/Minsk` - Europe/Minsk * `Europe/Monaco` - Europe/Monaco * `Europe/Moscow` - Europe/Moscow * `Europe/Nicosia` - Europe/Nicosia * `Europe/Oslo` - Europe/Oslo * `Europe/Paris` - Europe/Paris * `Europe/Podgorica` - Europe/Podgorica * `Europe/Prague` - Europe/Prague * `Europe/Riga` - Europe/Riga * `Europe/Rome` - Europe/Rome * `Europe/Samara` - Europe/Samara * `Europe/San_Marino` - Europe/San_Marino * `Europe/Sarajevo` - Europe/Sarajevo * `Europe/Saratov` - Europe/Saratov * `Europe/Simferopol` - Europe/Simferopol * `Europe/Skopje` - Europe/Skopje * `Europe/Sofia` - Europe/Sofia * `Europe/Stockholm` - Europe/Stockholm * `Europe/Tallinn` - Europe/Tallinn * `Europe/Tirane` - Europe/Tirane * `Europe/Tiraspol` - Europe/Tiraspol * `Europe/Ulyanovsk` - Europe/Ulyanovsk * `Europe/Uzhgorod` - Europe/Uzhgorod * `Europe/Vaduz` - Europe/Vaduz * `Europe/Vatican` - Europe/Vatican * `Europe/Vienna` - Europe/Vienna * `Europe/Vilnius` - Europe/Vilnius * `Europe/Volgograd` - Europe/Volgograd * `Europe/Warsaw` - Europe/Warsaw * `Europe/Zagreb` - Europe/Zagreb * `Europe/Zaporozhye` - Europe/Zaporozhye * `Europe/Zurich` - Europe/Zurich * `GB` - GB * `GB-Eire` - GB-Eire * `GMT` - GMT * `GMT+0` - GMT+0 * `GMT-0` - GMT-0 * `GMT0` - GMT0 * `Greenwich` - Greenwich * `HST` - HST * `Hongkong` - Hongkong * `Iceland` - Iceland * `Indian/Antananarivo` - Indian/Antananarivo * `Indian/Chagos` - Indian/Chagos * `Indian/Christmas` - Indian/Christmas * `Indian/Cocos` - Indian/Cocos * `Indian/Comoro` - Indian/Comoro * `Indian/Kerguelen` - Indian/Kerguelen * `Indian/Mahe` - Indian/Mahe * `Indian/Maldives` - Indian/Maldives * `Indian/Mauritius` - Indian/Mauritius * `Indian/Mayotte` - Indian/Mayotte * `Indian/Reunion` - Indian/Reunion * `Iran` - Iran * `Israel` - Israel * `Jamaica` - Jamaica * `Japan` - Japan * `Kwajalein` - Kwajalein * `Libya` - Libya * `MET` - MET * `MST` - MST * `MST7MDT` - MST7MDT * `Mexico/BajaNorte` - Mexico/BajaNorte * `Mexico/BajaSur` - Mexico/BajaSur * `Mexico/General` - Mexico/General * `NZ` - NZ * `NZ-CHAT` - NZ-CHAT * `Navajo` - Navajo * `PRC` - PRC * `PST8PDT` - PST8PDT * `Pacific/Apia` - Pacific/Apia * `Pacific/Auckland` - Pacific/Auckland * `Pacific/Bougainville` - Pacific/Bougainville * `Pacific/Chatham` - Pacific/Chatham * `Pacific/Chuuk` - Pacific/Chuuk * `Pacific/Easter` - Pacific/Easter * `Pacific/Efate` - Pacific/Efate * `Pacific/Enderbury` - Pacific/Enderbury * `Pacific/Fakaofo` - Pacific/Fakaofo * `Pacific/Fiji` - Pacific/Fiji * `Pacific/Funafuti` - Pacific/Funafuti * `Pacific/Galapagos` - Pacific/Galapagos * `Pacific/Gambier` - Pacific/Gambier * `Pacific/Guadalcanal` - Pacific/Guadalcanal * `Pacific/Guam` - Pacific/Guam * `Pacific/Honolulu` - Pacific/Honolulu * `Pacific/Johnston` - Pacific/Johnston * `Pacific/Kanton` - Pacific/Kanton * `Pacific/Kiritimati` - Pacific/Kiritimati * `Pacific/Kosrae` - Pacific/Kosrae * `Pacific/Kwajalein` - Pacific/Kwajalein * `Pacific/Majuro` - Pacific/Majuro * `Pacific/Marquesas` - Pacific/Marquesas * `Pacific/Midway` - Pacific/Midway * `Pacific/Nauru` - Pacific/Nauru * `Pacific/Niue` - Pacific/Niue * `Pacific/Norfolk` - Pacific/Norfolk * `Pacific/Noumea` - Pacific/Noumea * `Pacific/Pago_Pago` - Pacific/Pago_Pago * `Pacific/Palau` - Pacific/Palau * `Pacific/Pitcairn` - Pacific/Pitcairn * `Pacific/Pohnpei` - Pacific/Pohnpei * `Pacific/Ponape` - Pacific/Ponape * `Pacific/Port_Moresby` - Pacific/Port_Moresby * `Pacific/Rarotonga` - Pacific/Rarotonga * `Pacific/Saipan` - Pacific/Saipan * `Pacific/Samoa` - Pacific/Samoa * `Pacific/Tahiti` - Pacific/Tahiti * `Pacific/Tarawa` - Pacific/Tarawa * `Pacific/Tongatapu` - Pacific/Tongatapu * `Pacific/Truk` - Pacific/Truk * `Pacific/Wake` - Pacific/Wake * `Pacific/Wallis` - Pacific/Wallis * `Pacific/Yap` - Pacific/Yap * `Poland` - Poland * `Portugal` - Portugal * `ROC` - ROC * `ROK` - ROK * `Singapore` - Singapore * `Turkey` - Turkey * `UCT` - UCT * `US/Alaska` - US/Alaska * `US/Aleutian` - US/Aleutian * `US/Arizona` - US/Arizona * `US/Central` - US/Central * `US/East-Indiana` - US/East-Indiana * `US/Eastern` - US/Eastern * `US/Hawaii` - US/Hawaii * `US/Indiana-Starke` - US/Indiana-Starke * `US/Michigan` - US/Michigan * `US/Mountain` - US/Mountain * `US/Pacific` - US/Pacific * `US/Samoa` - US/Samoa * `UTC` - UTC * `Universal` - Universal * `W-SU` - W-SU * `WET` - WET * `Zulu` - Zulu' data_attributes: description: Element attributes that posthog-js should capture as action identifiers (e.g. `['data-attr']`). person_display_name_properties: type: array items: type: string maxLength: 400 nullable: true description: Ordered list of person properties used to render a human-friendly display name in the UI. correlation_config: nullable: true autocapture_opt_out: type: boolean nullable: true description: Disables posthog-js autocapture (clicks, page views) when true. autocapture_exceptions_opt_in: type: boolean nullable: true description: Enables automatic capture of JavaScript exceptions via the SDK. autocapture_web_vitals_opt_in: type: boolean nullable: true description: Enables automatic capture of Core Web Vitals performance metrics. autocapture_web_vitals_allowed_metrics: nullable: true autocapture_exceptions_errors_to_ignore: nullable: true capture_console_log_opt_in: type: boolean nullable: true description: Enables capturing browser console logs alongside session replays. capture_performance_opt_in: type: boolean nullable: true description: Enables capturing performance timing and network requests. session_recording_opt_in: type: boolean description: Enables session replay recording for this project. session_recording_sample_rate: type: string format: decimal pattern: ^-?\d{0,1}(?:\.\d{0,2})?$ nullable: true description: Fraction of sessions to record, as a decimal string between `0.00` and `1.00` (e.g. `0.1` = 10%). session_recording_minimum_duration_milliseconds: type: integer maximum: 30000 minimum: 0 nullable: true description: Skip saving sessions shorter than this many milliseconds. session_recording_linked_flag: nullable: true session_recording_network_payload_capture_config: nullable: true session_recording_masking_config: nullable: true session_recording_url_trigger_config: type: array items: nullable: true nullable: true session_recording_url_blocklist_config: type: array items: nullable: true nullable: true session_recording_event_trigger_config: type: array items: type: string nullable: true nullable: true session_recording_trigger_match_type_config: type: string nullable: true maxLength: 24 session_recording_trigger_groups: nullable: true description: V2 trigger groups configuration for session recording. If present, takes precedence over legacy trigger fields. session_recording_retention_period: allOf: - $ref: '#/components/schemas/SessionRecordingRetentionPeriodEnum' description: 'How long to retain new session recordings. One of `30d`, `90d`, `1y`, or `5y` (availability depends on plan). * `30d` - 30 Days * `90d` - 90 Days * `1y` - 1 Year * `5y` - 5 Years' session_replay_config: nullable: true survey_config: nullable: true access_control: type: boolean week_start_day: nullable: true description: 'First day of the week for date range filters. 0 = Sunday, 1 = Monday. * `0` - Sunday * `1` - Monday' oneOf: - $ref: '#/components/schemas/WeekStartDayEnum' - $ref: '#/components/schemas/NullEnum' primary_dashboard: type: integer nullable: true description: ID of the dashboard shown as the project's default landing dashboard. live_events_columns: type: array items: type: string nullable: true recording_domains: type: array items: type: string nullable: true maxLength: 200 nullable: true description: Origins permitted to record session replays and heatmaps. Empty list allows all origins. person_on_events_querying_enabled: type: boolean readOnly: true inject_web_apps: type: boolean nullable: true extra_settings: nullable: true modifiers: nullable: true default_modifiers: type: object additionalProperties: true readOnly: true has_completed_onboarding_for: nullable: true surveys_opt_in: type: boolean nullable: true description: Enables displaying surveys via posthog-js on allowed origins. heatmaps_opt_in: type: boolean nullable: true description: Enables heatmap recording on pages that host posthog-js. product_intents: type: array items: type: object properties: product_type: type: string created_at: type: string format: date-time onboarding_completed_at: type: string format: date-time nullable: true updated_at: type: string format: date-time readOnly: true flags_persistence_default: type: boolean nullable: true description: Default value for the `persist` option on newly created feature flags. secret_api_token: type: string readOnly: true nullable: true secret_api_token_backup: type: string readOnly: true nullable: true receive_org_level_activity_logs: type: boolean nullable: true business_model: nullable: true description: 'Whether this project serves B2B or B2C customers. Used to optimize default UI layouts. * `b2b` - B2B * `b2c` - B2C * `other` - Other' oneOf: - $ref: '#/components/schemas/BusinessModelEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' conversations_enabled: type: boolean nullable: true description: Enables the customer conversations / live chat product for this project. conversations_settings: nullable: true logs_settings: nullable: true proactive_tasks_enabled: type: boolean nullable: true available_setup_task_ids: type: array items: $ref: '#/components/schemas/AvailableSetupTaskIdsEnum' readOnly: true required: - api_token - available_setup_task_ids - created_at - default_modifiers - effective_membership_level - group_types - has_group_types - id - ingested_event - live_events_token - organization - person_on_events_querying_enabled - product_intents - secret_api_token - secret_api_token_backup - updated_at - uuid PaginatedCohortList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/Cohort' PluginsAccessLevelEnum: enum: - 0 - 3 - 6 - 9 type: integer description: '* `0` - none * `3` - config * `6` - install * `9` - root' SharingConfiguration: type: object properties: created_at: type: string format: date-time readOnly: true enabled: type: boolean access_token: type: string readOnly: true nullable: true settings: nullable: true password_required: type: boolean share_passwords: type: array items: $ref: '#/components/schemas/SharePassword' readOnly: true required: - access_token - created_at - share_passwords OrganizationMember: type: object properties: id: type: string format: uuid readOnly: true user: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true level: $ref: '#/components/schemas/OrganizationMembershipLevelEnum' joined_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true is_2fa_enabled: type: boolean readOnly: true has_social_auth: type: boolean readOnly: true last_login: type: string format: date-time readOnly: true required: - has_social_auth - id - is_2fa_enabled - joined_at - last_login - updated_at - user ActionEnum: enum: - add - remove - set type: string description: '* `add` - add * `remove` - remove * `set` - set' EffectivePrivilegeLevelEnum: enum: - 21 - 37 type: integer Group: type: object properties: group_type_index: type: integer maximum: 2147483647 minimum: -2147483648 group_key: type: string maxLength: 400 group_properties: {} created_at: type: string format: date-time readOnly: true required: - created_at - group_key - group_type_index CohortPersonsResponse: type: object properties: results: type: array items: $ref: '#/components/schemas/CohortPersonResult' next: type: string format: uri nullable: true previous: type: string format: uri nullable: true required: - next - previous - results PatchedEnterpriseEventDefinition: type: object description: Serializer mixin that handles tags for objects. properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 400 owner: type: integer nullable: true description: type: string nullable: true tags: type: array items: {} created_at: type: string format: date-time readOnly: true nullable: true updated_at: type: string format: date-time readOnly: true updated_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true last_seen_at: type: string format: date-time readOnly: true nullable: true last_updated_at: type: string format: date-time readOnly: true verified: type: boolean verified_at: type: string format: date-time readOnly: true nullable: true verified_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true hidden: type: boolean nullable: true enforcement_mode: $ref: '#/components/schemas/EnforcementModeEnum' promoted_property: type: string nullable: true description: Name of a single property on this event that PostHog UIs should display alongside the event (for example `$pathname` on `$pageview`). When set, surfaces like the session replay inspector show the property's value next to the event name without the user having to open the event. maxLength: 400 is_action: type: boolean readOnly: true action_id: type: integer readOnly: true is_calculating: type: boolean readOnly: true last_calculated_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true post_to_slack: type: boolean default: false default_columns: type: array items: type: string media_preview_urls: type: array items: type: string readOnly: true SessionRecordingRetentionPeriodEnum: enum: - 30d - 90d - 1y - 5y type: string description: '* `30d` - 30 Days * `90d` - 90 Days * `1y` - 1 Year * `5y` - 5 Years' Annotation: type: object properties: id: type: integer readOnly: true content: type: string nullable: true description: Annotation text shown on charts to describe the change, release, or incident. maxLength: 8192 date_marker: type: string format: date-time nullable: true description: When this annotation happened (ISO 8601 timestamp). Used to position it on charts. creation_type: allOf: - $ref: '#/components/schemas/CreationTypeEnum' description: 'Who created this annotation. Use `USR` for user-created notes and `GIT` for bot/deployment notes. * `USR` - user * `GIT` - GitHub' dashboard_item: type: integer nullable: true dashboard_id: type: integer nullable: true dashboard_name: type: string nullable: true readOnly: true insight_short_id: type: string nullable: true readOnly: true insight_name: type: string nullable: true readOnly: true insight_derived_name: type: string nullable: true readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true created_at: type: string format: date-time readOnly: true nullable: true updated_at: type: string format: date-time readOnly: true deleted: type: boolean description: Soft-delete flag. Set to true to hide the annotation, or false to restore it. scope: allOf: - $ref: '#/components/schemas/AnnotationScopeEnum' description: 'Annotation visibility scope: `project`, `organization`, `dashboard`, or `dashboard_item`. `recording` is deprecated and rejected. * `dashboard_item` - insight * `dashboard` - dashboard * `project` - project * `organization` - organization * `recording` - recording' required: - created_at - created_by - dashboard_name - id - insight_derived_name - insight_name - insight_short_id - updated_at PaginatedOrganizationMemberList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/OrganizationMember' FileSystem: type: object properties: id: type: string format: uuid readOnly: true path: type: string depth: type: integer readOnly: true nullable: true type: type: string maxLength: 100 ref: type: string nullable: true maxLength: 100 href: type: string nullable: true meta: nullable: true shortcut: type: boolean nullable: true created_at: type: string format: date-time readOnly: true last_viewed_at: type: string format: date-time readOnly: true nullable: true required: - created_at - depth - id - last_viewed_at - path ToolbarModeEnum: enum: - disabled - toolbar type: string description: '* `disabled` - disabled * `toolbar` - toolbar' PatchedEnterprisePropertyDefinition: type: object description: Serializer mixin that handles tags for objects. properties: id: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string nullable: true tags: type: array items: {} is_numerical: type: boolean readOnly: true updated_at: type: string format: date-time readOnly: true updated_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true is_seen_on_filtered_events: type: boolean readOnly: true nullable: true property_type: nullable: true oneOf: - $ref: '#/components/schemas/PropertyDefinitionTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' verified: type: boolean verified_at: type: string format: date-time readOnly: true nullable: true verified_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true hidden: type: boolean nullable: true EventPropFilterTypeEnum: enum: - event - element type: string OrganizationBasic: type: object description: 'Serializer for `Organization` model with minimal attributes to speeed up loading and transfer times. Also used for nested serializers.' properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 64 slug: type: string maxLength: 48 pattern: ^[-a-zA-Z0-9_]+$ logo_media_id: type: string format: uuid nullable: true readOnly: true membership_level: allOf: - $ref: '#/components/schemas/EffectiveMembershipLevelEnum' nullable: true readOnly: true members_can_use_personal_api_keys: type: boolean is_active: type: boolean nullable: true title: Active description: Set this to 'No' to temporarily disable an organization. is_not_active_reason: type: string nullable: true title: De-activated reason description: (optional) reason for why the organization has been de-activated. This will be displayed to users on the web app. maxLength: 200 is_pending_deletion: type: boolean nullable: true description: Set to True when org deletion has been initiated. Blocks all UI access until the async task completes. required: - id - logo_media_id - membership_level - name - slug BlankEnum: enum: - '' PropertyDefinitionTypeEnum: enum: - DateTime - String - Numeric - Boolean - Duration type: string description: '* `DateTime` - DateTime * `String` - String * `Numeric` - Numeric * `Boolean` - Boolean * `Duration` - Duration' UserGitHubIntegrationListResponse: type: object properties: results: type: array items: $ref: '#/components/schemas/UserGitHubIntegrationItem' description: GitHub personal integrations for the authenticated user. required: - results TargetTypeEnum: enum: - email - slack - webhook type: string description: '* `email` - Email * `slack` - Slack * `webhook` - Webhook' ProjectBackwardCompatBasic: type: object description: 'Like `ProjectBasicSerializer`, but also works as a drop-in replacement for `TeamBasicSerializer` by way of passthrough fields. This allows the meaning of `Team` to change from "project" to "environment" without breaking backward compatibility of the REST API. Do not use this in greenfield endpoints!' properties: id: type: integer readOnly: true uuid: type: string format: uuid readOnly: true organization: type: string format: uuid readOnly: true api_token: type: string readOnly: true name: type: string readOnly: true completed_snippet_onboarding: type: boolean readOnly: true has_completed_onboarding_for: readOnly: true nullable: true ingested_event: type: boolean readOnly: true is_demo: type: boolean readOnly: true timezone: allOf: - $ref: '#/components/schemas/TimezoneEnum' readOnly: true access_control: type: boolean readOnly: true required: - access_control - api_token - completed_snippet_onboarding - has_completed_onboarding_for - id - ingested_event - is_demo - name - organization - timezone - uuid LegalDocumentCreator: type: object properties: first_name: type: string email: type: string required: - email - first_name CohortTypeEnum: enum: - static - person_property - behavioral - realtime - analytical type: string description: '* `static` - static * `person_property` - person_property * `behavioral` - behavioral * `realtime` - realtime * `analytical` - analytical' PaginatedGroupList: type: object required: - results properties: next: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cD00ODY%3D" previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cj0xJnA9NDg3 results: type: array items: $ref: '#/components/schemas/Group' PatchedFileSystem: type: object properties: id: type: string format: uuid readOnly: true path: type: string depth: type: integer readOnly: true nullable: true type: type: string maxLength: 100 ref: type: string nullable: true maxLength: 100 href: type: string nullable: true meta: nullable: true shortcut: type: boolean nullable: true created_at: type: string format: date-time readOnly: true last_viewed_at: type: string format: date-time readOnly: true nullable: true GitHubBranchesResponse: type: object properties: branches: type: array items: type: string description: List of branch names default_branch: type: string nullable: true description: The default branch of the repository has_more: type: boolean description: Whether more branches exist beyond the returned page required: - branches - has_more SharePassword: type: object properties: id: type: integer readOnly: true created_at: type: string format: date-time readOnly: true note: type: string nullable: true maxLength: 100 created_by_email: type: string readOnly: true is_active: type: boolean readOnly: true required: - created_at - created_by_email - id - is_active PatchedRemovePersonRequest: type: object properties: person_id: type: string format: uuid description: Person UUID to remove from the cohort PaginatedProjectBackwardCompatBasicList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/ProjectBackwardCompatBasic' HogQLFilter: additionalProperties: false properties: type: title: Type type: string enum: - hogql key: title: Key type: string value: default: null title: Value nullable: true required: - type - key title: HogQLFilter type: object EventPropFilter: additionalProperties: false properties: type: allOf: - $ref: '#/components/schemas/EventPropFilterTypeEnum' title: Type key: title: Key type: string value: title: Value operator: default: null title: Operator type: string nullable: true required: - type - key - value title: EventPropFilter type: object PromotedPropertiesResponse: type: object properties: promoted_properties: type: object additionalProperties: type: string description: Mapping from event name to the team-configured promoted property for that event. Names without a configured promoted property are omitted; callers should fall back to the core taxonomy defaults for those. required: - promoted_properties CreateLegalDocument: type: object description: 'Input serializer for POST. Mirrors the submittable fields on the model plus cross-field rules (BAA addon, DPA mode, uniqueness). The view supplies the organization and submitting user.' properties: document_type: allOf: - $ref: '#/components/schemas/DocumentTypeEnum' description: 'Either ''BAA'' or ''DPA''. * `BAA` - BAA * `DPA` - DPA' company_name: type: string description: The customer legal entity entering the agreement (PandaDoc's Client.Company). maxLength: 255 company_address: type: string description: The customer address (PandaDoc's Client.StreetAddress). maxLength: 512 representative_email: type: string format: email description: Email the signed PandaDoc envelope is sent to (PandaDoc's Client.Email). required: - company_address - company_name - document_type - representative_email CohortFilters: additionalProperties: false properties: properties: $ref: '#/components/schemas/CohortFilterGroup' required: - properties title: CohortFilters type: object PaginatedRoleList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/Role' DashboardTemplateScopeEnum: enum: - team - global - feature_flag type: string description: '* `team` - Only team * `global` - Global * `feature_flag` - Feature Flag' TeamBasic: type: object description: 'Serializer for `Team` model with minimal attributes to speeed up loading and transfer times. Also used for nested serializers.' properties: id: type: integer readOnly: true uuid: type: string format: uuid readOnly: true organization: type: string format: uuid readOnly: true project_id: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 readOnly: true api_token: type: string readOnly: true name: type: string readOnly: true completed_snippet_onboarding: type: boolean readOnly: true has_completed_onboarding_for: readOnly: true nullable: true ingested_event: type: boolean readOnly: true is_demo: type: boolean readOnly: true timezone: allOf: - $ref: '#/components/schemas/TimezoneEnum' readOnly: true access_control: type: boolean readOnly: true required: - access_control - api_token - completed_snippet_onboarding - has_completed_onboarding_for - id - ingested_event - is_demo - name - organization - project_id - timezone - uuid DashboardTileResult: type: object description: DashboardTileSerializer restricted to tile id + insight result fields. properties: id: type: integer insight: $ref: '#/components/schemas/InsightResult' required: - insight PaginatedAnnotationList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/Annotation' InsightResult: type: object description: InsightSerializer restricted to identifiers + result only. properties: id: type: integer readOnly: true short_id: type: string readOnly: true name: type: string readOnly: true nullable: true derived_name: type: string readOnly: true nullable: true result: readOnly: true required: - derived_name - id - name - result - short_id SubscriptionDelivery: type: object properties: id: type: string format: uuid readOnly: true description: Primary key for this delivery row. subscription: type: integer readOnly: true description: Parent subscription id. temporal_workflow_id: type: string readOnly: true description: Temporal workflow id for this delivery run. idempotency_key: type: string readOnly: true description: Dedupes activity retries for the same logical run. trigger_type: type: string readOnly: true description: Why the run started (e.g. scheduled, manual, target_change). scheduled_at: type: string format: date-time readOnly: true nullable: true description: Planned send time when applicable. target_type: type: string readOnly: true description: Channel snapshot at send time (email, slack, webhook). target_value: type: string readOnly: true description: Destination snapshot at send time (emails, channel id, URL). exported_asset_ids: type: array items: type: integer maximum: 2147483647 minimum: -2147483648 readOnly: true description: ExportedAsset ids generated for this send. content_snapshot: readOnly: true description: 'Snapshot at send time: dashboard metadata, total_insight_count, and per-exported-insight entries (id, short_id, name, query_hash, cache_key, query_results, optional query_error).' recipient_results: readOnly: true description: Per-destination outcomes; items use status success, failed, or partial. status: allOf: - $ref: '#/components/schemas/SubscriptionDeliveryStatusEnum' readOnly: true description: 'Overall run status: starting, completed, failed, or skipped. * `starting` - Starting * `completed` - Completed * `failed` - Failed * `skipped` - Skipped' error: readOnly: true nullable: true description: Top-level failure payload when status is failed, if any. created_at: type: string format: date-time readOnly: true description: When the delivery row was created. last_updated_at: type: string format: date-time readOnly: true description: Last ORM update to this row. finished_at: type: string format: date-time readOnly: true nullable: true description: When the run finished, if applicable. change_summary: type: string readOnly: true nullable: true description: AI-generated summary included in this delivery, when one was produced. required: - change_summary - content_snapshot - created_at - error - exported_asset_ids - finished_at - id - idempotency_key - last_updated_at - recipient_results - scheduled_at - status - subscription - target_type - target_value - temporal_workflow_id - trigger_type PaginatedLegalDocumentDTOList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/LegalDocumentDTO' CohortPersonResultTypeEnum: enum: - person type: string description: '* `person` - person' CohortPersonResult: type: object properties: id: type: string uuid: type: string format: uuid type: $ref: '#/components/schemas/CohortPersonResultTypeEnum' name: type: string distinct_ids: type: array items: type: string properties: type: object additionalProperties: true created_at: type: string format: date-time nullable: true last_seen_at: type: string format: date-time nullable: true is_identified: type: boolean nullable: true matched_recordings: type: array items: type: object additionalProperties: true value_at_data_point: type: number format: double nullable: true required: - created_at - distinct_ids - id - is_identified - last_seen_at - matched_recordings - name - properties - type - uuid - value_at_data_point PropertyGroupOperator: enum: - AND - OR type: string LegalDocumentDTO: type: object description: Output serializer — what the API returns for every row. properties: id: type: string format: uuid document_type: type: string company_name: type: string representative_email: type: string status: type: string created_by: allOf: - $ref: '#/components/schemas/LegalDocumentCreator' nullable: true created_at: type: string format: date-time required: - company_name - created_at - created_by - document_type - id - representative_email - status PaginatedEnterprisePropertyDefinitionList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/EnterprisePropertyDefinition' RestrictionLevelEnum: enum: - 21 - 37 type: integer description: '* `21` - Everyone in the project can edit * `37` - Only those invited to this dashboard can edit' Subscription: type: object description: Standard Subscription serializer. properties: id: type: integer readOnly: true dashboard: type: integer nullable: true description: Dashboard ID to subscribe to (mutually exclusive with insight on create). insight: type: integer nullable: true description: Insight ID to subscribe to (mutually exclusive with dashboard on create). insight_short_id: type: string nullable: true readOnly: true resource_name: type: string nullable: true readOnly: true dashboard_export_insights: type: array items: type: integer description: List of insight IDs from the dashboard to include. Required for dashboard subscriptions, max 6. target_type: allOf: - $ref: '#/components/schemas/TargetTypeEnum' description: 'Delivery channel: email, slack, or webhook. * `email` - Email * `slack` - Slack * `webhook` - Webhook' target_value: type: string description: 'Recipient(s): comma-separated email addresses for email, Slack channel name/ID for slack, or full URL for webhook.' frequency: allOf: - $ref: '#/components/schemas/SubscriptionFrequencyEnum' description: 'How often to deliver: daily, weekly, monthly, or yearly. * `daily` - Daily * `weekly` - Weekly * `monthly` - Monthly * `yearly` - Yearly' interval: type: integer maximum: 2147483647 minimum: -2147483648 description: Interval multiplier (e.g. 2 with weekly frequency means every 2 weeks). Default 1. byweekday: type: array items: $ref: '#/components/schemas/ByweekdayEnum' nullable: true description: 'Days of week for weekly subscriptions: monday, tuesday, wednesday, thursday, friday, saturday, sunday.' bysetpos: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true description: Position within byweekday set for monthly frequency (e.g. 1 for first, -1 for last). count: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true description: Total number of deliveries before the subscription stops. Null for unlimited. start_date: type: string format: date-time description: When to start delivering (ISO 8601 datetime). until_date: type: string format: date-time nullable: true description: When to stop delivering (ISO 8601 datetime). Null for indefinite. created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true deleted: type: boolean description: Set to true to soft-delete. Subscriptions cannot be hard-deleted. title: type: string nullable: true description: Human-readable name for this subscription. maxLength: 100 summary: type: string readOnly: true description: Human-readable schedule summary, e.g. 'sent daily'. next_delivery_date: type: string format: date-time readOnly: true nullable: true integration_id: type: integer nullable: true description: ID of a connected Slack integration. Required when target_type is slack. invite_message: type: string nullable: true description: Optional message included in the invitation email when adding new recipients. summary_enabled: type: boolean summary_prompt_guide: type: string maxLength: 500 required: - created_at - created_by - frequency - id - insight_short_id - next_delivery_date - resource_name - start_date - summary - target_type - target_value BulkUpdateTagsItem: type: object properties: id: type: integer tags: type: array items: type: string required: - id - tags DefaultExperimentStatsMethodEnum: enum: - bayesian - frequentist type: string description: '* `bayesian` - Bayesian * `frequentist` - Frequentist' PaginatedDashboardTemplateList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/DashboardTemplate' ShortcutPositionEnum: enum: - above - below - hidden type: string description: '* `above` - Above * `below` - Below * `hidden` - Hidden' SubscriptionDeliveryStatusEnum: enum: - starting - completed - failed - skipped type: string description: '* `starting` - Starting * `completed` - Completed * `failed` - Failed * `skipped` - Skipped' BulkUpdateTagsError: type: object properties: id: type: integer reason: type: string required: - id - reason PatchedRole: type: object properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 200 created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true members: type: array items: type: object additionalProperties: true description: Members assigned to this role readOnly: true is_default: type: boolean readOnly: true ThemeModeEnum: enum: - light - dark - system type: string description: '* `light` - Light * `dark` - Dark * `system` - System' PatchedDashboardTemplate: type: object properties: id: type: string format: uuid readOnly: true template_name: type: string nullable: true maxLength: 400 dashboard_description: type: string nullable: true maxLength: 400 dashboard_filters: nullable: true tags: type: array items: type: string maxLength: 255 nullable: true tiles: nullable: true variables: nullable: true deleted: type: boolean nullable: true created_at: type: string format: date-time readOnly: true nullable: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true image_url: type: string nullable: true maxLength: 8201 team_id: type: integer nullable: true readOnly: true scope: nullable: true oneOf: - $ref: '#/components/schemas/DashboardTemplateScopeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' availability_contexts: type: array items: type: string maxLength: 255 nullable: true is_featured: type: boolean description: Manually curated; used to highlight templates in the UI. PatchedDashboard: type: object description: Serializer mixin that handles tags for objects. properties: id: type: integer readOnly: true name: type: string nullable: true maxLength: 400 description: type: string pinned: type: boolean created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true last_accessed_at: type: string format: date-time nullable: true last_viewed_at: type: string format: date-time readOnly: true nullable: true is_shared: type: boolean readOnly: true deleted: type: boolean creation_mode: allOf: - $ref: '#/components/schemas/CreationModeEnum' readOnly: true filters: type: object additionalProperties: true readOnly: true variables: type: object additionalProperties: true nullable: true readOnly: true breakdown_colors: description: Custom color mapping for breakdown values. data_color_theme_id: type: integer nullable: true description: ID of the color theme used for chart visualizations. tags: type: array items: {} restriction_level: $ref: '#/components/schemas/RestrictionLevelEnum' effective_restriction_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true effective_privilege_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true user_access_level: type: string nullable: true readOnly: true description: The effective access level the user has for this object access_control_version: type: string readOnly: true last_refresh: type: string format: date-time nullable: true persisted_filters: type: object additionalProperties: true nullable: true readOnly: true persisted_variables: type: object additionalProperties: true nullable: true readOnly: true team_id: type: integer readOnly: true quick_filter_ids: type: array items: type: string nullable: true description: List of quick filter IDs associated with this dashboard tiles: type: array items: type: object additionalProperties: true nullable: true readOnly: true use_template: type: string writeOnly: true description: Template key to create the dashboard from a predefined template. use_dashboard: type: integer writeOnly: true nullable: true description: ID of an existing dashboard to duplicate. delete_insights: type: boolean writeOnly: true default: false description: When deleting, also delete insights that are only on this dashboard. _create_in_folder: type: string writeOnly: true title: ' create in folder' PaginatedOrganizationOAuthApplicationList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/OrganizationOAuthApplication' PatchedCohort: type: object properties: id: type: integer readOnly: true name: type: string nullable: true maxLength: 400 description: type: string maxLength: 1000 groups: {} deleted: type: boolean filters: allOf: - $ref: '#/components/schemas/CohortFilters' nullable: true query: nullable: true version: type: integer readOnly: true nullable: true pending_version: type: integer readOnly: true nullable: true is_calculating: type: boolean readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true created_at: type: string format: date-time readOnly: true nullable: true last_calculation: type: string format: date-time readOnly: true nullable: true last_backfill_person_properties_at: type: string format: date-time readOnly: true nullable: true errors_calculating: type: integer readOnly: true last_error_message: type: string nullable: true readOnly: true count: type: integer readOnly: true nullable: true is_static: type: boolean cohort_type: nullable: true description: 'Type of cohort based on filter complexity * `static` - static * `person_property` - person_property * `behavioral` - behavioral * `realtime` - realtime * `analytical` - analytical' oneOf: - $ref: '#/components/schemas/CohortTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' experiment_set: type: array items: type: integer readOnly: true _create_in_folder: type: string writeOnly: true title: ' create in folder' _create_static_person_ids: type: array items: type: string writeOnly: true default: [] title: ' create static person ids' UserGitHubLinkStartResponse: type: object properties: install_url: type: string description: URL to open in the browser to install or authorize the GitHub App for this user. connect_flow: type: string description: OAuth or install flow used for this GitHub connection. required: - connect_flow - install_url PatchedOrganizationDomain: type: object properties: id: type: string format: uuid readOnly: true domain: type: string maxLength: 128 is_verified: type: boolean description: Determines whether a domain is verified or not. readOnly: true verified_at: type: string format: date-time readOnly: true nullable: true verification_challenge: type: string readOnly: true jit_provisioning_enabled: type: boolean sso_enforcement: type: string maxLength: 28 has_saml: type: boolean description: Returns whether SAML is configured for the instance. Does not validate the user has the required license (that check is performed in other places). readOnly: true saml_entity_id: type: string nullable: true maxLength: 512 saml_acs_url: type: string nullable: true maxLength: 512 saml_x509_cert: type: string nullable: true has_scim: type: boolean description: Returns whether SCIM is configured and enabled for this domain. readOnly: true scim_enabled: type: boolean scim_base_url: type: string nullable: true readOnly: true scim_bearer_token: type: string nullable: true readOnly: true PendingInvite: type: object description: Shape of each item in UserSerializer.pending_invites. properties: id: type: string target_email: type: string format: email organization_id: type: string organization_name: type: string created_at: type: string format: date-time required: - created_at - id - organization_id - organization_name - target_email EnforcementModeEnum: enum: - allow - reject type: string description: '* `allow` - Allow * `reject` - Reject' User: type: object properties: date_joined: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true distinct_id: type: string readOnly: true nullable: true first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 email: type: string format: email title: Email address maxLength: 254 pending_email: type: string format: email readOnly: true nullable: true title: Pending email address awaiting verification is_email_verified: type: boolean readOnly: true nullable: true notification_settings: type: object additionalProperties: true description: Map of notification preferences. Keys include `plugin_disabled`, `all_weekly_report_disabled`, `project_weekly_digest_disabled`, `error_tracking_weekly_digest_project_enabled`, `web_analytics_weekly_digest_project_enabled`, `organization_member_join_email_disabled`, `data_pipeline_error_threshold` (number between 0.0 and 1.0), and other per-topic switches. Values are either booleans, or (for per-project/per-resource keys) a map of IDs to booleans. Only the keys you send are updated — other preferences stay as-is. anonymize_data: type: boolean nullable: true description: Whether PostHog should anonymize events captured for this user when identified. allow_impersonation: type: boolean nullable: true toolbar_mode: nullable: true oneOf: - $ref: '#/components/schemas/ToolbarModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' has_password: type: boolean readOnly: true id: type: integer readOnly: true is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_impersonated: type: boolean nullable: true readOnly: true is_impersonated_until: type: string nullable: true readOnly: true is_impersonated_read_only: type: boolean nullable: true readOnly: true sensitive_session_expires_at: type: string nullable: true readOnly: true team: allOf: - $ref: '#/components/schemas/TeamBasic' readOnly: true organization: allOf: - $ref: '#/components/schemas/Organization' readOnly: true organizations: type: array items: $ref: '#/components/schemas/OrganizationBasic' readOnly: true set_current_organization: type: string writeOnly: true set_current_team: type: string writeOnly: true password: type: string writeOnly: true maxLength: 128 current_password: type: string writeOnly: true description: The user's current password. Required when changing `password` if the user already has a usable password set. events_column_config: {} is_2fa_enabled: type: boolean readOnly: true has_social_auth: type: boolean readOnly: true has_sso_enforcement: type: boolean readOnly: true has_seen_product_intro_for: nullable: true scene_personalisation: type: array items: $ref: '#/components/schemas/ScenePersonalisationBasic' readOnly: true theme_mode: nullable: true oneOf: - $ref: '#/components/schemas/ThemeModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' hedgehog_config: nullable: true allow_sidebar_suggestions: type: boolean nullable: true shortcut_position: nullable: true oneOf: - $ref: '#/components/schemas/ShortcutPositionEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' role_at_organization: $ref: '#/components/schemas/RoleAtOrganizationEnum' passkeys_enabled_for_2fa: type: boolean nullable: true description: Whether passkeys are enabled for 2FA authentication. Users can disable this to use only TOTP for 2FA while keeping passkeys for login. is_organization_first_user: type: boolean nullable: true readOnly: true pending_invites: type: array items: $ref: '#/components/schemas/PendingInvite' readOnly: true required: - date_joined - distinct_id - email - has_password - has_social_auth - has_sso_enforcement - id - is_2fa_enabled - is_email_verified - is_impersonated - is_impersonated_read_only - is_impersonated_until - is_organization_first_user - organization - organizations - password - pending_email - pending_invites - scene_personalisation - sensitive_session_expires_at - team - uuid AnnotationScopeEnum: enum: - dashboard_item - dashboard - project - organization - recording type: string description: '* `dashboard_item` - insight * `dashboard` - dashboard * `project` - project * `organization` - organization * `recording` - recording' UserGitHubAccount: type: object properties: type: type: string nullable: true description: GitHub account type for the installation (e.g. User or Organization). name: type: string nullable: true description: GitHub login or organization name tied to the installation. EventDefinitionRecord: type: object description: Serializer mixin that handles tags for objects. properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 400 created_at: type: string format: date-time nullable: true last_seen_at: type: string format: date-time nullable: true last_updated_at: type: string format: date-time readOnly: true tags: type: array items: {} enforcement_mode: $ref: '#/components/schemas/EnforcementModeEnum' promoted_property: type: string nullable: true description: Name of a single property on this event that PostHog UIs should display alongside the event (for example `$pathname` on `$pageview`). When set, surfaces like the session replay inspector show the property's value next to the event name without the user having to open the event. maxLength: 400 is_action: type: boolean readOnly: true action_id: type: integer readOnly: true is_calculating: type: boolean readOnly: true last_calculated_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true post_to_slack: type: boolean default: false required: - action_id - created_by - id - is_action - is_calculating - last_calculated_at - last_updated_at - name PaginatedDashboardBasicList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/DashboardBasic' DashboardBasic: type: object description: Serializer mixin that handles tags for objects. properties: id: type: integer readOnly: true name: type: string readOnly: true nullable: true description: Name of the dashboard. description: type: string readOnly: true description: Description of the dashboard. pinned: type: boolean readOnly: true description: Whether the dashboard is pinned to the top of the list. created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true last_accessed_at: type: string format: date-time readOnly: true nullable: true last_viewed_at: type: string format: date-time readOnly: true nullable: true is_shared: type: boolean readOnly: true deleted: type: boolean readOnly: true creation_mode: allOf: - $ref: '#/components/schemas/CreationModeEnum' readOnly: true tags: type: array items: {} restriction_level: allOf: - $ref: '#/components/schemas/RestrictionLevelEnum' readOnly: true description: 'Controls who can edit the dashboard. * `21` - Everyone in the project can edit * `37` - Only those invited to this dashboard can edit' effective_restriction_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true effective_privilege_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true user_access_level: type: string nullable: true readOnly: true description: The effective access level the user has for this object access_control_version: type: string readOnly: true last_refresh: type: string format: date-time readOnly: true nullable: true team_id: type: integer readOnly: true required: - access_control_version - created_at - created_by - creation_mode - deleted - description - effective_privilege_level - effective_restriction_level - id - is_shared - last_accessed_at - last_refresh - last_viewed_at - name - pinned - restriction_level - team_id - user_access_level CopyDashboardTemplate: type: object properties: source_template_id: type: string format: uuid description: UUID of a team-scoped template in the same organization. Global and feature-flag templates cannot be copied with this endpoint. required: - source_template_id PatchedAnnotation: type: object properties: id: type: integer readOnly: true content: type: string nullable: true description: Annotation text shown on charts to describe the change, release, or incident. maxLength: 8192 date_marker: type: string format: date-time nullable: true description: When this annotation happened (ISO 8601 timestamp). Used to position it on charts. creation_type: allOf: - $ref: '#/components/schemas/CreationTypeEnum' description: 'Who created this annotation. Use `USR` for user-created notes and `GIT` for bot/deployment notes. * `USR` - user * `GIT` - GitHub' dashboard_item: type: integer nullable: true dashboard_id: type: integer nullable: true dashboard_name: type: string nullable: true readOnly: true insight_short_id: type: string nullable: true readOnly: true insight_name: type: string nullable: true readOnly: true insight_derived_name: type: string nullable: true readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true created_at: type: string format: date-time readOnly: true nullable: true updated_at: type: string format: date-time readOnly: true deleted: type: boolean description: Soft-delete flag. Set to true to hide the annotation, or false to restore it. scope: allOf: - $ref: '#/components/schemas/AnnotationScopeEnum' description: 'Annotation visibility scope: `project`, `organization`, `dashboard`, or `dashboard_item`. `recording` is deprecated and rejected. * `dashboard_item` - insight * `dashboard` - dashboard * `project` - project * `organization` - organization * `recording` - recording' ExportedAsset: type: object description: Standard ExportedAsset serializer that doesn't return content. properties: id: type: integer readOnly: true dashboard: type: integer nullable: true insight: type: integer nullable: true export_format: $ref: '#/components/schemas/ExportFormatEnum' created_at: type: string format: date-time readOnly: true has_content: type: boolean readOnly: true export_context: nullable: true filename: type: string readOnly: true expires_after: type: string format: date-time readOnly: true nullable: true exception: type: string readOnly: true nullable: true required: - created_at - exception - expires_after - export_format - filename - has_content - id ScenePersonalisationBasic: type: object properties: scene: type: string maxLength: 200 dashboard: type: integer nullable: true required: - scene PatchedUser: type: object properties: date_joined: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true distinct_id: type: string readOnly: true nullable: true first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 email: type: string format: email title: Email address maxLength: 254 pending_email: type: string format: email readOnly: true nullable: true title: Pending email address awaiting verification is_email_verified: type: boolean readOnly: true nullable: true notification_settings: type: object additionalProperties: true description: Map of notification preferences. Keys include `plugin_disabled`, `all_weekly_report_disabled`, `project_weekly_digest_disabled`, `error_tracking_weekly_digest_project_enabled`, `web_analytics_weekly_digest_project_enabled`, `organization_member_join_email_disabled`, `data_pipeline_error_threshold` (number between 0.0 and 1.0), and other per-topic switches. Values are either booleans, or (for per-project/per-resource keys) a map of IDs to booleans. Only the keys you send are updated — other preferences stay as-is. anonymize_data: type: boolean nullable: true description: Whether PostHog should anonymize events captured for this user when identified. allow_impersonation: type: boolean nullable: true toolbar_mode: nullable: true oneOf: - $ref: '#/components/schemas/ToolbarModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' has_password: type: boolean readOnly: true id: type: integer readOnly: true is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_impersonated: type: boolean nullable: true readOnly: true is_impersonated_until: type: string nullable: true readOnly: true is_impersonated_read_only: type: boolean nullable: true readOnly: true sensitive_session_expires_at: type: string nullable: true readOnly: true team: allOf: - $ref: '#/components/schemas/TeamBasic' readOnly: true organization: allOf: - $ref: '#/components/schemas/Organization' readOnly: true organizations: type: array items: $ref: '#/components/schemas/OrganizationBasic' readOnly: true set_current_organization: type: string writeOnly: true set_current_team: type: string writeOnly: true password: type: string writeOnly: true maxLength: 128 current_password: type: string writeOnly: true description: The user's current password. Required when changing `password` if the user already has a usable password set. events_column_config: {} is_2fa_enabled: type: boolean readOnly: true has_social_auth: type: boolean readOnly: true has_sso_enforcement: type: boolean readOnly: true has_seen_product_intro_for: nullable: true scene_personalisation: type: array items: $ref: '#/components/schemas/ScenePersonalisationBasic' readOnly: true theme_mode: nullable: true oneOf: - $ref: '#/components/schemas/ThemeModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' hedgehog_config: nullable: true allow_sidebar_suggestions: type: boolean nullable: true shortcut_position: nullable: true oneOf: - $ref: '#/components/schemas/ShortcutPositionEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' role_at_organization: $ref: '#/components/schemas/RoleAtOrganizationEnum' passkeys_enabled_for_2fa: type: boolean nullable: true description: Whether passkeys are enabled for 2FA authentication. Users can disable this to use only TOTP for 2FA while keeping passkeys for login. is_organization_first_user: type: boolean nullable: true readOnly: true pending_invites: type: array items: $ref: '#/components/schemas/PendingInvite' readOnly: true PatchedOrganizationMember: type: object properties: id: type: string format: uuid readOnly: true user: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true level: $ref: '#/components/schemas/OrganizationMembershipLevelEnum' joined_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true is_2fa_enabled: type: boolean readOnly: true has_social_auth: type: boolean readOnly: true last_login: type: string format: date-time readOnly: true OrganizationInvite: type: object properties: id: type: string format: uuid readOnly: true target_email: type: string format: email maxLength: 254 first_name: type: string maxLength: 30 emailing_attempt_made: type: boolean readOnly: true level: $ref: '#/components/schemas/OrganizationMembershipLevelEnum' is_expired: type: boolean description: Check if invite is older than INVITE_DAYS_VALIDITY days. readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true message: type: string nullable: true private_project_access: nullable: true description: List of team IDs and corresponding access levels to private projects. send_email: type: boolean writeOnly: true default: true combine_pending_invites: type: boolean writeOnly: true default: false required: - created_at - created_by - emailing_attempt_made - id - is_expired - target_email - updated_at ProjectSecretAPIKey: type: object properties: id: type: string readOnly: true label: type: string maxLength: 40 value: type: string readOnly: true mask_value: type: string readOnly: true nullable: true created_at: type: string format: date-time readOnly: true created_by: type: integer readOnly: true nullable: true last_used_at: type: string format: date-time readOnly: true nullable: true last_rolled_at: type: string format: date-time readOnly: true nullable: true scopes: type: array items: type: string required: - created_at - created_by - id - label - last_rolled_at - last_used_at - mask_value - scopes - value GitHubRepo: type: object properties: id: type: integer name: type: string full_name: type: string required: - full_name - id - name CreationTypeEnum: enum: - USR - GIT type: string description: '* `USR` - user * `GIT` - GitHub' CohortFilterGroup: additionalProperties: false description: AND/OR group containing cohort filters. Named to avoid collision with analytics Group model. properties: type: allOf: - $ref: '#/components/schemas/PropertyGroupOperator' title: Type values: items: discriminator: mapping: AND: '#/components/schemas/CohortFilterGroup' OR: '#/components/schemas/CohortFilterGroup' behavioral: '#/components/schemas/BehavioralFilter' cohort: '#/components/schemas/CohortFilter' person: '#/components/schemas/PersonFilter' propertyName: type oneOf: - $ref: '#/components/schemas/BehavioralFilter' - $ref: '#/components/schemas/CohortFilter' - $ref: '#/components/schemas/PersonFilter' - $ref: '#/components/schemas/CohortFilterGroup' title: Values type: array required: - type - values title: CohortFilterGroup type: object PaginatedUserList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/User' EnterprisePropertyDefinition: type: object description: Serializer mixin that handles tags for objects. properties: id: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string nullable: true tags: type: array items: {} is_numerical: type: boolean readOnly: true updated_at: type: string format: date-time readOnly: true updated_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true is_seen_on_filtered_events: type: boolean readOnly: true nullable: true property_type: nullable: true oneOf: - $ref: '#/components/schemas/PropertyDefinitionTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' verified: type: boolean verified_at: type: string format: date-time readOnly: true nullable: true verified_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true hidden: type: boolean nullable: true required: - id - is_numerical - is_seen_on_filtered_events - name - updated_at - updated_by - verified_at - verified_by UserGitHubLinkStartRequest: type: object properties: team_id: type: integer nullable: true description: Optional team/project id (e.g. PostHog Code); web UI uses the session's current team. connect_from: type: string description: Optional client hint (e.g. posthog_code) for return routing after OAuth. EnterpriseEventDefinition: type: object description: Serializer mixin that handles tags for objects. properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 400 owner: type: integer nullable: true description: type: string nullable: true tags: type: array items: {} created_at: type: string format: date-time readOnly: true nullable: true updated_at: type: string format: date-time readOnly: true updated_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true last_seen_at: type: string format: date-time readOnly: true nullable: true last_updated_at: type: string format: date-time readOnly: true verified: type: boolean verified_at: type: string format: date-time readOnly: true nullable: true verified_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true hidden: type: boolean nullable: true enforcement_mode: $ref: '#/components/schemas/EnforcementModeEnum' promoted_property: type: string nullable: true description: Name of a single property on this event that PostHog UIs should display alongside the event (for example `$pathname` on `$pageview`). When set, surfaces like the session replay inspector show the property's value next to the event name without the user having to open the event. maxLength: 400 is_action: type: boolean readOnly: true action_id: type: integer readOnly: true is_calculating: type: boolean readOnly: true last_calculated_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true post_to_slack: type: boolean default: false default_columns: type: array items: type: string media_preview_urls: type: array items: type: string readOnly: true required: - action_id - created_at - created_by - id - is_action - is_calculating - last_calculated_at - last_seen_at - last_updated_at - media_preview_urls - name - updated_at - updated_by - verified_at - verified_by PaginatedSubscriptionDeliveryList: type: object required: - results properties: next: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cD00ODY%3D" previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cj0xJnA9NDg3 results: type: array items: $ref: '#/components/schemas/SubscriptionDelivery' CopyDashboardTileRequest: type: object properties: fromDashboardId: type: integer description: Dashboard id the tile currently belongs to. tileId: type: integer description: Dashboard tile id to copy. required: - fromDashboardId - tileId BehavioralFilter: additionalProperties: false properties: bytecode: default: null title: Bytecode items: {} type: array nullable: true bytecode_error: default: null title: Bytecode Error type: string nullable: true conditionHash: default: null title: Conditionhash type: string nullable: true type: title: Type type: string enum: - behavioral key: anyOf: - type: string - type: integer title: Key value: title: Value type: string event_type: title: Event Type type: string time_value: default: null title: Time Value type: integer nullable: true time_interval: default: null title: Time Interval type: string nullable: true negation: default: false title: Negation type: boolean operator: default: null title: Operator type: string nullable: true operator_value: default: null title: Operator Value type: integer nullable: true seq_time_interval: default: null title: Seq Time Interval type: string nullable: true seq_time_value: default: null title: Seq Time Value type: integer nullable: true seq_event: default: null title: Seq Event anyOf: - type: string - type: integer nullable: true seq_event_type: default: null title: Seq Event Type type: string nullable: true total_periods: default: null title: Total Periods type: integer nullable: true min_periods: default: null title: Min Periods type: integer nullable: true event_filters: default: null title: Event Filters items: anyOf: - $ref: '#/components/schemas/EventPropFilter' - $ref: '#/components/schemas/HogQLFilter' type: array nullable: true explicit_datetime: default: null title: Explicit Datetime type: string nullable: true explicit_datetime_to: default: null title: Explicit Datetime To type: string nullable: true required: - type - key - value - event_type title: BehavioralFilter type: object PaginatedEnterpriseEventDefinitionList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/EnterpriseEventDefinition' Organization: type: object properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 64 slug: type: string readOnly: true pattern: ^[-a-zA-Z0-9_]+$ logo_media_id: type: string format: uuid nullable: true created_at: type: string format: date-time readOnly: true updated_at: type: string format: date-time readOnly: true membership_level: allOf: - $ref: '#/components/schemas/EffectiveMembershipLevelEnum' nullable: true readOnly: true plugins_access_level: allOf: - $ref: '#/components/schemas/PluginsAccessLevelEnum' readOnly: true teams: type: array items: type: object additionalProperties: true readOnly: true projects: type: array items: type: object additionalProperties: true readOnly: true available_product_features: type: array items: {} readOnly: true nullable: true is_member_join_email_enabled: type: boolean readOnly: true description: Legacy field; member-join emails are controlled per user in account notification settings. metadata: type: object additionalProperties: type: string readOnly: true customer_id: type: string readOnly: true nullable: true enforce_2fa: type: boolean nullable: true members_can_invite: type: boolean nullable: true members_can_use_personal_api_keys: type: boolean allow_publicly_shared_resources: type: boolean member_count: type: integer readOnly: true is_ai_data_processing_approved: type: boolean nullable: true default_experiment_stats_method: nullable: true description: 'Default statistical method for new experiments in this organization. * `bayesian` - Bayesian * `frequentist` - Frequentist' oneOf: - $ref: '#/components/schemas/DefaultExperimentStatsMethodEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' default_anonymize_ips: type: boolean description: Default setting for 'Discard client IP data' for new projects in this organization. default_role_id: type: string nullable: true description: ID of the role to automatically assign to new members joining the organization is_active: type: boolean readOnly: true nullable: true title: Active description: Set this to 'No' to temporarily disable an organization. is_not_active_reason: type: string readOnly: true nullable: true title: De-activated reason description: (optional) reason for why the organization has been de-activated. This will be displayed to users on the web app. is_pending_deletion: type: boolean readOnly: true nullable: true description: Set to True when org deletion has been initiated. Blocks all UI access until the async task completes. required: - available_product_features - created_at - customer_id - id - is_active - is_member_join_email_enabled - is_not_active_reason - is_pending_deletion - member_count - membership_level - metadata - name - plugins_access_level - projects - slug - teams - updated_at WeekStartDayEnum: enum: - 0 - 1 type: integer description: '* `0` - Sunday * `1` - Monday' GitHubReposRefreshResponse: type: object properties: repositories: type: array items: $ref: '#/components/schemas/GitHubRepo' description: The refreshed repository cache. required: - repositories ByweekdayEnum: enum: - monday - tuesday - wednesday - thursday - friday - saturday - sunday type: string description: '* `monday` - Monday * `tuesday` - Tuesday * `wednesday` - Wednesday * `thursday` - Thursday * `friday` - Friday * `saturday` - Saturday * `sunday` - Sunday' PatchedSubscription: type: object description: Standard Subscription serializer. properties: id: type: integer readOnly: true dashboard: type: integer nullable: true description: Dashboard ID to subscribe to (mutually exclusive with insight on create). insight: type: integer nullable: true description: Insight ID to subscribe to (mutually exclusive with dashboard on create). insight_short_id: type: string nullable: true readOnly: true resource_name: type: string nullable: true readOnly: true dashboard_export_insights: type: array items: type: integer description: List of insight IDs from the dashboard to include. Required for dashboard subscriptions, max 6. target_type: allOf: - $ref: '#/components/schemas/TargetTypeEnum' description: 'Delivery channel: email, slack, or webhook. * `email` - Email * `slack` - Slack * `webhook` - Webhook' target_value: type: string description: 'Recipient(s): comma-separated email addresses for email, Slack channel name/ID for slack, or full URL for webhook.' frequency: allOf: - $ref: '#/components/schemas/SubscriptionFrequencyEnum' description: 'How often to deliver: daily, weekly, monthly, or yearly. * `daily` - Daily * `weekly` - Weekly * `monthly` - Monthly * `yearly` - Yearly' interval: type: integer maximum: 2147483647 minimum: -2147483648 description: Interval multiplier (e.g. 2 with weekly frequency means every 2 weeks). Default 1. byweekday: type: array items: $ref: '#/components/schemas/ByweekdayEnum' nullable: true description: 'Days of week for weekly subscriptions: monday, tuesday, wednesday, thursday, friday, saturday, sunday.' bysetpos: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true description: Position within byweekday set for monthly frequency (e.g. 1 for first, -1 for last). count: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true description: Total number of deliveries before the subscription stops. Null for unlimited. start_date: type: string format: date-time description: When to start delivering (ISO 8601 datetime). until_date: type: string format: date-time nullable: true description: When to stop delivering (ISO 8601 datetime). Null for indefinite. created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true deleted: type: boolean description: Set to true to soft-delete. Subscriptions cannot be hard-deleted. title: type: string nullable: true description: Human-readable name for this subscription. maxLength: 100 summary: type: string readOnly: true description: Human-readable schedule summary, e.g. 'sent daily'. next_delivery_date: type: string format: date-time readOnly: true nullable: true integration_id: type: integer nullable: true description: ID of a connected Slack integration. Required when target_type is slack. invite_message: type: string nullable: true description: Optional message included in the invitation email when adding new recipients. summary_enabled: type: boolean summary_prompt_guide: type: string maxLength: 500 PersonFilter: additionalProperties: false properties: bytecode: default: null title: Bytecode items: {} type: array nullable: true bytecode_error: default: null title: Bytecode Error type: string nullable: true conditionHash: default: null title: Conditionhash type: string nullable: true type: title: Type type: string enum: - person key: title: Key type: string operator: default: null title: Operator type: string nullable: true value: default: null title: Value nullable: true negation: default: false title: Negation type: boolean required: - type - key title: PersonFilter type: object PaginatedExportedAssetList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/ExportedAsset' DocumentTypeEnum: enum: - BAA - DPA type: string description: '* `BAA` - BAA * `DPA` - DPA' PaginatedCommentList: type: object required: - results properties: next: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cD00ODY%3D" previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?cursor=cj0xJnA9NDg3 results: type: array items: $ref: '#/components/schemas/Comment' OrganizationOAuthApplication: type: object description: Serializer for organization-scoped OAuth applications (read-only). properties: id: type: string format: uuid readOnly: true name: type: string maxLength: 255 client_id: type: string maxLength: 100 redirect_uris_list: type: array items: type: string readOnly: true is_verified: type: boolean description: True if this application has been verified by PostHog created: type: string format: date-time readOnly: true updated: type: string format: date-time readOnly: true required: - created - id - redirect_uris_list - updated UserBasic: type: object properties: id: type: integer readOnly: true uuid: type: string format: uuid readOnly: true distinct_id: type: string nullable: true maxLength: 200 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 email: type: string format: email title: Email address maxLength: 254 is_email_verified: type: boolean nullable: true hedgehog_config: type: object additionalProperties: true nullable: true readOnly: true role_at_organization: nullable: true oneOf: - $ref: '#/components/schemas/RoleAtOrganizationEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' required: - email - hedgehog_config - id - uuid DashboardTemplate: type: object properties: id: type: string format: uuid readOnly: true template_name: type: string nullable: true maxLength: 400 dashboard_description: type: string nullable: true maxLength: 400 dashboard_filters: nullable: true tags: type: array items: type: string maxLength: 255 nullable: true tiles: nullable: true variables: nullable: true deleted: type: boolean nullable: true created_at: type: string format: date-time readOnly: true nullable: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true image_url: type: string nullable: true maxLength: 8201 team_id: type: integer nullable: true readOnly: true scope: nullable: true oneOf: - $ref: '#/components/schemas/DashboardTemplateScopeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' availability_contexts: type: array items: type: string maxLength: 255 nullable: true is_featured: type: boolean description: Manually curated; used to highlight templates in the UI. required: - created_at - created_by - id - team_id EffectiveMembershipLevelEnum: enum: - 1 - 8 - 15 type: integer BulkUpdateTagsRequest: type: object properties: ids: type: array items: type: integer description: List of object IDs to update tags on. maxItems: 500 action: allOf: - $ref: '#/components/schemas/ActionEnum' description: '''add'' merges with existing tags, ''remove'' deletes specific tags, ''set'' replaces all tags. * `add` - add * `remove` - remove * `set` - set' tags: type: array items: type: string description: Tag names to add, remove, or set. required: - action - ids - tags TimezoneEnum: enum: - Africa/Abidjan - Africa/Accra - Africa/Addis_Ababa - Africa/Algiers - Africa/Asmara - Africa/Asmera - Africa/Bamako - Africa/Bangui - Africa/Banjul - Africa/Bissau - Africa/Blantyre - Africa/Brazzaville - Africa/Bujumbura - Africa/Cairo - Africa/Casablanca - Africa/Ceuta - Africa/Conakry - Africa/Dakar - Africa/Dar_es_Salaam - Africa/Djibouti - Africa/Douala - Africa/El_Aaiun - Africa/Freetown - Africa/Gaborone - Africa/Harare - Africa/Johannesburg - Africa/Juba - Africa/Kampala - Africa/Khartoum - Africa/Kigali - Africa/Kinshasa - Africa/Lagos - Africa/Libreville - Africa/Lome - Africa/Luanda - Africa/Lubumbashi - Africa/Lusaka - Africa/Malabo - Africa/Maputo - Africa/Maseru - Africa/Mbabane - Africa/Mogadishu - Africa/Monrovia - Africa/Nairobi - Africa/Ndjamena - Africa/Niamey - Africa/Nouakchott - Africa/Ouagadougou - Africa/Porto-Novo - Africa/Sao_Tome - Africa/Timbuktu - Africa/Tripoli - Africa/Tunis - Africa/Windhoek - America/Adak - America/Anchorage - America/Anguilla - America/Antigua - America/Araguaina - America/Argentina/Buenos_Aires - America/Argentina/Catamarca - America/Argentina/ComodRivadavia - America/Argentina/Cordoba - America/Argentina/Jujuy - America/Argentina/La_Rioja - America/Argentina/Mendoza - America/Argentina/Rio_Gallegos - America/Argentina/Salta - America/Argentina/San_Juan - America/Argentina/San_Luis - America/Argentina/Tucuman - America/Argentina/Ushuaia - America/Aruba - America/Asuncion - America/Atikokan - America/Atka - America/Bahia - America/Bahia_Banderas - America/Barbados - America/Belem - America/Belize - America/Blanc-Sablon - America/Boa_Vista - America/Bogota - America/Boise - America/Buenos_Aires - America/Cambridge_Bay - America/Campo_Grande - America/Cancun - America/Caracas - America/Catamarca - America/Cayenne - America/Cayman - America/Chicago - America/Chihuahua - America/Ciudad_Juarez - America/Coral_Harbour - America/Cordoba - America/Costa_Rica - America/Creston - America/Cuiaba - America/Curacao - America/Danmarkshavn - America/Dawson - America/Dawson_Creek - America/Denver - America/Detroit - America/Dominica - America/Edmonton - America/Eirunepe - America/El_Salvador - America/Ensenada - America/Fort_Nelson - America/Fort_Wayne - America/Fortaleza - America/Glace_Bay - America/Godthab - America/Goose_Bay - America/Grand_Turk - America/Grenada - America/Guadeloupe - America/Guatemala - America/Guayaquil - America/Guyana - America/Halifax - America/Havana - America/Hermosillo - America/Indiana/Indianapolis - America/Indiana/Knox - America/Indiana/Marengo - America/Indiana/Petersburg - America/Indiana/Tell_City - America/Indiana/Vevay - America/Indiana/Vincennes - America/Indiana/Winamac - America/Indianapolis - America/Inuvik - America/Iqaluit - America/Jamaica - America/Jujuy - America/Juneau - America/Kentucky/Louisville - America/Kentucky/Monticello - America/Knox_IN - America/Kralendijk - America/La_Paz - America/Lima - America/Los_Angeles - America/Louisville - America/Lower_Princes - America/Maceio - America/Managua - America/Manaus - America/Marigot - America/Martinique - America/Matamoros - America/Mazatlan - America/Mendoza - America/Menominee - America/Merida - America/Metlakatla - America/Mexico_City - America/Miquelon - America/Moncton - America/Monterrey - America/Montevideo - America/Montreal - America/Montserrat - America/Nassau - America/New_York - America/Nipigon - America/Nome - America/Noronha - America/North_Dakota/Beulah - America/North_Dakota/Center - America/North_Dakota/New_Salem - America/Nuuk - America/Ojinaga - America/Panama - America/Pangnirtung - America/Paramaribo - America/Phoenix - America/Port-au-Prince - America/Port_of_Spain - America/Porto_Acre - America/Porto_Velho - America/Puerto_Rico - America/Punta_Arenas - America/Rainy_River - America/Rankin_Inlet - America/Recife - America/Regina - America/Resolute - America/Rio_Branco - America/Rosario - America/Santa_Isabel - America/Santarem - America/Santiago - America/Santo_Domingo - America/Sao_Paulo - America/Scoresbysund - America/Shiprock - America/Sitka - America/St_Barthelemy - America/St_Johns - America/St_Kitts - America/St_Lucia - America/St_Thomas - America/St_Vincent - America/Swift_Current - America/Tegucigalpa - America/Thule - America/Thunder_Bay - America/Tijuana - America/Toronto - America/Tortola - America/Vancouver - America/Virgin - America/Whitehorse - America/Winnipeg - America/Yakutat - America/Yellowknife - Antarctica/Casey - Antarctica/Davis - Antarctica/DumontDUrville - Antarctica/Macquarie - Antarctica/Mawson - Antarctica/McMurdo - Antarctica/Palmer - Antarctica/Rothera - Antarctica/South_Pole - Antarctica/Syowa - Antarctica/Troll - Antarctica/Vostok - Arctic/Longyearbyen - Asia/Aden - Asia/Almaty - Asia/Amman - Asia/Anadyr - Asia/Aqtau - Asia/Aqtobe - Asia/Ashgabat - Asia/Ashkhabad - Asia/Atyrau - Asia/Baghdad - Asia/Bahrain - Asia/Baku - Asia/Bangkok - Asia/Barnaul - Asia/Beirut - Asia/Bishkek - Asia/Brunei - Asia/Calcutta - Asia/Chita - Asia/Choibalsan - Asia/Chongqing - Asia/Chungking - Asia/Colombo - Asia/Dacca - Asia/Damascus - Asia/Dhaka - Asia/Dili - Asia/Dubai - Asia/Dushanbe - Asia/Famagusta - Asia/Gaza - Asia/Harbin - Asia/Hebron - Asia/Ho_Chi_Minh - Asia/Hong_Kong - Asia/Hovd - Asia/Irkutsk - Asia/Istanbul - Asia/Jakarta - Asia/Jayapura - Asia/Jerusalem - Asia/Kabul - Asia/Kamchatka - Asia/Karachi - Asia/Kashgar - Asia/Kathmandu - Asia/Katmandu - Asia/Khandyga - Asia/Kolkata - Asia/Krasnoyarsk - Asia/Kuala_Lumpur - Asia/Kuching - Asia/Kuwait - Asia/Macao - Asia/Macau - Asia/Magadan - Asia/Makassar - Asia/Manila - Asia/Muscat - Asia/Nicosia - Asia/Novokuznetsk - Asia/Novosibirsk - Asia/Omsk - Asia/Oral - Asia/Phnom_Penh - Asia/Pontianak - Asia/Pyongyang - Asia/Qatar - Asia/Qostanay - Asia/Qyzylorda - Asia/Rangoon - Asia/Riyadh - Asia/Saigon - Asia/Sakhalin - Asia/Samarkand - Asia/Seoul - Asia/Shanghai - Asia/Singapore - Asia/Srednekolymsk - Asia/Taipei - Asia/Tashkent - Asia/Tbilisi - Asia/Tehran - Asia/Tel_Aviv - Asia/Thimbu - Asia/Thimphu - Asia/Tokyo - Asia/Tomsk - Asia/Ujung_Pandang - Asia/Ulaanbaatar - Asia/Ulan_Bator - Asia/Urumqi - Asia/Ust-Nera - Asia/Vientiane - Asia/Vladivostok - Asia/Yakutsk - Asia/Yangon - Asia/Yekaterinburg - Asia/Yerevan - Atlantic/Azores - Atlantic/Bermuda - Atlantic/Canary - Atlantic/Cape_Verde - Atlantic/Faeroe - Atlantic/Faroe - Atlantic/Jan_Mayen - Atlantic/Madeira - Atlantic/Reykjavik - Atlantic/South_Georgia - Atlantic/St_Helena - Atlantic/Stanley - Australia/ACT - Australia/Adelaide - Australia/Brisbane - Australia/Broken_Hill - Australia/Canberra - Australia/Currie - Australia/Darwin - Australia/Eucla - Australia/Hobart - Australia/LHI - Australia/Lindeman - Australia/Lord_Howe - Australia/Melbourne - Australia/NSW - Australia/North - Australia/Perth - Australia/Queensland - Australia/South - Australia/Sydney - Australia/Tasmania - Australia/Victoria - Australia/West - Australia/Yancowinna - Brazil/Acre - Brazil/DeNoronha - Brazil/East - Brazil/West - CET - CST6CDT - Canada/Atlantic - Canada/Central - Canada/Eastern - Canada/Mountain - Canada/Newfoundland - Canada/Pacific - Canada/Saskatchewan - Canada/Yukon - Chile/Continental - Chile/EasterIsland - Cuba - EET - EST - EST5EDT - Egypt - Eire - Etc/GMT - Etc/GMT+0 - Etc/GMT+1 - Etc/GMT+10 - Etc/GMT+11 - Etc/GMT+12 - Etc/GMT+2 - Etc/GMT+3 - Etc/GMT+4 - Etc/GMT+5 - Etc/GMT+6 - Etc/GMT+7 - Etc/GMT+8 - Etc/GMT+9 - Etc/GMT-0 - Etc/GMT-1 - Etc/GMT-10 - Etc/GMT-11 - Etc/GMT-12 - Etc/GMT-13 - Etc/GMT-14 - Etc/GMT-2 - Etc/GMT-3 - Etc/GMT-4 - Etc/GMT-5 - Etc/GMT-6 - Etc/GMT-7 - Etc/GMT-8 - Etc/GMT-9 - Etc/GMT0 - Etc/Greenwich - Etc/UCT - Etc/UTC - Etc/Universal - Etc/Zulu - Europe/Amsterdam - Europe/Andorra - Europe/Astrakhan - Europe/Athens - Europe/Belfast - Europe/Belgrade - Europe/Berlin - Europe/Bratislava - Europe/Brussels - Europe/Bucharest - Europe/Budapest - Europe/Busingen - Europe/Chisinau - Europe/Copenhagen - Europe/Dublin - Europe/Gibraltar - Europe/Guernsey - Europe/Helsinki - Europe/Isle_of_Man - Europe/Istanbul - Europe/Jersey - Europe/Kaliningrad - Europe/Kiev - Europe/Kirov - Europe/Kyiv - Europe/Lisbon - Europe/Ljubljana - Europe/London - Europe/Luxembourg - Europe/Madrid - Europe/Malta - Europe/Mariehamn - Europe/Minsk - Europe/Monaco - Europe/Moscow - Europe/Nicosia - Europe/Oslo - Europe/Paris - Europe/Podgorica - Europe/Prague - Europe/Riga - Europe/Rome - Europe/Samara - Europe/San_Marino - Europe/Sarajevo - Europe/Saratov - Europe/Simferopol - Europe/Skopje - Europe/Sofia - Europe/Stockholm - Europe/Tallinn - Europe/Tirane - Europe/Tiraspol - Europe/Ulyanovsk - Europe/Uzhgorod - Europe/Vaduz - Europe/Vatican - Europe/Vienna - Europe/Vilnius - Europe/Volgograd - Europe/Warsaw - Europe/Zagreb - Europe/Zaporozhye - Europe/Zurich - GB - GB-Eire - GMT - GMT+0 - GMT-0 - GMT0 - Greenwich - HST - Hongkong - Iceland - Indian/Antananarivo - Indian/Chagos - Indian/Christmas - Indian/Cocos - Indian/Comoro - Indian/Kerguelen - Indian/Mahe - Indian/Maldives - Indian/Mauritius - Indian/Mayotte - Indian/Reunion - Iran - Israel - Jamaica - Japan - Kwajalein - Libya - MET - MST - MST7MDT - Mexico/BajaNorte - Mexico/BajaSur - Mexico/General - NZ - NZ-CHAT - Navajo - PRC - PST8PDT - Pacific/Apia - Pacific/Auckland - Pacific/Bougainville - Pacific/Chatham - Pacific/Chuuk - Pacific/Easter - Pacific/Efate - Pacific/Enderbury - Pacific/Fakaofo - Pacific/Fiji - Pacific/Funafuti - Pacific/Galapagos - Pacific/Gambier - Pacific/Guadalcanal - Pacific/Guam - Pacific/Honolulu - Pacific/Johnston - Pacific/Kanton - Pacific/Kiritimati - Pacific/Kosrae - Pacific/Kwajalein - Pacific/Majuro - Pacific/Marquesas - Pacific/Midway - Pacific/Nauru - Pacific/Niue - Pacific/Norfolk - Pacific/Noumea - Pacific/Pago_Pago - Pacific/Palau - Pacific/Pitcairn - Pacific/Pohnpei - Pacific/Ponape - Pacific/Port_Moresby - Pacific/Rarotonga - Pacific/Saipan - Pacific/Samoa - Pacific/Tahiti - Pacific/Tarawa - Pacific/Tongatapu - Pacific/Truk - Pacific/Wake - Pacific/Wallis - Pacific/Yap - Poland - Portugal - ROC - ROK - Singapore - Turkey - UCT - US/Alaska - US/Aleutian - US/Arizona - US/Central - US/East-Indiana - US/Eastern - US/Hawaii - US/Indiana-Starke - US/Michigan - US/Mountain - US/Pacific - US/Samoa - UTC - Universal - W-SU - WET - Zulu type: string description: '* `Africa/Abidjan` - Africa/Abidjan * `Africa/Accra` - Africa/Accra * `Africa/Addis_Ababa` - Africa/Addis_Ababa * `Africa/Algiers` - Africa/Algiers * `Africa/Asmara` - Africa/Asmara * `Africa/Asmera` - Africa/Asmera * `Africa/Bamako` - Africa/Bamako * `Africa/Bangui` - Africa/Bangui * `Africa/Banjul` - Africa/Banjul * `Africa/Bissau` - Africa/Bissau * `Africa/Blantyre` - Africa/Blantyre * `Africa/Brazzaville` - Africa/Brazzaville * `Africa/Bujumbura` - Africa/Bujumbura * `Africa/Cairo` - Africa/Cairo * `Africa/Casablanca` - Africa/Casablanca * `Africa/Ceuta` - Africa/Ceuta * `Africa/Conakry` - Africa/Conakry * `Africa/Dakar` - Africa/Dakar * `Africa/Dar_es_Salaam` - Africa/Dar_es_Salaam * `Africa/Djibouti` - Africa/Djibouti * `Africa/Douala` - Africa/Douala * `Africa/El_Aaiun` - Africa/El_Aaiun * `Africa/Freetown` - Africa/Freetown * `Africa/Gaborone` - Africa/Gaborone * `Africa/Harare` - Africa/Harare * `Africa/Johannesburg` - Africa/Johannesburg * `Africa/Juba` - Africa/Juba * `Africa/Kampala` - Africa/Kampala * `Africa/Khartoum` - Africa/Khartoum * `Africa/Kigali` - Africa/Kigali * `Africa/Kinshasa` - Africa/Kinshasa * `Africa/Lagos` - Africa/Lagos * `Africa/Libreville` - Africa/Libreville * `Africa/Lome` - Africa/Lome * `Africa/Luanda` - Africa/Luanda * `Africa/Lubumbashi` - Africa/Lubumbashi * `Africa/Lusaka` - Africa/Lusaka * `Africa/Malabo` - Africa/Malabo * `Africa/Maputo` - Africa/Maputo * `Africa/Maseru` - Africa/Maseru * `Africa/Mbabane` - Africa/Mbabane * `Africa/Mogadishu` - Africa/Mogadishu * `Africa/Monrovia` - Africa/Monrovia * `Africa/Nairobi` - Africa/Nairobi * `Africa/Ndjamena` - Africa/Ndjamena * `Africa/Niamey` - Africa/Niamey * `Africa/Nouakchott` - Africa/Nouakchott * `Africa/Ouagadougou` - Africa/Ouagadougou * `Africa/Porto-Novo` - Africa/Porto-Novo * `Africa/Sao_Tome` - Africa/Sao_Tome * `Africa/Timbuktu` - Africa/Timbuktu * `Africa/Tripoli` - Africa/Tripoli * `Africa/Tunis` - Africa/Tunis * `Africa/Windhoek` - Africa/Windhoek * `America/Adak` - America/Adak * `America/Anchorage` - America/Anchorage * `America/Anguilla` - America/Anguilla * `America/Antigua` - America/Antigua * `America/Araguaina` - America/Araguaina * `America/Argentina/Buenos_Aires` - America/Argentina/Buenos_Aires * `America/Argentina/Catamarca` - America/Argentina/Catamarca * `America/Argentina/ComodRivadavia` - America/Argentina/ComodRivadavia * `America/Argentina/Cordoba` - America/Argentina/Cordoba * `America/Argentina/Jujuy` - America/Argentina/Jujuy * `America/Argentina/La_Rioja` - America/Argentina/La_Rioja * `America/Argentina/Mendoza` - America/Argentina/Mendoza * `America/Argentina/Rio_Gallegos` - America/Argentina/Rio_Gallegos * `America/Argentina/Salta` - America/Argentina/Salta * `America/Argentina/San_Juan` - America/Argentina/San_Juan * `America/Argentina/San_Luis` - America/Argentina/San_Luis * `America/Argentina/Tucuman` - America/Argentina/Tucuman * `America/Argentina/Ushuaia` - America/Argentina/Ushuaia * `America/Aruba` - America/Aruba * `America/Asuncion` - America/Asuncion * `America/Atikokan` - America/Atikokan * `America/Atka` - America/Atka * `America/Bahia` - America/Bahia * `America/Bahia_Banderas` - America/Bahia_Banderas * `America/Barbados` - America/Barbados * `America/Belem` - America/Belem * `America/Belize` - America/Belize * `America/Blanc-Sablon` - America/Blanc-Sablon * `America/Boa_Vista` - America/Boa_Vista * `America/Bogota` - America/Bogota * `America/Boise` - America/Boise * `America/Buenos_Aires` - America/Buenos_Aires * `America/Cambridge_Bay` - America/Cambridge_Bay * `America/Campo_Grande` - America/Campo_Grande * `America/Cancun` - America/Cancun * `America/Caracas` - America/Caracas * `America/Catamarca` - America/Catamarca * `America/Cayenne` - America/Cayenne * `America/Cayman` - America/Cayman * `America/Chicago` - America/Chicago * `America/Chihuahua` - America/Chihuahua * `America/Ciudad_Juarez` - America/Ciudad_Juarez * `America/Coral_Harbour` - America/Coral_Harbour * `America/Cordoba` - America/Cordoba * `America/Costa_Rica` - America/Costa_Rica * `America/Creston` - America/Creston * `America/Cuiaba` - America/Cuiaba * `America/Curacao` - America/Curacao * `America/Danmarkshavn` - America/Danmarkshavn * `America/Dawson` - America/Dawson * `America/Dawson_Creek` - America/Dawson_Creek * `America/Denver` - America/Denver * `America/Detroit` - America/Detroit * `America/Dominica` - America/Dominica * `America/Edmonton` - America/Edmonton * `America/Eirunepe` - America/Eirunepe * `America/El_Salvador` - America/El_Salvador * `America/Ensenada` - America/Ensenada * `America/Fort_Nelson` - America/Fort_Nelson * `America/Fort_Wayne` - America/Fort_Wayne * `America/Fortaleza` - America/Fortaleza * `America/Glace_Bay` - America/Glace_Bay * `America/Godthab` - America/Godthab * `America/Goose_Bay` - America/Goose_Bay * `America/Grand_Turk` - America/Grand_Turk * `America/Grenada` - America/Grenada * `America/Guadeloupe` - America/Guadeloupe * `America/Guatemala` - America/Guatemala * `America/Guayaquil` - America/Guayaquil * `America/Guyana` - America/Guyana * `America/Halifax` - America/Halifax * `America/Havana` - America/Havana * `America/Hermosillo` - America/Hermosillo * `America/Indiana/Indianapolis` - America/Indiana/Indianapolis * `America/Indiana/Knox` - America/Indiana/Knox * `America/Indiana/Marengo` - America/Indiana/Marengo * `America/Indiana/Petersburg` - America/Indiana/Petersburg * `America/Indiana/Tell_City` - America/Indiana/Tell_City * `America/Indiana/Vevay` - America/Indiana/Vevay * `America/Indiana/Vincennes` - America/Indiana/Vincennes * `America/Indiana/Winamac` - America/Indiana/Winamac * `America/Indianapolis` - America/Indianapolis * `America/Inuvik` - America/Inuvik * `America/Iqaluit` - America/Iqaluit * `America/Jamaica` - America/Jamaica * `America/Jujuy` - America/Jujuy * `America/Juneau` - America/Juneau * `America/Kentucky/Louisville` - America/Kentucky/Louisville * `America/Kentucky/Monticello` - America/Kentucky/Monticello * `America/Knox_IN` - America/Knox_IN * `America/Kralendijk` - America/Kralendijk * `America/La_Paz` - America/La_Paz * `America/Lima` - America/Lima * `America/Los_Angeles` - America/Los_Angeles * `America/Louisville` - America/Louisville * `America/Lower_Princes` - America/Lower_Princes * `America/Maceio` - America/Maceio * `America/Managua` - America/Managua * `America/Manaus` - America/Manaus * `America/Marigot` - America/Marigot * `America/Martinique` - America/Martinique * `America/Matamoros` - America/Matamoros * `America/Mazatlan` - America/Mazatlan * `America/Mendoza` - America/Mendoza * `America/Menominee` - America/Menominee * `America/Merida` - America/Merida * `America/Metlakatla` - America/Metlakatla * `America/Mexico_City` - America/Mexico_City * `America/Miquelon` - America/Miquelon * `America/Moncton` - America/Moncton * `America/Monterrey` - America/Monterrey * `America/Montevideo` - America/Montevideo * `America/Montreal` - America/Montreal * `America/Montserrat` - America/Montserrat * `America/Nassau` - America/Nassau * `America/New_York` - America/New_York * `America/Nipigon` - America/Nipigon * `America/Nome` - America/Nome * `America/Noronha` - America/Noronha * `America/North_Dakota/Beulah` - America/North_Dakota/Beulah * `America/North_Dakota/Center` - America/North_Dakota/Center * `America/North_Dakota/New_Salem` - America/North_Dakota/New_Salem * `America/Nuuk` - America/Nuuk * `America/Ojinaga` - America/Ojinaga * `America/Panama` - America/Panama * `America/Pangnirtung` - America/Pangnirtung * `America/Paramaribo` - America/Paramaribo * `America/Phoenix` - America/Phoenix * `America/Port-au-Prince` - America/Port-au-Prince * `America/Port_of_Spain` - America/Port_of_Spain * `America/Porto_Acre` - America/Porto_Acre * `America/Porto_Velho` - America/Porto_Velho * `America/Puerto_Rico` - America/Puerto_Rico * `America/Punta_Arenas` - America/Punta_Arenas * `America/Rainy_River` - America/Rainy_River * `America/Rankin_Inlet` - America/Rankin_Inlet * `America/Recife` - America/Recife * `America/Regina` - America/Regina * `America/Resolute` - America/Resolute * `America/Rio_Branco` - America/Rio_Branco * `America/Rosario` - America/Rosario * `America/Santa_Isabel` - America/Santa_Isabel * `America/Santarem` - America/Santarem * `America/Santiago` - America/Santiago * `America/Santo_Domingo` - America/Santo_Domingo * `America/Sao_Paulo` - America/Sao_Paulo * `America/Scoresbysund` - America/Scoresbysund * `America/Shiprock` - America/Shiprock * `America/Sitka` - America/Sitka * `America/St_Barthelemy` - America/St_Barthelemy * `America/St_Johns` - America/St_Johns * `America/St_Kitts` - America/St_Kitts * `America/St_Lucia` - America/St_Lucia * `America/St_Thomas` - America/St_Thomas * `America/St_Vincent` - America/St_Vincent * `America/Swift_Current` - America/Swift_Current * `America/Tegucigalpa` - America/Tegucigalpa * `America/Thule` - America/Thule * `America/Thunder_Bay` - America/Thunder_Bay * `America/Tijuana` - America/Tijuana * `America/Toronto` - America/Toronto * `America/Tortola` - America/Tortola * `America/Vancouver` - America/Vancouver * `America/Virgin` - America/Virgin * `America/Whitehorse` - America/Whitehorse * `America/Winnipeg` - America/Winnipeg * `America/Yakutat` - America/Yakutat * `America/Yellowknife` - America/Yellowknife * `Antarctica/Casey` - Antarctica/Casey * `Antarctica/Davis` - Antarctica/Davis * `Antarctica/DumontDUrville` - Antarctica/DumontDUrville * `Antarctica/Macquarie` - Antarctica/Macquarie * `Antarctica/Mawson` - Antarctica/Mawson * `Antarctica/McMurdo` - Antarctica/McMurdo * `Antarctica/Palmer` - Antarctica/Palmer * `Antarctica/Rothera` - Antarctica/Rothera * `Antarctica/South_Pole` - Antarctica/South_Pole * `Antarctica/Syowa` - Antarctica/Syowa * `Antarctica/Troll` - Antarctica/Troll * `Antarctica/Vostok` - Antarctica/Vostok * `Arctic/Longyearbyen` - Arctic/Longyearbyen * `Asia/Aden` - Asia/Aden * `Asia/Almaty` - Asia/Almaty * `Asia/Amman` - Asia/Amman * `Asia/Anadyr` - Asia/Anadyr * `Asia/Aqtau` - Asia/Aqtau * `Asia/Aqtobe` - Asia/Aqtobe * `Asia/Ashgabat` - Asia/Ashgabat * `Asia/Ashkhabad` - Asia/Ashkhabad * `Asia/Atyrau` - Asia/Atyrau * `Asia/Baghdad` - Asia/Baghdad * `Asia/Bahrain` - Asia/Bahrain * `Asia/Baku` - Asia/Baku * `Asia/Bangkok` - Asia/Bangkok * `Asia/Barnaul` - Asia/Barnaul * `Asia/Beirut` - Asia/Beirut * `Asia/Bishkek` - Asia/Bishkek * `Asia/Brunei` - Asia/Brunei * `Asia/Calcutta` - Asia/Calcutta * `Asia/Chita` - Asia/Chita * `Asia/Choibalsan` - Asia/Choibalsan * `Asia/Chongqing` - Asia/Chongqing * `Asia/Chungking` - Asia/Chungking * `Asia/Colombo` - Asia/Colombo * `Asia/Dacca` - Asia/Dacca * `Asia/Damascus` - Asia/Damascus * `Asia/Dhaka` - Asia/Dhaka * `Asia/Dili` - Asia/Dili * `Asia/Dubai` - Asia/Dubai * `Asia/Dushanbe` - Asia/Dushanbe * `Asia/Famagusta` - Asia/Famagusta * `Asia/Gaza` - Asia/Gaza * `Asia/Harbin` - Asia/Harbin * `Asia/Hebron` - Asia/Hebron * `Asia/Ho_Chi_Minh` - Asia/Ho_Chi_Minh * `Asia/Hong_Kong` - Asia/Hong_Kong * `Asia/Hovd` - Asia/Hovd * `Asia/Irkutsk` - Asia/Irkutsk * `Asia/Istanbul` - Asia/Istanbul * `Asia/Jakarta` - Asia/Jakarta * `Asia/Jayapura` - Asia/Jayapura * `Asia/Jerusalem` - Asia/Jerusalem * `Asia/Kabul` - Asia/Kabul * `Asia/Kamchatka` - Asia/Kamchatka * `Asia/Karachi` - Asia/Karachi * `Asia/Kashgar` - Asia/Kashgar * `Asia/Kathmandu` - Asia/Kathmandu * `Asia/Katmandu` - Asia/Katmandu * `Asia/Khandyga` - Asia/Khandyga * `Asia/Kolkata` - Asia/Kolkata * `Asia/Krasnoyarsk` - Asia/Krasnoyarsk * `Asia/Kuala_Lumpur` - Asia/Kuala_Lumpur * `Asia/Kuching` - Asia/Kuching * `Asia/Kuwait` - Asia/Kuwait * `Asia/Macao` - Asia/Macao * `Asia/Macau` - Asia/Macau * `Asia/Magadan` - Asia/Magadan * `Asia/Makassar` - Asia/Makassar * `Asia/Manila` - Asia/Manila * `Asia/Muscat` - Asia/Muscat * `Asia/Nicosia` - Asia/Nicosia * `Asia/Novokuznetsk` - Asia/Novokuznetsk * `Asia/Novosibirsk` - Asia/Novosibirsk * `Asia/Omsk` - Asia/Omsk * `Asia/Oral` - Asia/Oral * `Asia/Phnom_Penh` - Asia/Phnom_Penh * `Asia/Pontianak` - Asia/Pontianak * `Asia/Pyongyang` - Asia/Pyongyang * `Asia/Qatar` - Asia/Qatar * `Asia/Qostanay` - Asia/Qostanay * `Asia/Qyzylorda` - Asia/Qyzylorda * `Asia/Rangoon` - Asia/Rangoon * `Asia/Riyadh` - Asia/Riyadh * `Asia/Saigon` - Asia/Saigon * `Asia/Sakhalin` - Asia/Sakhalin * `Asia/Samarkand` - Asia/Samarkand * `Asia/Seoul` - Asia/Seoul * `Asia/Shanghai` - Asia/Shanghai * `Asia/Singapore` - Asia/Singapore * `Asia/Srednekolymsk` - Asia/Srednekolymsk * `Asia/Taipei` - Asia/Taipei * `Asia/Tashkent` - Asia/Tashkent * `Asia/Tbilisi` - Asia/Tbilisi * `Asia/Tehran` - Asia/Tehran * `Asia/Tel_Aviv` - Asia/Tel_Aviv * `Asia/Thimbu` - Asia/Thimbu * `Asia/Thimphu` - Asia/Thimphu * `Asia/Tokyo` - Asia/Tokyo * `Asia/Tomsk` - Asia/Tomsk * `Asia/Ujung_Pandang` - Asia/Ujung_Pandang * `Asia/Ulaanbaatar` - Asia/Ulaanbaatar * `Asia/Ulan_Bator` - Asia/Ulan_Bator * `Asia/Urumqi` - Asia/Urumqi * `Asia/Ust-Nera` - Asia/Ust-Nera * `Asia/Vientiane` - Asia/Vientiane * `Asia/Vladivostok` - Asia/Vladivostok * `Asia/Yakutsk` - Asia/Yakutsk * `Asia/Yangon` - Asia/Yangon * `Asia/Yekaterinburg` - Asia/Yekaterinburg * `Asia/Yerevan` - Asia/Yerevan * `Atlantic/Azores` - Atlantic/Azores * `Atlantic/Bermuda` - Atlantic/Bermuda * `Atlantic/Canary` - Atlantic/Canary * `Atlantic/Cape_Verde` - Atlantic/Cape_Verde * `Atlantic/Faeroe` - Atlantic/Faeroe * `Atlantic/Faroe` - Atlantic/Faroe * `Atlantic/Jan_Mayen` - Atlantic/Jan_Mayen * `Atlantic/Madeira` - Atlantic/Madeira * `Atlantic/Reykjavik` - Atlantic/Reykjavik * `Atlantic/South_Georgia` - Atlantic/South_Georgia * `Atlantic/St_Helena` - Atlantic/St_Helena * `Atlantic/Stanley` - Atlantic/Stanley * `Australia/ACT` - Australia/ACT * `Australia/Adelaide` - Australia/Adelaide * `Australia/Brisbane` - Australia/Brisbane * `Australia/Broken_Hill` - Australia/Broken_Hill * `Australia/Canberra` - Australia/Canberra * `Australia/Currie` - Australia/Currie * `Australia/Darwin` - Australia/Darwin * `Australia/Eucla` - Australia/Eucla * `Australia/Hobart` - Australia/Hobart * `Australia/LHI` - Australia/LHI * `Australia/Lindeman` - Australia/Lindeman * `Australia/Lord_Howe` - Australia/Lord_Howe * `Australia/Melbourne` - Australia/Melbourne * `Australia/NSW` - Australia/NSW * `Australia/North` - Australia/North * `Australia/Perth` - Australia/Perth * `Australia/Queensland` - Australia/Queensland * `Australia/South` - Australia/South * `Australia/Sydney` - Australia/Sydney * `Australia/Tasmania` - Australia/Tasmania * `Australia/Victoria` - Australia/Victoria * `Australia/West` - Australia/West * `Australia/Yancowinna` - Australia/Yancowinna * `Brazil/Acre` - Brazil/Acre * `Brazil/DeNoronha` - Brazil/DeNoronha * `Brazil/East` - Brazil/East * `Brazil/West` - Brazil/West * `CET` - CET * `CST6CDT` - CST6CDT * `Canada/Atlantic` - Canada/Atlantic * `Canada/Central` - Canada/Central * `Canada/Eastern` - Canada/Eastern * `Canada/Mountain` - Canada/Mountain * `Canada/Newfoundland` - Canada/Newfoundland * `Canada/Pacific` - Canada/Pacific * `Canada/Saskatchewan` - Canada/Saskatchewan * `Canada/Yukon` - Canada/Yukon * `Chile/Continental` - Chile/Continental * `Chile/EasterIsland` - Chile/EasterIsland * `Cuba` - Cuba * `EET` - EET * `EST` - EST * `EST5EDT` - EST5EDT * `Egypt` - Egypt * `Eire` - Eire * `Etc/GMT` - Etc/GMT * `Etc/GMT+0` - Etc/GMT+0 * `Etc/GMT+1` - Etc/GMT+1 * `Etc/GMT+10` - Etc/GMT+10 * `Etc/GMT+11` - Etc/GMT+11 * `Etc/GMT+12` - Etc/GMT+12 * `Etc/GMT+2` - Etc/GMT+2 * `Etc/GMT+3` - Etc/GMT+3 * `Etc/GMT+4` - Etc/GMT+4 * `Etc/GMT+5` - Etc/GMT+5 * `Etc/GMT+6` - Etc/GMT+6 * `Etc/GMT+7` - Etc/GMT+7 * `Etc/GMT+8` - Etc/GMT+8 * `Etc/GMT+9` - Etc/GMT+9 * `Etc/GMT-0` - Etc/GMT-0 * `Etc/GMT-1` - Etc/GMT-1 * `Etc/GMT-10` - Etc/GMT-10 * `Etc/GMT-11` - Etc/GMT-11 * `Etc/GMT-12` - Etc/GMT-12 * `Etc/GMT-13` - Etc/GMT-13 * `Etc/GMT-14` - Etc/GMT-14 * `Etc/GMT-2` - Etc/GMT-2 * `Etc/GMT-3` - Etc/GMT-3 * `Etc/GMT-4` - Etc/GMT-4 * `Etc/GMT-5` - Etc/GMT-5 * `Etc/GMT-6` - Etc/GMT-6 * `Etc/GMT-7` - Etc/GMT-7 * `Etc/GMT-8` - Etc/GMT-8 * `Etc/GMT-9` - Etc/GMT-9 * `Etc/GMT0` - Etc/GMT0 * `Etc/Greenwich` - Etc/Greenwich * `Etc/UCT` - Etc/UCT * `Etc/UTC` - Etc/UTC * `Etc/Universal` - Etc/Universal * `Etc/Zulu` - Etc/Zulu * `Europe/Amsterdam` - Europe/Amsterdam * `Europe/Andorra` - Europe/Andorra * `Europe/Astrakhan` - Europe/Astrakhan * `Europe/Athens` - Europe/Athens * `Europe/Belfast` - Europe/Belfast * `Europe/Belgrade` - Europe/Belgrade * `Europe/Berlin` - Europe/Berlin * `Europe/Bratislava` - Europe/Bratislava * `Europe/Brussels` - Europe/Brussels * `Europe/Bucharest` - Europe/Bucharest * `Europe/Budapest` - Europe/Budapest * `Europe/Busingen` - Europe/Busingen * `Europe/Chisinau` - Europe/Chisinau * `Europe/Copenhagen` - Europe/Copenhagen * `Europe/Dublin` - Europe/Dublin * `Europe/Gibraltar` - Europe/Gibraltar * `Europe/Guernsey` - Europe/Guernsey * `Europe/Helsinki` - Europe/Helsinki * `Europe/Isle_of_Man` - Europe/Isle_of_Man * `Europe/Istanbul` - Europe/Istanbul * `Europe/Jersey` - Europe/Jersey * `Europe/Kaliningrad` - Europe/Kaliningrad * `Europe/Kiev` - Europe/Kiev * `Europe/Kirov` - Europe/Kirov * `Europe/Kyiv` - Europe/Kyiv * `Europe/Lisbon` - Europe/Lisbon * `Europe/Ljubljana` - Europe/Ljubljana * `Europe/London` - Europe/London * `Europe/Luxembourg` - Europe/Luxembourg * `Europe/Madrid` - Europe/Madrid * `Europe/Malta` - Europe/Malta * `Europe/Mariehamn` - Europe/Mariehamn * `Europe/Minsk` - Europe/Minsk * `Europe/Monaco` - Europe/Monaco * `Europe/Moscow` - Europe/Moscow * `Europe/Nicosia` - Europe/Nicosia * `Europe/Oslo` - Europe/Oslo * `Europe/Paris` - Europe/Paris * `Europe/Podgorica` - Europe/Podgorica * `Europe/Prague` - Europe/Prague * `Europe/Riga` - Europe/Riga * `Europe/Rome` - Europe/Rome * `Europe/Samara` - Europe/Samara * `Europe/San_Marino` - Europe/San_Marino * `Europe/Sarajevo` - Europe/Sarajevo * `Europe/Saratov` - Europe/Saratov * `Europe/Simferopol` - Europe/Simferopol * `Europe/Skopje` - Europe/Skopje * `Europe/Sofia` - Europe/Sofia * `Europe/Stockholm` - Europe/Stockholm * `Europe/Tallinn` - Europe/Tallinn * `Europe/Tirane` - Europe/Tirane * `Europe/Tiraspol` - Europe/Tiraspol * `Europe/Ulyanovsk` - Europe/Ulyanovsk * `Europe/Uzhgorod` - Europe/Uzhgorod * `Europe/Vaduz` - Europe/Vaduz * `Europe/Vatican` - Europe/Vatican * `Europe/Vienna` - Europe/Vienna * `Europe/Vilnius` - Europe/Vilnius * `Europe/Volgograd` - Europe/Volgograd * `Europe/Warsaw` - Europe/Warsaw * `Europe/Zagreb` - Europe/Zagreb * `Europe/Zaporozhye` - Europe/Zaporozhye * `Europe/Zurich` - Europe/Zurich * `GB` - GB * `GB-Eire` - GB-Eire * `GMT` - GMT * `GMT+0` - GMT+0 * `GMT-0` - GMT-0 * `GMT0` - GMT0 * `Greenwich` - Greenwich * `HST` - HST * `Hongkong` - Hongkong * `Iceland` - Iceland * `Indian/Antananarivo` - Indian/Antananarivo * `Indian/Chagos` - Indian/Chagos * `Indian/Christmas` - Indian/Christmas * `Indian/Cocos` - Indian/Cocos * `Indian/Comoro` - Indian/Comoro * `Indian/Kerguelen` - Indian/Kerguelen * `Indian/Mahe` - Indian/Mahe * `Indian/Maldives` - Indian/Maldives * `Indian/Mauritius` - Indian/Mauritius * `Indian/Mayotte` - Indian/Mayotte * `Indian/Reunion` - Indian/Reunion * `Iran` - Iran * `Israel` - Israel * `Jamaica` - Jamaica * `Japan` - Japan * `Kwajalein` - Kwajalein * `Libya` - Libya * `MET` - MET * `MST` - MST * `MST7MDT` - MST7MDT * `Mexico/BajaNorte` - Mexico/BajaNorte * `Mexico/BajaSur` - Mexico/BajaSur * `Mexico/General` - Mexico/General * `NZ` - NZ * `NZ-CHAT` - NZ-CHAT * `Navajo` - Navajo * `PRC` - PRC * `PST8PDT` - PST8PDT * `Pacific/Apia` - Pacific/Apia * `Pacific/Auckland` - Pacific/Auckland * `Pacific/Bougainville` - Pacific/Bougainville * `Pacific/Chatham` - Pacific/Chatham * `Pacific/Chuuk` - Pacific/Chuuk * `Pacific/Easter` - Pacific/Easter * `Pacific/Efate` - Pacific/Efate * `Pacific/Enderbury` - Pacific/Enderbury * `Pacific/Fakaofo` - Pacific/Fakaofo * `Pacific/Fiji` - Pacific/Fiji * `Pacific/Funafuti` - Pacific/Funafuti * `Pacific/Galapagos` - Pacific/Galapagos * `Pacific/Gambier` - Pacific/Gambier * `Pacific/Guadalcanal` - Pacific/Guadalcanal * `Pacific/Guam` - Pacific/Guam * `Pacific/Honolulu` - Pacific/Honolulu * `Pacific/Johnston` - Pacific/Johnston * `Pacific/Kanton` - Pacific/Kanton * `Pacific/Kiritimati` - Pacific/Kiritimati * `Pacific/Kosrae` - Pacific/Kosrae * `Pacific/Kwajalein` - Pacific/Kwajalein * `Pacific/Majuro` - Pacific/Majuro * `Pacific/Marquesas` - Pacific/Marquesas * `Pacific/Midway` - Pacific/Midway * `Pacific/Nauru` - Pacific/Nauru * `Pacific/Niue` - Pacific/Niue * `Pacific/Norfolk` - Pacific/Norfolk * `Pacific/Noumea` - Pacific/Noumea * `Pacific/Pago_Pago` - Pacific/Pago_Pago * `Pacific/Palau` - Pacific/Palau * `Pacific/Pitcairn` - Pacific/Pitcairn * `Pacific/Pohnpei` - Pacific/Pohnpei * `Pacific/Ponape` - Pacific/Ponape * `Pacific/Port_Moresby` - Pacific/Port_Moresby * `Pacific/Rarotonga` - Pacific/Rarotonga * `Pacific/Saipan` - Pacific/Saipan * `Pacific/Samoa` - Pacific/Samoa * `Pacific/Tahiti` - Pacific/Tahiti * `Pacific/Tarawa` - Pacific/Tarawa * `Pacific/Tongatapu` - Pacific/Tongatapu * `Pacific/Truk` - Pacific/Truk * `Pacific/Wake` - Pacific/Wake * `Pacific/Wallis` - Pacific/Wallis * `Pacific/Yap` - Pacific/Yap * `Poland` - Poland * `Portugal` - Portugal * `ROC` - ROC * `ROK` - ROK * `Singapore` - Singapore * `Turkey` - Turkey * `UCT` - UCT * `US/Alaska` - US/Alaska * `US/Aleutian` - US/Aleutian * `US/Arizona` - US/Arizona * `US/Central` - US/Central * `US/East-Indiana` - US/East-Indiana * `US/Eastern` - US/Eastern * `US/Hawaii` - US/Hawaii * `US/Indiana-Starke` - US/Indiana-Starke * `US/Michigan` - US/Michigan * `US/Mountain` - US/Mountain * `US/Pacific` - US/Pacific * `US/Samoa` - US/Samoa * `UTC` - UTC * `Universal` - Universal * `W-SU` - W-SU * `WET` - WET * `Zulu` - Zulu' PaginatedFileSystemList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/FileSystem' OrganizationDomain: type: object properties: id: type: string format: uuid readOnly: true domain: type: string maxLength: 128 is_verified: type: boolean description: Determines whether a domain is verified or not. readOnly: true verified_at: type: string format: date-time readOnly: true nullable: true verification_challenge: type: string readOnly: true jit_provisioning_enabled: type: boolean sso_enforcement: type: string maxLength: 28 has_saml: type: boolean description: Returns whether SAML is configured for the instance. Does not validate the user has the required license (that check is performed in other places). readOnly: true saml_entity_id: type: string nullable: true maxLength: 512 saml_acs_url: type: string nullable: true maxLength: 512 saml_x509_cert: type: string nullable: true has_scim: type: boolean description: Returns whether SCIM is configured and enabled for this domain. readOnly: true scim_enabled: type: boolean scim_base_url: type: string nullable: true readOnly: true scim_bearer_token: type: string nullable: true readOnly: true required: - domain - has_saml - has_scim - id - is_verified - scim_base_url - scim_bearer_token - verification_challenge - verified_at CreationModeEnum: enum: - default - template - duplicate - unlisted type: string description: '* `default` - Default * `template` - Template * `duplicate` - Duplicate * `unlisted` - Unlisted (product-embedded)' Dashboard: type: object description: Serializer mixin that handles tags for objects. properties: id: type: integer readOnly: true name: type: string nullable: true maxLength: 400 description: type: string pinned: type: boolean created_at: type: string format: date-time readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true last_accessed_at: type: string format: date-time nullable: true last_viewed_at: type: string format: date-time readOnly: true nullable: true is_shared: type: boolean readOnly: true deleted: type: boolean creation_mode: allOf: - $ref: '#/components/schemas/CreationModeEnum' readOnly: true filters: type: object additionalProperties: true readOnly: true variables: type: object additionalProperties: true nullable: true readOnly: true breakdown_colors: description: Custom color mapping for breakdown values. data_color_theme_id: type: integer nullable: true description: ID of the color theme used for chart visualizations. tags: type: array items: {} restriction_level: $ref: '#/components/schemas/RestrictionLevelEnum' effective_restriction_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true effective_privilege_level: allOf: - $ref: '#/components/schemas/EffectivePrivilegeLevelEnum' readOnly: true user_access_level: type: string nullable: true readOnly: true description: The effective access level the user has for this object access_control_version: type: string readOnly: true last_refresh: type: string format: date-time nullable: true persisted_filters: type: object additionalProperties: true nullable: true readOnly: true persisted_variables: type: object additionalProperties: true nullable: true readOnly: true team_id: type: integer readOnly: true quick_filter_ids: type: array items: type: string nullable: true description: List of quick filter IDs associated with this dashboard tiles: type: array items: type: object additionalProperties: true nullable: true readOnly: true use_template: type: string writeOnly: true description: Template key to create the dashboard from a predefined template. use_dashboard: type: integer writeOnly: true nullable: true description: ID of an existing dashboard to duplicate. delete_insights: type: boolean writeOnly: true default: false description: When deleting, also delete insights that are only on this dashboard. _create_in_folder: type: string writeOnly: true title: ' create in folder' required: - access_control_version - created_at - created_by - creation_mode - effective_privilege_level - effective_restriction_level - filters - id - is_shared - last_viewed_at - persisted_filters - persisted_variables - team_id - tiles - user_access_level - variables PatchedComment: type: object properties: id: type: string format: uuid readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true deleted: type: boolean nullable: true mentions: type: array items: type: integer writeOnly: true slug: type: string writeOnly: true content: type: string nullable: true rich_content: nullable: true version: type: integer readOnly: true created_at: type: string format: date-time readOnly: true item_id: type: string nullable: true maxLength: 72 item_context: nullable: true scope: type: string maxLength: 79 source_comment: type: string format: uuid nullable: true CreateGroup: type: object properties: group_type_index: type: integer maximum: 2147483647 minimum: -2147483648 group_key: type: string maxLength: 400 group_properties: nullable: true required: - group_key - group_type_index Comment: type: object properties: id: type: string format: uuid readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true deleted: type: boolean nullable: true mentions: type: array items: type: integer writeOnly: true slug: type: string writeOnly: true content: type: string nullable: true rich_content: nullable: true version: type: integer readOnly: true created_at: type: string format: date-time readOnly: true item_id: type: string nullable: true maxLength: 72 item_context: nullable: true scope: type: string maxLength: 79 source_comment: type: string format: uuid nullable: true required: - created_at - created_by - id - scope - version PaginatedOrganizationInviteList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/OrganizationInvite' ExportFormatEnum: enum: - image/png - application/pdf - text/csv - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet - video/webm - video/mp4 - image/gif - application/json type: string description: '* `image/png` - image/png * `application/pdf` - application/pdf * `text/csv` - text/csv * `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet` - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet * `video/webm` - video/webm * `video/mp4` - video/mp4 * `image/gif` - image/gif * `application/json` - application/json' AvailableSetupTaskIdsEnum: enum: - ingest_first_event - set_up_reverse_proxy - create_first_insight - create_first_dashboard - track_custom_events - define_actions - set_up_cohorts - explore_trends_insight - create_funnel - explore_retention_insight - explore_paths_insight - explore_stickiness_insight - explore_lifecycle_insight - add_authorized_domain - set_up_web_vitals - review_web_analytics_dashboard - filter_web_analytics - set_up_web_analytics_conversion_goals - visit_web_vitals_dashboard - setup_session_recordings - watch_session_recording - configure_recording_settings - create_recording_playlist - enable_console_logs - create_feature_flag - implement_flag_in_code - update_feature_flag_release_conditions - create_multivariate_flag - set_up_flag_payloads - set_up_flag_evaluation_runtimes - create_experiment - implement_experiment_variants - launch_experiment - review_experiment_results - create_survey - launch_survey - collect_survey_responses - connect_source - run_first_query - join_external_data - create_saved_view - enable_error_tracking - upload_source_maps - view_first_error - resolve_first_error - ingest_first_llm_event - view_first_trace - track_costs - set_up_llm_evaluation - run_ai_playground - enable_revenue_analytics_viewset - connect_revenue_source - set_up_revenue_goal - enable_log_capture - view_first_logs - create_first_workflow - set_up_first_workflow_channel - configure_workflow_trigger - add_workflow_action - launch_workflow - create_first_endpoint - configure_endpoint - test_endpoint - create_early_access_feature - update_feature_stage type: string description: '* `ingest_first_event` - ingest_first_event * `set_up_reverse_proxy` - set_up_reverse_proxy * `create_first_insight` - create_first_insight * `create_first_dashboard` - create_first_dashboard * `track_custom_events` - track_custom_events * `define_actions` - define_actions * `set_up_cohorts` - set_up_cohorts * `explore_trends_insight` - explore_trends_insight * `create_funnel` - create_funnel * `explore_retention_insight` - explore_retention_insight * `explore_paths_insight` - explore_paths_insight * `explore_stickiness_insight` - explore_stickiness_insight * `explore_lifecycle_insight` - explore_lifecycle_insight * `add_authorized_domain` - add_authorized_domain * `set_up_web_vitals` - set_up_web_vitals * `review_web_analytics_dashboard` - review_web_analytics_dashboard * `filter_web_analytics` - filter_web_analytics * `set_up_web_analytics_conversion_goals` - set_up_web_analytics_conversion_goals * `visit_web_vitals_dashboard` - visit_web_vitals_dashboard * `setup_session_recordings` - setup_session_recordings * `watch_session_recording` - watch_session_recording * `configure_recording_settings` - configure_recording_settings * `create_recording_playlist` - create_recording_playlist * `enable_console_logs` - enable_console_logs * `create_feature_flag` - create_feature_flag * `implement_flag_in_code` - implement_flag_in_code * `update_feature_flag_release_conditions` - update_feature_flag_release_conditions * `create_multivariate_flag` - create_multivariate_flag * `set_up_flag_payloads` - set_up_flag_payloads * `set_up_flag_evaluation_runtimes` - set_up_flag_evaluation_runtimes * `create_experiment` - create_experiment * `implement_experiment_variants` - implement_experiment_variants * `launch_experiment` - launch_experiment * `review_experiment_results` - review_experiment_results * `create_survey` - create_survey * `launch_survey` - launch_survey * `collect_survey_responses` - collect_survey_responses * `connect_source` - connect_source * `run_first_query` - run_first_query * `join_external_data` - join_external_data * `create_saved_view` - create_saved_view * `enable_error_tracking` - enable_error_tracking * `upload_source_maps` - upload_source_maps * `view_first_error` - view_first_error * `resolve_first_error` - resolve_first_error * `ingest_first_llm_event` - ingest_first_llm_event * `view_first_trace` - view_first_trace * `track_costs` - track_costs * `set_up_llm_evaluation` - set_up_llm_evaluation * `run_ai_playground` - run_ai_playground * `enable_revenue_analytics_viewset` - enable_revenue_analytics_viewset * `connect_revenue_source` - connect_revenue_source * `set_up_revenue_goal` - set_up_revenue_goal * `enable_log_capture` - enable_log_capture * `view_first_logs` - view_first_logs * `create_first_workflow` - create_first_workflow * `set_up_first_workflow_channel` - set_up_first_workflow_channel * `configure_workflow_trigger` - configure_workflow_trigger * `add_workflow_action` - add_workflow_action * `launch_workflow` - launch_workflow * `create_first_endpoint` - create_first_endpoint * `configure_endpoint` - configure_endpoint * `test_endpoint` - test_endpoint * `create_early_access_feature` - create_early_access_feature * `update_feature_stage` - update_feature_stage' Cohort: type: object properties: id: type: integer readOnly: true name: type: string nullable: true maxLength: 400 description: type: string maxLength: 1000 groups: {} deleted: type: boolean filters: allOf: - $ref: '#/components/schemas/CohortFilters' nullable: true query: nullable: true version: type: integer readOnly: true nullable: true pending_version: type: integer readOnly: true nullable: true is_calculating: type: boolean readOnly: true created_by: allOf: - $ref: '#/components/schemas/UserBasic' readOnly: true created_at: type: string format: date-time readOnly: true nullable: true last_calculation: type: string format: date-time readOnly: true nullable: true last_backfill_person_properties_at: type: string format: date-time readOnly: true nullable: true errors_calculating: type: integer readOnly: true last_error_message: type: string nullable: true readOnly: true count: type: integer readOnly: true nullable: true is_static: type: boolean cohort_type: nullable: true description: 'Type of cohort based on filter complexity * `static` - static * `person_property` - person_property * `behavioral` - behavioral * `realtime` - realtime * `analytical` - analytical' oneOf: - $ref: '#/components/schemas/CohortTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' experiment_set: type: array items: type: integer readOnly: true _create_in_folder: type: string writeOnly: true title: ' create in folder' _create_static_person_ids: type: array items: type: string writeOnly: true default: [] title: ' create static person ids' required: - count - created_at - created_by - errors_calculating - experiment_set - id - is_calculating - last_backfill_person_properties_at - last_calculation - last_error_message - pending_version - version UserGitHubIntegrationItem: type: object properties: id: type: string format: uuid description: PostHog UserIntegration row id. kind: type: string description: Integration kind; always `github` for this API. installation_id: type: string description: GitHub App installation id. repository_selection: type: string nullable: true description: Repository selection mode from GitHub (e.g. selected or all). account: allOf: - $ref: '#/components/schemas/UserGitHubAccount' nullable: true description: Installation account metadata from GitHub. uses_shared_installation: type: boolean description: True when this installation id matches a team-level GitHub integration on the active project. created_at: type: string format: date-time description: When this integration row was created. required: - created_at - id - installation_id - kind - uses_shared_installation OrganizationMembershipLevelEnum: enum: - 1 - 8 - 15 type: integer description: '* `1` - member * `8` - administrator * `15` - owner' BusinessModelEnum: enum: - b2b - b2c - other type: string description: '* `b2b` - B2B * `b2c` - B2C * `other` - Other' PatchedProjectBackwardCompat: type: object description: 'Like `ProjectBasicSerializer`, but also works as a drop-in replacement for `TeamBasicSerializer` by way of passthrough fields. This allows the meaning of `Team` to change from "project" to "environment" without breaking backward compatibility of the REST API. Do not use this in greenfield endpoints!' properties: id: type: integer readOnly: true organization: type: string format: uuid readOnly: true name: type: string description: Human-readable project name. maxLength: 200 minLength: 1 product_description: type: string nullable: true description: Short description of what the project is about. This is helpful to give our AI agents context about your project. maxLength: 1000 created_at: type: string format: date-time readOnly: true effective_membership_level: allOf: - $ref: '#/components/schemas/EffectiveMembershipLevelEnum' nullable: true readOnly: true has_group_types: type: boolean readOnly: true group_types: type: array items: type: object additionalProperties: true readOnly: true live_events_token: type: string nullable: true readOnly: true updated_at: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true api_token: type: string readOnly: true app_urls: type: array items: type: string nullable: true maxLength: 200 anonymize_ips: type: boolean description: When true, PostHog drops the IP address from every ingested event. completed_snippet_onboarding: type: boolean ingested_event: type: boolean readOnly: true test_account_filters: description: Filter groups that identify internal/test traffic to be excluded from insights. test_account_filters_default_checked: type: boolean nullable: true description: When true, new insights default to excluding internal/test users. path_cleaning_filters: nullable: true description: Regex rewrite rules that collapse dynamic path segments (e.g. user IDs) before displaying URLs in paths. is_demo: type: boolean timezone: allOf: - $ref: '#/components/schemas/TimezoneEnum' description: 'IANA timezone used for date-based filters and reporting (e.g. `America/Los_Angeles`). * `Africa/Abidjan` - Africa/Abidjan * `Africa/Accra` - Africa/Accra * `Africa/Addis_Ababa` - Africa/Addis_Ababa * `Africa/Algiers` - Africa/Algiers * `Africa/Asmara` - Africa/Asmara * `Africa/Asmera` - Africa/Asmera * `Africa/Bamako` - Africa/Bamako * `Africa/Bangui` - Africa/Bangui * `Africa/Banjul` - Africa/Banjul * `Africa/Bissau` - Africa/Bissau * `Africa/Blantyre` - Africa/Blantyre * `Africa/Brazzaville` - Africa/Brazzaville * `Africa/Bujumbura` - Africa/Bujumbura * `Africa/Cairo` - Africa/Cairo * `Africa/Casablanca` - Africa/Casablanca * `Africa/Ceuta` - Africa/Ceuta * `Africa/Conakry` - Africa/Conakry * `Africa/Dakar` - Africa/Dakar * `Africa/Dar_es_Salaam` - Africa/Dar_es_Salaam * `Africa/Djibouti` - Africa/Djibouti * `Africa/Douala` - Africa/Douala * `Africa/El_Aaiun` - Africa/El_Aaiun * `Africa/Freetown` - Africa/Freetown * `Africa/Gaborone` - Africa/Gaborone * `Africa/Harare` - Africa/Harare * `Africa/Johannesburg` - Africa/Johannesburg * `Africa/Juba` - Africa/Juba * `Africa/Kampala` - Africa/Kampala * `Africa/Khartoum` - Africa/Khartoum * `Africa/Kigali` - Africa/Kigali * `Africa/Kinshasa` - Africa/Kinshasa * `Africa/Lagos` - Africa/Lagos * `Africa/Libreville` - Africa/Libreville * `Africa/Lome` - Africa/Lome * `Africa/Luanda` - Africa/Luanda * `Africa/Lubumbashi` - Africa/Lubumbashi * `Africa/Lusaka` - Africa/Lusaka * `Africa/Malabo` - Africa/Malabo * `Africa/Maputo` - Africa/Maputo * `Africa/Maseru` - Africa/Maseru * `Africa/Mbabane` - Africa/Mbabane * `Africa/Mogadishu` - Africa/Mogadishu * `Africa/Monrovia` - Africa/Monrovia * `Africa/Nairobi` - Africa/Nairobi * `Africa/Ndjamena` - Africa/Ndjamena * `Africa/Niamey` - Africa/Niamey * `Africa/Nouakchott` - Africa/Nouakchott * `Africa/Ouagadougou` - Africa/Ouagadougou * `Africa/Porto-Novo` - Africa/Porto-Novo * `Africa/Sao_Tome` - Africa/Sao_Tome * `Africa/Timbuktu` - Africa/Timbuktu * `Africa/Tripoli` - Africa/Tripoli * `Africa/Tunis` - Africa/Tunis * `Africa/Windhoek` - Africa/Windhoek * `America/Adak` - America/Adak * `America/Anchorage` - America/Anchorage * `America/Anguilla` - America/Anguilla * `America/Antigua` - America/Antigua * `America/Araguaina` - America/Araguaina * `America/Argentina/Buenos_Aires` - America/Argentina/Buenos_Aires * `America/Argentina/Catamarca` - America/Argentina/Catamarca * `America/Argentina/ComodRivadavia` - America/Argentina/ComodRivadavia * `America/Argentina/Cordoba` - America/Argentina/Cordoba * `America/Argentina/Jujuy` - America/Argentina/Jujuy * `America/Argentina/La_Rioja` - America/Argentina/La_Rioja * `America/Argentina/Mendoza` - America/Argentina/Mendoza * `America/Argentina/Rio_Gallegos` - America/Argentina/Rio_Gallegos * `America/Argentina/Salta` - America/Argentina/Salta * `America/Argentina/San_Juan` - America/Argentina/San_Juan * `America/Argentina/San_Luis` - America/Argentina/San_Luis * `America/Argentina/Tucuman` - America/Argentina/Tucuman * `America/Argentina/Ushuaia` - America/Argentina/Ushuaia * `America/Aruba` - America/Aruba * `America/Asuncion` - America/Asuncion * `America/Atikokan` - America/Atikokan * `America/Atka` - America/Atka * `America/Bahia` - America/Bahia * `America/Bahia_Banderas` - America/Bahia_Banderas * `America/Barbados` - America/Barbados * `America/Belem` - America/Belem * `America/Belize` - America/Belize * `America/Blanc-Sablon` - America/Blanc-Sablon * `America/Boa_Vista` - America/Boa_Vista * `America/Bogota` - America/Bogota * `America/Boise` - America/Boise * `America/Buenos_Aires` - America/Buenos_Aires * `America/Cambridge_Bay` - America/Cambridge_Bay * `America/Campo_Grande` - America/Campo_Grande * `America/Cancun` - America/Cancun * `America/Caracas` - America/Caracas * `America/Catamarca` - America/Catamarca * `America/Cayenne` - America/Cayenne * `America/Cayman` - America/Cayman * `America/Chicago` - America/Chicago * `America/Chihuahua` - America/Chihuahua * `America/Ciudad_Juarez` - America/Ciudad_Juarez * `America/Coral_Harbour` - America/Coral_Harbour * `America/Cordoba` - America/Cordoba * `America/Costa_Rica` - America/Costa_Rica * `America/Creston` - America/Creston * `America/Cuiaba` - America/Cuiaba * `America/Curacao` - America/Curacao * `America/Danmarkshavn` - America/Danmarkshavn * `America/Dawson` - America/Dawson * `America/Dawson_Creek` - America/Dawson_Creek * `America/Denver` - America/Denver * `America/Detroit` - America/Detroit * `America/Dominica` - America/Dominica * `America/Edmonton` - America/Edmonton * `America/Eirunepe` - America/Eirunepe * `America/El_Salvador` - America/El_Salvador * `America/Ensenada` - America/Ensenada * `America/Fort_Nelson` - America/Fort_Nelson * `America/Fort_Wayne` - America/Fort_Wayne * `America/Fortaleza` - America/Fortaleza * `America/Glace_Bay` - America/Glace_Bay * `America/Godthab` - America/Godthab * `America/Goose_Bay` - America/Goose_Bay * `America/Grand_Turk` - America/Grand_Turk * `America/Grenada` - America/Grenada * `America/Guadeloupe` - America/Guadeloupe * `America/Guatemala` - America/Guatemala * `America/Guayaquil` - America/Guayaquil * `America/Guyana` - America/Guyana * `America/Halifax` - America/Halifax * `America/Havana` - America/Havana * `America/Hermosillo` - America/Hermosillo * `America/Indiana/Indianapolis` - America/Indiana/Indianapolis * `America/Indiana/Knox` - America/Indiana/Knox * `America/Indiana/Marengo` - America/Indiana/Marengo * `America/Indiana/Petersburg` - America/Indiana/Petersburg * `America/Indiana/Tell_City` - America/Indiana/Tell_City * `America/Indiana/Vevay` - America/Indiana/Vevay * `America/Indiana/Vincennes` - America/Indiana/Vincennes * `America/Indiana/Winamac` - America/Indiana/Winamac * `America/Indianapolis` - America/Indianapolis * `America/Inuvik` - America/Inuvik * `America/Iqaluit` - America/Iqaluit * `America/Jamaica` - America/Jamaica * `America/Jujuy` - America/Jujuy * `America/Juneau` - America/Juneau * `America/Kentucky/Louisville` - America/Kentucky/Louisville * `America/Kentucky/Monticello` - America/Kentucky/Monticello * `America/Knox_IN` - America/Knox_IN * `America/Kralendijk` - America/Kralendijk * `America/La_Paz` - America/La_Paz * `America/Lima` - America/Lima * `America/Los_Angeles` - America/Los_Angeles * `America/Louisville` - America/Louisville * `America/Lower_Princes` - America/Lower_Princes * `America/Maceio` - America/Maceio * `America/Managua` - America/Managua * `America/Manaus` - America/Manaus * `America/Marigot` - America/Marigot * `America/Martinique` - America/Martinique * `America/Matamoros` - America/Matamoros * `America/Mazatlan` - America/Mazatlan * `America/Mendoza` - America/Mendoza * `America/Menominee` - America/Menominee * `America/Merida` - America/Merida * `America/Metlakatla` - America/Metlakatla * `America/Mexico_City` - America/Mexico_City * `America/Miquelon` - America/Miquelon * `America/Moncton` - America/Moncton * `America/Monterrey` - America/Monterrey * `America/Montevideo` - America/Montevideo * `America/Montreal` - America/Montreal * `America/Montserrat` - America/Montserrat * `America/Nassau` - America/Nassau * `America/New_York` - America/New_York * `America/Nipigon` - America/Nipigon * `America/Nome` - America/Nome * `America/Noronha` - America/Noronha * `America/North_Dakota/Beulah` - America/North_Dakota/Beulah * `America/North_Dakota/Center` - America/North_Dakota/Center * `America/North_Dakota/New_Salem` - America/North_Dakota/New_Salem * `America/Nuuk` - America/Nuuk * `America/Ojinaga` - America/Ojinaga * `America/Panama` - America/Panama * `America/Pangnirtung` - America/Pangnirtung * `America/Paramaribo` - America/Paramaribo * `America/Phoenix` - America/Phoenix * `America/Port-au-Prince` - America/Port-au-Prince * `America/Port_of_Spain` - America/Port_of_Spain * `America/Porto_Acre` - America/Porto_Acre * `America/Porto_Velho` - America/Porto_Velho * `America/Puerto_Rico` - America/Puerto_Rico * `America/Punta_Arenas` - America/Punta_Arenas * `America/Rainy_River` - America/Rainy_River * `America/Rankin_Inlet` - America/Rankin_Inlet * `America/Recife` - America/Recife * `America/Regina` - America/Regina * `America/Resolute` - America/Resolute * `America/Rio_Branco` - America/Rio_Branco * `America/Rosario` - America/Rosario * `America/Santa_Isabel` - America/Santa_Isabel * `America/Santarem` - America/Santarem * `America/Santiago` - America/Santiago * `America/Santo_Domingo` - America/Santo_Domingo * `America/Sao_Paulo` - America/Sao_Paulo * `America/Scoresbysund` - America/Scoresbysund * `America/Shiprock` - America/Shiprock * `America/Sitka` - America/Sitka * `America/St_Barthelemy` - America/St_Barthelemy * `America/St_Johns` - America/St_Johns * `America/St_Kitts` - America/St_Kitts * `America/St_Lucia` - America/St_Lucia * `America/St_Thomas` - America/St_Thomas * `America/St_Vincent` - America/St_Vincent * `America/Swift_Current` - America/Swift_Current * `America/Tegucigalpa` - America/Tegucigalpa * `America/Thule` - America/Thule * `America/Thunder_Bay` - America/Thunder_Bay * `America/Tijuana` - America/Tijuana * `America/Toronto` - America/Toronto * `America/Tortola` - America/Tortola * `America/Vancouver` - America/Vancouver * `America/Virgin` - America/Virgin * `America/Whitehorse` - America/Whitehorse * `America/Winnipeg` - America/Winnipeg * `America/Yakutat` - America/Yakutat * `America/Yellowknife` - America/Yellowknife * `Antarctica/Casey` - Antarctica/Casey * `Antarctica/Davis` - Antarctica/Davis * `Antarctica/DumontDUrville` - Antarctica/DumontDUrville * `Antarctica/Macquarie` - Antarctica/Macquarie * `Antarctica/Mawson` - Antarctica/Mawson * `Antarctica/McMurdo` - Antarctica/McMurdo * `Antarctica/Palmer` - Antarctica/Palmer * `Antarctica/Rothera` - Antarctica/Rothera * `Antarctica/South_Pole` - Antarctica/South_Pole * `Antarctica/Syowa` - Antarctica/Syowa * `Antarctica/Troll` - Antarctica/Troll * `Antarctica/Vostok` - Antarctica/Vostok * `Arctic/Longyearbyen` - Arctic/Longyearbyen * `Asia/Aden` - Asia/Aden * `Asia/Almaty` - Asia/Almaty * `Asia/Amman` - Asia/Amman * `Asia/Anadyr` - Asia/Anadyr * `Asia/Aqtau` - Asia/Aqtau * `Asia/Aqtobe` - Asia/Aqtobe * `Asia/Ashgabat` - Asia/Ashgabat * `Asia/Ashkhabad` - Asia/Ashkhabad * `Asia/Atyrau` - Asia/Atyrau * `Asia/Baghdad` - Asia/Baghdad * `Asia/Bahrain` - Asia/Bahrain * `Asia/Baku` - Asia/Baku * `Asia/Bangkok` - Asia/Bangkok * `Asia/Barnaul` - Asia/Barnaul * `Asia/Beirut` - Asia/Beirut * `Asia/Bishkek` - Asia/Bishkek * `Asia/Brunei` - Asia/Brunei * `Asia/Calcutta` - Asia/Calcutta * `Asia/Chita` - Asia/Chita * `Asia/Choibalsan` - Asia/Choibalsan * `Asia/Chongqing` - Asia/Chongqing * `Asia/Chungking` - Asia/Chungking * `Asia/Colombo` - Asia/Colombo * `Asia/Dacca` - Asia/Dacca * `Asia/Damascus` - Asia/Damascus * `Asia/Dhaka` - Asia/Dhaka * `Asia/Dili` - Asia/Dili * `Asia/Dubai` - Asia/Dubai * `Asia/Dushanbe` - Asia/Dushanbe * `Asia/Famagusta` - Asia/Famagusta * `Asia/Gaza` - Asia/Gaza * `Asia/Harbin` - Asia/Harbin * `Asia/Hebron` - Asia/Hebron * `Asia/Ho_Chi_Minh` - Asia/Ho_Chi_Minh * `Asia/Hong_Kong` - Asia/Hong_Kong * `Asia/Hovd` - Asia/Hovd * `Asia/Irkutsk` - Asia/Irkutsk * `Asia/Istanbul` - Asia/Istanbul * `Asia/Jakarta` - Asia/Jakarta * `Asia/Jayapura` - Asia/Jayapura * `Asia/Jerusalem` - Asia/Jerusalem * `Asia/Kabul` - Asia/Kabul * `Asia/Kamchatka` - Asia/Kamchatka * `Asia/Karachi` - Asia/Karachi * `Asia/Kashgar` - Asia/Kashgar * `Asia/Kathmandu` - Asia/Kathmandu * `Asia/Katmandu` - Asia/Katmandu * `Asia/Khandyga` - Asia/Khandyga * `Asia/Kolkata` - Asia/Kolkata * `Asia/Krasnoyarsk` - Asia/Krasnoyarsk * `Asia/Kuala_Lumpur` - Asia/Kuala_Lumpur * `Asia/Kuching` - Asia/Kuching * `Asia/Kuwait` - Asia/Kuwait * `Asia/Macao` - Asia/Macao * `Asia/Macau` - Asia/Macau * `Asia/Magadan` - Asia/Magadan * `Asia/Makassar` - Asia/Makassar * `Asia/Manila` - Asia/Manila * `Asia/Muscat` - Asia/Muscat * `Asia/Nicosia` - Asia/Nicosia * `Asia/Novokuznetsk` - Asia/Novokuznetsk * `Asia/Novosibirsk` - Asia/Novosibirsk * `Asia/Omsk` - Asia/Omsk * `Asia/Oral` - Asia/Oral * `Asia/Phnom_Penh` - Asia/Phnom_Penh * `Asia/Pontianak` - Asia/Pontianak * `Asia/Pyongyang` - Asia/Pyongyang * `Asia/Qatar` - Asia/Qatar * `Asia/Qostanay` - Asia/Qostanay * `Asia/Qyzylorda` - Asia/Qyzylorda * `Asia/Rangoon` - Asia/Rangoon * `Asia/Riyadh` - Asia/Riyadh * `Asia/Saigon` - Asia/Saigon * `Asia/Sakhalin` - Asia/Sakhalin * `Asia/Samarkand` - Asia/Samarkand * `Asia/Seoul` - Asia/Seoul * `Asia/Shanghai` - Asia/Shanghai * `Asia/Singapore` - Asia/Singapore * `Asia/Srednekolymsk` - Asia/Srednekolymsk * `Asia/Taipei` - Asia/Taipei * `Asia/Tashkent` - Asia/Tashkent * `Asia/Tbilisi` - Asia/Tbilisi * `Asia/Tehran` - Asia/Tehran * `Asia/Tel_Aviv` - Asia/Tel_Aviv * `Asia/Thimbu` - Asia/Thimbu * `Asia/Thimphu` - Asia/Thimphu * `Asia/Tokyo` - Asia/Tokyo * `Asia/Tomsk` - Asia/Tomsk * `Asia/Ujung_Pandang` - Asia/Ujung_Pandang * `Asia/Ulaanbaatar` - Asia/Ulaanbaatar * `Asia/Ulan_Bator` - Asia/Ulan_Bator * `Asia/Urumqi` - Asia/Urumqi * `Asia/Ust-Nera` - Asia/Ust-Nera * `Asia/Vientiane` - Asia/Vientiane * `Asia/Vladivostok` - Asia/Vladivostok * `Asia/Yakutsk` - Asia/Yakutsk * `Asia/Yangon` - Asia/Yangon * `Asia/Yekaterinburg` - Asia/Yekaterinburg * `Asia/Yerevan` - Asia/Yerevan * `Atlantic/Azores` - Atlantic/Azores * `Atlantic/Bermuda` - Atlantic/Bermuda * `Atlantic/Canary` - Atlantic/Canary * `Atlantic/Cape_Verde` - Atlantic/Cape_Verde * `Atlantic/Faeroe` - Atlantic/Faeroe * `Atlantic/Faroe` - Atlantic/Faroe * `Atlantic/Jan_Mayen` - Atlantic/Jan_Mayen * `Atlantic/Madeira` - Atlantic/Madeira * `Atlantic/Reykjavik` - Atlantic/Reykjavik * `Atlantic/South_Georgia` - Atlantic/South_Georgia * `Atlantic/St_Helena` - Atlantic/St_Helena * `Atlantic/Stanley` - Atlantic/Stanley * `Australia/ACT` - Australia/ACT * `Australia/Adelaide` - Australia/Adelaide * `Australia/Brisbane` - Australia/Brisbane * `Australia/Broken_Hill` - Australia/Broken_Hill * `Australia/Canberra` - Australia/Canberra * `Australia/Currie` - Australia/Currie * `Australia/Darwin` - Australia/Darwin * `Australia/Eucla` - Australia/Eucla * `Australia/Hobart` - Australia/Hobart * `Australia/LHI` - Australia/LHI * `Australia/Lindeman` - Australia/Lindeman * `Australia/Lord_Howe` - Australia/Lord_Howe * `Australia/Melbourne` - Australia/Melbourne * `Australia/NSW` - Australia/NSW * `Australia/North` - Australia/North * `Australia/Perth` - Australia/Perth * `Australia/Queensland` - Australia/Queensland * `Australia/South` - Australia/South * `Australia/Sydney` - Australia/Sydney * `Australia/Tasmania` - Australia/Tasmania * `Australia/Victoria` - Australia/Victoria * `Australia/West` - Australia/West * `Australia/Yancowinna` - Australia/Yancowinna * `Brazil/Acre` - Brazil/Acre * `Brazil/DeNoronha` - Brazil/DeNoronha * `Brazil/East` - Brazil/East * `Brazil/West` - Brazil/West * `CET` - CET * `CST6CDT` - CST6CDT * `Canada/Atlantic` - Canada/Atlantic * `Canada/Central` - Canada/Central * `Canada/Eastern` - Canada/Eastern * `Canada/Mountain` - Canada/Mountain * `Canada/Newfoundland` - Canada/Newfoundland * `Canada/Pacific` - Canada/Pacific * `Canada/Saskatchewan` - Canada/Saskatchewan * `Canada/Yukon` - Canada/Yukon * `Chile/Continental` - Chile/Continental * `Chile/EasterIsland` - Chile/EasterIsland * `Cuba` - Cuba * `EET` - EET * `EST` - EST * `EST5EDT` - EST5EDT * `Egypt` - Egypt * `Eire` - Eire * `Etc/GMT` - Etc/GMT * `Etc/GMT+0` - Etc/GMT+0 * `Etc/GMT+1` - Etc/GMT+1 * `Etc/GMT+10` - Etc/GMT+10 * `Etc/GMT+11` - Etc/GMT+11 * `Etc/GMT+12` - Etc/GMT+12 * `Etc/GMT+2` - Etc/GMT+2 * `Etc/GMT+3` - Etc/GMT+3 * `Etc/GMT+4` - Etc/GMT+4 * `Etc/GMT+5` - Etc/GMT+5 * `Etc/GMT+6` - Etc/GMT+6 * `Etc/GMT+7` - Etc/GMT+7 * `Etc/GMT+8` - Etc/GMT+8 * `Etc/GMT+9` - Etc/GMT+9 * `Etc/GMT-0` - Etc/GMT-0 * `Etc/GMT-1` - Etc/GMT-1 * `Etc/GMT-10` - Etc/GMT-10 * `Etc/GMT-11` - Etc/GMT-11 * `Etc/GMT-12` - Etc/GMT-12 * `Etc/GMT-13` - Etc/GMT-13 * `Etc/GMT-14` - Etc/GMT-14 * `Etc/GMT-2` - Etc/GMT-2 * `Etc/GMT-3` - Etc/GMT-3 * `Etc/GMT-4` - Etc/GMT-4 * `Etc/GMT-5` - Etc/GMT-5 * `Etc/GMT-6` - Etc/GMT-6 * `Etc/GMT-7` - Etc/GMT-7 * `Etc/GMT-8` - Etc/GMT-8 * `Etc/GMT-9` - Etc/GMT-9 * `Etc/GMT0` - Etc/GMT0 * `Etc/Greenwich` - Etc/Greenwich * `Etc/UCT` - Etc/UCT * `Etc/UTC` - Etc/UTC * `Etc/Universal` - Etc/Universal * `Etc/Zulu` - Etc/Zulu * `Europe/Amsterdam` - Europe/Amsterdam * `Europe/Andorra` - Europe/Andorra * `Europe/Astrakhan` - Europe/Astrakhan * `Europe/Athens` - Europe/Athens * `Europe/Belfast` - Europe/Belfast * `Europe/Belgrade` - Europe/Belgrade * `Europe/Berlin` - Europe/Berlin * `Europe/Bratislava` - Europe/Bratislava * `Europe/Brussels` - Europe/Brussels * `Europe/Bucharest` - Europe/Bucharest * `Europe/Budapest` - Europe/Budapest * `Europe/Busingen` - Europe/Busingen * `Europe/Chisinau` - Europe/Chisinau * `Europe/Copenhagen` - Europe/Copenhagen * `Europe/Dublin` - Europe/Dublin * `Europe/Gibraltar` - Europe/Gibraltar * `Europe/Guernsey` - Europe/Guernsey * `Europe/Helsinki` - Europe/Helsinki * `Europe/Isle_of_Man` - Europe/Isle_of_Man * `Europe/Istanbul` - Europe/Istanbul * `Europe/Jersey` - Europe/Jersey * `Europe/Kaliningrad` - Europe/Kaliningrad * `Europe/Kiev` - Europe/Kiev * `Europe/Kirov` - Europe/Kirov * `Europe/Kyiv` - Europe/Kyiv * `Europe/Lisbon` - Europe/Lisbon * `Europe/Ljubljana` - Europe/Ljubljana * `Europe/London` - Europe/London * `Europe/Luxembourg` - Europe/Luxembourg * `Europe/Madrid` - Europe/Madrid * `Europe/Malta` - Europe/Malta * `Europe/Mariehamn` - Europe/Mariehamn * `Europe/Minsk` - Europe/Minsk * `Europe/Monaco` - Europe/Monaco * `Europe/Moscow` - Europe/Moscow * `Europe/Nicosia` - Europe/Nicosia * `Europe/Oslo` - Europe/Oslo * `Europe/Paris` - Europe/Paris * `Europe/Podgorica` - Europe/Podgorica * `Europe/Prague` - Europe/Prague * `Europe/Riga` - Europe/Riga * `Europe/Rome` - Europe/Rome * `Europe/Samara` - Europe/Samara * `Europe/San_Marino` - Europe/San_Marino * `Europe/Sarajevo` - Europe/Sarajevo * `Europe/Saratov` - Europe/Saratov * `Europe/Simferopol` - Europe/Simferopol * `Europe/Skopje` - Europe/Skopje * `Europe/Sofia` - Europe/Sofia * `Europe/Stockholm` - Europe/Stockholm * `Europe/Tallinn` - Europe/Tallinn * `Europe/Tirane` - Europe/Tirane * `Europe/Tiraspol` - Europe/Tiraspol * `Europe/Ulyanovsk` - Europe/Ulyanovsk * `Europe/Uzhgorod` - Europe/Uzhgorod * `Europe/Vaduz` - Europe/Vaduz * `Europe/Vatican` - Europe/Vatican * `Europe/Vienna` - Europe/Vienna * `Europe/Vilnius` - Europe/Vilnius * `Europe/Volgograd` - Europe/Volgograd * `Europe/Warsaw` - Europe/Warsaw * `Europe/Zagreb` - Europe/Zagreb * `Europe/Zaporozhye` - Europe/Zaporozhye * `Europe/Zurich` - Europe/Zurich * `GB` - GB * `GB-Eire` - GB-Eire * `GMT` - GMT * `GMT+0` - GMT+0 * `GMT-0` - GMT-0 * `GMT0` - GMT0 * `Greenwich` - Greenwich * `HST` - HST * `Hongkong` - Hongkong * `Iceland` - Iceland * `Indian/Antananarivo` - Indian/Antananarivo * `Indian/Chagos` - Indian/Chagos * `Indian/Christmas` - Indian/Christmas * `Indian/Cocos` - Indian/Cocos * `Indian/Comoro` - Indian/Comoro * `Indian/Kerguelen` - Indian/Kerguelen * `Indian/Mahe` - Indian/Mahe * `Indian/Maldives` - Indian/Maldives * `Indian/Mauritius` - Indian/Mauritius * `Indian/Mayotte` - Indian/Mayotte * `Indian/Reunion` - Indian/Reunion * `Iran` - Iran * `Israel` - Israel * `Jamaica` - Jamaica * `Japan` - Japan * `Kwajalein` - Kwajalein * `Libya` - Libya * `MET` - MET * `MST` - MST * `MST7MDT` - MST7MDT * `Mexico/BajaNorte` - Mexico/BajaNorte * `Mexico/BajaSur` - Mexico/BajaSur * `Mexico/General` - Mexico/General * `NZ` - NZ * `NZ-CHAT` - NZ-CHAT * `Navajo` - Navajo * `PRC` - PRC * `PST8PDT` - PST8PDT * `Pacific/Apia` - Pacific/Apia * `Pacific/Auckland` - Pacific/Auckland * `Pacific/Bougainville` - Pacific/Bougainville * `Pacific/Chatham` - Pacific/Chatham * `Pacific/Chuuk` - Pacific/Chuuk * `Pacific/Easter` - Pacific/Easter * `Pacific/Efate` - Pacific/Efate * `Pacific/Enderbury` - Pacific/Enderbury * `Pacific/Fakaofo` - Pacific/Fakaofo * `Pacific/Fiji` - Pacific/Fiji * `Pacific/Funafuti` - Pacific/Funafuti * `Pacific/Galapagos` - Pacific/Galapagos * `Pacific/Gambier` - Pacific/Gambier * `Pacific/Guadalcanal` - Pacific/Guadalcanal * `Pacific/Guam` - Pacific/Guam * `Pacific/Honolulu` - Pacific/Honolulu * `Pacific/Johnston` - Pacific/Johnston * `Pacific/Kanton` - Pacific/Kanton * `Pacific/Kiritimati` - Pacific/Kiritimati * `Pacific/Kosrae` - Pacific/Kosrae * `Pacific/Kwajalein` - Pacific/Kwajalein * `Pacific/Majuro` - Pacific/Majuro * `Pacific/Marquesas` - Pacific/Marquesas * `Pacific/Midway` - Pacific/Midway * `Pacific/Nauru` - Pacific/Nauru * `Pacific/Niue` - Pacific/Niue * `Pacific/Norfolk` - Pacific/Norfolk * `Pacific/Noumea` - Pacific/Noumea * `Pacific/Pago_Pago` - Pacific/Pago_Pago * `Pacific/Palau` - Pacific/Palau * `Pacific/Pitcairn` - Pacific/Pitcairn * `Pacific/Pohnpei` - Pacific/Pohnpei * `Pacific/Ponape` - Pacific/Ponape * `Pacific/Port_Moresby` - Pacific/Port_Moresby * `Pacific/Rarotonga` - Pacific/Rarotonga * `Pacific/Saipan` - Pacific/Saipan * `Pacific/Samoa` - Pacific/Samoa * `Pacific/Tahiti` - Pacific/Tahiti * `Pacific/Tarawa` - Pacific/Tarawa * `Pacific/Tongatapu` - Pacific/Tongatapu * `Pacific/Truk` - Pacific/Truk * `Pacific/Wake` - Pacific/Wake * `Pacific/Wallis` - Pacific/Wallis * `Pacific/Yap` - Pacific/Yap * `Poland` - Poland * `Portugal` - Portugal * `ROC` - ROC * `ROK` - ROK * `Singapore` - Singapore * `Turkey` - Turkey * `UCT` - UCT * `US/Alaska` - US/Alaska * `US/Aleutian` - US/Aleutian * `US/Arizona` - US/Arizona * `US/Central` - US/Central * `US/East-Indiana` - US/East-Indiana * `US/Eastern` - US/Eastern * `US/Hawaii` - US/Hawaii * `US/Indiana-Starke` - US/Indiana-Starke * `US/Michigan` - US/Michigan * `US/Mountain` - US/Mountain * `US/Pacific` - US/Pacific * `US/Samoa` - US/Samoa * `UTC` - UTC * `Universal` - Universal * `W-SU` - W-SU * `WET` - WET * `Zulu` - Zulu' data_attributes: description: Element attributes that posthog-js should capture as action identifiers (e.g. `['data-attr']`). person_display_name_properties: type: array items: type: string maxLength: 400 nullable: true description: Ordered list of person properties used to render a human-friendly display name in the UI. correlation_config: nullable: true autocapture_opt_out: type: boolean nullable: true description: Disables posthog-js autocapture (clicks, page views) when true. autocapture_exceptions_opt_in: type: boolean nullable: true description: Enables automatic capture of JavaScript exceptions via the SDK. autocapture_web_vitals_opt_in: type: boolean nullable: true description: Enables automatic capture of Core Web Vitals performance metrics. autocapture_web_vitals_allowed_metrics: nullable: true autocapture_exceptions_errors_to_ignore: nullable: true capture_console_log_opt_in: type: boolean nullable: true description: Enables capturing browser console logs alongside session replays. capture_performance_opt_in: type: boolean nullable: true description: Enables capturing performance timing and network requests. session_recording_opt_in: type: boolean description: Enables session replay recording for this project. session_recording_sample_rate: type: string format: decimal pattern: ^-?\d{0,1}(?:\.\d{0,2})?$ nullable: true description: Fraction of sessions to record, as a decimal string between `0.00` and `1.00` (e.g. `0.1` = 10%). session_recording_minimum_duration_milliseconds: type: integer maximum: 30000 minimum: 0 nullable: true description: Skip saving sessions shorter than this many milliseconds. session_recording_linked_flag: nullable: true session_recording_network_payload_capture_config: nullable: true session_recording_masking_config: nullable: true session_recording_url_trigger_config: type: array items: nullable: true nullable: true session_recording_url_blocklist_config: type: array items: nullable: true nullable: true session_recording_event_trigger_config: type: array items: type: string nullable: true nullable: true session_recording_trigger_match_type_config: type: string nullable: true maxLength: 24 session_recording_trigger_groups: nullable: true description: V2 trigger groups configuration for session recording. If present, takes precedence over legacy trigger fields. session_recording_retention_period: allOf: - $ref: '#/components/schemas/SessionRecordingRetentionPeriodEnum' description: 'How long to retain new session recordings. One of `30d`, `90d`, `1y`, or `5y` (availability depends on plan). * `30d` - 30 Days * `90d` - 90 Days * `1y` - 1 Year * `5y` - 5 Years' session_replay_config: nullable: true survey_config: nullable: true access_control: type: boolean week_start_day: nullable: true description: 'First day of the week for date range filters. 0 = Sunday, 1 = Monday. * `0` - Sunday * `1` - Monday' oneOf: - $ref: '#/components/schemas/WeekStartDayEnum' - $ref: '#/components/schemas/NullEnum' primary_dashboard: type: integer nullable: true description: ID of the dashboard shown as the project's default landing dashboard. live_events_columns: type: array items: type: string nullable: true recording_domains: type: array items: type: string nullable: true maxLength: 200 nullable: true description: Origins permitted to record session replays and heatmaps. Empty list allows all origins. person_on_events_querying_enabled: type: boolean readOnly: true inject_web_apps: type: boolean nullable: true extra_settings: nullable: true modifiers: nullable: true default_modifiers: type: object additionalProperties: true readOnly: true has_completed_onboarding_for: nullable: true surveys_opt_in: type: boolean nullable: true description: Enables displaying surveys via posthog-js on allowed origins. heatmaps_opt_in: type: boolean nullable: true description: Enables heatmap recording on pages that host posthog-js. product_intents: type: array items: type: object properties: product_type: type: string created_at: type: string format: date-time onboarding_completed_at: type: string format: date-time nullable: true updated_at: type: string format: date-time readOnly: true flags_persistence_default: type: boolean nullable: true description: Default value for the `persist` option on newly created feature flags. secret_api_token: type: string readOnly: true nullable: true secret_api_token_backup: type: string readOnly: true nullable: true receive_org_level_activity_logs: type: boolean nullable: true business_model: nullable: true description: 'Whether this project serves B2B or B2C customers. Used to optimize default UI layouts. * `b2b` - B2B * `b2c` - B2C * `other` - Other' oneOf: - $ref: '#/components/schemas/BusinessModelEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' conversations_enabled: type: boolean nullable: true description: Enables the customer conversations / live chat product for this project. conversations_settings: nullable: true logs_settings: nullable: true proactive_tasks_enabled: type: boolean nullable: true available_setup_task_ids: type: array items: $ref: '#/components/schemas/AvailableSetupTaskIdsEnum' readOnly: true PaginatedOrganizationDomainList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/OrganizationDomain' CohortFilter: additionalProperties: false properties: bytecode: default: null title: Bytecode items: {} type: array nullable: true bytecode_error: default: null title: Bytecode Error type: string nullable: true conditionHash: default: null title: Conditionhash type: string nullable: true type: title: Type type: string enum: - cohort key: title: Key type: string enum: - id value: title: Value type: integer negation: default: false title: Negation type: boolean required: - type - key - value title: CohortFilter type: object parameters: ProjectIdPath: in: path name: project_id required: true schema: type: string description: Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. OrganizationIdPath: in: path name: organization_id required: true schema: type: string description: ID of the organization you're trying to access. To find the ID of the organization, make a call to /api/organizations/. EnvironmentIdPath: in: path name: environment_id required: true schema: type: string description: Deprecated. Use /api/projects/{project_id}/ instead. securitySchemes: PersonalAPIKeyAuth: type: http scheme: bearer x-tagGroups: - name: All endpoints tags: - LLM Analytics - actions - activity_log - activity_logs - advanced_activity_logs - alerts - annotations - approval_policies - batch_exports - cdp - change_requests - code - code-invites - cohorts - comments - conversations - core - customer_analytics - customer_journeys - customer_profile_configs - dashboard_templates - dashboards - data_color_themes - data_modeling_jobs - data_warehouse - dataset_items - datasets - desktop_recordings - domains - early_access_feature - early_access_features - elements - endpoints - environments - error_tracking - evaluation_runs - evaluations - event_definitions - event_filter - event_schemas - events - experiment_holdouts - experiment_saved_metrics - experiments - exports - external_data_schemas - external_data_sources - feature_flags - file_system - file_system_shortcut - flag_value - groups - groups_types - health_issues - heatmap_screenshots - heatmaps - hog_flows - hog_function_templates - hog_functions - insight_variables - insights - integrations - invites - js-snippet - legal_documents - lineage - live_debugger_breakpoints - llm_analytics - llm_prompts - llm_skills - logs - managed_viewsets - max - max_tools - mcp_server_installations - mcp_servers - mcp_store - mcp_tools - members - notebooks - oauth_applications - object_media_previews - organizations - persisted_folder - persons - platform_features - plugin_configs - product_analytics - product_tours - project_secret_api_keys - projects - property_definitions - proxy_records - public_hog_function_templates - query - replay - reverse_proxy - role_external_references - roles - sandbox-environments - sandbox_environments - saved - schema_property_groups - sdk_doctor - session_group_summaries - session_recording_playlists - session_recordings - session_summaries - sessions - signals - subscriptions - surveys - taggers - task-automations - task-runs - task_automations - tasks - uploaded_media - user_home_settings - user_interviews - users - visual_review - warehouse_dag - warehouse_model_paths - warehouse_saved_queries - warehouse_saved_query_folders - warehouse_tables - warehouse_view_link - warehouse_view_links - web_analytics - web_experiments - web_vitals - welcome - workflows