From syncro-msp
Manages Syncro MSP assets for tracking customer hardware, software, and devices. Covers asset fields, RMM integration, patch management, inventory, and endpoint monitoring.
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin syncroThis skill uses the workspace's default tool permissions.
Syncro assets represent the hardware, software, and devices you manage for customers. Assets integrate with Syncro's built-in RMM capabilities for monitoring, patch management, and remote access. This skill covers asset tracking, RMM integration, and inventory management.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Analyzes BMad project state from catalog CSV, configs, artifacts, and query to recommend next skills or answer questions. Useful for help requests, 'what next', or starting BMad.
Syncro assets represent the hardware, software, and devices you manage for customers. Assets integrate with Syncro's built-in RMM capabilities for monitoring, patch management, and remote access. This skill covers asset tracking, RMM integration, and inventory management.
A tracked device or piece of equipment for a customer.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
customer_id | integer | Yes | Associated customer |
asset_type | string | Yes | Type classification |
name | string | Yes | Asset name/hostname |
serial_number | string | No | Serial number |
model | string | No | Model name/number |
manufacturer | string | No | Manufacturer/vendor |
purchase_date | date | No | When purchased |
warranty_expires | date | No | Warranty expiration |
notes | text | No | Internal notes |
properties | object | No | Custom properties |
Common asset type classifications:
| Type | Description |
|---|---|
| Desktop | Desktop computers |
| Laptop | Portable computers |
| Server | Server systems |
| Network Device | Routers, switches, firewalls |
| Printer | Printers and MFPs |
| Mobile Device | Phones, tablets |
| Other | Miscellaneous hardware |
When RMM agent is installed, additional data is collected:
| Property | Description |
|---|---|
os_name | Operating system name |
os_version | OS version string |
last_seen | Last check-in timestamp |
online | Current online status |
cpu | Processor information |
memory | Total RAM |
disk_space | Storage capacity |
ip_address | Current IP address |
mac_address | Network MAC address |
logged_in_user | Current logged-in user |
POST /api/v1/customer_assets
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
{
"customer_id": 12345,
"asset_type": "Desktop",
"name": "ACME-WKS-001",
"serial_number": "ABC123456",
"model": "OptiPlex 7090",
"manufacturer": "Dell",
"purchase_date": "2024-01-15",
"warranty_expires": "2027-01-15",
"notes": "Finance department workstation"
}
All assets for a customer:
GET /api/v1/customer_assets?customer_id=12345
Search by name/hostname:
GET /api/v1/customer_assets?query=ACME-WKS
Filter by asset type:
GET /api/v1/customer_assets?asset_type=Server
Paginated listing:
GET /api/v1/customer_assets?page=1
GET /api/v1/customer_assets/{id}
Response includes:
PUT /api/v1/customer_assets/{id}
Content-Type: application/json
{
"name": "ACME-WKS-001-NEW",
"notes": "Renamed per naming convention update"
}
DELETE /api/v1/customer_assets/{id}
GET /api/v1/customer_assets/{id}/patches
Response includes:
| Status | Description |
|---|---|
| Online | Agent actively checking in |
| Offline | No recent check-in |
| Needs Attention | Alerts or issues detected |
| Updating | Agent update in progress |
Syncro provides built-in remote access for managed assets:
Run scripts on managed assets:
POST /api/v1/customer_assets/{id}/run_script
Content-Type: application/json
{
"script_id": 456,
"parameters": {
"param1": "value1"
}
}
Create asset record
Deploy RMM agent
Configure monitoring
Document in notes
{
"asset": {
"id": 98765,
"customer_id": 12345,
"asset_type": "Desktop",
"name": "ACME-WKS-001",
"serial_number": "ABC123456",
"model": "OptiPlex 7090",
"manufacturer": "Dell",
"purchase_date": "2024-01-15",
"warranty_expires": "2027-01-15",
"notes": "Finance department workstation",
"created_at": "2024-01-20T10:00:00Z",
"updated_at": "2024-02-15T14:30:00Z",
"properties": {
"os_name": "Windows 11 Pro",
"os_version": "22H2",
"cpu": "Intel Core i7-11700",
"memory": "16 GB",
"disk_space": "512 GB SSD",
"ip_address": "192.168.1.100",
"last_seen": "2024-02-15T14:25:00Z",
"online": true
}
}
}
{
"patches": {
"available": [
{
"kb": "KB5034441",
"title": "2024-02 Cumulative Update",
"severity": "Critical",
"release_date": "2024-02-13"
}
],
"installed": [
{
"kb": "KB5034123",
"title": "2024-01 Cumulative Update",
"installed_date": "2024-01-15"
}
],
"last_scan": "2024-02-15T06:00:00Z"
}
}
| Code | Message | Resolution |
|---|---|---|
| 400 | Invalid parameters | Check field values |
| 401 | Unauthorized | Verify API key |
| 404 | Asset not found | Confirm asset ID |
| 422 | Validation failed | Check required fields |
| 429 | Rate limited | Wait and retry |
"customer_id is required" - Asset must belong to a customer
"name is required" - Asset must have a name
"Invalid asset_type" - Use valid asset type string