Snyk · Capability

Snyk API — Asset

Snyk API — Asset. 11 operations. Lead operation: Bulk remove aliases from repository assets in group (Early Access). Self-contained Naftiko capability covering one Snyk business surface.

Run with Naftiko SnykAsset

What You Can Do

DELETE
Deletealiasesingroup — Bulk remove aliases from repository assets in group (Early Access)
/v1/groups/{group-id}/assets/repository/aliases
GET
Listrepositoryaliasesingroup — List repository aliases in group (Early Access)
/v1/groups/{group-id}/assets/repository/aliases
POST
Createaliasingroup — Add alias for a repository asset in group (Early Access)
/v1/groups/{group-id}/assets/repository/aliases
POST
Listassets — List Assets with filters (Early Access)
/v1/groups/{group-id}/assets/search
GET
Getasset — Get an Asset by its ID (Early Access)
/v1/groups/{group-id}/assets/{asset-id}
PATCH
Updateasset — Update asset attributes (Early Access)
/v1/groups/{group-id}/assets/{asset-id}
GET
Listrelatedassets — List related assets with pagination (Early Access)
/v1/groups/{group-id}/assets/{asset-id}/relationships/assets
GET
Listassetprojects — List asset projects with pagination (Early Access)
/v1/groups/{group-id}/assets/{asset-id}/relationships/projects
DELETE
Deletealiasesinorg — Bulk remove aliases from repository assets in org (Early Access)
/v1/orgs/{org-id}/assets/repository/aliases
GET
Listrepositoryaliasesinorg — List repository aliases in org (Early Access)
/v1/orgs/{org-id}/assets/repository/aliases
POST
Createaliasinorg — Add alias for a repository asset in org (Early Access)
/v1/orgs/{org-id}/assets/repository/aliases

MCP Tools

bulk-remove-aliases-repository-assets

Bulk remove aliases from repository assets in group (Early Access)

idempotent
list-repository-aliases-group-early

List repository aliases in group (Early Access)

read-only idempotent
add-alias-repository-asset-group

Add alias for a repository asset in group (Early Access)

list-assets-filters-early-access

List Assets with filters (Early Access)

read-only
get-asset-its-id-early

Get an Asset by its ID (Early Access)

read-only idempotent
update-asset-attributes-early-access

Update asset attributes (Early Access)

idempotent
list-related-assets-pagination-early

List related assets with pagination (Early Access)

read-only idempotent
list-asset-projects-pagination-early

List asset projects with pagination (Early Access)

read-only idempotent
bulk-remove-aliases-repository-assets-2

Bulk remove aliases from repository assets in org (Early Access)

idempotent
list-repository-aliases-org-early

List repository aliases in org (Early Access)

read-only idempotent
add-alias-repository-asset-org

Add alias for a repository asset in org (Early Access)

Capability Spec

rest-asset.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Snyk API — Asset
  description: 'Snyk API — Asset. 11 operations. Lead operation: Bulk remove aliases from repository assets in group (Early
    Access). Self-contained Naftiko capability covering one Snyk business surface.'
  tags:
  - Snyk
  - Asset
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SNYK_API_KEY: SNYK_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-asset
    baseUri: https://api.snyk.io/rest
    description: Snyk API — Asset business capability. Self-contained, no shared references.
    resources:
    - name: groups-group_id-assets-repository-aliases
      path: /groups/{group_id}/assets/repository/aliases
      operations:
      - name: deletealiasesingroup
        method: DELETE
        description: Bulk remove aliases from repository assets in group (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: listrepositoryaliasesingroup
        method: GET
        description: List repository aliases in group (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
        - name: limit
          in: query
          type: integer
          description: Maximum number of alias items to return per page. A single canonical document with multiple aliases
            may span more than one page.
      - name: createaliasingroup
        method: POST
        description: Add alias for a repository asset in group (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: groups-group_id-assets-search
      path: /groups/{group_id}/assets/search
      operations:
      - name: listassets
        method: POST
        description: List Assets with filters (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: groups-group_id-assets-asset_id
      path: /groups/{group_id}/assets/{asset_id}
      operations:
      - name: getasset
        method: GET
        description: Get an Asset by its ID (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
      - name: updateasset
        method: PATCH
        description: Update asset attributes (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: groups-group_id-assets-asset_id-relationships-assets
      path: /groups/{group_id}/assets/{asset_id}/relationships/assets
      operations:
      - name: listrelatedassets
        method: GET
        description: List related assets with pagination (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
    - name: groups-group_id-assets-asset_id-relationships-projects
      path: /groups/{group_id}/assets/{asset_id}/relationships/projects
      operations:
      - name: listassetprojects
        method: GET
        description: List asset projects with pagination (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: group_id
          in: path
          type: string
          description: Group ID
          required: true
    - name: orgs-org_id-assets-repository-aliases
      path: /orgs/{org_id}/assets/repository/aliases
      operations:
      - name: deletealiasesinorg
        method: DELETE
        description: Bulk remove aliases from repository assets in org (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: org_id
          in: path
          type: string
          description: Org ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: listrepositoryaliasesinorg
        method: GET
        description: List repository aliases in org (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: org_id
          in: path
          type: string
          description: Org ID
          required: true
        - name: limit
          in: query
          type: integer
          description: Maximum number of alias items to return per page. A single canonical document with multiple aliases
            may span more than one page.
      - name: createaliasinorg
        method: POST
        description: Add alias for a repository asset in org (Early Access)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: org_id
          in: path
          type: string
          description: Org ID
          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-asset-rest
    port: 8080
    description: REST adapter for Snyk API — Asset. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/groups/{group-id}/assets/repository/aliases
      name: groups-group-id-assets-repository-aliases
      description: REST surface for groups-group_id-assets-repository-aliases.
      operations:
      - method: DELETE
        name: deletealiasesingroup
        description: Bulk remove aliases from repository assets in group (Early Access)
        call: rest-asset.deletealiasesingroup
        with:
          group_id: rest.group_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listrepositoryaliasesingroup
        description: List repository aliases in group (Early Access)
        call: rest-asset.listrepositoryaliasesingroup
        with:
          group_id: rest.group_id
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createaliasingroup
        description: Add alias for a repository asset in group (Early Access)
        call: rest-asset.createaliasingroup
        with:
          group_id: rest.group_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/groups/{group-id}/assets/search
      name: groups-group-id-assets-search
      description: REST surface for groups-group_id-assets-search.
      operations:
      - method: POST
        name: listassets
        description: List Assets with filters (Early Access)
        call: rest-asset.listassets
        with:
          group_id: rest.group_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/groups/{group-id}/assets/{asset-id}
      name: groups-group-id-assets-asset-id
      description: REST surface for groups-group_id-assets-asset_id.
      operations:
      - method: GET
        name: getasset
        description: Get an Asset by its ID (Early Access)
        call: rest-asset.getasset
        with:
          group_id: rest.group_id
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateasset
        description: Update asset attributes (Early Access)
        call: rest-asset.updateasset
        with:
          group_id: rest.group_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/groups/{group-id}/assets/{asset-id}/relationships/assets
      name: groups-group-id-assets-asset-id-relationships-assets
      description: REST surface for groups-group_id-assets-asset_id-relationships-assets.
      operations:
      - method: GET
        name: listrelatedassets
        description: List related assets with pagination (Early Access)
        call: rest-asset.listrelatedassets
        with:
          group_id: rest.group_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/groups/{group-id}/assets/{asset-id}/relationships/projects
      name: groups-group-id-assets-asset-id-relationships-projects
      description: REST surface for groups-group_id-assets-asset_id-relationships-projects.
      operations:
      - method: GET
        name: listassetprojects
        description: List asset projects with pagination (Early Access)
        call: rest-asset.listassetprojects
        with:
          group_id: rest.group_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org-id}/assets/repository/aliases
      name: orgs-org-id-assets-repository-aliases
      description: REST surface for orgs-org_id-assets-repository-aliases.
      operations:
      - method: DELETE
        name: deletealiasesinorg
        description: Bulk remove aliases from repository assets in org (Early Access)
        call: rest-asset.deletealiasesinorg
        with:
          org_id: rest.org_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listrepositoryaliasesinorg
        description: List repository aliases in org (Early Access)
        call: rest-asset.listrepositoryaliasesinorg
        with:
          org_id: rest.org_id
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createaliasinorg
        description: Add alias for a repository asset in org (Early Access)
        call: rest-asset.createaliasinorg
        with:
          org_id: rest.org_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-asset-mcp
    port: 9090
    transport: http
    description: MCP adapter for Snyk API — Asset. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: bulk-remove-aliases-repository-assets
      description: Bulk remove aliases from repository assets in group (Early Access)
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: rest-asset.deletealiasesingroup
      with:
        group_id: tools.group_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-repository-aliases-group-early
      description: List repository aliases in group (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-asset.listrepositoryaliasesingroup
      with:
        group_id: tools.group_id
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: add-alias-repository-asset-group
      description: Add alias for a repository asset in group (Early Access)
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-asset.createaliasingroup
      with:
        group_id: tools.group_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-assets-filters-early-access
      description: List Assets with filters (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: rest-asset.listassets
      with:
        group_id: tools.group_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-asset-its-id-early
      description: Get an Asset by its ID (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-asset.getasset
      with:
        group_id: tools.group_id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-asset-attributes-early-access
      description: Update asset attributes (Early Access)
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: rest-asset.updateasset
      with:
        group_id: tools.group_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-related-assets-pagination-early
      description: List related assets with pagination (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-asset.listrelatedassets
      with:
        group_id: tools.group_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-asset-projects-pagination-early
      description: List asset projects with pagination (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-asset.listassetprojects
      with:
        group_id: tools.group_id
      outputParameters:
      - type: object
        mapping: $.
    - name: bulk-remove-aliases-repository-assets-2
      description: Bulk remove aliases from repository assets in org (Early Access)
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: rest-asset.deletealiasesinorg
      with:
        org_id: tools.org_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-repository-aliases-org-early
      description: List repository aliases in org (Early Access)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-asset.listrepositoryaliasesinorg
      with:
        org_id: tools.org_id
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: add-alias-repository-asset-org
      description: Add alias for a repository asset in org (Early Access)
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-asset.createaliasinorg
      with:
        org_id: tools.org_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.