Overview
The Assets API lets external systems manage the LowerPlane asset inventory programmatically. Use it to sync assets from your CMDB, provisioning pipelines, or custom discovery tools. All endpoints require API key authentication.Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/external/assets | List assets |
| GET | /api/v1/external/assets/{id} | Get a single asset |
| POST | /api/v1/external/assets | Create an asset |
| PUT | /api/v1/external/assets/{id} | Update an asset |
| DELETE | /api/v1/external/assets/{id} | Delete an asset |
List Assets
Filter by asset type (see Asset types).
Filter by status:
active, inactive, archived.Filter by criticality:
low, medium, high, critical.Filter by data classification:
public, internal, confidential, restricted.Search assets by name, description, or external ID.
Sort field:
name, type, status, criticality, created_at, updated_at.Sort direction:
asc or desc.Page number.
Results per page.
Get an Asset
Create an Asset
Display name of the asset.
Asset type (see Asset types).
Description of the asset.
Free-form subtype, e.g., an OS name (
macOS, Ubuntu 22.04) or instance class.Your system’s identifier for the asset (e.g., AWS ARN, serial number). Must be unique within your organization.
Link to the asset in an external system.
active, inactive, or archived.Data classification:
public, internal, confidential, restricted.low, medium, high, or critical.Deployment environment, e.g.,
production, staging.Cloud region or physical region, e.g.,
us-east-1.Physical location, if applicable.
Whether the asset is in scope for compliance.
Types of data the asset handles, e.g.,
["pii", "financial"].Whether the asset stores or processes sensitive data.
Whether the asset’s data is encrypted at rest.
Encryption mechanism, e.g.,
AES-256.Free-form tags.
Arbitrary key-value metadata.
201 Created with the full asset record, including its id.
Update an Asset
Delete an Asset
Asset Types
| Type | Description |
|---|---|
workstation | Laptops and desktops (aliases: laptop, desktop) |
server | Physical or virtual servers |
mobile_device | Phones and tablets (alias: mobile) |
network_device | Routers, switches, firewalls (alias: network) |
database | Databases |
application | Applications and software (alias: software) |
cloud_account | Cloud provider accounts |
cloud_resource | Generic cloud resources |
container | Containers |
api | APIs |
data_store | Storage systems (alias: storage) |
saas | SaaS applications |
other | Anything else |
s3_bucket, ec2_instance, rds_instance, iam_user, iam_role, azure_vm, azure_storage_account, azure_ad_user, gce_instance, gcs_bucket, digitalocean_droplet, digitalocean_volume.
Unrecognized types are stored as
other.Error Responses
| Status | Error | Description |
|---|---|---|
| 400 | name and type are required | Missing required fields on create |
| 400 | No fields to update | Update request body contained no recognized fields |
| 401 | — | Authentication failure (see Authentication) |
| 404 | Asset not found | Asset ID doesn’t exist or belongs to another organization |
| 409 | — | An asset with the same external_id already exists in your organization |