StackHawk · Capability

StackHawk API — Scan Results

StackHawk API — Scan Results. 5 operations. Lead operation: List Scans. Self-contained Naftiko capability covering one Stackhawk business surface.

Run with Naftiko StackhawkScan Results

What You Can Do

GET
Listscans — List Scans
/v1/api/v1/app/{appid}/env/{envid}/scan
GET
Getscan — Get Scan
/v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}
DELETE
Deletescan — Delete Scan
/v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}
GET
Listfindings — List Findings
/v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}/finding
GET
Getfinding — Get Finding
/v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}/finding/{findingid}

MCP Tools

list-scans

List Scans

read-only idempotent
get-scan

Get Scan

read-only idempotent
delete-scan

Delete Scan

idempotent
list-findings

List Findings

read-only idempotent
get-finding

Get Finding

read-only idempotent

Capability Spec

stackhawk-scan-results.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: StackHawk API — Scan Results
  description: 'StackHawk API — Scan Results. 5 operations. Lead operation: List Scans. Self-contained Naftiko capability
    covering one Stackhawk business surface.'
  tags:
  - Stackhawk
  - Scan Results
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    STACKHAWK_API_KEY: STACKHAWK_API_KEY
capability:
  consumes:
  - type: http
    namespace: stackhawk-scan-results
    baseUri: https://api.stackhawk.com
    description: StackHawk API — Scan Results business capability. Self-contained, no shared references.
    resources:
    - name: api-v1-app-appId-env-envId-scan
      path: /api/v1/app/{appId}/env/{envId}/scan
      operations:
      - name: listscans
        method: GET
        description: List Scans
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: appId
          in: path
          type: string
          required: true
        - name: envId
          in: path
          type: string
          required: true
        - name: pageToken
          in: query
          type: string
        - name: pageSize
          in: query
          type: integer
    - name: api-v1-app-appId-env-envId-scan-scanId
      path: /api/v1/app/{appId}/env/{envId}/scan/{scanId}
      operations:
      - name: getscan
        method: GET
        description: Get Scan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: appId
          in: path
          type: string
          required: true
        - name: envId
          in: path
          type: string
          required: true
        - name: scanId
          in: path
          type: string
          required: true
      - name: deletescan
        method: DELETE
        description: Delete Scan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: appId
          in: path
          type: string
          required: true
        - name: envId
          in: path
          type: string
          required: true
        - name: scanId
          in: path
          type: string
          required: true
    - name: api-v1-app-appId-env-envId-scan-scanId-finding
      path: /api/v1/app/{appId}/env/{envId}/scan/{scanId}/finding
      operations:
      - name: listfindings
        method: GET
        description: List Findings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: appId
          in: path
          type: string
          required: true
        - name: envId
          in: path
          type: string
          required: true
        - name: scanId
          in: path
          type: string
          required: true
    - name: api-v1-app-appId-env-envId-scan-scanId-finding-findingId
      path: /api/v1/app/{appId}/env/{envId}/scan/{scanId}/finding/{findingId}
      operations:
      - name: getfinding
        method: GET
        description: Get Finding
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: appId
          in: path
          type: string
          required: true
        - name: envId
          in: path
          type: string
          required: true
        - name: scanId
          in: path
          type: string
          required: true
        - name: findingId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.STACKHAWK_API_KEY}}'
  exposes:
  - type: rest
    namespace: stackhawk-scan-results-rest
    port: 8080
    description: REST adapter for StackHawk API — Scan Results. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/api/v1/app/{appid}/env/{envid}/scan
      name: api-v1-app-appid-env-envid-scan
      description: REST surface for api-v1-app-appId-env-envId-scan.
      operations:
      - method: GET
        name: listscans
        description: List Scans
        call: stackhawk-scan-results.listscans
        with:
          appId: rest.appId
          envId: rest.envId
          pageToken: rest.pageToken
          pageSize: rest.pageSize
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}
      name: api-v1-app-appid-env-envid-scan-scanid
      description: REST surface for api-v1-app-appId-env-envId-scan-scanId.
      operations:
      - method: GET
        name: getscan
        description: Get Scan
        call: stackhawk-scan-results.getscan
        with:
          appId: rest.appId
          envId: rest.envId
          scanId: rest.scanId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletescan
        description: Delete Scan
        call: stackhawk-scan-results.deletescan
        with:
          appId: rest.appId
          envId: rest.envId
          scanId: rest.scanId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}/finding
      name: api-v1-app-appid-env-envid-scan-scanid-finding
      description: REST surface for api-v1-app-appId-env-envId-scan-scanId-finding.
      operations:
      - method: GET
        name: listfindings
        description: List Findings
        call: stackhawk-scan-results.listfindings
        with:
          appId: rest.appId
          envId: rest.envId
          scanId: rest.scanId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/app/{appid}/env/{envid}/scan/{scanid}/finding/{findingid}
      name: api-v1-app-appid-env-envid-scan-scanid-finding-findingid
      description: REST surface for api-v1-app-appId-env-envId-scan-scanId-finding-findingId.
      operations:
      - method: GET
        name: getfinding
        description: Get Finding
        call: stackhawk-scan-results.getfinding
        with:
          appId: rest.appId
          envId: rest.envId
          scanId: rest.scanId
          findingId: rest.findingId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: stackhawk-scan-results-mcp
    port: 9090
    transport: http
    description: MCP adapter for StackHawk API — Scan Results. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: list-scans
      description: List Scans
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: stackhawk-scan-results.listscans
      with:
        appId: tools.appId
        envId: tools.envId
        pageToken: tools.pageToken
        pageSize: tools.pageSize
      outputParameters:
      - type: object
        mapping: $.
    - name: get-scan
      description: Get Scan
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: stackhawk-scan-results.getscan
      with:
        appId: tools.appId
        envId: tools.envId
        scanId: tools.scanId
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-scan
      description: Delete Scan
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: stackhawk-scan-results.deletescan
      with:
        appId: tools.appId
        envId: tools.envId
        scanId: tools.scanId
      outputParameters:
      - type: object
        mapping: $.
    - name: list-findings
      description: List Findings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: stackhawk-scan-results.listfindings
      with:
        appId: tools.appId
        envId: tools.envId
        scanId: tools.scanId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-finding
      description: Get Finding
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: stackhawk-scan-results.getfinding
      with:
        appId: tools.appId
        envId: tools.envId
        scanId: tools.scanId
        findingId: tools.findingId
      outputParameters:
      - type: object
        mapping: $.