naftiko: 1.0.0-alpha2 info: label: Speakeasy API — Events description: 'Speakeasy API — Events. 5 operations. Lead operation: Post Events for a Specific Workspace. Self-contained Naftiko capability covering one Speakeasy business surface.' tags: - Speakeasy - Events created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPEAKEASY_API_KEY: SPEAKEASY_API_KEY capability: consumes: - type: http namespace: speakeasy-events baseUri: https://api.prod.speakeasy.com description: Speakeasy API — Events business capability. Self-contained, no shared references. resources: - name: v1-workspace-events-targets path: /v1/workspace/events/targets operations: - name: getworkspacetargets method: GET description: Load targets for a particular workspace outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-workspace-workspace_id-events path: /v1/workspace/{workspace_id}/events operations: - name: searchworkspaceevents method: GET description: Search events for a particular workspace by any field outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: source_revision_digest in: query type: string description: Unique identifier of the source revision digest. - name: lint_report_digest in: query type: string description: Unique identifier of the lint report digest. - name: openapi_diff_report_digest in: query type: string description: Unique identifier of the openapi diff report digest. - name: interaction_type in: query type: string description: Specified interaction type for events. - name: generate_gen_lock_id in: query type: string description: A specific gen lock ID for the events. - name: execution_id in: query type: string description: Shared execution ID for cli events across a single action. - name: success in: query type: boolean description: Whether the event was successful or not. - name: limit in: query type: integer description: Number of results to return. - name: postworkspaceevents method: POST description: Post Events for a Specific Workspace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-workspace-workspace_id-events-targets path: /v1/workspace/{workspace_id}/events/targets operations: - name: getworkspacetargetsdeprecated method: GET description: Load targets for a particular workspace outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-workspace-workspace_id-events-targets-target_id-events path: /v1/workspace/{workspace_id}/events/targets/{target_id}/events operations: - name: getworkspaceeventsbytarget method: GET description: Load recent events for a particular workspace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: workspace_id in: path type: string description: Unique identifier of the workspace. required: true - name: target_id in: path type: string description: Filter to only return events corresponding to a particular gen_lock_id (gen_lock_id uniquely identifies a target) required: true - name: after_created_at in: query type: string description: Filter to only return events created after this timestamp authentication: type: bearer token: '{{env.SPEAKEASY_API_KEY}}' exposes: - type: rest namespace: speakeasy-events-rest port: 8080 description: REST adapter for Speakeasy API — Events. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/workspace/events/targets name: v1-workspace-events-targets description: REST surface for v1-workspace-events-targets. operations: - method: GET name: getworkspacetargets description: Load targets for a particular workspace call: speakeasy-events.getworkspacetargets outputParameters: - type: object mapping: $. - path: /v1/v1/workspace/{workspace-id}/events name: v1-workspace-workspace-id-events description: REST surface for v1-workspace-workspace_id-events. operations: - method: GET name: searchworkspaceevents description: Search events for a particular workspace by any field call: speakeasy-events.searchworkspaceevents with: source_revision_digest: rest.source_revision_digest lint_report_digest: rest.lint_report_digest openapi_diff_report_digest: rest.openapi_diff_report_digest interaction_type: rest.interaction_type generate_gen_lock_id: rest.generate_gen_lock_id execution_id: rest.execution_id success: rest.success limit: rest.limit outputParameters: - type: object mapping: $. - method: POST name: postworkspaceevents description: Post Events for a Specific Workspace call: speakeasy-events.postworkspaceevents with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/workspace/{workspace-id}/events/targets name: v1-workspace-workspace-id-events-targets description: REST surface for v1-workspace-workspace_id-events-targets. operations: - method: GET name: getworkspacetargetsdeprecated description: Load targets for a particular workspace call: speakeasy-events.getworkspacetargetsdeprecated outputParameters: - type: object mapping: $. - path: /v1/v1/workspace/{workspace-id}/events/targets/{target-id}/events name: v1-workspace-workspace-id-events-targets-target-id-events description: REST surface for v1-workspace-workspace_id-events-targets-target_id-events. operations: - method: GET name: getworkspaceeventsbytarget description: Load recent events for a particular workspace call: speakeasy-events.getworkspaceeventsbytarget with: workspace_id: rest.workspace_id target_id: rest.target_id after_created_at: rest.after_created_at outputParameters: - type: object mapping: $. - type: mcp namespace: speakeasy-events-mcp port: 9090 transport: http description: MCP adapter for Speakeasy API — Events. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: load-targets-particular-workspace description: Load targets for a particular workspace hints: readOnly: true destructive: false idempotent: true call: speakeasy-events.getworkspacetargets outputParameters: - type: object mapping: $. - name: search-events-particular-workspace-any description: Search events for a particular workspace by any field hints: readOnly: true destructive: false idempotent: true call: speakeasy-events.searchworkspaceevents with: source_revision_digest: tools.source_revision_digest lint_report_digest: tools.lint_report_digest openapi_diff_report_digest: tools.openapi_diff_report_digest interaction_type: tools.interaction_type generate_gen_lock_id: tools.generate_gen_lock_id execution_id: tools.execution_id success: tools.success limit: tools.limit outputParameters: - type: object mapping: $. - name: post-events-specific-workspace description: Post Events for a Specific Workspace hints: readOnly: false destructive: false idempotent: false call: speakeasy-events.postworkspaceevents with: body: tools.body outputParameters: - type: object mapping: $. - name: load-targets-particular-workspace-2 description: Load targets for a particular workspace hints: readOnly: true destructive: false idempotent: true call: speakeasy-events.getworkspacetargetsdeprecated outputParameters: - type: object mapping: $. - name: load-recent-events-particular-workspace description: Load recent events for a particular workspace hints: readOnly: true destructive: false idempotent: true call: speakeasy-events.getworkspaceeventsbytarget with: workspace_id: tools.workspace_id target_id: tools.target_id after_created_at: tools.after_created_at outputParameters: - type: object mapping: $.