naftiko: 1.0.0-alpha2 info: label: PostHog API — hog_flows description: 'PostHog API — hog_flows. 42 operations. Lead operation: hog_flows. Self-contained Naftiko capability covering one Posthog business surface.' tags: - Posthog - hog_flows created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POSTHOG_API_KEY: POSTHOG_API_KEY capability: consumes: - type: http namespace: posthog-hog-flows baseUri: '' description: PostHog API — hog_flows business capability. Self-contained, no shared references. resources: - name: api-environments-environment_id-hog_flows path: /api/environments/{environment_id}/hog_flows/ operations: - name: environmentshogflowslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: environmentshogflowscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-bulk_delete path: /api/environments/{environment_id}/hog_flows/bulk_delete/ operations: - name: environmentshogflowsbulkdeletecreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-user_blast_radius path: /api/environments/{environment_id}/hog_flows/user_blast_radius/ operations: - name: environmentshogflowsuserblastradiuscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id path: /api/environments/{environment_id}/hog_flows/{id}/ operations: - name: environmentshogflowsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: environmentshogflowsupdate method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: environmentshogflowspartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: environmentshogflowsdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: api-environments-environment_id-hog_flows-id-batch_jobs path: /api/environments/{environment_id}/hog_flows/{id}/batch_jobs/ operations: - name: environmentshogflowsbatchjobsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: environmentshogflowsbatchjobscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id-blocked_runs path: /api/environments/{environment_id}/hog_flows/{id}/blocked_runs/ operations: - name: environmentshogflowsblockedrunsretrieve method: GET description: List workflow runs that were blocked by the dedup bug. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: api-environments-environment_id-hog_flows-id-invocations path: /api/environments/{environment_id}/hog_flows/{id}/invocations/ operations: - name: environmentshogflowsinvocationscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id-logs path: /api/environments/{environment_id}/hog_flows/{id}/logs/ operations: - name: environmentshogflowslogsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Only return entries after this ISO 8601 timestamp. - name: before in: query type: string description: Only return entries before this ISO 8601 timestamp. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter logs to a specific execution instance. - name: level in: query type: string description: 'Comma-separated log levels to include, e.g. ''WARN,ERROR''. Valid levels: DEBUG, LOG, INFO, WARN, ERROR.' - name: limit in: query type: integer description: Maximum number of log entries to return (1-500, default 50). - name: search in: query type: string description: Case-insensitive substring search across log messages. - name: api-environments-environment_id-hog_flows-id-metrics path: /api/environments/{environment_id}/hog_flows/{id}/metrics/ operations: - name: environmentshogflowsmetricsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Start of the time range. Accepts relative formats like '-7d', '-24h' or ISO 8601 timestamps. Defaults to '-7d'. - name: before in: query type: string description: End of the time range. Same format as 'after'. Defaults to now. - name: breakdown_by in: query type: string description: Group the series by metric 'name' or 'kind'. Defaults to 'kind'. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter metrics to a specific execution instance. - name: interval in: query type: string description: 'Time bucket size for the series. One of: hour, day, week. Defaults to ''day''.' - name: kind in: query type: string description: Comma-separated metric kinds to filter by, e.g. 'success,failure'. - name: name in: query type: string description: Comma-separated metric names to filter by. - name: api-environments-environment_id-hog_flows-id-metrics-totals path: /api/environments/{environment_id}/hog_flows/{id}/metrics/totals/ operations: - name: environmentshogflowsmetricstotalsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Start of the time range. Accepts relative formats like '-7d', '-24h' or ISO 8601 timestamps. Defaults to '-7d'. - name: before in: query type: string description: End of the time range. Same format as 'after'. Defaults to now. - name: breakdown_by in: query type: string description: Group the series by metric 'name' or 'kind'. Defaults to 'kind'. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter metrics to a specific execution instance. - name: interval in: query type: string description: 'Time bucket size for the series. One of: hour, day, week. Defaults to ''day''.' - name: kind in: query type: string description: Comma-separated metric kinds to filter by, e.g. 'success,failure'. - name: name in: query type: string description: Comma-separated metric names to filter by. - name: api-environments-environment_id-hog_flows-id-replay_all_blocked_runs path: /api/environments/{environment_id}/hog_flows/{id}/replay_all_blocked_runs/ operations: - name: environmentshogflowsreplayallblockedrunscreate method: POST description: Replay all blocked runs in a single bulk call to Node. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id-replay_blocked_run path: /api/environments/{environment_id}/hog_flows/{id}/replay_blocked_run/ operations: - name: environmentshogflowsreplayblockedruncreate method: POST description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id-schedules path: /api/environments/{environment_id}/hog_flows/{id}/schedules/ operations: - name: environmentshogflowsscheduleslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: environmentshogflowsschedulescreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: body in: body type: object description: Request body (JSON). required: true - name: api-environments-environment_id-hog_flows-id-schedules-schedule_id path: /api/environments/{environment_id}/hog_flows/{id}/schedules/{schedule_id}/ operations: - name: environmentshogflowsschedulespartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: schedule_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: environmentshogflowsschedulesdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: schedule_id in: path type: string required: true - name: api-projects-project_id-hog_flows path: /api/projects/{project_id}/hog_flows/ operations: - name: hogflowslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: hogflowscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-bulk_delete path: /api/projects/{project_id}/hog_flows/bulk_delete/ operations: - name: hogflowsbulkdeletecreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-user_blast_radius path: /api/projects/{project_id}/hog_flows/user_blast_radius/ operations: - name: hogflowsuserblastradiuscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id path: /api/projects/{project_id}/hog_flows/{id}/ operations: - name: hogflowsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: hogflowsupdate method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: hogflowspartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: hogflowsdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: api-projects-project_id-hog_flows-id-batch_jobs path: /api/projects/{project_id}/hog_flows/{id}/batch_jobs/ operations: - name: hogflowsbatchjobsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: hogflowsbatchjobscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id-blocked_runs path: /api/projects/{project_id}/hog_flows/{id}/blocked_runs/ operations: - name: hogflowsblockedrunsretrieve method: GET description: List workflow runs that were blocked by the dedup bug. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: api-projects-project_id-hog_flows-id-invocations path: /api/projects/{project_id}/hog_flows/{id}/invocations/ operations: - name: hogflowsinvocationscreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id-logs path: /api/projects/{project_id}/hog_flows/{id}/logs/ operations: - name: hogflowslogsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Only return entries after this ISO 8601 timestamp. - name: before in: query type: string description: Only return entries before this ISO 8601 timestamp. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter logs to a specific execution instance. - name: level in: query type: string description: 'Comma-separated log levels to include, e.g. ''WARN,ERROR''. Valid levels: DEBUG, LOG, INFO, WARN, ERROR.' - name: limit in: query type: integer description: Maximum number of log entries to return (1-500, default 50). - name: search in: query type: string description: Case-insensitive substring search across log messages. - name: api-projects-project_id-hog_flows-id-metrics path: /api/projects/{project_id}/hog_flows/{id}/metrics/ operations: - name: hogflowsmetricsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Start of the time range. Accepts relative formats like '-7d', '-24h' or ISO 8601 timestamps. Defaults to '-7d'. - name: before in: query type: string description: End of the time range. Same format as 'after'. Defaults to now. - name: breakdown_by in: query type: string description: Group the series by metric 'name' or 'kind'. Defaults to 'kind'. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter metrics to a specific execution instance. - name: interval in: query type: string description: 'Time bucket size for the series. One of: hour, day, week. Defaults to ''day''.' - name: kind in: query type: string description: Comma-separated metric kinds to filter by, e.g. 'success,failure'. - name: name in: query type: string description: Comma-separated metric names to filter by. - name: api-projects-project_id-hog_flows-id-metrics-totals path: /api/projects/{project_id}/hog_flows/{id}/metrics/totals/ operations: - name: hogflowsmetricstotalsretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string description: Start of the time range. Accepts relative formats like '-7d', '-24h' or ISO 8601 timestamps. Defaults to '-7d'. - name: before in: query type: string description: End of the time range. Same format as 'after'. Defaults to now. - name: breakdown_by in: query type: string description: Group the series by metric 'name' or 'kind'. Defaults to 'kind'. - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: instance_id in: query type: string description: Filter metrics to a specific execution instance. - name: interval in: query type: string description: 'Time bucket size for the series. One of: hour, day, week. Defaults to ''day''.' - name: kind in: query type: string description: Comma-separated metric kinds to filter by, e.g. 'success,failure'. - name: name in: query type: string description: Comma-separated metric names to filter by. - name: api-projects-project_id-hog_flows-id-replay_all_blocked_runs path: /api/projects/{project_id}/hog_flows/{id}/replay_all_blocked_runs/ operations: - name: hogflowsreplayallblockedrunscreate method: POST description: Replay all blocked runs in a single bulk call to Node. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id-replay_blocked_run path: /api/projects/{project_id}/hog_flows/{id}/replay_blocked_run/ operations: - name: hogflowsreplayblockedruncreate method: POST description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id-schedules path: /api/projects/{project_id}/hog_flows/{id}/schedules/ operations: - name: hogflowsscheduleslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: hogflowsschedulescreate method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: created_at in: query type: string - name: created_by in: query type: integer - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: id in: query type: string - name: limit in: query type: integer description: Number of results to return per page. - name: offset in: query type: integer description: The initial index from which to return the results. - name: updated_at in: query type: string - name: body in: body type: object description: Request body (JSON). required: true - name: api-projects-project_id-hog_flows-id-schedules-schedule_id path: /api/projects/{project_id}/hog_flows/{id}/schedules/{schedule_id}/ operations: - name: hogflowsschedulespartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: schedule_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: hogflowsschedulesdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this hog flow. required: true - name: schedule_id in: path type: string required: true authentication: type: bearer token: '{{env.POSTHOG_API_KEY}}' exposes: - type: rest namespace: posthog-hog-flows-rest port: 8080 description: REST adapter for PostHog API — hog_flows. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/environments/{environment-id}/hog-flows name: api-environments-environment-id-hog-flows description: REST surface for api-environments-environment_id-hog_flows. operations: - method: GET name: environmentshogflowslist description: environmentshogflowslist call: posthog-hog-flows.environmentshogflowslist with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at outputParameters: - type: object mapping: $. - method: POST name: environmentshogflowscreate description: environmentshogflowscreate call: posthog-hog-flows.environmentshogflowscreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/bulk-delete name: api-environments-environment-id-hog-flows-bulk-delete description: REST surface for api-environments-environment_id-hog_flows-bulk_delete. operations: - method: POST name: environmentshogflowsbulkdeletecreate description: environmentshogflowsbulkdeletecreate call: posthog-hog-flows.environmentshogflowsbulkdeletecreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/user-blast-radius name: api-environments-environment-id-hog-flows-user-blast-radius description: REST surface for api-environments-environment_id-hog_flows-user_blast_radius. operations: - method: POST name: environmentshogflowsuserblastradiuscreate description: environmentshogflowsuserblastradiuscreate call: posthog-hog-flows.environmentshogflowsuserblastradiuscreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id} name: api-environments-environment-id-hog-flows-id description: REST surface for api-environments-environment_id-hog_flows-id. operations: - method: GET name: environmentshogflowsretrieve description: environmentshogflowsretrieve call: posthog-hog-flows.environmentshogflowsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: environmentshogflowsupdate description: environmentshogflowsupdate call: posthog-hog-flows.environmentshogflowsupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: environmentshogflowspartialupdate description: environmentshogflowspartialupdate call: posthog-hog-flows.environmentshogflowspartialupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: environmentshogflowsdestroy description: environmentshogflowsdestroy call: posthog-hog-flows.environmentshogflowsdestroy with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/batch-jobs name: api-environments-environment-id-hog-flows-id-batch-jobs description: REST surface for api-environments-environment_id-hog_flows-id-batch_jobs. operations: - method: GET name: environmentshogflowsbatchjobsretrieve description: environmentshogflowsbatchjobsretrieve call: posthog-hog-flows.environmentshogflowsbatchjobsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: POST name: environmentshogflowsbatchjobscreate description: environmentshogflowsbatchjobscreate call: posthog-hog-flows.environmentshogflowsbatchjobscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/blocked-runs name: api-environments-environment-id-hog-flows-id-blocked-runs description: REST surface for api-environments-environment_id-hog_flows-id-blocked_runs. operations: - method: GET name: environmentshogflowsblockedrunsretrieve description: List workflow runs that were blocked by the dedup bug. call: posthog-hog-flows.environmentshogflowsblockedrunsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/invocations name: api-environments-environment-id-hog-flows-id-invocations description: REST surface for api-environments-environment_id-hog_flows-id-invocations. operations: - method: POST name: environmentshogflowsinvocationscreate description: environmentshogflowsinvocationscreate call: posthog-hog-flows.environmentshogflowsinvocationscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/logs name: api-environments-environment-id-hog-flows-id-logs description: REST surface for api-environments-environment_id-hog_flows-id-logs. operations: - method: GET name: environmentshogflowslogsretrieve description: environmentshogflowslogsretrieve call: posthog-hog-flows.environmentshogflowslogsretrieve with: after: rest.after before: rest.before id: rest.id instance_id: rest.instance_id level: rest.level limit: rest.limit search: rest.search outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/metrics name: api-environments-environment-id-hog-flows-id-metrics description: REST surface for api-environments-environment_id-hog_flows-id-metrics. operations: - method: GET name: environmentshogflowsmetricsretrieve description: environmentshogflowsmetricsretrieve call: posthog-hog-flows.environmentshogflowsmetricsretrieve with: after: rest.after before: rest.before breakdown_by: rest.breakdown_by id: rest.id instance_id: rest.instance_id interval: rest.interval kind: rest.kind name: rest.name outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/metrics/totals name: api-environments-environment-id-hog-flows-id-metrics-totals description: REST surface for api-environments-environment_id-hog_flows-id-metrics-totals. operations: - method: GET name: environmentshogflowsmetricstotalsretrieve description: environmentshogflowsmetricstotalsretrieve call: posthog-hog-flows.environmentshogflowsmetricstotalsretrieve with: after: rest.after before: rest.before breakdown_by: rest.breakdown_by id: rest.id instance_id: rest.instance_id interval: rest.interval kind: rest.kind name: rest.name outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/replay-all-blocked-runs name: api-environments-environment-id-hog-flows-id-replay-all-blocked-runs description: REST surface for api-environments-environment_id-hog_flows-id-replay_all_blocked_runs. operations: - method: POST name: environmentshogflowsreplayallblockedrunscreate description: Replay all blocked runs in a single bulk call to Node. call: posthog-hog-flows.environmentshogflowsreplayallblockedrunscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/replay-blocked-run name: api-environments-environment-id-hog-flows-id-replay-blocked-run description: REST surface for api-environments-environment_id-hog_flows-id-replay_blocked_run. operations: - method: POST name: environmentshogflowsreplayblockedruncreate description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. call: posthog-hog-flows.environmentshogflowsreplayblockedruncreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/schedules name: api-environments-environment-id-hog-flows-id-schedules description: REST surface for api-environments-environment_id-hog_flows-id-schedules. operations: - method: GET name: environmentshogflowsscheduleslist description: environmentshogflowsscheduleslist call: posthog-hog-flows.environmentshogflowsscheduleslist with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at outputParameters: - type: object mapping: $. - method: POST name: environmentshogflowsschedulescreate description: environmentshogflowsschedulescreate call: posthog-hog-flows.environmentshogflowsschedulescreate with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/hog-flows/{id}/schedules/{schedule-id} name: api-environments-environment-id-hog-flows-id-schedules-schedule-id description: REST surface for api-environments-environment_id-hog_flows-id-schedules-schedule_id. operations: - method: PATCH name: environmentshogflowsschedulespartialupdate description: environmentshogflowsschedulespartialupdate call: posthog-hog-flows.environmentshogflowsschedulespartialupdate with: id: rest.id schedule_id: rest.schedule_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: environmentshogflowsschedulesdestroy description: environmentshogflowsschedulesdestroy call: posthog-hog-flows.environmentshogflowsschedulesdestroy with: id: rest.id schedule_id: rest.schedule_id outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows name: api-projects-project-id-hog-flows description: REST surface for api-projects-project_id-hog_flows. operations: - method: GET name: hogflowslist description: hogflowslist call: posthog-hog-flows.hogflowslist with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at outputParameters: - type: object mapping: $. - method: POST name: hogflowscreate description: hogflowscreate call: posthog-hog-flows.hogflowscreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/bulk-delete name: api-projects-project-id-hog-flows-bulk-delete description: REST surface for api-projects-project_id-hog_flows-bulk_delete. operations: - method: POST name: hogflowsbulkdeletecreate description: hogflowsbulkdeletecreate call: posthog-hog-flows.hogflowsbulkdeletecreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/user-blast-radius name: api-projects-project-id-hog-flows-user-blast-radius description: REST surface for api-projects-project_id-hog_flows-user_blast_radius. operations: - method: POST name: hogflowsuserblastradiuscreate description: hogflowsuserblastradiuscreate call: posthog-hog-flows.hogflowsuserblastradiuscreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id} name: api-projects-project-id-hog-flows-id description: REST surface for api-projects-project_id-hog_flows-id. operations: - method: GET name: hogflowsretrieve description: hogflowsretrieve call: posthog-hog-flows.hogflowsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: hogflowsupdate description: hogflowsupdate call: posthog-hog-flows.hogflowsupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: hogflowspartialupdate description: hogflowspartialupdate call: posthog-hog-flows.hogflowspartialupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: hogflowsdestroy description: hogflowsdestroy call: posthog-hog-flows.hogflowsdestroy with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/batch-jobs name: api-projects-project-id-hog-flows-id-batch-jobs description: REST surface for api-projects-project_id-hog_flows-id-batch_jobs. operations: - method: GET name: hogflowsbatchjobsretrieve description: hogflowsbatchjobsretrieve call: posthog-hog-flows.hogflowsbatchjobsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: POST name: hogflowsbatchjobscreate description: hogflowsbatchjobscreate call: posthog-hog-flows.hogflowsbatchjobscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/blocked-runs name: api-projects-project-id-hog-flows-id-blocked-runs description: REST surface for api-projects-project_id-hog_flows-id-blocked_runs. operations: - method: GET name: hogflowsblockedrunsretrieve description: List workflow runs that were blocked by the dedup bug. call: posthog-hog-flows.hogflowsblockedrunsretrieve with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/invocations name: api-projects-project-id-hog-flows-id-invocations description: REST surface for api-projects-project_id-hog_flows-id-invocations. operations: - method: POST name: hogflowsinvocationscreate description: hogflowsinvocationscreate call: posthog-hog-flows.hogflowsinvocationscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/logs name: api-projects-project-id-hog-flows-id-logs description: REST surface for api-projects-project_id-hog_flows-id-logs. operations: - method: GET name: hogflowslogsretrieve description: hogflowslogsretrieve call: posthog-hog-flows.hogflowslogsretrieve with: after: rest.after before: rest.before id: rest.id instance_id: rest.instance_id level: rest.level limit: rest.limit search: rest.search outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/metrics name: api-projects-project-id-hog-flows-id-metrics description: REST surface for api-projects-project_id-hog_flows-id-metrics. operations: - method: GET name: hogflowsmetricsretrieve description: hogflowsmetricsretrieve call: posthog-hog-flows.hogflowsmetricsretrieve with: after: rest.after before: rest.before breakdown_by: rest.breakdown_by id: rest.id instance_id: rest.instance_id interval: rest.interval kind: rest.kind name: rest.name outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/metrics/totals name: api-projects-project-id-hog-flows-id-metrics-totals description: REST surface for api-projects-project_id-hog_flows-id-metrics-totals. operations: - method: GET name: hogflowsmetricstotalsretrieve description: hogflowsmetricstotalsretrieve call: posthog-hog-flows.hogflowsmetricstotalsretrieve with: after: rest.after before: rest.before breakdown_by: rest.breakdown_by id: rest.id instance_id: rest.instance_id interval: rest.interval kind: rest.kind name: rest.name outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/replay-all-blocked-runs name: api-projects-project-id-hog-flows-id-replay-all-blocked-runs description: REST surface for api-projects-project_id-hog_flows-id-replay_all_blocked_runs. operations: - method: POST name: hogflowsreplayallblockedrunscreate description: Replay all blocked runs in a single bulk call to Node. call: posthog-hog-flows.hogflowsreplayallblockedrunscreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/replay-blocked-run name: api-projects-project-id-hog-flows-id-replay-blocked-run description: REST surface for api-projects-project_id-hog_flows-id-replay_blocked_run. operations: - method: POST name: hogflowsreplayblockedruncreate description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. call: posthog-hog-flows.hogflowsreplayblockedruncreate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/schedules name: api-projects-project-id-hog-flows-id-schedules description: REST surface for api-projects-project_id-hog_flows-id-schedules. operations: - method: GET name: hogflowsscheduleslist description: hogflowsscheduleslist call: posthog-hog-flows.hogflowsscheduleslist with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at outputParameters: - type: object mapping: $. - method: POST name: hogflowsschedulescreate description: hogflowsschedulescreate call: posthog-hog-flows.hogflowsschedulescreate with: created_at: rest.created_at created_by: rest.created_by id: rest.id limit: rest.limit offset: rest.offset updated_at: rest.updated_at body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-flows/{id}/schedules/{schedule-id} name: api-projects-project-id-hog-flows-id-schedules-schedule-id description: REST surface for api-projects-project_id-hog_flows-id-schedules-schedule_id. operations: - method: PATCH name: hogflowsschedulespartialupdate description: hogflowsschedulespartialupdate call: posthog-hog-flows.hogflowsschedulespartialupdate with: id: rest.id schedule_id: rest.schedule_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: hogflowsschedulesdestroy description: hogflowsschedulesdestroy call: posthog-hog-flows.hogflowsschedulesdestroy with: id: rest.id schedule_id: rest.schedule_id outputParameters: - type: object mapping: $. - type: mcp namespace: posthog-hog-flows-mcp port: 9090 transport: http description: MCP adapter for PostHog API — hog_flows. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: environmentshogflowslist description: environmentshogflowslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowslist with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at outputParameters: - type: object mapping: $. - name: environmentshogflowscreate description: environmentshogflowscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowscreate with: body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsbulkdeletecreate description: environmentshogflowsbulkdeletecreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsbulkdeletecreate with: body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsuserblastradiuscreate description: environmentshogflowsuserblastradiuscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsuserblastradiuscreate with: body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsretrieve description: environmentshogflowsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: environmentshogflowsupdate description: environmentshogflowsupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowspartialupdate description: environmentshogflowspartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowspartialupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsdestroy description: environmentshogflowsdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-hog-flows.environmentshogflowsdestroy with: id: tools.id outputParameters: - type: object mapping: $. - name: environmentshogflowsbatchjobsretrieve description: environmentshogflowsbatchjobsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsbatchjobsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: environmentshogflowsbatchjobscreate description: environmentshogflowsbatchjobscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsbatchjobscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: list-workflow-runs-that-were description: List workflow runs that were blocked by the dedup bug. hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsblockedrunsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: environmentshogflowsinvocationscreate description: environmentshogflowsinvocationscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsinvocationscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowslogsretrieve description: environmentshogflowslogsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowslogsretrieve with: after: tools.after before: tools.before id: tools.id instance_id: tools.instance_id level: tools.level limit: tools.limit search: tools.search outputParameters: - type: object mapping: $. - name: environmentshogflowsmetricsretrieve description: environmentshogflowsmetricsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsmetricsretrieve with: after: tools.after before: tools.before breakdown_by: tools.breakdown_by id: tools.id instance_id: tools.instance_id interval: tools.interval kind: tools.kind name: tools.name outputParameters: - type: object mapping: $. - name: environmentshogflowsmetricstotalsretrieve description: environmentshogflowsmetricstotalsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsmetricstotalsretrieve with: after: tools.after before: tools.before breakdown_by: tools.breakdown_by id: tools.id instance_id: tools.instance_id interval: tools.interval kind: tools.kind name: tools.name outputParameters: - type: object mapping: $. - name: replay-all-blocked-runs-single description: Replay all blocked runs in a single bulk call to Node. hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsreplayallblockedrunscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: replay-single-blocked-run-django description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. hints: readOnly: true destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsreplayblockedruncreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsscheduleslist description: environmentshogflowsscheduleslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsscheduleslist with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at outputParameters: - type: object mapping: $. - name: environmentshogflowsschedulescreate description: environmentshogflowsschedulescreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.environmentshogflowsschedulescreate with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsschedulespartialupdate description: environmentshogflowsschedulespartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.environmentshogflowsschedulespartialupdate with: id: tools.id schedule_id: tools.schedule_id body: tools.body outputParameters: - type: object mapping: $. - name: environmentshogflowsschedulesdestroy description: environmentshogflowsschedulesdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-hog-flows.environmentshogflowsschedulesdestroy with: id: tools.id schedule_id: tools.schedule_id outputParameters: - type: object mapping: $. - name: hogflowslist description: hogflowslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowslist with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at outputParameters: - type: object mapping: $. - name: hogflowscreate description: hogflowscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowscreate with: body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsbulkdeletecreate description: hogflowsbulkdeletecreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsbulkdeletecreate with: body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsuserblastradiuscreate description: hogflowsuserblastradiuscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsuserblastradiuscreate with: body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsretrieve description: hogflowsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: hogflowsupdate description: hogflowsupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.hogflowsupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hogflowspartialupdate description: hogflowspartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.hogflowspartialupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsdestroy description: hogflowsdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-hog-flows.hogflowsdestroy with: id: tools.id outputParameters: - type: object mapping: $. - name: hogflowsbatchjobsretrieve description: hogflowsbatchjobsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsbatchjobsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: hogflowsbatchjobscreate description: hogflowsbatchjobscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsbatchjobscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: list-workflow-runs-that-were-2 description: List workflow runs that were blocked by the dedup bug. hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsblockedrunsretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: hogflowsinvocationscreate description: hogflowsinvocationscreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsinvocationscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hogflowslogsretrieve description: hogflowslogsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowslogsretrieve with: after: tools.after before: tools.before id: tools.id instance_id: tools.instance_id level: tools.level limit: tools.limit search: tools.search outputParameters: - type: object mapping: $. - name: hogflowsmetricsretrieve description: hogflowsmetricsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsmetricsretrieve with: after: tools.after before: tools.before breakdown_by: tools.breakdown_by id: tools.id instance_id: tools.instance_id interval: tools.interval kind: tools.kind name: tools.name outputParameters: - type: object mapping: $. - name: hogflowsmetricstotalsretrieve description: hogflowsmetricstotalsretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsmetricstotalsretrieve with: after: tools.after before: tools.before breakdown_by: tools.breakdown_by id: tools.id instance_id: tools.instance_id interval: tools.interval kind: tools.kind name: tools.name outputParameters: - type: object mapping: $. - name: replay-all-blocked-runs-single-2 description: Replay all blocked runs in a single bulk call to Node. hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsreplayallblockedrunscreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: replay-single-blocked-run-django-2 description: Replay a single blocked run. Django fetches the event, Node creates the invocation and writes the log. hints: readOnly: true destructive: false idempotent: false call: posthog-hog-flows.hogflowsreplayblockedruncreate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsscheduleslist description: hogflowsscheduleslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-flows.hogflowsscheduleslist with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at outputParameters: - type: object mapping: $. - name: hogflowsschedulescreate description: hogflowsschedulescreate hints: readOnly: false destructive: false idempotent: false call: posthog-hog-flows.hogflowsschedulescreate with: created_at: tools.created_at created_by: tools.created_by id: tools.id limit: tools.limit offset: tools.offset updated_at: tools.updated_at body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsschedulespartialupdate description: hogflowsschedulespartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-hog-flows.hogflowsschedulespartialupdate with: id: tools.id schedule_id: tools.schedule_id body: tools.body outputParameters: - type: object mapping: $. - name: hogflowsschedulesdestroy description: hogflowsschedulesdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-hog-flows.hogflowsschedulesdestroy with: id: tools.id schedule_id: tools.schedule_id outputParameters: - type: object mapping: $.