Assets
Manage assets in the Threat & Asset Management (TAM) module.
Commands
assets list
List assets with optional filtering, searching, and sorting.
mysecutec assets list [ flags]
Flags
Flag
Type
Default
Description
--limit
int
20
Maximum number of results
--offset
int
0
Number of results to skip
--search
string
Search filter
--sort
strings
Sort fields (prefix - for descending)
--type
strings
Filter by asset type
--module
strings
Filter by license module
--public-facing
bool
Show only public-facing assets
--deleted
bool
Show deleted assets
Valid asset types: domain, hardware, ip, operating_system, person, service, software, subdomain, tenant, web_entity
Valid license modules: asm, dnm, lcm, m365
API
Query Parameters:
Parameter
Type
Description
limit
int
Max results
offset
int
Skip results
search
string
Search filter
sort
string
Sort fields (comma-separated)
type
string
Asset type filter (comma-separated)
license_module
string
License module filter (comma-separated)
public_facing
bool
Public-facing filter
deleted
bool
Include deleted
Request Example
mysecutec assets list --limit 5 --type domain,ip --module asm --sort -created_at
GET /tam/v1/assets/?limit=5&offset=0&type=domain,ip&license_module=asm&sort=-created_at
Authorization: Bearer <token>
Accept: application/json
Response
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 {
"pagination" : {
"limit" : 5 ,
"offset" : 0 ,
"total" : 42 ,
"unfiltered_total" : 150 ,
"next" : "/tam/v1/assets/?limit=5&offset=5" ,
"previous" : null
},
"assets" : [
{
"id" : "a1b2c3d4-e5f6-7890-abcd-ef1234567890" ,
"type" : "domain" ,
"name" : "example.com" ,
"version" : null ,
"note" : "Primary domain" ,
"public_facing" : true ,
"business_value" : 5 ,
"identifying_properties" : {
"domain" : "example.com"
},
"tech_solutions" : [
{
"name" : "ASM Scanner" ,
"version" : "1.0"
}
],
"threat_summaries" : {
"total" : 12 ,
"critical" : 1 ,
"high" : 3 ,
"medium" : 5 ,
"low" : 2 ,
"info" : 1
},
"created_at" : "2025-01-15T10:30:00Z" ,
"updated_at" : "2025-06-20T14:22:00Z" ,
"deleted" : false ,
"deleted_at" : null
}
]
}
Model: Asset
Field
Type
Description
id
string (UUID)
Asset identifier
type
string
Asset type
name
string
Asset name
version
string
Asset version (nullable)
note
string
User note (nullable)
public_facing
bool
Whether asset is public-facing
business_value
int (0-5)
Business value rating
identifying_properties
map
Key-value properties
tech_solutions
[]TechSolution
Associated tech solutions
threat_summaries
ThreatSummary
Aggregated threat counts
created_at
timestamp
Creation timestamp
updated_at
timestamp
Last update timestamp
deleted
bool
Soft-delete flag
deleted_at
timestamp
Deletion timestamp (nullable)
assets get
Retrieve a single asset by ID.
mysecutec assets get <asset_id>
API
Request Example
mysecutec assets get a1b2c3d4-e5f6-7890-abcd-ef1234567890
GET /tam/v1/assets/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Authorization: Bearer <token>
Accept: application/json
Response
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 {
"id" : "a1b2c3d4-e5f6-7890-abcd-ef1234567890" ,
"type" : "domain" ,
"name" : "example.com" ,
"version" : null ,
"note" : "Primary domain" ,
"public_facing" : true ,
"business_value" : 5 ,
"identifying_properties" : {
"domain" : "example.com"
},
"tech_solutions" : [
{
"name" : "ASM Scanner" ,
"version" : "1.0"
}
],
"threat_summaries" : {
"total" : 12 ,
"critical" : 1 ,
"high" : 3 ,
"medium" : 5 ,
"low" : 2 ,
"info" : 1
},
"created_at" : "2025-01-15T10:30:00Z" ,
"updated_at" : "2025-06-20T14:22:00Z" ,
"deleted" : false ,
"deleted_at" : null
}
assets update
Update an asset's note, public-facing status, or business value.
mysecutec assets update <asset_id> [ flags]
Flags
Flag
Type
Description
--note
string
Asset note
--public-facing
string
Public facing (true/false)
--business-value
int
Business value (1-5)
API
PATCH /tam/v1/assets/{id}
Request Example
mysecutec assets update a1b2c3d4 --note "Updated note" --business-value 4 --public-facing true
PATCH /tam/v1/assets/a1b2c3d4
Authorization: Bearer <token>
Content-Type: application/json
{
"note": "Updated note",
"public_facing": true,
"business_value": 4
}
Model: AssetPatch
Field
Type
Description
note
string
Asset note
public_facing
*bool
Public-facing flag
business_value
*int
Business value (1-5)
Response
Returns the updated Asset object (same structure as assets get ).
assets business-value
Bulk-set the business value (1-5) for many assets at once. Asset IDs may be passed as positional arguments, repeated --id flags, or piped on stdin (one ID per line) with --stdin.
Mutation
This command modifies data. It prompts for confirmation unless --yes is passed.
mysecutec assets business-value [ asset_id...] [ flags]
Flags
Flag
Type
Default
Description
--id
stringArray
Asset ID (repeatable)
--value
int
Required. Business value to set (1-5)
--stdin
bool
Read asset IDs from stdin (one per line)
-y, --yes
bool
Skip the confirmation prompt
API
PUT /threat/v1/assets/business_value
Note
Unlike the other asset endpoints (which live under /tam/v1), this bulk endpoint is under /threat/v1.
Request Example
mysecutec assets business-value a1b2c3d4 e5f6g7h8 --value 5 --yes
Read IDs from stdin (e.g. piped from assets list):
mysecutec assets list --type domain -o json | jq -r '.assets[].id' | mysecutec assets business-value --stdin --value 4 --yes
PUT /threat/v1/assets/business_value
Authorization: Bearer <token>
Content-Type: application/json
{
"asset_ids": [
"a1b2c3d4",
"e5f6g7h8"
],
"business_value": 5
}
Model: AssetBusinessValueBulkUpdate
Field
Type
Description
asset_ids
[]string
Asset identifiers to update
business_value
int
Business value (1-5)
assets delete
Soft-delete an asset.
mysecutec assets delete <asset_id>
API
DELETE /tam/v1/assets/{id}
Request Example
mysecutec assets delete a1b2c3d4-e5f6-7890-abcd-ef1234567890
DELETE /tam/v1/assets/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Authorization: Bearer <token>
Response
Returns the deleted Asset object with deleted: true and deleted_at set.
assets restore
Restore a soft-deleted asset.
mysecutec assets restore <asset_id>
API
POST /tam/v1/assets/{id}/undelete
Request Example
mysecutec assets restore a1b2c3d4-e5f6-7890-abcd-ef1234567890
POST /tam/v1/assets/a1b2c3d4-e5f6-7890-abcd-ef1234567890/undelete
Authorization: Bearer <token>
Response
Returns the restored Asset object with deleted: false.
assets threats
List threats associated with a specific asset.
mysecutec assets threats <asset_id> [ flags]
Flags
Flag
Type
Default
Description
--limit
int
20
Maximum number of results
--offset
int
0
Number of results to skip
--search
string
Search filter
--sort
strings
Sort fields
--severity
strings
Filter by severity
Valid severities: critical, high, medium, low, info
API
GET /tam/v1/assets/{id}/threats
Request Example
mysecutec assets threats a1b2c3d4 --severity critical,high --limit 10
GET /tam/v1/assets/a1b2c3d4/threats?limit=10&severity=critical,high
Authorization: Bearer <token>
Accept: application/json
Response
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 {
"pagination" : {
"limit" : 10 ,
"offset" : 0 ,
"total" : 4
},
"threats" : [
{
"id" : "t1234-5678" ,
"name" : "CVE-2024-1234" ,
"severity" : "critical" ,
"cvss_score" : 9.8 ,
"system_status" : "unsolved" ,
"first_seen_at" : "2025-03-01T12:00:00Z"
}
]
}
assets filter
Get available filter options for the assets list view.
API
GET /tam/v1/assets/filter
Request Example
GET /tam/v1/assets/filter
Authorization: Bearer <token>
Accept: application/json
Response
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 {
"types" : [
{
"label" : "Domain" ,
"value" : "domain" ,
"unfiltered_total" : 25 ,
"filtered_total" : 25
},
{
"label" : "IP Address" ,
"value" : "ip" ,
"unfiltered_total" : 50 ,
"filtered_total" : 50
}
],
"public_facings" : [
{
"label" : "Yes" ,
"value" : true ,
"unfiltered_total" : 30 ,
"filtered_total" : 30
},
{
"label" : "No" ,
"value" : false ,
"unfiltered_total" : 45 ,
"filtered_total" : 45
}
],
"license_modules" : [
{
"label" : "ASM" ,
"value" : "asm" ,
"unfiltered_total" : 60 ,
"filtered_total" : 60
}
]
}
Model: FilterOption
Field
Type
Description
label
string
Display label
value
string or bool
Filter value
unfiltered_total
int
Total count without filters
filtered_total
int
Count with current filters