# ScalePad Core

> The ScalePad Core API — the read-only, US-only unified data layer over clients, contacts, members, sites, opportunities, hardware and SaaS assets, the product catalog, service contracts, tickets, and integration configurations.

- Skill: `wyre-ai/scalepad-core` (Agent Skill)
- Install (CLI): `npx skillmds@latest add wyre-ai/scalepad-core`
- Raw SKILL.md: https://api.skillmd.com/api/skills/wyre-ai/scalepad-core/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: WYRE-AI (https://skillmd.com/u/wyre-ai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/wyre-ai/scalepad-core

---


# ScalePad Core (Unified Platform Data)

## Overview

Core is ScalePad's read-only unified data surface (US-only). It is the
best starting point for cross-product work: resolve client IDs, asset
IDs, and serial numbers here before touching Lifecycle Manager,
ControlMap, or Quoter. Discover this domain's tools with
`scalepad_navigate` (domain `core`).

## Anti-triggers

Core holds *lifecycle records* about assets — what was bought, when the
warranty ends, which contract covers it. It is not a live view of the
machine:

- **Live device state** — is it online, patched, low on disk, alerting
  right now? Core's asset rows are synced snapshots. Use the RMM:
  `kaseya/datto-rmm` (`datto-rmm-devices`), `ncentral`, `ninjaone`,
  `atera`, or `connectwise/automate`.
- **Changing anything** — Core is entirely read-only. Once you have the
  client or asset ID, the write surface is
  `scalepad-lifecycle-manager`, `scalepad-controlmap`, or
  `scalepad-quoter`.
- **Hardware in Lifecycle Manager** — LM keeps its own asset list under
  opaque `hardware_key` values that are *not* the Core asset IDs; do
  not carry one across. Use `scalepad-lifecycle-manager`.
- **Documented configurations, passwords, and runbooks** — use
  `kaseya/it-glue` or `hudu`.

## API Tools (24 total, all read-only — every one is listed below)

### Clients & People

| Tool | Purpose |
|------|---------|
| `scalepad_core_clients_list` / `scalepad_core_clients_get` | List/get clients (filter by name, lifecycle, contact/asset counts, record lineage) |
| `scalepad_core_contacts_list` / `scalepad_core_contacts_get` | List/get contacts (upstream is a POST search — the tool behaves like a normal list) |
| `scalepad_core_members_list` / `scalepad_core_members_get` | List/get MSP team members (also a POST search upstream) |
| `scalepad_core_sites_list` / `scalepad_core_sites_get` | List/get client sites |
| `scalepad_core_opportunities_list` / `scalepad_core_opportunities_get` | List/get sales opportunities |

### Assets & Catalog

| Tool | Purpose |
|------|---------|
| `scalepad_core_hardware_assets_list` / `scalepad_core_hardware_assets_get` | Hardware assets (filter by client, manufacturer, model, serial_number, type, CPU/RAM/disk configuration) |
| `scalepad_core_saas_assets_list` / `scalepad_core_saas_assets_get` | SaaS subscriptions (filter by product, status, tenant_domain, term dates) |
| `scalepad_core_saas_users_list` / `scalepad_core_saas_users_get` | SaaS seat assignments per user |
| `scalepad_core_product_catalog_list` / `scalepad_core_product_catalog_get` | Product catalog records |

### Service & Integrations

| Tool | Purpose |
|------|---------|
| `scalepad_core_contracts_list` / `scalepad_core_contracts_get` | Service contracts (filter by client, type, term, status, recurring) |
| `scalepad_core_tickets_list` / `scalepad_core_tickets_get` | PSA tickets synced into ScalePad |
| `scalepad_core_integration_configurations_list` | Configured integrations |
| `scalepad_core_integration_vendors_list` | Available integration vendors |

## Common Workflows

1. **Resolve a client** — `scalepad_core_clients_list` with a
   `filter` on `name`; note the client `id` for downstream calls.
2. **Asset inventory for a client** —
   `scalepad_core_hardware_assets_list` filtered by `client.id`,
   paginating with `cursor` until exhausted.
3. **Contract expiry review** — `scalepad_core_contracts_list`
   filtered by `client.id` and `term.ends_at`.

## Error Handling

Core returns 402 if the account has no active Core subscription; it is
US-only, so `X-ScalePad-Region` does not affect it. All other error
semantics follow [api-patterns](../api-patterns/SKILL.md).

## Best Practices

- Everything here is read-only — safe to call freely within the
  shared 50-req/5-s rate limit.
- Filters map to the API's `filter[<key>]` params; pass them in the
  tool's `filter` object.
- Use record lineage filters to trace which integration a record came
  from.

## Related Skills

- [lifecycle-manager](../lifecycle-manager/SKILL.md) - act on the assets you find here
- [api-patterns](../api-patterns/SKILL.md) - auth, pagination, errors

