naftiko: 1.0.0-alpha2 info: label: Snyk API — Integrations description: 'Snyk API — Integrations. 7 operations. Lead operation: List all integrations for an organization (Early Access). Self-contained Naftiko capability covering one Snyk business surface.' tags: - Snyk - Integrations created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SNYK_API_KEY: SNYK_API_KEY capability: consumes: - type: http namespace: rest-integrations baseUri: https://api.snyk.io/rest description: Snyk API — Integrations business capability. Self-contained, no shared references. resources: - name: orgs-org_id-integrations path: /orgs/{org_id}/integrations operations: - name: listintegrations method: GET description: List all integrations for an organization (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: createintegration method: POST description: Create an integration for an organization (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: body in: body type: object description: Request body (JSON). required: true - name: orgs-org_id-integrations-integration_id path: /orgs/{org_id}/integrations/{integration_id} operations: - name: deleteintegration method: DELETE description: Delete an integration (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: integration_id in: path type: string description: The unique identifier for the integration required: true - name: getintegration method: GET description: Get a specific integration (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: integration_id in: path type: string description: The unique identifier for the integration required: true - name: updateintegration method: PATCH description: Update an existing integration (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: integration_id in: path type: string description: The unique identifier for the integration required: true - name: body in: body type: object description: Request body (JSON). required: true - name: orgs-org_id-integrations-integration_id-settings path: /orgs/{org_id}/integrations/{integration_id}/settings operations: - name: getintegrationsettings method: GET description: Get integration settings (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: integration_id in: path type: string description: The unique identifier for the integration required: true - name: updateintegrationsettings method: PATCH description: Update integration settings (Early Access) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org_id in: path type: string description: The organization public ID required: true - name: integration_id in: path type: string description: The unique identifier for the integration required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.SNYK_API_KEY}}' exposes: - type: rest namespace: rest-integrations-rest port: 8080 description: REST adapter for Snyk API — Integrations. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/orgs/{org-id}/integrations name: orgs-org-id-integrations description: REST surface for orgs-org_id-integrations. operations: - method: GET name: listintegrations description: List all integrations for an organization (Early Access) call: rest-integrations.listintegrations with: org_id: rest.org_id outputParameters: - type: object mapping: $. - method: POST name: createintegration description: Create an integration for an organization (Early Access) call: rest-integrations.createintegration with: org_id: rest.org_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/orgs/{org-id}/integrations/{integration-id} name: orgs-org-id-integrations-integration-id description: REST surface for orgs-org_id-integrations-integration_id. operations: - method: DELETE name: deleteintegration description: Delete an integration (Early Access) call: rest-integrations.deleteintegration with: org_id: rest.org_id integration_id: rest.integration_id outputParameters: - type: object mapping: $. - method: GET name: getintegration description: Get a specific integration (Early Access) call: rest-integrations.getintegration with: org_id: rest.org_id integration_id: rest.integration_id outputParameters: - type: object mapping: $. - method: PATCH name: updateintegration description: Update an existing integration (Early Access) call: rest-integrations.updateintegration with: org_id: rest.org_id integration_id: rest.integration_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/orgs/{org-id}/integrations/{integration-id}/settings name: orgs-org-id-integrations-integration-id-settings description: REST surface for orgs-org_id-integrations-integration_id-settings. operations: - method: GET name: getintegrationsettings description: Get integration settings (Early Access) call: rest-integrations.getintegrationsettings with: org_id: rest.org_id integration_id: rest.integration_id outputParameters: - type: object mapping: $. - method: PATCH name: updateintegrationsettings description: Update integration settings (Early Access) call: rest-integrations.updateintegrationsettings with: org_id: rest.org_id integration_id: rest.integration_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: rest-integrations-mcp port: 9090 transport: http description: MCP adapter for Snyk API — Integrations. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-integrations-organization-early description: List all integrations for an organization (Early Access) hints: readOnly: true destructive: false idempotent: true call: rest-integrations.listintegrations with: org_id: tools.org_id outputParameters: - type: object mapping: $. - name: create-integration-organization-early-access description: Create an integration for an organization (Early Access) hints: readOnly: false destructive: false idempotent: false call: rest-integrations.createintegration with: org_id: tools.org_id body: tools.body outputParameters: - type: object mapping: $. - name: delete-integration-early-access description: Delete an integration (Early Access) hints: readOnly: false destructive: true idempotent: true call: rest-integrations.deleteintegration with: org_id: tools.org_id integration_id: tools.integration_id outputParameters: - type: object mapping: $. - name: get-specific-integration-early-access description: Get a specific integration (Early Access) hints: readOnly: true destructive: false idempotent: true call: rest-integrations.getintegration with: org_id: tools.org_id integration_id: tools.integration_id outputParameters: - type: object mapping: $. - name: update-existing-integration-early-access description: Update an existing integration (Early Access) hints: readOnly: false destructive: false idempotent: true call: rest-integrations.updateintegration with: org_id: tools.org_id integration_id: tools.integration_id body: tools.body outputParameters: - type: object mapping: $. - name: get-integration-settings-early-access description: Get integration settings (Early Access) hints: readOnly: true destructive: false idempotent: true call: rest-integrations.getintegrationsettings with: org_id: tools.org_id integration_id: tools.integration_id outputParameters: - type: object mapping: $. - name: update-integration-settings-early-access description: Update integration settings (Early Access) hints: readOnly: false destructive: false idempotent: true call: rest-integrations.updateintegrationsettings with: org_id: tools.org_id integration_id: tools.integration_id body: tools.body outputParameters: - type: object mapping: $.