naftiko: 1.0.0-alpha2 info: label: PostHog API — hog_function_templates description: 'PostHog API — hog_function_templates. 5 operations. Lead operation: hog_function_templates. Self-contained Naftiko capability covering one Posthog business surface.' tags: - Posthog - hog_function_templates 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-function-templates baseUri: '' description: PostHog API — hog_function_templates business capability. Self-contained, no shared references. resources: - name: api-projects-project_id-hog_function_templates path: /api/projects/{project_id}/hog_function_templates/ operations: - name: hogfunctiontemplateslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - 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: template_id in: query type: string description: Filter to a specific template by its template_id. Deprecated templates are excluded from list results; use the retrieve endpoint to look up a template by ID reg - name: type in: query type: string description: Filter by template type (e.g. destination, email, sms_provider, broadcast). Defaults to destination if neither type nor types is provided. - name: types in: query type: string description: Comma-separated list of template types to include (e.g. destination,email,sms_provider). - name: hogfunctiontemplateslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - 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: template_id in: query type: string description: Filter to a specific template by its template_id. Deprecated templates are excluded from list results; use the retrieve endpoint to look up a template by ID reg - name: type in: query type: string description: Filter by template type (e.g. destination, email, sms_provider, broadcast). Defaults to destination if neither type nor types is provided. - name: types in: query type: string description: Comma-separated list of template types to include (e.g. destination,email,sms_provider). - name: api-projects-project_id-hog_function_templates-template_id path: /api/projects/{project_id}/hog_function_templates/{template_id}/ operations: - name: hogfunctiontemplatesretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: template_id in: path type: string required: true - name: hogfunctiontemplatesretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: template_id in: path type: string required: true - name: api-public_hog_function_templates path: /api/public_hog_function_templates/ operations: - name: publichogfunctiontemplateslist method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - 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: template_id in: query type: string description: Filter to a specific template by its template_id. Deprecated templates are excluded from list results; use the retrieve endpoint to look up a template by ID reg - name: type in: query type: string description: Filter by template type (e.g. destination, email, sms_provider, broadcast). Defaults to destination if neither type nor types is provided. - name: types in: query type: string description: Comma-separated list of template types to include (e.g. destination,email,sms_provider). authentication: type: bearer token: '{{env.POSTHOG_API_KEY}}' exposes: - type: rest namespace: posthog-hog-function-templates-rest port: 8080 description: REST adapter for PostHog API — hog_function_templates. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/projects/{project-id}/hog-function-templates name: api-projects-project-id-hog-function-templates description: REST surface for api-projects-project_id-hog_function_templates. operations: - method: GET name: hogfunctiontemplateslist description: hogfunctiontemplateslist call: posthog-hog-function-templates.hogfunctiontemplateslist with: limit: rest.limit offset: rest.offset template_id: rest.template_id type: rest.type types: rest.types outputParameters: - type: object mapping: $. - method: GET name: hogfunctiontemplateslist description: hogfunctiontemplateslist call: posthog-hog-function-templates.hogfunctiontemplateslist with: limit: rest.limit offset: rest.offset template_id: rest.template_id type: rest.type types: rest.types outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/hog-function-templates/{template-id} name: api-projects-project-id-hog-function-templates-template-id description: REST surface for api-projects-project_id-hog_function_templates-template_id. operations: - method: GET name: hogfunctiontemplatesretrieve description: hogfunctiontemplatesretrieve call: posthog-hog-function-templates.hogfunctiontemplatesretrieve with: template_id: rest.template_id outputParameters: - type: object mapping: $. - method: GET name: hogfunctiontemplatesretrieve description: hogfunctiontemplatesretrieve call: posthog-hog-function-templates.hogfunctiontemplatesretrieve with: template_id: rest.template_id outputParameters: - type: object mapping: $. - path: /v1/api/public-hog-function-templates name: api-public-hog-function-templates description: REST surface for api-public_hog_function_templates. operations: - method: GET name: publichogfunctiontemplateslist description: publichogfunctiontemplateslist call: posthog-hog-function-templates.publichogfunctiontemplateslist with: limit: rest.limit offset: rest.offset template_id: rest.template_id type: rest.type types: rest.types outputParameters: - type: object mapping: $. - type: mcp namespace: posthog-hog-function-templates-mcp port: 9090 transport: http description: MCP adapter for PostHog API — hog_function_templates. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: hogfunctiontemplateslist description: hogfunctiontemplateslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-function-templates.hogfunctiontemplateslist with: limit: tools.limit offset: tools.offset template_id: tools.template_id type: tools.type types: tools.types outputParameters: - type: object mapping: $. - name: hogfunctiontemplateslist-2 description: hogfunctiontemplateslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-function-templates.hogfunctiontemplateslist with: limit: tools.limit offset: tools.offset template_id: tools.template_id type: tools.type types: tools.types outputParameters: - type: object mapping: $. - name: hogfunctiontemplatesretrieve description: hogfunctiontemplatesretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-function-templates.hogfunctiontemplatesretrieve with: template_id: tools.template_id outputParameters: - type: object mapping: $. - name: hogfunctiontemplatesretrieve-2 description: hogfunctiontemplatesretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-hog-function-templates.hogfunctiontemplatesretrieve with: template_id: tools.template_id outputParameters: - type: object mapping: $. - name: publichogfunctiontemplateslist description: publichogfunctiontemplateslist hints: readOnly: true destructive: false idempotent: true call: posthog-hog-function-templates.publichogfunctiontemplateslist with: limit: tools.limit offset: tools.offset template_id: tools.template_id type: tools.type types: tools.types outputParameters: - type: object mapping: $.