Skip to main content
Tools Reference

SuperOps Tools

Written By Christopher Scaminaci

Last updated 7 days ago

SuperOps Tools

superops_ · 139 tools · Free 76 · Pro 63 PSA and RMM over GraphQL: one endpoint per region, US or EU, with the operation chosen by the query document. Credentials are an API token and your customer subdomain, and both are required on every call. Paging is a one-based page with a page size capped at 100, plus a condition and sort, and the response reports whether more remain. A logical failure comes back as HTTP 200 with a top-level errors array, so a 200 alone does not mean success. Update mutations treat an explicit null as clearing the field, so the tools expose a separate clear-fields argument instead. Dates are UTC. Generic query and mutation tools are available as an escape hatch when no typed tool fits.

All connector tools · SuperOps setup guide

SuperOps tool groups

Assets & Monitoring

ToolPlanAccessSummary
superops_assign_device_categoryProWriteAssign a device category to one or more assets.
superops_get_assetFreeRead-onlyFetch a single RMM asset (managed device) by its assetId.
superops_get_asset_activityFreeRead-onlyFetch the activity/event history for one asset by assetId.
superops_get_asset_custom_fieldsFreeRead-onlyFetch the custom-field values set on one asset by assetId.
superops_get_asset_disk_detailsFreeRead-onlyFetch disk/volume details for one asset by assetId (capacity, free space, file systems).
superops_get_asset_info_by_tp_endpoint_idsFreeRead-onlyResolve SuperOps assets from third-party (integration) endpoint IDs.
superops_get_asset_listFreeRead-onlyList RMM assets (managed devices), paginated.
superops_get_asset_patch_detailsFreeRead-onlyFetch patch detail for one asset by assetId (the individual patches known for the device).
superops_get_asset_patch_statusFreeRead-onlyFetch patch compliance/status for one asset by assetId (installed vs missing counts, last scan).
superops_get_asset_software_listFreeRead-onlyFetch the installed-software inventory for one asset by assetId.
superops_get_asset_summaryFreeRead-onlyFetch a rollup/summary for one asset by assetId (health, status, last-reported).
superops_get_asset_user_logFreeRead-onlyFetch the logged-in-user history for one asset by assetId.
superops_get_unmonitored_asset_listFreeRead-onlyList assets that are NOT under monitoring, paginated.
superops_run_script_on_assetProDestructiveExecute an RMM script on an asset (endpoint).
superops_soft_delete_assetProDestructiveSoft-delete an RMM asset by assetId (moves it to a recoverable deleted state).
superops_update_assetProWriteUpdate attributes of an existing RMM asset.

[SuperOps] Assign a device category to one or more assets. Provide a JSON object body identifying the target asset(s) and the device category to assign. Discover assetIds with superops_get_asset_list. Returns the raw GraphQL JSON body.

ParamTypeRequiredDefaultDescription
inputJsonstringyesJSON object body identifying the target asset(s) and the device category to assign (e.g. assetIds and a categoryId/deviceCategory).

[SuperOps] Fetch a single RMM asset (managed device) by its assetId. Returns the raw GraphQL JSON body ({data:{getAsset:}} or {errors:[...]}). Discover assetIds with superops_get_asset_list. For deeper detail on one asset use superops_get_asset_summary, superops_get_asset_disk_details, superops_get_asset_software_list, superops_get_asset_patch_details, or superops_get_asset_activity.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch the activity/event history for one asset by assetId. Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch the custom-field values set on one asset by assetId. Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch disk/volume details for one asset by assetId (capacity, free space, file systems). Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Resolve SuperOps assets from third-party (integration) endpoint IDs. Provide one or more endpoint IDs from an integrated RMM/tool; returns the matching SuperOps assets as raw GraphQL JSON.

ParamTypeRequiredDefaultDescription
endpointIdsarrayyesThird-party endpoint identifiers to resolve to SuperOps assets.

[SuperOps] List RMM assets (managed devices), paginated. page is 1-based; pageSize is capped at 100. condition and sort are optional JSON (SuperOps ListInfoInput.condition / .sort) for filtering and ordering. The response's listInfo.hasMore indicates whether another page exists. Use the returned assetId with superops_get_asset.

ParamTypeRequiredDefaultDescription
conditionstringnonullOptional filter as a JSON object/array (SuperOps ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, max 100).
sortstringnonullOptional sort as a JSON array (SuperOps ListInfoInput.sort). Omit for the default order.

[SuperOps] Fetch patch detail for one asset by assetId (the individual patches known for the device). Returns the raw GraphQL JSON body. For a compliance rollup use superops_get_asset_patch_status. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch patch compliance/status for one asset by assetId (installed vs missing counts, last scan). Returns the raw GraphQL JSON body. For the individual patches use superops_get_asset_patch_details. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch the installed-software inventory for one asset by assetId. Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch a rollup/summary for one asset by assetId (health, status, last-reported). Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] Fetch the logged-in-user history for one asset by assetId. Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] List assets that are NOT under monitoring, paginated. page is 1-based; pageSize is capped at 100. condition and sort are optional JSON (SuperOps ListInfoInput.condition / .sort). The response's listInfo.hasMore indicates whether another page exists.

ParamTypeRequiredDefaultDescription
conditionstringnonullOptional filter as a JSON object/array (SuperOps ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, max 100).
sortstringnonullOptional sort as a JSON array (SuperOps ListInfoInput.sort). Omit for the default order.

[SuperOps] Execute an RMM script on an asset (endpoint). This runs code on the remote device and can change or damage its state — use with care. Provide a JSON object body (the SuperOps run-script input) identifying the target asset(s) and the script to run (plus any runtime arguments). Discover assetIds with superops_get_asset_list and scriptIds with superops_get_script_list. Returns the raw GraphQL JSON body.

ParamTypeRequiredDefaultDescription
inputJsonstringyesJSON object body identifying the target asset(s) and the script to run (e.g. assetId/assetIds, scriptId, and any script arguments).

[SuperOps] Soft-delete an RMM asset by assetId (moves it to a recoverable deleted state). Discover assetIds with superops_get_asset_list. Returns the raw GraphQL JSON body.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier to soft-delete (from superops_get_asset_list).

[SuperOps] Update attributes of an existing RMM asset. inputJson is the SuperOps UpdateAssetInput object and MUST identify the asset (e.g. its assetId) plus the fields to change. IMPORTANT null-reset semantics: OMIT a field to leave it unchanged. To CLEAR a field, list its name in clearFields (emitted as an explicit JSON null) — do not put a field you want to keep in clearFields. Discover assetIds with superops_get_asset_list. Returns the raw GraphQL JSON body.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the asset. Only include a field here if you intend to wipe its value. Omit or empty for none.
inputJsonstringyesJSON object body (SuperOps UpdateAssetInput). Must identify the asset (e.g. assetId) and carry the fields to change. Omit a key to leave it unchanged; list names in clearFields to blank them.

Alerts & Scripts

ToolPlanAccessSummary
superops_create_alertProWriteRaise a new RMM alert.
superops_get_alert_listFreeRead-onlyList RMM alerts, paginated.
superops_get_alerts_for_assetFreeRead-onlyFetch the RMM alerts scoped to a single asset by assetId.
superops_get_script_listFreeRead-onlyList RMM scripts, paginated.
superops_get_script_list_by_typeFreeRead-onlyList RMM scripts filtered to a single script type, paginated.
superops_resolve_alertsProWriteResolve (close) one or more RMM alerts by their alertIds.

[SuperOps] Raise a new RMM alert. Provide a JSON object body (the SuperOps create-alert input) — typically the alerting asset plus a severity and message. Returns the raw GraphQL JSON body with the created alert. To close alerts use superops_resolve_alerts.

ParamTypeRequiredDefaultDescription
inputJsonstringyesJSON object body (SuperOps create-alert input) — e.g. the target asset, a severity, and a message.

[SuperOps] List RMM alerts, paginated. page is 1-based; pageSize is capped at 100. condition and sort are optional JSON (SuperOps ListInfoInput.condition / .sort) for filtering (e.g. by severity or status) and ordering. The response's listInfo.hasMore indicates whether another page exists. For alerts on a single device use superops_get_alerts_for_asset.

ParamTypeRequiredDefaultDescription
conditionstringnonullOptional filter as a JSON object/array (SuperOps ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, max 100).
sortstringnonullOptional sort as a JSON array (SuperOps ListInfoInput.sort). Omit for the default order.

[SuperOps] Fetch the RMM alerts scoped to a single asset by assetId. Returns the raw GraphQL JSON body. Discover assetIds with superops_get_asset_list; for an unscoped, paginated alert feed use superops_get_alert_list.

ParamTypeRequiredDefaultDescription
assetIdstringyesThe SuperOps asset identifier (from superops_get_asset_list).

[SuperOps] List RMM scripts, paginated. page is 1-based; pageSize is capped at 100. condition and sort are optional JSON (SuperOps ListInfoInput.condition / .sort). The response's listInfo.hasMore indicates whether another page exists. To filter to one script type use superops_get_script_list_by_type. Use a returned scriptId with superops_run_script_on_asset.

ParamTypeRequiredDefaultDescription
conditionstringnonullOptional filter as a JSON object/array (SuperOps ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, max 100).
sortstringnonullOptional sort as a JSON array (SuperOps ListInfoInput.sort). Omit for the default order.

[SuperOps] List RMM scripts filtered to a single script type, paginated. Provide the script type to filter on. page is 1-based; pageSize is capped at 100. condition and sort are optional JSON (SuperOps ListInfoInput.condition / .sort). The response's listInfo.hasMore indicates whether another page exists. For all scripts regardless of type use superops_get_script_list.

ParamTypeRequiredDefaultDescription
conditionstringnonullOptional filter as a JSON object/array (SuperOps ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, max 100).
sortstringnonullOptional sort as a JSON array (SuperOps ListInfoInput.sort). Omit for the default order.
typestringyesThe script type to filter on.

[SuperOps] Resolve (close) one or more RMM alerts by their alertIds. Discover alertIds with superops_get_alert_list or superops_get_alerts_for_asset. Returns the raw GraphQL JSON body.

ParamTypeRequiredDefaultDescription
alertIdsarrayyesThe alert identifiers to resolve (from superops_get_alert_list or superops_get_alerts_for_asset).

Clients

ToolPlanAccessSummary
superops_create_clientProWriteCreate a client (account).
superops_create_client_v2ProWriteCreate a client (account) using the current-stable V2 schema — PREFERRED over superops_create_client.
superops_get_clientFreeRead-onlyFetch a single client (account) by its accountId (from superops_get_client_list).
superops_get_client_listFreeRead-onlyList clients (accounts), paginated.
superops_hard_delete_clientsProDestructivePERMANENTLY delete one or more clients (accounts).
superops_restore_clientsProWriteRestore one or more soft-deleted clients (accounts) back to active state (reverses superops_soft_delete_clients; does NOT recover hard-deleted clients).
superops_soft_delete_clientsProDestructiveSoft-delete one or more clients (accounts) — they are moved to a deleted state and can be restored with superops_restore_clients.
superops_update_clientProWriteUpdate a client (account).

[SuperOps] Create a client (account). PREFER superops_create_client_v2 — this legacy variant is retained for parity but createClientV2 is the current-stable create with the richer input schema. inputJson is the CreateClientInput object (e.g. {"name":"...","stage":"...","emailDomains":["..."]}). Returns the raw SuperOps GraphQL JSON for the created client.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientInput object as a JSON string (e.g. {"name":"Acme","stage":"ACTIVE"}). Confirm field names against your SuperOps schema.

[SuperOps] Create a client (account) using the current-stable V2 schema — PREFERRED over superops_create_client. inputJson is the CreateClientInputV2 object (e.g. {"name":"...","stage":"...","emailDomains":["..."],"primaryContact":}). Returns the raw SuperOps GraphQL JSON for the created client.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientInputV2 object as a JSON string. Confirm field names against your SuperOps schema.

[SuperOps] Fetch a single client (account) by its accountId (from superops_get_client_list). Returns the raw SuperOps GraphQL JSON for the client. Related: superops_get_client_site_list, superops_get_client_user_list, superops_get_client_contract_list.

ParamTypeRequiredDefaultDescription
accountIdstringyesThe client account id (accountId, from superops_get_client_list).

[SuperOps] List clients (accounts), paginated. Optional condition/sort filters as JSON strings. Returns the raw SuperOps GraphQL JSON including the listInfo.hasMore paging flag. Use superops_get_client for one client's full detail.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string (embedded verbatim as GraphQL). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string (embedded verbatim as GraphQL). Omit for default ordering.

[SuperOps] PERMANENTLY delete one or more clients (accounts). DESTRUCTIVE and NOT recoverable — unlike superops_soft_delete_clients, hard-deleted clients cannot be restored. Provide the account ids to permanently remove.

ParamTypeRequiredDefaultDescription
clientIdsarrayyesThe account ids to permanently delete (from superops_get_client_list).

[SuperOps] Restore one or more soft-deleted clients (accounts) back to active state (reverses superops_soft_delete_clients; does NOT recover hard-deleted clients). Provide the account ids to restore.

ParamTypeRequiredDefaultDescription
clientIdsarrayyesThe account ids to restore (previously soft-deleted).

[SuperOps] Soft-delete one or more clients (accounts) — they are moved to a deleted state and can be restored with superops_restore_clients. DESTRUCTIVE. Provide the account ids to remove.

ParamTypeRequiredDefaultDescription
clientIdsarrayyesThe account ids to soft-delete (from superops_get_client_list).

[SuperOps] Update a client (account). inputJson is the UpdateClientInput object and MUST carry the client's accountId plus the fields to change. To CLEAR a field, list its name in clearFields (emitted as explicit null); omit fields you want left unchanged. Returns the raw SuperOps GraphQL JSON for the updated client.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the client, e.g. ["secondaryContact"]. Omit or empty for none.
inputJsonstringyesThe UpdateClientInput object as a JSON string (must include the accountId + changed fields).

Client Custom Fields

ToolPlanAccessSummary
superops_create_client_custom_fieldProWriteCreate a client custom-field definition.
superops_get_client_custom_fieldFreeRead-onlyFetch a single client custom-field definition/value.
superops_get_client_custom_field_listFreeRead-onlyList client custom-field definitions/values, paginated.

[SuperOps] Create a client custom-field definition. inputJson is the CreateClientCustomFieldInput object (e.g. {"name":"...","type":"..."}). Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientCustomFieldInput object as a JSON string.

[SuperOps] Fetch a single client custom-field definition/value. Supply the SuperOps identifier for the custom field as a raw JSON object string in inputJson (the CustomFieldIdentifierInput shape SuperOps documents, e.g. {"name":"<field name>"}). Returns the raw SuperOps GraphQL JSON. List all with superops_get_client_custom_field_list.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe client custom-field identifier as a raw JSON object string (per SuperOps docs, e.g. {"name":"<field name>"}).

[SuperOps] List client custom-field definitions/values, paginated. Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

Client Stages

ToolPlanAccessSummary
superops_get_client_stage_listFreeRead-onlyList client lifecycle stages (the account-stage lookup used when creating/updating a client), paginated.

[SuperOps] List client lifecycle stages (the account-stage lookup used when creating/updating a client), paginated. Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

Client Sites

ToolPlanAccessSummary
superops_create_client_siteProWriteCreate a client site.
superops_delete_client_sitesProDestructiveDelete one or more client sites.
superops_get_client_siteFreeRead-onlyFetch a single client site by its id (from superops_get_client_site_list).
superops_get_client_site_listFreeRead-onlyList client sites, paginated.
superops_update_client_siteProWriteUpdate a client site.

[SuperOps] Create a client site. inputJson is the CreateClientSiteInput object (references the client's accountId plus site name/address/timezone). Returns the raw SuperOps GraphQL JSON for the created site.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientSiteInput object as a JSON string.

[SuperOps] Delete one or more client sites. DESTRUCTIVE. Provide the site ids to remove (a client's headquarters site typically cannot be deleted while the client exists).

ParamTypeRequiredDefaultDescription
siteIdsarrayyesThe site ids to delete (from superops_get_client_site_list).

[SuperOps] Fetch a single client site by its id (from superops_get_client_site_list). Returns the raw SuperOps GraphQL JSON including the site address and contact scalars.

ParamTypeRequiredDefaultDescription
idstringyesThe client site id (from superops_get_client_site_list).

[SuperOps] List client sites, paginated. Optional condition/sort filters as JSON strings (e.g. filter by a client's accountId). Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

[SuperOps] Update a client site. inputJson is the UpdateClientSiteInput object and MUST carry the site id plus the fields to change. To CLEAR a field, list its name in clearFields (emitted as explicit null); omit fields you want left unchanged. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the site, e.g. ["line2"]. Omit or empty for none.
inputJsonstringyesThe UpdateClientSiteInput object as a JSON string (must include the site id + changed fields).

Client Users

ToolPlanAccessSummary
superops_create_client_userProWriteCreate a client user (requester).
superops_create_client_user_associationsProWriteCreate one or more client↔user associations (link a client user to a client, and optionally a site, with a role).
superops_delete_client_userProDestructiveDelete a single client user (requester).
superops_delete_client_user_associationsProDestructiveDelete one or more client↔user associations (unlink users from clients/sites).
superops_get_client_userFreeRead-onlyFetch a single client user (requester) by userId (from superops_get_client_user_list).
superops_get_client_user_association_listFreeRead-onlyList client↔user associations, paginated.
superops_get_client_user_listFreeRead-onlyList client users (requesters), paginated.
superops_update_client_userProWriteUpdate a client user (requester).
superops_update_client_user_associationsProWriteUpdate one or more client↔user associations (e.g. change a user's role or site link).

[SuperOps] Create a client user (requester). inputJson is the CreateClientUserInput object (references the client's accountId plus name/email/role/site). Returns the raw SuperOps GraphQL JSON for the created user.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientUserInput object as a JSON string.

[SuperOps] Create one or more client↔user associations (link a client user to a client, and optionally a site, with a role). inputJson is the association input object/array. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA JSON ARRAY string of CreateClientUserAssociationInput objects (the mutation is a batch — supply one or more, e.g. []).

[SuperOps] Delete a single client user (requester). DESTRUCTIVE. Provide the userId to remove.

ParamTypeRequiredDefaultDescription
userIdstringyesThe client user id (userId, from superops_get_client_user_list) to delete.

[SuperOps] Delete one or more client↔user associations (unlink users from clients/sites). DESTRUCTIVE. Provide the association ids to remove.

ParamTypeRequiredDefaultDescription
associationIdsarrayyesThe client-user-association ids to delete (from superops_get_client_user_association_list).

[SuperOps] Fetch a single client user (requester) by userId (from superops_get_client_user_list). Returns the raw SuperOps GraphQL JSON for the user.

ParamTypeRequiredDefaultDescription
userIdstringyesThe client user id (userId, from superops_get_client_user_list).

[SuperOps] List client↔user associations, paginated. Optional condition/sort filters as JSON strings. Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

[SuperOps] List client users (requesters), paginated. Optional condition/sort filters as JSON strings (e.g. filter by a client's accountId). Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

[SuperOps] Update a client user (requester). inputJson is the UpdateClientUserInput object and MUST carry the userId plus the fields to change. To CLEAR a field, list its name in clearFields (emitted as explicit null); omit fields you want left unchanged. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the user, e.g. ["reportingManager"]. Omit or empty for none.
inputJsonstringyesThe UpdateClientUserInput object as a JSON string (must include the userId + changed fields).

[SuperOps] Update one or more client↔user associations (e.g. change a user's role or site link). inputJson is a JSON ARRAY of UpdateClientUserAssociationInput objects, each identifying an association plus the fields to change (the mutation is a batch). Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA JSON ARRAY string of UpdateClientUserAssociationInput objects (each identifies an association + the fields to change).

Client Contracts

ToolPlanAccessSummary
superops_create_client_contractProWriteCreate a client contract.
superops_get_client_contractFreeRead-onlyFetch a single client contract by its contractId (from superops_get_client_contract_list).
superops_get_client_contract_listFreeRead-onlyList client contracts, paginated.
superops_update_client_contractProWriteUpdate a client contract.

[SuperOps] Create a client contract. inputJson is the CreateClientContractInput object (typically references the client's accountId plus contract terms/dates). Returns the raw SuperOps GraphQL JSON for the created contract.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateClientContractInput object as a JSON string.

[SuperOps] Fetch a single client contract by its contractId (from superops_get_client_contract_list). Returns the raw SuperOps GraphQL JSON for the contract.

ParamTypeRequiredDefaultDescription
contractIdstringyesThe contract id (contractId, from superops_get_client_contract_list).

[SuperOps] List client contracts, paginated. Optional condition/sort filters as JSON strings (e.g. filter by a client's accountId). Returns the raw SuperOps GraphQL JSON including listInfo.hasMore.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object string. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Results per page, 1-100 (default 50; hard-capped at 100).
sortJsonstringnonullOptional SuperOps `sort` as a JSON array string. Omit for default ordering.

[SuperOps] Update a client contract. inputJson is the UpdateClientContractInput object and MUST carry the contractId plus the fields to change. To CLEAR a field, list its name in clearFields (emitted as explicit null); omit fields you want left unchanged. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the contract. Omit or empty for none.
inputJsonstringyesThe UpdateClientContractInput object as a JSON string (must include the contractId + changed fields).

Tickets

ToolPlanAccessSummary
superops_create_ticketProWriteCreate a ticket.
superops_create_ticket_conversationProDestructiveAdd a public conversation/reply to a ticket.
superops_create_ticket_custom_fieldProWriteCreate a ticket custom-field definition.
superops_create_ticket_noteProWriteAdd an internal note to a ticket (not visible to the requester).
superops_get_ticketFreeRead-onlyFetch a single ticket by its ticketId.
superops_get_ticket_conversation_listFreeRead-onlyList the public conversation/reply thread for a ticket.
superops_get_ticket_custom_fieldFreeRead-onlyFetch a single ticket custom-field definition/value.
superops_get_ticket_custom_field_listFreeRead-onlyList ticket custom fields (paginated).
superops_get_ticket_listFreeRead-onlyList tickets (paginated).
superops_get_ticket_note_listFreeRead-onlyList the internal notes on a ticket.
superops_hard_delete_ticketsProDestructivePERMANENTLY delete one or more trashed tickets.
superops_restore_ticketsProWriteRestore one or more soft-deleted (trashed) tickets.
superops_soft_delete_ticketsProDestructiveSoft-delete (move to trash) one or more tickets.
superops_update_ticketProWriteUpdate a ticket.

[SuperOps] Create a ticket. Supply the full CreateTicketInput as a raw JSON object string in inputJson (per SuperOps docs — typically subject, requester/client, and any priority/status/technician references). All dates are UTC ISO-8601. Returns the new { ticketId, displayId }. Read it back with superops_get_ticket; edit with superops_update_ticket.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe full CreateTicketInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Add a public conversation/reply to a ticket. Supply the CreateTicketConversationInput as a raw JSON object string in inputJson (per SuperOps docs — typically the ticketId plus the reply content). Returns the new . Read the thread with superops_get_ticket_conversation_list. For an internal note use superops_create_ticket_note.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateTicketConversationInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Create a ticket custom-field definition. Supply the CreateTicketCustomFieldInput as a raw JSON object string in inputJson (per SuperOps docs — typically the field name, label, and type). Returns the new field's . List ticket custom fields with superops_get_ticket_custom_field_list.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateTicketCustomFieldInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Add an internal note to a ticket (not visible to the requester). Supply the CreateTicketNoteInput as a raw JSON object string in inputJson (per SuperOps docs — typically the ticketId plus the note content). Returns the new . Read notes with superops_get_ticket_note_list.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateTicketNoteInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Fetch a single ticket by its ticketId. Pass the ticketId from superops_get_ticket_list. Returns the ticket's core identity fields (ticketId, displayId, subject, createdTime, updatedTime). For status/priority/requester/technician and other nested fields, use superops_run_query with an expanded selection set. Use superops_get_ticket_conversation_list and superops_get_ticket_note_list for the thread, and superops_update_ticket / superops_soft_delete_tickets to modify it.

ParamTypeRequiredDefaultDescription
ticketIdstringyesThe ticketId of the ticket to fetch (from superops_get_ticket_list).

[SuperOps] List the public conversation/reply thread for a ticket. Pass the ticketId (from superops_get_ticket_list); the SuperOps getTicketConversationList(input: TicketIdentifierInput!) read returns the ticket's conversation thread as raw GraphQL JSON. For internal notes use superops_get_ticket_note_list.

ParamTypeRequiredDefaultDescription
ticketIdstringyesThe ticketId whose conversation thread to fetch (from superops_get_ticket_list).

[SuperOps] Fetch a single ticket custom-field definition/value. Supply the SuperOps identifier for the custom field as a raw JSON object string in inputJson (the shape SuperOps documents for the custom-field identifier, e.g. {"name":"<field name>"}). Returns { name, value }. List all with superops_get_ticket_custom_field_list; create one with superops_create_ticket_custom_field.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe ticket custom-field identifier as a raw JSON object string (per SuperOps docs, e.g. {"name":"<field name>"}).

[SuperOps] List ticket custom fields (paginated). Offset pagination via page (1-based) and pageSize (max 100); optional conditionJson / sortJson raw-JSON filters go into ListInfoInput. Returns { customFields [...], listInfo { totalCount, hasMore } }. For the full field-definition catalog across modules use superops_get_all_fields.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps search condition as a raw JSON object string (goes into ListInfoInput.condition).
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page, max 100 (default 50).
sortJsonstringnonullOptional sort as a raw JSON array string (goes into ListInfoInput.sort).

[SuperOps] List tickets (paginated). Offset pagination via page (1-based) and pageSize (max 100). Optionally narrow/order results with conditionJson (a SuperOps search condition object) and sortJson (a sort array), both raw JSON strings passed straight into ListInfoInput. Returns { tickets [...], listInfo { totalCount, hasMore } }; walk pages while listInfo.hasMore is true. Use the returned ticketId with superops_get_ticket.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps search condition as a raw JSON object string (goes into ListInfoInput.condition). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page, max 100 (default 50).
sortJsonstringnonullOptional sort as a raw JSON array string (goes into ListInfoInput.sort). Omit for default order.

[SuperOps] List the internal notes on a ticket. Pass the ticketId (from superops_get_ticket_list); the SuperOps getTicketNoteList(input: TicketIdentifierInput!) read returns the ticket's internal notes as raw GraphQL JSON. Add a note with superops_create_ticket_note.

ParamTypeRequiredDefaultDescription
ticketIdstringyesThe ticketId whose internal notes to fetch (from superops_get_ticket_list).

[SuperOps] PERMANENTLY delete one or more trashed tickets. Supply inputJson as a raw JSON ARRAY of TicketIdentifierInput objects (e.g. [{"ticketId":"<id>"}]). This is irreversible and cannot be restored — soft-delete first with superops_soft_delete_tickets if you may need recovery.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA raw JSON array string of TicketIdentifierInput objects, e.g. [{"ticketId":"<id>"}].

[SuperOps] Restore one or more soft-deleted (trashed) tickets. Supply inputJson as a raw JSON ARRAY of TicketIdentifierInput objects (e.g. [{"ticketId":"<id>"}]). Only tickets currently in the trash (from superops_soft_delete_tickets) can be restored; hard-deleted tickets are gone.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA raw JSON array string of TicketIdentifierInput objects, e.g. [{"ticketId":"<id>"}].

[SuperOps] Soft-delete (move to trash) one or more tickets. Supply inputJson as a raw JSON ARRAY of TicketIdentifierInput objects (e.g. [{"ticketId":"<id>"}]). Soft-deleted tickets can be recovered with superops_restore_tickets; to permanently remove trashed tickets use superops_hard_delete_tickets.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA raw JSON array string of TicketIdentifierInput objects, e.g. [{"ticketId":"<id>"}].

[SuperOps] Update a ticket. Supply the UpdateTicketInput as a raw JSON object string in inputJson (must include the ticketId plus the fields to change). IMPORTANT: only include fields you intend to change — an explicitly-null field CLEARS/resets it, while omitting a field leaves it unchanged. To intentionally blank one or more fields, list their names in clearFields (comma-separated) instead of guessing the null shape. Returns the updated .

ParamTypeRequiredDefaultDescription
clearFieldsstringnonullOptional comma-separated field names to explicitly clear/reset (emits JSON null for each). Omit to change nothing extra.
inputJsonstringyesThe UpdateTicketInput as a raw JSON object string (must include ticketId and the fields to change).

Tasks & Worklogs

ToolPlanAccessSummary
superops_create_taskProWriteCreate a task.
superops_create_worklog_entriesProWriteAdd one or more worklog (time) entries.
superops_delete_worklog_entryProDestructivePermanently delete a single worklog (time) entry.
superops_get_taskFreeRead-onlyFetch a single task by its taskId (from superops_get_task_list).
superops_get_task_listFreeRead-onlyList tasks (paginated).
superops_get_work_status_listFreeRead-onlyList the configured work statuses (the timer/work states used on worklog entries), paginated.
superops_get_worklog_entriesFreeRead-onlyList worklog (time) entries, paginated.
superops_update_worklog_entryProWriteUpdate a single worklog (time) entry.

[SuperOps] Create a task. Supply the full CreateTaskInput as a raw JSON object string in inputJson (per SuperOps docs — typically the title, an owning ticket/project reference, and optional assignee/dueDate). All dates are UTC ISO-8601. Returns the new . Read it back with superops_get_task.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe full CreateTaskInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Add one or more worklog (time) entries. Supply inputJson as a raw JSON ARRAY of worklog-entry input objects (per SuperOps docs — typically a ticket/task reference, technician, time spent, and notes). All dates/times are UTC ISO-8601. List entries with superops_get_worklog_entries; edit one with superops_update_worklog_entry.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA raw JSON array string of worklog-entry input objects (per SuperOps docs).

[SuperOps] Permanently delete a single worklog (time) entry. Supply the entry's identifier as a raw JSON object string in inputJson (per SuperOps docs — the worklog entry id). This is irreversible.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe worklog-entry identifier as a raw JSON object string (per SuperOps docs).

[SuperOps] Fetch a single task by its taskId (from superops_get_task_list). Returns the task's core fields (taskId, title, status). For additional fields (assignee, dueDate, ticket link) use superops_run_query with an expanded selection set. Create tasks with superops_create_task.

ParamTypeRequiredDefaultDescription
taskIdstringyesThe taskId of the task to fetch (from superops_get_task_list).

[SuperOps] List tasks (paginated). Offset pagination via page (1-based) and pageSize (max 100); optional conditionJson / sortJson raw-JSON filters go into ListInfoInput. Returns { tasks [...], listInfo { totalCount, hasMore } }; walk pages while listInfo.hasMore is true. Use a returned taskId with superops_get_task.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps search condition as a raw JSON object string (goes into ListInfoInput.condition).
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page, max 100 (default 50).
sortJsonstringnonullOptional sort as a raw JSON array string (goes into ListInfoInput.sort).

[SuperOps] List the configured work statuses (the timer/work states used on worklog entries), paginated. Offset pagination via page (1-based) and pageSize (max 100); optional conditionJson / sortJson raw-JSON filters go into ListInfoInput. Returns { workStatuses [...], listInfo { totalCount, hasMore } }.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps search condition as a raw JSON object string (goes into ListInfoInput.condition).
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page, max 100 (default 50).
sortJsonstringnonullOptional sort as a raw JSON array string (goes into ListInfoInput.sort).

[SuperOps] List worklog (time) entries, paginated. Scope to a ticket or task by passing its id in conditionJson (a SuperOps search condition object, e.g. {"ticketId":"<id>"}); page/pageSize control offset pagination (pageSize max 100). Returns { worklogEntries [...], listInfo { totalCount, hasMore } }. Add entries with superops_create_worklog_entries.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps search condition as a raw JSON object string scoping the entries (e.g. {"ticketId":"<id>"}). Goes into ListInfoInput.condition.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page, max 100 (default 50).
sortJsonstringnonullOptional sort as a raw JSON array string (goes into ListInfoInput.sort).

[SuperOps] Update a single worklog (time) entry. Supply the UpdateWorklogEntryInput as a raw JSON object string in inputJson (must include the entry's id plus the fields to change). Only include fields you intend to change — an explicitly-null field CLEARS it; to blank fields intentionally list them in clearFields (comma-separated). Returns the updated .

ParamTypeRequiredDefaultDescription
clearFieldsstringnonullOptional comma-separated field names to explicitly clear/reset (emits JSON null for each).
inputJsonstringyesThe UpdateWorklogEntryInput as a raw JSON object string (must include the entry id and the fields to change).

Fields

ToolPlanAccessSummary
superops_create_fieldProWriteCreate a field definition.
superops_delete_fieldProDestructivePermanently delete a field definition.
superops_get_all_fieldsFreeRead-onlyFetch all field definitions for a module.
superops_get_fieldFreeRead-onlyFetch a single field definition.
superops_get_fieldsFreeRead-onlyFetch one or more field definitions by their identifiers (the getFields(input: [FieldIdentifierInput!]!) batch read).
superops_update_fieldProWriteUpdate a field definition.

[SuperOps] Create a field definition. Supply the full CreateFieldInput as a raw JSON object string in inputJson (per SuperOps docs — typically the module, label, columnName, and fieldType). Returns the new field's . Inspect the module's existing fields first with superops_get_all_fields.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe full CreateFieldInput as a raw JSON object string (per SuperOps docs).

[SuperOps] Permanently delete a field definition. Supply the field identifier as a raw JSON object string in inputJson (per SuperOps docs — the field id). This is irreversible and removes the field (and its stored values) from the module.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe field identifier as a raw JSON object string (per SuperOps docs, e.g. {"id":"<field id>"}).

[SuperOps] Fetch all field definitions for a module. Pass module as the SuperOps module name (e.g. TICKET, COMPANY_USER). Returns each field's id, module, columnName, label, description, and fieldType. Use this to discover the columnName/fieldType before building conditionJson filters or update payloads for that module. For a single field use superops_get_field.

ParamTypeRequiredDefaultDescription
modulestringyesThe SuperOps module name whose fields to fetch (e.g. TICKET, COMPANY_USER).

[SuperOps] Fetch a single field definition. Supply the field identifier as a raw JSON object string in inputJson (per SuperOps docs — typically the field id). Returns id, module, columnName, label, description, and fieldType. List field definitions with superops_get_fields or superops_get_all_fields.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe field identifier as a raw JSON object string (per SuperOps docs, e.g. {"id":"<field id>"}).

[SuperOps] Fetch one or more field definitions by their identifiers (the getFields(input: [FieldIdentifierInput!]!) batch read). Supply inputJson as a raw JSON ARRAY of FieldIdentifierInput objects (per SuperOps docs, e.g. [{"id":"<field id>"}]). Returns each field's id, module, columnName, label, description, and fieldType. To enumerate every field for one module in a single call use superops_get_all_fields; for a single field use superops_get_field.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA raw JSON array string of FieldIdentifierInput objects (per SuperOps docs, e.g. [{"id":"<field id>"}]).

[SuperOps] Update a field definition. Supply the UpdateFieldInput as a raw JSON object string in inputJson (must include the field id plus the fields to change). Only include fields you intend to change — an explicitly-null field CLEARS it; to blank fields intentionally list them in clearFields (comma-separated). Returns the updated .

ParamTypeRequiredDefaultDescription
clearFieldsstringnonullOptional comma-separated field names to explicitly clear/reset (emits JSON null for each).
inputJsonstringyesThe UpdateFieldInput as a raw JSON object string (must include the field id and the fields to change).

Service Catalog

ToolPlanAccessSummary
superops_create_service_catalog_itemProWriteCreate a service catalog item.
superops_create_service_categoryProWriteCreate a service category.
superops_create_service_itemProWriteCreate a service item.
superops_get_offered_itemsFreeRead-onlyList items offered to a client or contract (paginated).
superops_get_service_catalog_itemFreeRead-onlyFetch a single service catalog item by ID.
superops_get_service_catalog_item_listFreeRead-onlyList service catalog items (paginated).
superops_get_service_category_listFreeRead-onlyList service categories (paginated).
superops_get_service_itemFreeRead-onlyFetch a single service item by ID.
superops_get_service_item_listFreeRead-onlyList service items (paginated).
superops_update_service_catalog_itemProWriteUpdate a service catalog item.

[SuperOps] Create a service catalog item. Provide the full item payload as a JSON object in `inputJson` (fields per the SuperOps createServiceCatalogItem input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe service catalog item to create, as a JSON object matching the SuperOps createServiceCatalogItem input (e.g. name, description, price fields).

[SuperOps] Create a service category. Provide the full payload as a JSON object in `inputJson` (fields per the SuperOps createServiceCategory input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe service category to create, as a JSON object matching the SuperOps createServiceCategory input (e.g. name, description).

[SuperOps] Create a service item. Provide the full item payload as a JSON object in `inputJson` (fields per the SuperOps createServiceItem input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe service item to create, as a JSON object matching the SuperOps createServiceItem input.

[SuperOps] List items offered to a client or contract (paginated). Scope to a client/contract by passing its identifier inside the `conditionJson` filter (the SuperOps search/pagination condition shape). Returns the raw GraphQL response for getOfferedItems; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object — put the client/contract scope here (e.g. {"clientId":"..."}). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Fetch a single service catalog item by ID. Discover IDs via superops_get_service_catalog_item_list. Returns the raw GraphQL response for getServiceCatalogItem.

ParamTypeRequiredDefaultDescription
idstringyesThe service catalog item ID (from superops_get_service_catalog_item_list).

[SuperOps] List service catalog items (paginated). Supply optional condition/sort as JSON to filter and order. Use superops_get_service_catalog_item for full detail on one item. Returns the raw GraphQL response for getServiceCatalogItemList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object (search/pagination doc shape). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] List service categories (paginated). Supply optional condition/sort as JSON to filter and order. Returns the raw GraphQL response for getServiceCategoryList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Fetch a single service item by ID. Discover IDs via superops_get_service_item_list. Returns the raw GraphQL response for getServiceItem.

ParamTypeRequiredDefaultDescription
idstringyesThe service item ID (from superops_get_service_item_list).

[SuperOps] List service items (paginated). Supply optional condition/sort as JSON to filter and order. Use superops_get_service_item for full detail. Returns the raw GraphQL response for getServiceItemList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Update a service catalog item. Provide the changed fields (including the item id) as a JSON object in `inputJson`. IMPORTANT: sending a field as explicit null CLEARS it — to leave a field unchanged, OMIT it from inputJson. Use `clearFields` to intentionally clear/reset specific fields (they are sent as explicit JSON null). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullOptional field names to explicitly CLEAR (reset to null) on the item. Only include a field here if you intend to wipe its value.
inputJsonstringyesThe fields to update (including the item id), as a JSON object matching the SuperOps updateServiceCatalogItem input. Omitted fields are left unchanged.

Financial

ToolPlanAccessSummary
superops_create_invoiceProDestructiveCreate an invoice.
superops_create_taxProWriteCreate a tax definition.
superops_get_invoiceFreeRead-onlyFetch a single invoice by ID.
superops_get_invoice_item_listFreeRead-onlyList the line items of an invoice (paginated).
superops_get_invoice_listFreeRead-onlyList invoices (paginated).
superops_get_payment_method_listFreeRead-onlyList configured payment methods (paginated).
superops_get_payment_term_listFreeRead-onlyList configured payment terms (paginated).
superops_get_taxFreeRead-onlyFetch a single tax definition by ID.
superops_get_tax_listFreeRead-onlyList tax definitions (paginated).
superops_update_invoiceProWriteUpdate an invoice.

[SuperOps] Create an invoice. Provide the full invoice payload as a JSON object in `inputJson` (client, line items, dates, etc. per the SuperOps createInvoice input). Dates are UTC ISO-8601. Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe invoice to create, as a JSON object matching the SuperOps createInvoice input.

[SuperOps] Create a tax definition. Provide the full payload as a JSON object in `inputJson` (name, rate, etc. per the SuperOps createTax input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe tax definition to create, as a JSON object matching the SuperOps createTax input.

[SuperOps] Fetch a single invoice by ID. Discover IDs via superops_get_invoice_list; list its line items with superops_get_invoice_item_list. Returns the raw GraphQL response for getInvoice.

ParamTypeRequiredDefaultDescription
idstringyesThe invoice ID (from superops_get_invoice_list).

[SuperOps] List the line items of an invoice (paginated). Scope to one invoice by passing its id inside the `conditionJson` filter (e.g. {"invoiceId":"..."}). Discover invoice IDs via superops_get_invoice_list. Returns the raw GraphQL response for getInvoiceItemList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object — put the invoice scope here (e.g. {"invoiceId":"..."}). Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] List invoices (paginated). Supply optional condition/sort as JSON to filter (e.g. by client or status) and order. Use superops_get_invoice for full detail. Returns the raw GraphQL response for getInvoiceList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] List configured payment methods (paginated). Supply optional condition/sort as JSON. Returns the raw GraphQL response for getPaymentMethodList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] List configured payment terms (paginated). Supply optional condition/sort as JSON. Returns the raw GraphQL response for getPaymentTermList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Fetch a single tax definition by ID. Discover IDs via superops_get_tax_list. Returns the raw GraphQL response for getTax.

ParamTypeRequiredDefaultDescription
idstringyesThe tax definition ID (from superops_get_tax_list).

[SuperOps] List tax definitions (paginated). Supply optional condition/sort as JSON to filter and order. Use superops_get_tax for full detail. Returns the raw GraphQL response for getTaxList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Update an invoice. Provide the changed fields (including the invoice id) as a JSON object in `inputJson`. IMPORTANT: sending a field as explicit null CLEARS it — to leave a field unchanged, OMIT it. Use `clearFields` to intentionally clear/reset specific fields. Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullOptional field names to explicitly CLEAR (reset to null) on the invoice. Only include a field here to wipe its value.
inputJsonstringyesThe fields to update (including the invoice id), as a JSON object matching the SuperOps updateInvoice input. Omitted fields are left unchanged.

Knowledge Base

ToolPlanAccessSummary
superops_create_kb_articleProWriteCreate a knowledge base article.
superops_create_kb_collectionProWriteCreate a knowledge base collection.
superops_delete_kb_articleProDestructivePermanently DELETE a knowledge base article by ID.
superops_delete_kb_collectionProDestructivePermanently DELETE a knowledge base collection by ID.
superops_get_kb_itemFreeRead-onlyFetch a single knowledge base item (article or collection) by ID.
superops_get_kb_itemsFreeRead-onlyList knowledge base items — articles and collections (paginated).
superops_update_kb_articleProWriteUpdate a knowledge base article.
superops_update_kb_collectionProWriteUpdate a knowledge base collection.

[SuperOps] Create a knowledge base article. Provide the full payload as a JSON object in `inputJson` (title, content, collection, etc. per the SuperOps createKbArticle input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe KB article to create, as a JSON object matching the SuperOps createKbArticle input.

[SuperOps] Create a knowledge base collection. Provide the full payload as a JSON object in `inputJson` (name, description, etc. per the SuperOps createKbCollection input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe KB collection to create, as a JSON object matching the SuperOps createKbCollection input.

[SuperOps] Permanently DELETE a knowledge base article by ID. This is irreversible. Discover article IDs via superops_get_kb_items. Returns the raw GraphQL response for deleteKbArticle.

ParamTypeRequiredDefaultDescription
idstringyesThe KB article ID to delete (from superops_get_kb_items).

[SuperOps] Permanently DELETE a knowledge base collection by ID. This is irreversible and may affect the articles it contains. Discover collection IDs via superops_get_kb_items. Returns the raw GraphQL response for deleteKbCollection.

ParamTypeRequiredDefaultDescription
idstringyesThe KB collection ID to delete (from superops_get_kb_items).

[SuperOps] Fetch a single knowledge base item (article or collection) by ID. Discover IDs via superops_get_kb_items. Returns the raw GraphQL response for getKbItem.

ParamTypeRequiredDefaultDescription
idstringyesThe KB item ID (from superops_get_kb_items).

[SuperOps] List knowledge base items — articles and collections (paginated). Supply optional condition/sort as JSON to filter and order. Use superops_get_kb_item for full detail. Returns the raw GraphQL response for getKbItems; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Update a knowledge base article. Provide the changed fields (including the article id) as a JSON object in `inputJson`. IMPORTANT: sending a field as explicit null CLEARS it — to leave a field unchanged, OMIT it. Use `clearFields` to intentionally clear/reset specific fields. Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullOptional field names to explicitly CLEAR (reset to null) on the article. Only include a field here to wipe its value.
inputJsonstringyesThe fields to update (including the article id), as a JSON object matching the SuperOps updateKbArticle input. Omitted fields are left unchanged.

[SuperOps] Update a knowledge base collection. Provide the changed fields (including the collection id) as a JSON object in `inputJson`. IMPORTANT: sending a field as explicit null CLEARS it — to leave a field unchanged, OMIT it. Use `clearFields` to intentionally clear/reset specific fields. Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullOptional field names to explicitly CLEAR (reset to null) on the collection. Only include a field here to wipe its value.
inputJsonstringyesThe fields to update (including the collection id), as a JSON object matching the SuperOps updateKbCollection input. Omitted fields are left unchanged.

IT Documentation

ToolPlanAccessSummary
superops_create_it_documentationProWriteCreate an IT-documentation record.
superops_delete_it_documentationProDestructivePermanently DELETE an IT-documentation record by ID.
superops_get_it_documentationFreeRead-onlyFetch a single IT-documentation record by ID.
superops_get_it_documentation_categoriesFreeRead-onlyList IT-documentation categories (paginated).
superops_get_it_documentation_listFreeRead-onlyList IT-documentation records (paginated).
superops_update_it_documentationProWriteUpdate an IT-documentation record.

[SuperOps] Create an IT-documentation record. Provide the full payload as a JSON object in `inputJson` (title, content, client, category, etc. per the SuperOps createItDocumentation input). Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe IT-documentation record to create, as a JSON object matching the SuperOps createItDocumentation input.

[SuperOps] Permanently DELETE an IT-documentation record by ID. This is irreversible. Discover record IDs via superops_get_it_documentation_list. Returns the raw GraphQL response for deleteItDocumentation.

ParamTypeRequiredDefaultDescription
idstringyesThe IT-documentation record ID to delete (from superops_get_it_documentation_list).

[SuperOps] Fetch a single IT-documentation record by ID. Discover IDs via superops_get_it_documentation_list. Returns the raw GraphQL response for getItDocumentation.

ParamTypeRequiredDefaultDescription
idstringyesThe IT-documentation record ID (from superops_get_it_documentation_list).

[SuperOps] List IT-documentation categories (paginated). Supply optional condition/sort as JSON. Returns the raw GraphQL response for getItDocumentationCategories; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] List IT-documentation records (paginated). Supply optional condition/sort as JSON to filter (e.g. by client or category) and order. Use superops_get_it_documentation for full detail. Returns the raw GraphQL response for getItDocumentationList; check listInfo.hasMore to page.

ParamTypeRequiredDefaultDescription
conditionJsonstringnonullOptional SuperOps `condition` filter as a JSON object. Omit for no filter.
pageintegerno11-based page number (default 1).
pageSizeintegerno50Items per page (default 50, capped at 100 by the API).
sortJsonstringnonullOptional SuperOps `sort` order as a JSON array. Omit for default ordering.

[SuperOps] Update an IT-documentation record. Provide the changed fields (including the record id) as a JSON object in `inputJson`. IMPORTANT: sending a field as explicit null CLEARS it — to leave a field unchanged, OMIT it. Use `clearFields` to intentionally clear/reset specific fields. Returns the raw GraphQL response.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullOptional field names to explicitly CLEAR (reset to null) on the record. Only include a field here to wipe its value.
inputJsonstringyesThe fields to update (including the record id), as a JSON object matching the SuperOps updateItDocumentation input. Omitted fields are left unchanged.

Ticket Reference Data

ToolPlanAccessSummary
superops_create_categoriesProWriteCreate one or more ticket categories (batch).
superops_create_causesProWriteCreate one or more ticket cause values (batch).
superops_create_statusProWriteCreate a ticket status.
superops_get_category_listFreeRead-onlyList the account's ticket categories (paginated).
superops_get_cause_listFreeRead-onlyList the account's ticket cause values (paginated).
superops_get_impact_listFreeRead-onlyList the account's ticket impact values (paginated).
superops_get_priority_listFreeRead-onlyList the account's ticket priorities (paginated).
superops_get_resolution_code_listFreeRead-onlyList the account's ticket resolution codes (paginated).
superops_get_status_listFreeRead-onlyList the account's ticket statuses (paginated).
superops_get_urgency_listFreeRead-onlyList the account's ticket urgency values (paginated).

[SuperOps] Create one or more ticket categories (batch). inputJson is a JSON ARRAY of CreateCategoryInput objects, e.g. [{"name":"Hardware"},{"name":"Network"}]. List existing categories with superops_get_category_list. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA JSON array of CreateCategoryInput objects, e.g. [{"name":"Hardware"}]. Confirm field names against your SuperOps schema.

[SuperOps] Create one or more ticket cause values (batch). inputJson is a JSON ARRAY of CreateCauseInput objects, e.g. [{"name":"User error"}]. List existing causes with superops_get_cause_list. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesA JSON array of CreateCauseInput objects, e.g. [{"name":"User error"}]. Confirm field names against your SuperOps schema.

[SuperOps] Create a ticket status. inputJson is the CreateStatusInput object, e.g. {"name":"Awaiting Parts"}. List existing statuses with superops_get_status_list. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateStatusInput object as a JSON string, e.g. {"name":"Awaiting Parts"}. Confirm field names against your SuperOps schema.

[SuperOps] List the account's ticket categories (paginated). Use the returned category values when creating/updating tickets or when defining categories via superops_create_categories.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket cause values (paginated). Reference data for ticket classification; create new causes via superops_create_causes.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket impact values (paginated). Reference data used with urgency to derive priority.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket priorities (paginated). Reference data for ticket triage.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket resolution codes (paginated). Reference data for closing tickets with a standardized outcome.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket statuses (paginated). Reference data for ticket state; create new statuses via superops_create_status.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List the account's ticket urgency values (paginated). Reference data used with impact to derive priority.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

Technicians & Teams

ToolPlanAccessSummary
superops_create_technicianProWriteCreate a technician (internal MSP user).
superops_delete_technicianProDestructiveDelete a technician (internal MSP user).
superops_get_business_function_listFreeRead-onlyList business functions configured on the account (paginated).
superops_get_designation_listFreeRead-onlyList technician designations (job titles) configured on the account (paginated).
superops_get_requester_role_listFreeRead-onlyList requester roles (permission profiles for client-side users) on the account (paginated).
superops_get_team_listFreeRead-onlyList technician teams on the account (paginated).
superops_get_technician_group_listFreeRead-onlyList technician groups on the account (paginated).
superops_get_technician_listFreeRead-onlyList technicians (internal MSP users) on the account (paginated).
superops_get_technician_role_listFreeRead-onlyList technician roles (permission profiles for internal users) on the account (paginated).
superops_update_technicianProWriteUpdate a technician (internal MSP user).

[SuperOps] Create a technician (internal MSP user). inputJson is the CreateTechnicianInput object, e.g. {"name":"Jane Doe","email":"jane@msp.com","roleId":"..."}. Discover role ids with superops_get_technician_role_list and teams with superops_get_team_list. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
inputJsonstringyesThe CreateTechnicianInput object as a JSON string, e.g. {"name":"Jane Doe","email":"jane@msp.com"}. Confirm field names against your SuperOps schema.

[SuperOps] Delete a technician (internal MSP user). DESTRUCTIVE — the technician is removed and any assignments to them are affected. Provide the technician id (from superops_get_technician_list).

ParamTypeRequiredDefaultDescription
technicianIdstringyesThe technician id to delete (from superops_get_technician_list).

[SuperOps] List business functions configured on the account (paginated). Reference data used to categorize technicians/teams by business area.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List technician designations (job titles) configured on the account (paginated). Reference data for technician records.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.
ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List technician teams on the account (paginated). Teams group technicians for assignment and reporting.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List technician groups on the account (paginated). Reference data for grouping technicians.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List technicians (internal MSP users) on the account (paginated). This is also StackJack's connection-validation probe. Manage technicians via superops_create_technician / superops_update_technician / superops_delete_technician.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.
ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] Update a technician (internal MSP user). inputJson is the UpdateTechnicianInput object and MUST carry the technician's id plus the fields to change. To CLEAR a field, list its name in clearFields (emitted as explicit null); omit fields you want left unchanged. Returns the raw SuperOps GraphQL JSON.

ParamTypeRequiredDefaultDescription
clearFieldsarraynonullField names to CLEAR (reset to null) on the technician. Only include a field here if you intend to wipe its value. Omit or empty for none.
inputJsonstringyesThe UpdateTechnicianInput object as a JSON string (must include the technician id + changed fields).

Business Setup

ToolPlanAccessSummary
superops_get_device_categoriesFreeRead-onlyList RMM device categories configured on the account.
superops_get_holiday_listFreeRead-onlyList the account's holiday calendar entries (paginated).
superops_get_sla_listFreeRead-onlyList SLA (service-level agreement) definitions on the account (paginated).

[SuperOps] List RMM device categories configured on the account. Reference data for classifying assets; assign a category to an asset via superops_assign_device_category. Returns a flat array (no pagination).

[SuperOps] List the account's holiday calendar entries (paginated). Holidays feed business-hours and SLA calculations.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

[SuperOps] List SLA (service-level agreement) definitions on the account (paginated). SLAs drive ticket response/resolution targets.

ParamTypeRequiredDefaultDescription
pageintegernonull1-based page number. Defaults to 1.
pageSizeintegernonullItems per page (max 100). Defaults to 50.

GraphQL Passthrough

ToolPlanAccessSummary
superops_run_mutationProDestructiveRun an ARBITRARY GraphQL mutation document against the SuperOps /msp endpoint and return the raw JSON body verbatim.
superops_run_queryProDestructiveRun an ARBITRARY GraphQL query document against the SuperOps /msp endpoint and return the raw JSON body verbatim.

[SuperOps] Run an ARBITRARY GraphQL mutation document against the SuperOps /msp endpoint and return the raw JSON body verbatim. ESCAPE HATCH: this bypasses per-tool gating and is DESTRUCTIVE — it can create, change, or delete anything the token can reach. Prefer a discrete superops_* tool when one exists. Provide the full GraphQL document in `mutation`; pass any variables as a JSON object in `variablesJson`. On updates, an explicit JSON null CLEARS a field; omit fields to leave them unchanged. GraphQL returns 200 with a top-level errors[] on failure — inspect errors[], not the HTTP status.

ParamTypeRequiredDefaultDescription
mutationstringyesThe complete GraphQL mutation document, e.g. "mutation($input: CreateStatusInput!){ createStatus(input:$input) }".
variablesJsonstringnonullOptional GraphQL variables as a JSON object, e.g. {"input":{"name":"Awaiting Parts"}}. Omit if the document takes no variables.

[SuperOps] Run an ARBITRARY GraphQL query document against the SuperOps /msp endpoint and return the raw JSON body verbatim. ESCAPE HATCH: this bypasses per-tool gating and is flagged destructive because an arbitrary document can carry a mutation — prefer a discrete superops_* tool when one exists. Provide the full GraphQL document in `query`; pass any variables as a JSON object in `variablesJson`. GraphQL returns 200 with a top-level errors[] on failure — inspect errors[], not the HTTP status.

ParamTypeRequiredDefaultDescription
querystringyesThe complete GraphQL query document, e.g. "query($input: ListInfoInput!){ getTechnicianList(input:$input){ technicians listInfo } }".
variablesJsonstringnonullOptional GraphQL variables as a JSON object, e.g. {"input":{"page":1,"pageSize":10}}. Omit if the document takes no variables.