Snyk · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Snyk Inventory Assets API

37 actions 37 updates phrasing extends openapi/snyk-inventory-assets-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Snyk's API. It is a proposal applied on top of the contract, not a document Snyk publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 37 · first 16 shown; the file carries all of them

$.info
$.paths['/groups/{group_id}/inventory/assets'].get
$.paths['/groups/{group_id}/inventory/assets'].patch
$.paths['/groups/{group_id}/inventory/assets/filters'].get
$.paths['/groups/{group_id}/inventory/assets/filters/{filter_id}/values'].get
$.paths['/groups/{group_id}/inventory/assets/groups'].get
$.paths['/groups/{group_id}/inventory/assets/groups/{group_field_id}/values'].get
$.paths['/groups/{group_id}/inventory/assets/searches'].post
$.paths['/groups/{group_id}/inventory/assets/searches/{search_id}/results'].get
$.paths['/groups/{group_id}/inventory/assets/{asset_id}'].get
$.paths['/groups/{group_id}/inventory/assets/{asset_id}'].patch
$.paths['/groups/{group_id}/inventory/assets/{asset_id}/relationships/projects'].get
$.paths['/groups/{group_id}/inventory/assets/{asset_id}/relationships/targets'].get
$.paths['/orgs/{org_id}/inventory/assets'].get
$.paths['/orgs/{org_id}/inventory/assets'].patch
$.paths['/orgs/{org_id}/inventory/assets/filters'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Snyk Inventory Assets API
  version: 1.0.0
extends: openapi/snyk-inventory-assets-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 36
- target: $.paths['/groups/{group_id}/inventory/assets'].get
  update:
    x-apievangelist-phrasing:
      intent: List or filter inventory assets across a group
      effect: read
      questions:
      - Can I see every asset in my Snyk group's inventory in one list?
      - Is there a way to filter a group's inventory assets with an RSQL expression right away, without starting an async search?
      - What asset types show up when I list inventory for a whole group?
      instructions:
      - text: List all inventory assets in group {group_id}.
        slots:
          group_id: path.group_id
      - text: List group {group_id} inventory assets matching the filter {filter}, sorted by {sort}.
        slots:
          group_id: path.group_id
          filter: query.filter
          sort: query.sort
      - text: Show the first {limit} assets in group {group_id}'s inventory with a total count.
        slots:
          limit: query.limit
          group_id: path.group_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets'].patch
  update:
    x-apievangelist-phrasing:
      intent: Bulk update up to 100 assets in a group
      effect: write
      questions:
      - Can I relabel many assets in a group's inventory in one request?
      - What is the maximum number of assets a group-scope bulk update accepts?
      - If one asset in a group bulk update fails, do the others still get changed?
      instructions:
      - text: Bulk update the class, labels and tags of several assets in group {group_id} in a single transaction.
        slots:
          group_id: path.group_id
      - text: Apply these attribute changes to up to 100 assets at once in group {group_id}.
        slots:
          group_id: path.group_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields usable for filtering group assets
      effect: read
      questions:
      - Which fields can I use in an RSQL filter on my group's asset inventory?
      - What data type is each filterable asset field at group scope?
      instructions:
      - text: List the filterable asset fields for group {group_id}.
        slots:
          group_id: path.group_id
      - text: Show group {group_id}'s filter fields that apply to asset type {asset_types}.
        slots:
          group_id: path.group_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/filters/{filter_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Suggest values for a group asset filter field
      effect: read
      questions:
      - What distinct values exist for a given asset filter field across my group?
      - Can I get autocomplete suggestions for a group-level asset filter as a user types?
      instructions:
      - text: Suggest values for filter field {filter_id} in group {group_id}.
        slots:
          filter_id: path.filter_id
          group_id: path.group_id
      - text: Autocomplete group {group_id} filter {filter_id} values starting with {q}.
        slots:
          group_id: path.group_id
          filter_id: path.filter_id
          q: query.q
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/groups'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields for grouping assets in a group
      effect: read
      questions:
      - Which fields can I group my Snyk group's assets by?
      - What grouping dimensions are available for group-scope asset aggregation?
      instructions:
      - text: List the asset grouping fields available in group {group_id}.
        slots:
          group_id: path.group_id
      - text: Show grouping fields in group {group_id} that apply to {asset_types} assets.
        slots:
          group_id: path.group_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/groups/{group_field_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Count group assets by each value of a field
      effect: read
      questions:
      - How many assets in my group fall under each value of a grouping field?
      - Can I get asset counts per distinct value, filtered, across a whole group?
      instructions:
      - text: Aggregate group {group_id} assets by grouping field {group_field_id}.
        slots:
          group_id: path.group_id
          group_field_id: path.group_field_id
      - text: Count assets per value of field {group_field_id} in group {group_id} where {filter}.
        slots:
          group_field_id: path.group_field_id
          group_id: path.group_id
          filter: query.filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/searches'].post
  update:
    x-apievangelist-phrasing:
      intent: Start an async asset search in a group
      effect: read
      questions:
      - Can I kick off a background asset search across a whole group?
      - Is there an asynchronous way to search a group's inventory for large result sets?
      instructions:
      - text: Start an asynchronous asset search in group {group_id}.
        slots:
          group_id: path.group_id
      - text: Launch a background inventory search across group {group_id} with these criteria.
        slots:
          group_id: path.group_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/searches/{search_id}/results'].get
  update:
    x-apievangelist-phrasing:
      intent: Get results of a group asset search
      effect: read
      questions:
      - Where do I pick up the results of an asset search I started for my group?
      - Can I page through async search results at group scope?
      instructions:
      - text: Fetch the results of asset search {search_id} in group {group_id}.
        slots:
          search_id: path.search_id
          group_id: path.group_id
      - text: Get the next {limit} results from group {group_id} search {search_id}.
        slots:
          limit: query.limit
          group_id: path.group_id
          search_id: path.search_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/{asset_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one asset in a group by ID
      effect: read
      questions:
      - Can I look up a single inventory asset by its ID within my group?
      - What details come back for one asset at group scope?
      instructions:
      - text: Get asset {asset_id} in group {group_id}.
        slots:
          asset_id: path.asset_id
          group_id: path.group_id
      - text: Show only the {fields} fields for asset {asset_id} in group {group_id}.
        slots:
          fields: query.fields
          asset_id: path.asset_id
          group_id: path.group_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/{asset_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update one asset's class, labels or tags in a group
      effect: write
      questions:
      - Can I change the class of a single asset within my group?
      - Is it possible to add or remove tags on one asset at group scope?
      instructions:
      - text: Update the class of asset {asset_id} in group {group_id}.
        slots:
          asset_id: path.asset_id
          group_id: path.group_id
      - text: Add and remove labels on asset {asset_id} in group {group_id}.
        slots:
          asset_id: path.asset_id
          group_id: path.group_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/{asset_id}/relationships/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk projects linked to an asset in a group
      effect: read
      questions:
      - Which Snyk projects are linked to an asset in my group?
      - Can I see only canonical projects for an asset at group scope?
      instructions:
      - text: List projects linked to asset {asset_id} in group {group_id}.
        slots:
          asset_id: path.asset_id
          group_id: path.group_id
      - text: List group {group_id} projects for asset {asset_id} under target {target_id}.
        slots:
          group_id: path.group_id
          asset_id: path.asset_id
          target_id: query.target_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/groups/{group_id}/inventory/assets/{asset_id}/relationships/targets'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk targets linked to an asset in a group
      effect: read
      questions:
      - Which Snyk targets is an asset in my group connected to?
      - Can I page through the targets tied to a group-level asset?
      instructions:
      - text: List targets linked to asset {asset_id} in group {group_id}.
        slots:
          asset_id: path.asset_id
          group_id: path.group_id
      - text: Show the first {limit} targets for group {group_id} asset {asset_id}.
        slots:
          limit: query.limit
          group_id: path.group_id
          asset_id: path.asset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets'].get
  update:
    x-apievangelist-phrasing:
      intent: List or filter inventory assets in an organization
      effect: read
      questions:
      - Can I list all the assets in one Snyk organization's inventory?
      - Is there a way to filter an org's assets with RSQL and get a total count immediately?
      instructions:
      - text: List all inventory assets in organization {org_id}.
        slots:
          org_id: path.org_id
      - text: List org {org_id} assets matching {filter}, sorted by {sort}.
        slots:
          org_id: path.org_id
          filter: query.filter
          sort: query.sort
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets'].patch
  update:
    x-apievangelist-phrasing:
      intent: Bulk update up to 100 assets in an organization
      effect: write
      questions:
      - Can I retag a batch of assets in one organization with a single call?
      - Is an org-scope bulk asset update all-or-nothing?
      instructions:
      - text: Bulk update labels and tags on several assets in organization {org_id} in one transaction.
        slots:
          org_id: path.org_id
      - text: Apply these class changes to up to 100 assets in org {org_id}.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields usable for filtering org assets
      effect: read
      questions:
      - Which fields can I filter my organization's inventory assets on?
      - What asset types does each org-level filter field apply to?
      instructions:
      - text: List the filterable asset fields for organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Show org {org_id} filter fields for {asset_types} assets.
        slots:
          org_id: path.org_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/filters/{filter_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Suggest values for an org asset filter field
      effect: read
      questions:
      - What values can a particular asset filter field take in my organization?
      - Can I autocomplete an org-level asset filter from a partial string?
      instructions:
      - text: Suggest values for filter field {filter_id} in organization {org_id}.
        slots:
          filter_id: path.filter_id
          org_id: path.org_id
      - text: Autocomplete org {org_id} filter {filter_id} values matching {q}.
        slots:
          org_id: path.org_id
          filter_id: path.filter_id
          q: query.q
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/groups'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields for grouping assets in an org
      effect: read
      questions:
      - Which fields can I group an organization's assets by?
      - What aggregation dimensions exist for org-scope asset inventory?
      instructions:
      - text: List the asset grouping fields available in organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Show org {org_id} grouping fields for {asset_types} assets.
        slots:
          org_id: path.org_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/groups/{group_field_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Count org assets by each value of a field
      effect: read
      questions:
      - How are my organization's assets distributed across the values of one field?
      - Can I get per-value asset counts for an org with a filter applied?
      instructions:
      - text: Aggregate org {org_id} assets by grouping field {group_field_id}.
        slots:
          org_id: path.org_id
          group_field_id: path.group_field_id
      - text: Count assets per value of field {group_field_id} in org {org_id} where {filter}.
        slots:
          group_field_id: path.group_field_id
          org_id: path.org_id
          filter: query.filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/searches'].post
  update:
    x-apievangelist-phrasing:
      intent: Start an async asset search in an organization
      effect: read
      questions:
      - Can I run a background asset search limited to one organization?
      - Is there an asynchronous search option for an org's inventory?
      instructions:
      - text: Start an asynchronous asset search in organization {org_id}.
        slots:
          org_id: path.org_id
      - text: Launch a background inventory search in org {org_id} with these criteria.
        slots:
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/searches/{search_id}/results'].get
  update:
    x-apievangelist-phrasing:
      intent: Get results of an org asset search
      effect: read
      questions:
      - Where do I read the results of an asset search I started in my organization?
      - Can I sort the results of an org-level async asset search?
      instructions:
      - text: Fetch the results of asset search {search_id} in organization {org_id}.
        slots:
          search_id: path.search_id
          org_id: path.org_id
      - text: Get org {org_id} search {search_id} results sorted by {sort}.
        slots:
          org_id: path.org_id
          search_id: path.search_id
          sort: query.sort
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/{asset_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one asset in an organization by ID
      effect: read
      questions:
      - Can I fetch one inventory asset by ID inside a specific organization?
      - What does a single org-scope asset record contain?
      instructions:
      - text: Get asset {asset_id} in organization {org_id}.
        slots:
          asset_id: path.asset_id
          org_id: path.org_id
      - text: Show only the {fields} fields of asset {asset_id} in org {org_id}.
        slots:
          fields: query.fields
          asset_id: path.asset_id
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/{asset_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update one asset's class, labels or tags in an org
      effect: write
      questions:
      - Can I change the tags on a single asset inside my organization?
      - Is it possible to reclassify one org-level asset?
      instructions:
      - text: Update the class of asset {asset_id} in organization {org_id}.
        slots:
          asset_id: path.asset_id
          org_id: path.org_id
      - text: Add and remove tags on asset {asset_id} in org {org_id}.
        slots:
          asset_id: path.asset_id
          org_id: path.org_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/{asset_id}/relationships/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk projects linked to an asset in an org
      effect: read
      questions:
      - Which projects in my organization are linked to a given asset?
      - Can I filter an org asset's related projects by target?
      instructions:
      - text: List projects linked to asset {asset_id} in organization {org_id}.
        slots:
          asset_id: path.asset_id
          org_id: path.org_id
      - text: List org {org_id} projects for asset {asset_id} under target {target_id}.
        slots:
          org_id: path.org_id
          asset_id: path.asset_id
          target_id: query.target_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/orgs/{org_id}/inventory/assets/{asset_id}/relationships/targets'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk targets linked to an asset in an org
      effect: read
      questions:
      - Which targets in my organization are tied to a given asset?
      - Can I page through an org asset's linked targets?
      instructions:
      - text: List targets linked to asset {asset_id} in organization {org_id}.
        slots:
          asset_id: path.asset_id
          org_id: path.org_id
      - text: Show the first {limit} targets for org {org_id} asset {asset_id}.
        slots:
          limit: query.limit
          org_id: path.org_id
          asset_id: path.asset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets'].get
  update:
    x-apievangelist-phrasing:
      intent: List or filter inventory assets across a tenant
      effect: read
      questions:
      - Can I get one unified list of containers, images and other assets across my whole tenant?
      - How do I filter tenant-wide inventory assets synchronously with RSQL?
      instructions:
      - text: List all inventory assets in tenant {tenant_id}.
        slots:
          tenant_id: path.tenant_id
      - text: List tenant {tenant_id} assets matching {filter}, sorted by {sort}.
        slots:
          tenant_id: path.tenant_id
          filter: query.filter
          sort: query.sort
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets'].patch
  update:
    x-apievangelist-phrasing:
      intent: Bulk update up to 100 assets across a tenant
      effect: write
      questions:
      - Can I update labels on many assets across my tenant in a single transactional request?
      - What's the per-request cap for tenant-wide bulk asset updates?
      instructions:
      - text: Bulk update class, labels and tags on several assets in tenant {tenant_id} in one transaction.
        slots:
          tenant_id: path.tenant_id
      - text: Apply these tag changes to up to 100 assets in tenant {tenant_id}.
        slots:
          tenant_id: path.tenant_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields usable for filtering tenant assets
      effect: read
      questions:
      - Which fields can I filter tenant-wide inventory assets on?
      - What data types do the tenant-level asset filter fields have?
      instructions:
      - text: List the filterable asset fields for tenant {tenant_id}.
        slots:
          tenant_id: path.tenant_id
      - text: Show tenant {tenant_id} filter fields for {asset_types} assets.
        slots:
          tenant_id: path.tenant_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/filters/{filter_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Suggest values for a tenant asset filter field
      effect: read
      questions:
      - What distinct values does a filter field have across my entire tenant?
      - Can I build filter autocomplete over tenant-wide assets?
      instructions:
      - text: Suggest values for filter field {filter_id} in tenant {tenant_id}.
        slots:
          filter_id: path.filter_id
          tenant_id: path.tenant_id
      - text: Autocomplete tenant {tenant_id} filter {filter_id} values matching {q}.
        slots:
          tenant_id: path.tenant_id
          filter_id: path.filter_id
          q: query.q
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/groups'].get
  update:
    x-apievangelist-phrasing:
      intent: List fields for grouping assets in a tenant
      effect: read
      questions:
      - Which fields can I aggregate tenant-wide assets by?
      - What grouping fields apply to container images across my tenant?
      instructions:
      - text: List the asset grouping fields available in tenant {tenant_id}.
        slots:
          tenant_id: path.tenant_id
      - text: Show tenant {tenant_id} grouping fields for {asset_types} assets.
        slots:
          tenant_id: path.tenant_id
          asset_types: query.asset_types
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/groups/{group_field_id}/values'].get
  update:
    x-apievangelist-phrasing:
      intent: Count tenant assets by each value of a field
      effect: read
      questions:
      - How many assets across my tenant have each value of a given field?
      - Can I get filtered per-value asset counts at tenant scope?
      instructions:
      - text: Aggregate tenant {tenant_id} assets by grouping field {group_field_id}.
        slots:
          tenant_id: path.tenant_id
          group_field_id: path.group_field_id
      - text: Count assets per value of field {group_field_id} in tenant {tenant_id} where {filter}.
        slots:
          group_field_id: path.group_field_id
          tenant_id: path.tenant_id
          filter: query.filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/searches'].post
  update:
    x-apievangelist-phrasing:
      intent: Start an async asset search across a tenant
      effect: read
      questions:
      - Can I start a background search over every asset in my tenant?
      - Does a tenant-wide async asset search redirect me to its results?
      instructions:
      - text: Start an asynchronous asset search in tenant {tenant_id}.
        slots:
          tenant_id: path.tenant_id
      - text: Launch a background inventory search across tenant {tenant_id} with these criteria.
        slots:
          tenant_id: path.tenant_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/searches/{search_id}/results'].get
  update:
    x-apievangelist-phrasing:
      intent: Get results of a tenant asset search
      effect: read
      questions:
      - Where can I read the results of a tenant-wide asset search I started?
      - Can I choose which fields come back in tenant async search results?
      instructions:
      - text: Fetch the results of asset search {search_id} in tenant {tenant_id}.
        slots:
          search_id: path.search_id
          tenant_id: path.tenant_id
      - text: Get the next {limit} results from tenant {tenant_id} search {search_id}.
        slots:
          limit: query.limit
          tenant_id: path.tenant_id
          search_id: path.search_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/{asset_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one asset in a tenant by ID
      effect: read
      questions:
      - Can I look up any asset in my tenant by its unique ID?
      - What type-specific details come back for a single tenant asset?
      instructions:
      - text: Get asset {asset_id} in tenant {tenant_id}.
        slots:
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      - text: Show only the {fields} fields of asset {asset_id} in tenant {tenant_id}.
        slots:
          fields: query.fields
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/{asset_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update one asset's class, labels or tags in a tenant
      effect: write
      questions:
      - Can I edit the labels of a single asset at tenant scope?
      - What must I include when updating one tenant asset's attributes?
      instructions:
      - text: Update the class of asset {asset_id} in tenant {tenant_id}.
        slots:
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      - text: Add and remove labels on asset {asset_id} in tenant {tenant_id}.
        slots:
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk projects linked to an asset in a tenant
      effect: read
      questions:
      - Which Snyk projects anywhere in my tenant are linked to an asset?
      - Can I restrict a tenant asset's projects to canonical ones?
      instructions:
      - text: List projects linked to asset {asset_id} in tenant {tenant_id}.
        slots:
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      - text: List tenant {tenant_id} projects for asset {asset_id} under target {target_id}.
        slots:
          tenant_id: path.tenant_id
          asset_id: path.asset_id
          target_id: query.target_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/targets'].get
  update:
    x-apievangelist-phrasing:
      intent: List Snyk targets linked to an asset in a tenant
      effect: read
      questions:
      - Which targets across my tenant are tied to a given asset?
      - Can I paginate the targets linked to a tenant asset?
      instructions:
      - text: List targets linked to asset {asset_id} in tenant {tenant_id}.
        slots:
          asset_id: path.asset_id
          tenant_id: path.tenant_id
      - text: Show the first {limit} targets for tenant {tenant_id} asset {asset_id}.
        slots:
          limit: query.limit
          tenant_id: path.tenant_id
          asset_id: path.asset_id
      method: generated
      generated: '2026-09-26'