Receber por email
← Voltar para o catálogo

SuperOps Clients

Use this skill when working with SuperOps.ai clients - creating, updating, searching, and managing client accounts. Covers client fields, sites, contacts, custom fields, and client lifecycle management. Essential for MSP account management through SuperOps.ai PSA.

31estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: Apache-2.0

Como adicionar

/plugin marketplace add wyre-technology/msp-claude-plugins

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/superops-clients/svg)](https://www.skillteca.com.br/skills/superops-clients)
#ai

Skills relacionadas

Ver todas de Documentos →

Alerta por categoria

Receba novas skills de Documentos toda segunda

1 email curto, só com as skills novas de Documentos. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

SuperOps.ai Client Management

Overview

Clients (also called Accounts) are the foundation of SuperOps.ai's PSA. Every ticket, asset, and service is associated with a client. This skill covers client CRUD operations, site management, contact handling, and custom field configuration.

Client Stage Values

| Stage | Description | |-------|-------------| | Lead | Prospective client | | Prospect | Qualified lead | | Customer | Active paying client | | Churned | Former client |

Client Status Values

| Status | Description | |--------|-------------| | Active | Current client | | Inactive | Temporarily suspended | | Archived | No longer serviced |

Key Client Fields

Core Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | accountId | ID | System | Unique identifier | | name | String | Yes | Client/company name | | stage | Enum | No | Lead, Prospect, Customer, Churned | | status | Enum | No | Active, Inactive, Archived | | emailDomains | [String] | No | Associated email domains | | website | String | No | Company website | | phone | String | No | Primary phone number |

Business Fields

| Field | Type | Description | |-------|------|-------------| | industry | String | Industry type | | employeeCount | Int | Number of employees | | annualRevenue | Decimal | Annual revenue | | accountManager | Technician | Assigned account manager | | primaryContact | Contact | Main point of contact |

Address Fields

| Field | Type | Description | |-------|------|-------------| | address | String | Street address | | city | String | City | | state | String | State/province | | country | String | Country | | postalCode | String | ZIP/postal code |

GraphQL Operations

Create a Client

mutation createClientV2($input: CreateClientInputV2!) {
  createClientV2(input: $input) {
    accountId
    name
    stage
    status
    emailDomains
    createdTime
  }
}

Variables:

{
  "input": {
    "name": "Acme Corporation",
    "stage": "Customer",
    "status": "Active",
    "emailDomains": ["acme.com", "acmecorp.com"],
    "website": "https://www.acme.com",
    "phone": "+1-555-123-4567",
    "industry": "Technology",
    "employeeCount": 150,
    "address": {
      "street": "123 Main Street",
      "city": "San Francisco",
      "state": "CA",
      "country": "USA",
      "postalCode": "94102"
    },
    "accountManager": {
      "email": "sarah.tech@msp.com"
    }
  }
}

List Clients

query getClientList($input: ListInfoInput!) {
  getClientList(input: $input) {
    clients {
      accountId
      name
      stage
      status
      emailDomains
      phone
      website
      industry
      employeeCount
      accountManager {
        id
        name
        email
      }
      primaryContact {
        id
        name
        email
      }
      createdTime
      lastUpdatedTime
    }
    listInfo {
      totalCount
      hasNextPage
      endCursor
    }
  }
}

Variables - Active Customers:

{
  "input": {
    "first": 50,
    "filter": {
      "stage": "Customer",
      "status": "Active"
    },
    "orderBy": {
      "field": "name",
      "direction": "ASC"
    }
  }
}

Variables - Search by Name:

{
  "input": {
    "first": 20,
    "filter": {
      "name": {
        "contains": "Acme"
      }
    }
  }
}

Get Single Client

query getClient($input: ClientIdentifierInput!) {
  getClient(input: $input) {
    accountId
    name
    stage
    status
    emailDomains
    website
    phone
    industry
    employeeCount
    annualRevenue
    address {
      street
      city
      state
      country
      postalCode
    }
    accountManager {
      id
      name
      email
      phone
    }
    primaryContact {
      id
      name
      email
      phone
    }
    sites {
      id
      name
      address
      isDefault
    }
    customFields {
      name
      value
    }
    createdTime
    lastUpdatedTime
  }
}

Variables:

{
  "input": {
    "accountId": "client-uuid-here"
  }
}

Update a Client

mutation updateClient($input: UpdateClientInput!) {
  updateClient(input: $input) {
    accountId
    name
    stage
    status
    lastUpdatedTime
  }
}

Variables:

{
  "input": {
    "accountId": "client-uuid",
    "stage": "Customer",
    "status": "Active",
    "accountManager": {
      "id": "tech-uuid"
    },
    "customFields": [
      {
        "name": "Contract Type",
        "value": "Managed Services"
      },
      {
        "name": "Monthly Retainer",
        "value": "5000"
      }
    ]
  }
}

Delete Clients

Soft Delete (Recoverable):

mutation softDeleteClients($input: DeleteClientsInput!) {
  softDeleteClients(input: $input)
}

Hard Delete (Permanent):

mutation hardDeleteClients($input: DeleteClientsInput!) {
  hardDeleteClients(input: $input)
}

Restore Deleted Clients:

mutation restoreClients($input: RestoreClientsInput!) {
  restoreClients(input: $input)
}

Variables:

{
  "input": {
    "accountIds": ["client-uuid-1", "client-uuid-2"]
  }
}

Site Management

Create a Site

mutation createSite($input: CreateSiteInput!) {
  createSite(input: $input) {
    id
    name
    address {
      street
      city
      state
      country
      postalCode
    }
    isDefault
    client {
      accountId
      name
    }
  }
}

Variables:

{
  "input": {
    "clientId": "client-uuid",
    "name": "San Francisco Office",
    "address": {
      "street": "456 Market Street",
      "city": "San Francisco",
      "state": "CA",
      "country": "USA",
      "postalCode": "94103"
    },
    "isDefault": false,
    "phone": "+1-555-234-5678",
    "timezone": "America/Los_Angeles"
  }
}

List Client Sites

query getClientSites($input: ClientSitesInput!) {
  getClientSites(input: $input) {
    sites {
      id
      name
      address {
        street
        city
        state
        country
        postalCode
      }
      phone
      timezone
      isDefault
      assetCount
      contactCount
    }
    listInfo {
      totalCount
    }
  }
}

Update a Site

mutation updateSite($input: UpdateSiteInput!) {
  updateSite(input: $input) {
    id
    name
    isDefault
    lastUpdatedTime
  }
}

Contact Management

Create a Contact (Requester)

mutation createRequester($input: CreateRequesterInput!) {
  createRequester(input: $input) {
    id
    firstName
    lastName
    email
    phone
    title
    client {
      accountId
      name
    }
    site {
      id
      name
    }
  }
}

Variables:

{
  "input": {
    "clientId": "client-uuid",
    "firstName": "John",
    "lastName": "Smith",
    "email": "john.smith@acme.com",
    "phone": "+1-555-345-6789",
    "title": "IT Manager",
    "siteId": "site-uuid",
    "isPrimaryContact": true
  }
}

List Client Contacts

query getClientRequesters($input: ClientRequestersInput!) {
  getClientRequesters(input: $input) {
    requesters {
      id
      firstName
      lastName
      email
      phone
      title
      site {
        id
        name
      }
      isPrimaryContact
      isVIP
    }
    listInfo {
      totalCount
      hasNextPage
    }
  }
}

Update a Contact

mutation updateRequester($input: UpdateRequesterInput!) {
  updateRequester(input: $input) {
    id
    firstName
    lastName
    email
    phone
    lastUpdatedTime
  }
}

Common Workflows

Client Onboarding

  1. Create client:
mutation onboardClient($client: CreateClientInputV2!, $site: CreateSiteInput!, $contact: CreateRequesterInput!) {
  createClientV2(input: $client) {
    accountId
    name
  }
}

Then create site and primary

Compartilhar X LinkedIn