naftiko: 1.0.0-alpha2 info: label: PostHog API — persisted_folder description: 'PostHog API — persisted_folder. 12 operations. Lead operation: persisted_folder. Self-contained Naftiko capability covering one Posthog business surface.' tags: - Posthog - persisted_folder created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POSTHOG_API_KEY: POSTHOG_API_KEY capability: consumes: - type: http namespace: posthog-persisted-folder baseUri: '' description: PostHog API — persisted_folder business capability. Self-contained, no shared references. resources: - name: api-environments-environment_id-persisted_folder path: /api/environments/{environment_id}/persisted_folder/ operations: - name: environmentspersistedfolderlist 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: environmentspersistedfoldercreate 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-persisted_folder-id path: /api/environments/{environment_id}/persisted_folder/{id}/ operations: - name: environmentspersistedfolderretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: environmentspersistedfolderupdate method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: environmentspersistedfolderpartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: environmentspersistedfolderdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: api-projects-project_id-persisted_folder path: /api/projects/{project_id}/persisted_folder/ operations: - name: persistedfolderlist 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: persistedfoldercreate 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-persisted_folder-id path: /api/projects/{project_id}/persisted_folder/{id}/ operations: - name: persistedfolderretrieve method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: persistedfolderupdate method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: persistedfolderpartialupdate method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: persistedfolderdestroy method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: A UUID string identifying this Persisted Folder. required: true authentication: type: bearer token: '{{env.POSTHOG_API_KEY}}' exposes: - type: rest namespace: posthog-persisted-folder-rest port: 8080 description: REST adapter for PostHog API — persisted_folder. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/environments/{environment-id}/persisted-folder name: api-environments-environment-id-persisted-folder description: REST surface for api-environments-environment_id-persisted_folder. operations: - method: GET name: environmentspersistedfolderlist description: environmentspersistedfolderlist call: posthog-persisted-folder.environmentspersistedfolderlist with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: environmentspersistedfoldercreate description: environmentspersistedfoldercreate call: posthog-persisted-folder.environmentspersistedfoldercreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/environments/{environment-id}/persisted-folder/{id} name: api-environments-environment-id-persisted-folder-id description: REST surface for api-environments-environment_id-persisted_folder-id. operations: - method: GET name: environmentspersistedfolderretrieve description: environmentspersistedfolderretrieve call: posthog-persisted-folder.environmentspersistedfolderretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: environmentspersistedfolderupdate description: environmentspersistedfolderupdate call: posthog-persisted-folder.environmentspersistedfolderupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: environmentspersistedfolderpartialupdate description: environmentspersistedfolderpartialupdate call: posthog-persisted-folder.environmentspersistedfolderpartialupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: environmentspersistedfolderdestroy description: environmentspersistedfolderdestroy call: posthog-persisted-folder.environmentspersistedfolderdestroy with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/persisted-folder name: api-projects-project-id-persisted-folder description: REST surface for api-projects-project_id-persisted_folder. operations: - method: GET name: persistedfolderlist description: persistedfolderlist call: posthog-persisted-folder.persistedfolderlist with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: persistedfoldercreate description: persistedfoldercreate call: posthog-persisted-folder.persistedfoldercreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/projects/{project-id}/persisted-folder/{id} name: api-projects-project-id-persisted-folder-id description: REST surface for api-projects-project_id-persisted_folder-id. operations: - method: GET name: persistedfolderretrieve description: persistedfolderretrieve call: posthog-persisted-folder.persistedfolderretrieve with: id: rest.id outputParameters: - type: object mapping: $. - method: PUT name: persistedfolderupdate description: persistedfolderupdate call: posthog-persisted-folder.persistedfolderupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: persistedfolderpartialupdate description: persistedfolderpartialupdate call: posthog-persisted-folder.persistedfolderpartialupdate with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: persistedfolderdestroy description: persistedfolderdestroy call: posthog-persisted-folder.persistedfolderdestroy with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: posthog-persisted-folder-mcp port: 9090 transport: http description: MCP adapter for PostHog API — persisted_folder. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: environmentspersistedfolderlist description: environmentspersistedfolderlist hints: readOnly: true destructive: false idempotent: true call: posthog-persisted-folder.environmentspersistedfolderlist with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: environmentspersistedfoldercreate description: environmentspersistedfoldercreate hints: readOnly: false destructive: false idempotent: false call: posthog-persisted-folder.environmentspersistedfoldercreate with: body: tools.body outputParameters: - type: object mapping: $. - name: environmentspersistedfolderretrieve description: environmentspersistedfolderretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-persisted-folder.environmentspersistedfolderretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: environmentspersistedfolderupdate description: environmentspersistedfolderupdate hints: readOnly: false destructive: false idempotent: true call: posthog-persisted-folder.environmentspersistedfolderupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentspersistedfolderpartialupdate description: environmentspersistedfolderpartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-persisted-folder.environmentspersistedfolderpartialupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: environmentspersistedfolderdestroy description: environmentspersistedfolderdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-persisted-folder.environmentspersistedfolderdestroy with: id: tools.id outputParameters: - type: object mapping: $. - name: persistedfolderlist description: persistedfolderlist hints: readOnly: true destructive: false idempotent: true call: posthog-persisted-folder.persistedfolderlist with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: persistedfoldercreate description: persistedfoldercreate hints: readOnly: false destructive: false idempotent: false call: posthog-persisted-folder.persistedfoldercreate with: body: tools.body outputParameters: - type: object mapping: $. - name: persistedfolderretrieve description: persistedfolderretrieve hints: readOnly: true destructive: false idempotent: true call: posthog-persisted-folder.persistedfolderretrieve with: id: tools.id outputParameters: - type: object mapping: $. - name: persistedfolderupdate description: persistedfolderupdate hints: readOnly: false destructive: false idempotent: true call: posthog-persisted-folder.persistedfolderupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: persistedfolderpartialupdate description: persistedfolderpartialupdate hints: readOnly: false destructive: false idempotent: true call: posthog-persisted-folder.persistedfolderpartialupdate with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: persistedfolderdestroy description: persistedfolderdestroy hints: readOnly: false destructive: true idempotent: true call: posthog-persisted-folder.persistedfolderdestroy with: id: tools.id outputParameters: - type: object mapping: $.