From syncro-msp
Manages Syncro MSP customer records: create, update, search; handle contacts, sites/locations via REST API. For MSP client onboarding and management.
How this skill is triggered — by the user, by Claude, or both
Slash command
/syncro-msp:customersThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Syncro customers are the foundation of your service delivery. Every ticket, asset, invoice, and contract is associated with a customer. This skill covers comprehensive customer management including CRUD operations, contact management, and site/location handling.
Syncro customers are the foundation of your service delivery. Every ticket, asset, invoice, and contract is associated with a customer. This skill covers comprehensive customer management including CRUD operations, contact management, and site/location handling.
The primary entity representing a client organization.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
business_name | string | Yes | Official company name |
firstname | string | No | Primary contact first name |
lastname | string | No | Primary contact last name |
email | string | No | Primary email address |
phone | string | No | Main phone number |
mobile | string | No | Mobile phone |
address | string | No | Street address |
address_2 | string | No | Address line 2 |
city | string | No | City |
state | string | No | State/Province |
zip | string | No | ZIP/Postal code |
notes | text | No | Internal notes |
referred_by | string | No | Referral source |
tax_rate | decimal | No | Tax rate percentage |
Individual people at a customer organization.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
customer_id | integer | Yes | Associated customer |
name | string | Yes | Full name |
email | string | No | Email address |
phone | string | No | Phone number |
mobile | string | No | Mobile number |
title | string | No | Job title |
notes | text | No | Notes about contact |
Syncro supports flexible customer categorization:
| Type | Use Case |
|---|---|
| Business | Standard commercial clients |
| Residential | Home users |
| Government | Government agencies |
| Non-Profit | Non-profit organizations |
POST /api/v1/customers
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
{
"business_name": "Acme Corporation",
"firstname": "John",
"lastname": "Smith",
"email": "[email protected]",
"phone": "555-123-4567",
"address": "123 Main Street",
"city": "Springfield",
"state": "IL",
"zip": "62701",
"notes": "Referred by ABC Company"
}
Search by name:
GET /api/v1/customers?query=acme
List all customers with pagination:
GET /api/v1/customers?page=1
Filter by email:
GET /api/v1/[email protected]
GET /api/v1/customers/{id}
Response includes:
PUT /api/v1/customers/{id}
Content-Type: application/json
{
"phone": "555-987-6543",
"notes": "Updated contact information per request"
}
POST /api/v1/contacts
Content-Type: application/json
{
"customer_id": 12345,
"name": "Jane Doe",
"email": "[email protected]",
"phone": "555-123-4568",
"title": "IT Manager",
"notes": "Primary technical contact"
}
Contacts for a customer:
GET /api/v1/contacts?customer_id=12345
Search by email:
GET /api/v1/[email protected]
PUT /api/v1/contacts/{id}
Content-Type: application/json
{
"title": "IT Director",
"phone": "555-123-4569"
}
DELETE /api/v1/contacts/{id}
Create customer record
Create primary contact
Add additional contacts
Set up assets
Create contract/agreement
Verify before creating
Maintain accuracy
Track relationships
When you discover duplicate customers:
{
"customer": {
"id": 12345,
"business_name": "Acme Corporation",
"firstname": "John",
"lastname": "Smith",
"email": "[email protected]",
"phone": "555-123-4567",
"address": "123 Main Street",
"city": "Springfield",
"state": "IL",
"zip": "62701",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-02-10T14:22:00Z"
}
}
{
"contact": {
"id": 67890,
"customer_id": 12345,
"name": "Jane Doe",
"email": "[email protected]",
"phone": "555-123-4568",
"mobile": "555-987-6543",
"title": "IT Manager",
"notes": "Primary technical contact",
"created_at": "2024-01-15T11:00:00Z"
}
}
| Code | Message | Resolution |
|---|---|---|
| 400 | Invalid parameters | Check field values |
| 401 | Unauthorized | Verify API key |
| 404 | Customer not found | Confirm customer ID |
| 422 | Validation failed | Check required fields |
| 429 | Rate limited | Wait and retry |
"business_name is required" - Customer must have a name
"Invalid email format" - Check email address syntax
"customer_id required" - Contact must belong to a customer
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin syncroManages Atera customers and contacts via API: create, update, search records; handle info, custom fields, lifecycle ops. For MSP account management.
Guides management of Autotask CRM entities: companies, contacts, sites/locations, and opportunities. Useful for MSP account management, client onboarding, and REST API usage.
Manages SuperOps.ai client accounts via GraphQL: create, update, search, delete; handle sites, contacts, custom fields, stages, and statuses. For MSP PSA workflows.