ConnectWise Manage Tools
Written By Christopher Scaminaci
Last updated 7 days ago
ConnectWise Manage Tools
cw_ · 1483 tools · Free 850 · Pro 633Basic auth (companyId+publicKey:privateKey) + clientId header; page size capped at 200; raw JSON passthrough. conditions use ConnectWise's own filter language (status/name='Open' and closedFlag=false), never OData. cw_raw_get and cw_raw_request are the escape hatch: one GET or one write to any PSA API path the named tools miss.
All connector tools · ConnectWise Manage setup guide
ConnectWise Manage tool groups
- Service Tickets — 13 tools
- Ticket Notes & Tasks — 13 tools
- Ticket Sub-Resources — 7 tools
- Service Boards & Configuration — 21 tools
- Stopwatches — 8 tools
- Companies — 10 tools
- Company Sites & Notes — 7 tools
- Contacts — 12 tools
- Configurations (Assets) — 9 tools
- Company & Contact Discovery — 15 tools
- Agreements — 12 tools
- Agreement Sub-Resources — 12 tools
- Invoices — 11 tools
- Accounting — 13 tools
- Finance Discovery — 7 tools
- Time Entries — 11 tools
- Timesheets — 5 tools
- Time Discovery — 7 tools
- Projects — 12 tools
- Project Phases — 3 tools
- Project Notes & Team — 5 tools
- Project Tickets — 8 tools
- Project Discovery — 8 tools
- Opportunities — 11 tools
- Opportunity Sub-Resources — 9 tools
- Sales Activities — 8 tools
- Sales Orders — 8 tools
- Sales Discovery — 9 tools
- Members — 22 tools
- Schedule — 9 tools
- Schedule Reference — 7 tools
- Procurement — 351 tools
- Expenses — 14 tools
- Marketing — 16 tools
- Knowledge Base — 9 tools
- Workflows — 5 tools
- System Discovery — 5 tools
- System Utilities — 13 tools
- Analytics — 12 tools
- Advanced Analytics — 20 tools
- Premium Analytics — 14 tools
- Cross-Domain — 8 tools
- Intelligence — 17 tools
- Member Administration — 1 tool
- Company Note Management — 1 tool
- Raw Requests — 2 tools
- Ticket Finance & All Notes — 3 tools
- Ticket Bundles — 2 tools
- Ticket Contact Authentication — 3 tools
- Project Ticket Finance & Notes — 5 tools
- Service Template Resources — 6 tools
- Setup Usages — 6 tools
- Schedule Reminder Times — 3 tools
- Finance Documents — 2 tools
- Expense Report Attachments — 1 tool
- Standard Reports — 3 tools
- Custom Field Infos — 3 tools
- User-Defined Field Screens — 2 tools
- My Recent Items — 2 tools
- Workflow Trigger Catalog — 3 tools
- Knowledge Base Setup — 16 tools
- SLAs & Priorities — 23 tools
- Service Board Setup — 55 tools
- Service Setup Tables — 36 tools
- Service Surveys — 14 tools
- Service Template Records — 8 tools
- Company Group Memberships — 6 tools
- Company Info & Defaults — 6 tools
- Company Management Reports — 18 tools
- Company Note Records — 3 tools
- Company Note Types — 9 tools
- Company Records — 2 tools
- Company Service Templates — 11 tools
- Company Site Records — 8 tools
- Company Status Notes — 7 tools
- Company Statuses & Types — 16 tools
- Company Surveys — 1 tool
- Company Teams — 6 tools
- Company Tracks & Type Associations — 12 tools
- Portal Configurations — 6 tools
- Stopwatch Records — 9 tools
- Time Accruals — 12 tools
- Time Entry Actions & Audits — 8 tools
- Time Setup Tables — 45 tools
- Timesheet Actions & Audits — 8 tools
- Project Contacts, Notes & Team — 13 tools
- Project Phase Records — 3 tools
- Project Records & Templates — 5 tools
- Project Setup Tables — 45 tools
- Contact Communications & Notes — 10 tools
- Contact Group Memberships — 6 tools
- Contact Records — 8 tools
- Contact Setup Tables — 26 tools
- Contact Tracks & Type Associations — 12 tools
- Project Ticket Sub-Resources — 31 tools
- Service Ticket Sub-Resources — 22 tools
- Schedule Calendars & Holidays — 28 tools
- Schedule Entry Records — 5 tools
- Schedule Setup Tables — 20 tools
- Configuration Records — 5 tools
- Configuration Statuses — 11 tools
- Configuration Types & Questions — 25 tools
- Expense Setup & Approvals — 19 tools
Service Tickets
cw_count_tickets details
cw_count_tickets details
[ConnectWise] Get a count of service tickets matching optional conditions. Returns the total number of matching tickets without fetching ticket data. Useful for dashboards, reporting, and checking result set size before paginating with cw_list_tickets.
cw_create_ticket details
cw_create_ticket details
[ConnectWise] Create a new service ticket. Requires at minimum a summary and board reference. Call cw_discover_boards first to find valid board IDs. Returns the created ticket with its assigned ID. This creates data visible to helpdesk staff and end users.
cw_delete_ticket details
cw_delete_ticket details
[ConnectWise] Permanently delete a service ticket by ID. This cannot be undone. Verify the ticket with cw_get_ticket before deleting. Requires a valid ticket ID — use cw_list_tickets or cw_search_tickets to find IDs.
cw_get_ticket details
cw_get_ticket details
[ConnectWise] Retrieve a single service ticket by ID. Returns ticket header fields including summary, status, priority, board, company, contact, assigned resources, SLA timing (dateResolved, resolvedBy, resolutionHours, resolutionGoalUTC), and custom fields. NOTE: The ConnectWise API does NOT return the body text of the Description, Internal Analysis, or Resolution tabs in this response — those live in ticket notes flagged with detailDescriptionFlag, internalAnalysisFlag, or resolutionFlag. Use cw_get_ticket_description, cw_get_ticket_internal_analysis, and cw_get_ticket_resolution to fetch each, or cw_list_ticket_notes for everything. Requires a valid ticket ID — use cw_list_tickets or cw_search_tickets to find IDs.
cw_list_company_tickets details
cw_list_company_tickets details
[ConnectWise] List open tickets for a specific company. A convenience tool that filters tickets to a single company. Useful for reviewing a client's current issues.
cw_list_high_priority_tickets details
cw_list_high_priority_tickets details
[ConnectWise] List open tickets with critical or high priority. Useful for urgent triage -- returns only tickets where priority is 'Priority 1 - Critical' or 'Priority 2 - High' and closedFlag=false, ordered by newest first.
cw_list_member_tickets details
cw_list_member_tickets details
[ConnectWise] List open tickets assigned to a specific member. A convenience tool that filters tickets to a single assignee. Useful for viewing a technician's current workload.
cw_list_open_tickets details
cw_list_open_tickets details
[ConnectWise] List all open (non-closed) service tickets. A convenience filter that returns only tickets with closedFlag=false. Useful for quick helpdesk queue views.
cw_list_recently_updated_tickets details
cw_list_recently_updated_tickets details
[ConnectWise] List tickets ordered by last update time, newest updates first. Useful for monitoring recent activity across the helpdesk without filtering by status or priority.
cw_list_tickets details
cw_list_tickets details
[ConnectWise] List service tickets with optional filtering, sorting, and field selection. Returns paginated ticket summaries including ID, summary, status, priority, board, and company. Use this to browse tickets or narrow results before fetching full details with cw_get_ticket. Call cw_discover_boards and cw_discover_statuses first to learn valid filter values.
cw_list_unassigned_tickets details
cw_list_unassigned_tickets details
[ConnectWise] List open tickets that have no assigned resources. Useful for triage queues -- shows tickets waiting to be dispatched. Returns tickets with closedFlag=false and no owner assigned, ordered by newest first.
cw_search_tickets details
cw_search_tickets details
[ConnectWise] Search service tickets by keyword in the summary field. ConnectWise does not expose description text as a condition-queryable field (description lives in ticket notes — use cw_get_ticket_description on a known ticket), so this matches summaries only. Use this when looking for tickets by keyword or error message rather than structured filtering with cw_list_tickets.
cw_update_ticket details
cw_update_ticket details
[ConnectWise] Update an existing service ticket using JSON Patch operations. Requires a valid ticket ID — use cw_list_tickets or cw_search_tickets to find IDs. Returns the updated ticket.
Ticket Notes & Tasks
cw_create_ticket_note details
cw_create_ticket_note details
[ConnectWise] Add a note to a service ticket. Use internalAnalysisFlag for internal-only notes or externalFlag for customer-visible notes. Requires a valid ticket ID — use cw_list_tickets to find IDs.
cw_create_ticket_task details
cw_create_ticket_task details
[ConnectWise] Add a task to a service ticket. Tasks represent individual work items within a ticket. Requires a valid ticket ID — use cw_list_tickets to find IDs.
cw_delete_ticket_note details
cw_delete_ticket_note details
[ConnectWise] Permanently delete a ticket note. This cannot be undone. Verify the note with cw_get_ticket_note before deleting.
cw_delete_ticket_task details
cw_delete_ticket_task details
[ConnectWise] Permanently delete a ticket task. This cannot be undone. Verify the task with cw_get_ticket_task before deleting.
cw_get_ticket_description details
cw_get_ticket_description details
[ConnectWise] Retrieve the Description-tab notes for a service ticket. ConnectWise stores description body text as ticket notes with detailDescriptionFlag=true (NOT as a field on the ticket itself). Returns notes ordered oldest-first to match the CW UI. Use this when cw_get_ticket doesn't show the description text. Requires a valid ticket ID.
cw_get_ticket_internal_analysis details
cw_get_ticket_internal_analysis details
[ConnectWise] Retrieve the Internal Analysis-tab notes for a service ticket. ConnectWise stores internal analysis body text as ticket notes with internalAnalysisFlag=true (NOT as a field on the ticket itself). Returns notes ordered oldest-first to match the CW UI. Use this when cw_get_ticket doesn't show the internal analysis text. Requires a valid ticket ID.
cw_get_ticket_note details
cw_get_ticket_note details
[ConnectWise] Retrieve a single ticket note by ticket ID and note ID. Returns the full note including text, internal/external flags, contact info, and timestamps. Use cw_list_ticket_notes to find valid note IDs.
cw_get_ticket_resolution details
cw_get_ticket_resolution details
[ConnectWise] Retrieve the Resolution-tab notes for a service ticket. ConnectWise stores resolution body text as ticket notes with resolutionFlag=true (NOT as a field on the ticket itself — the Ticket schema's initialResolution is POST-only and never returned on read). Returns notes ordered oldest-first to match the CW UI. Use this when cw_get_ticket doesn't show the resolution text. Requires a valid ticket ID.
cw_get_ticket_task details
cw_get_ticket_task details
[ConnectWise] Retrieve a single ticket task by ticket ID and task ID. Returns full task details including notes, priority, schedule, and completion status. Use cw_list_ticket_tasks to find valid task IDs.
cw_list_ticket_notes details
cw_list_ticket_notes details
[ConnectWise] List notes for a specific service ticket. Returns paginated note summaries including ID, text, internal/external flags (detailDescriptionFlag, internalAnalysisFlag, resolutionFlag, issueFlag), member, contact, and timestamps. The Description, Internal Analysis, and Resolution tabs in the ConnectWise UI are stored as notes with the corresponding flag set — filter with conditions like "detailDescriptionFlag=true", "internalAnalysisFlag=true", or "resolutionFlag=true" to retrieve only those, or use the cw_get_ticket_description / cw_get_ticket_internal_analysis / cw_get_ticket_resolution convenience tools. Requires a valid ticket ID — use cw_list_tickets or cw_search_tickets to find IDs.
cw_list_ticket_tasks details
cw_list_ticket_tasks details
[ConnectWise] List tasks for a specific service ticket. Returns paginated task summaries including ID, notes, priority, and completion status. Tasks represent work items within a ticket. Requires a valid ticket ID.
cw_update_ticket_note details
cw_update_ticket_note details
[ConnectWise] Update an existing ticket note using JSON Patch operations. Requires valid ticket ID and note ID — use cw_list_ticket_notes to find note IDs.
cw_update_ticket_task details
cw_update_ticket_task details
[ConnectWise] Update an existing ticket task using JSON Patch operations. Requires valid ticket ID and task ID — use cw_list_ticket_tasks to find task IDs.
Ticket Sub-Resources
cw_add_ticket_config details
cw_add_ticket_config details
[ConnectWise] Associate a configuration (asset) with a service ticket. Returns the created association. Requires valid ticket and configuration IDs -- use cw_list_tickets and cw_list_configurations to find IDs.
cw_list_ticket_configs details
cw_list_ticket_configs details
[ConnectWise] List all configurations (assets) associated with a service ticket. Returns configuration details including ID, name, type, and company. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_list_ticket_documents details
cw_list_ticket_documents details
[ConnectWise] List all documents attached to a service ticket. Returns document metadata including ID, title, file name, and upload date. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_list_ticket_products details
cw_list_ticket_products details
[ConnectWise] List all products associated with a service ticket. Returns product details including ID, description, quantity, price, and billing status. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_list_ticket_scheduleentries details
cw_list_ticket_scheduleentries details
[ConnectWise] List all schedule entries for a service ticket. Returns schedule details including member, start/end times, and status. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_list_ticket_timeentries details
cw_list_ticket_timeentries details
[ConnectWise] List all time entries logged against a service ticket. Returns time entry details including member, hours, work type, and billing status. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_remove_ticket_config details
cw_remove_ticket_config details
[ConnectWise] Remove a configuration (asset) association from a service ticket. This only removes the link, not the configuration itself. Requires valid ticket and configuration IDs.
Service Boards & Configuration
cw_discover_board_teams details
cw_discover_board_teams details
[ConnectWise] List all teams configured for a specific service board. Returns team IDs and names. Teams control ticket routing and assignment. Call this to discover valid team values before creating or updating tickets.
cw_discover_boards details
cw_discover_boards details
[ConnectWise] List all service boards. Returns board IDs, names, and configuration. Boards are the top-level organizer for tickets — call this first to discover valid board IDs before creating tickets with cw_create_ticket or filtering with cw_list_tickets.
cw_discover_codes details
cw_discover_codes details
[ConnectWise] List all service codes. Returns code IDs, names, and descriptions. Service codes are used for categorization and billing. Call this to discover valid code values for ticket workflows.
cw_discover_impacts details
cw_discover_impacts details
[ConnectWise] List all service impact levels. Returns impact IDs and names. Impacts measure the breadth of an issue (e.g., single user vs. whole department). Used alongside severity for priority calculations and SLA assignment.
cw_discover_items details
cw_discover_items details
[ConnectWise] List all items for a specific service board. Returns item IDs and names. Items are the third level of ticket categorization after type and subtype. Call this to discover valid item values before creating tickets.
cw_discover_priorities details
cw_discover_priorities details
[ConnectWise] List all service priorities. Returns priority IDs, names, colors, and sort order. Priorities define urgency levels for tickets. Call this to discover valid priority values before creating or filtering tickets.
cw_discover_service_locations details
cw_discover_service_locations details
[ConnectWise] List all service locations. Returns location IDs and names. Service locations define where work is performed (e.g., On-Site, Remote). Call this to discover valid location values for ticket creation.
cw_discover_severities details
cw_discover_severities details
[ConnectWise] List all service severity levels. Returns severity IDs and names. Severities measure the depth of an issue (e.g., inconvenience vs. system down). Used alongside impact for priority calculations and SLA assignment.
cw_discover_sla_priorities details
cw_discover_sla_priorities details
[ConnectWise] List all priority configurations for a specific SLA. Returns priority-level response and resolution targets, escalation rules, and calendar settings. Requires a valid SLA ID -- use cw_discover_slas to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_slas details
cw_discover_slas details
[ConnectWise] List all Service Level Agreements (SLAs). Returns SLA IDs, names, and configuration. SLAs define response and resolution time targets for tickets. Call this to understand available SLA policies.
cw_discover_sources details
cw_discover_sources details
[ConnectWise] List all service sources. Returns source IDs and names. Sources track how tickets originate (e.g., Email, Phone, Portal). Call this to discover valid source values for ticket creation and reporting.
cw_discover_statuses details
cw_discover_statuses details
[ConnectWise] List all statuses for a specific service board. Returns status IDs, names, and workflow configuration. Statuses define the lifecycle stages of tickets on a board. Call this to discover valid status values before creating or updating tickets.
cw_discover_subtypes details
cw_discover_subtypes details
[ConnectWise] List all subtypes for a specific service board. Returns subtype IDs and names. SubTypes further categorize tickets within a type. Call this to discover valid subtype values before creating tickets.
cw_discover_surveys details
cw_discover_surveys details
[ConnectWise] List all service surveys. Returns survey IDs, names, and configuration. Surveys are used for customer satisfaction feedback on resolved tickets.
cw_discover_types details
cw_discover_types details
[ConnectWise] List all types for a specific service board. Returns type IDs and names. Types categorize tickets on a board (e.g., Incident, Problem, Request). Call this to discover valid type values before creating tickets.
cw_get_board details
cw_get_board details
[ConnectWise] Retrieve a single service board by ID. Returns full board configuration including name, location, department, and dispatch settings. Use cw_discover_boards to find valid board IDs.
cw_get_priority details
cw_get_priority details
[ConnectWise] Retrieve a single priority by ID. Returns full priority details including name, color, sort order, and default flag. Use cw_discover_priorities to find valid priority IDs.
cw_get_service_template details
cw_get_service_template details
[ConnectWise] Retrieve a single service template by ID. Returns full template details including name, board, summary, description, and all pre-configured ticket fields. Use cw_list_service_templates to find valid template IDs.
cw_get_sla details
cw_get_sla details
[ConnectWise] Retrieve a single SLA by ID. Returns full SLA details including name, response/resolution targets, and priority-based escalation rules. Use cw_discover_slas to find valid SLA IDs.
cw_list_service_templates details
cw_list_service_templates details
[ConnectWise] List all service templates. Returns template IDs, names, and board references. Service templates define pre-configured ticket settings that can be applied when creating new tickets. Use this to discover available templates before applying them.
cw_list_survey_results details
cw_list_survey_results details
[ConnectWise] List results for one service survey. Requires a survey ID -- use cw_discover_surveys to find IDs. THE SCORE IS NOT A TOP-LEVEL FIELD: a response looks like {"id":43,"ticketId":2089,"totalPoints":100,"results":[{"questionId":20,"answer":0},{"questionId":21,"answer":"Kjapp respons :-)"}],"company":,"surveyId":5} and carries no `score` property. Question IDs and answer scales are per-survey and per-instance -- one survey may score -1/0/1/3 out of 4 total points while another scores 0=positive/1=neutral/2=negative out of 100 -- so never hardcode a question ID; compare totalPoints against the maximum observed for THAT survey, or use cw_csat_report which does it for you. Results carry no member reference, so attributing a response to a technician needs a separate ticket lookup by ticketId. ORDERING: an unordered read returns oldest first, putting recent responses on the LAST page -- pass orderBy="id desc" to reach them. Whether this child endpoint honours conditions/orderBy/fields is NOT verified against a live instance; all three are sent to ConnectWise verbatim and nothing is filtered or sorted client-side, so an unsupported one surfaces as ConnectWise's own error rather than a silent fallback.
Stopwatches
cw_create_ticket_stopwatch details
cw_create_ticket_stopwatch details
[ConnectWise] Create a new ticket stopwatch. Starts tracking time against a service ticket in real time. Requires a member and ticket reference. Returns the created stopwatch with its assigned ID.
cw_get_ticket_stopwatch details
cw_get_ticket_stopwatch details
[ConnectWise] Retrieve a single ticket stopwatch by ID. Returns full stopwatch details including member, ticket reference, status, start time, and elapsed duration. Requires a valid stopwatch ID — use cw_list_ticket_stopwatches to find IDs.
cw_list_activity_stopwatches details
cw_list_activity_stopwatches details
[ConnectWise] List activity stopwatches with optional filtering. Returns paginated stopwatch summaries including ID, member, activity reference, status, and elapsed time. Activity stopwatches track real-time work duration against sales activities.
cw_list_member_stopwatches details
cw_list_member_stopwatches details
[ConnectWise] List all ticket stopwatches for a specific member. Useful for reviewing a technician's active and recent time tracking via stopwatches. Returns both running and stopped stopwatches.
cw_list_running_stopwatches details
cw_list_running_stopwatches details
[ConnectWise] List all currently running ticket stopwatches. Returns active stopwatch records with member, ticket reference, and elapsed time. Useful for monitoring which technicians are actively working on tickets.
cw_list_ticket_stopwatches details
cw_list_ticket_stopwatches details
[ConnectWise] List ticket stopwatches with optional filtering. Returns paginated stopwatch summaries including ID, member, ticket reference, status, and elapsed time. Stopwatches track real-time work duration against service tickets.
cw_search_ticket_stopwatches details
cw_search_ticket_stopwatches details
[ConnectWise] Search ticket stopwatches by member identifier. Returns matching stopwatch records. Use this when you want to find running or recent stopwatches for a specific member.
cw_update_ticket_stopwatch details
cw_update_ticket_stopwatch details
[ConnectWise] Update an existing ticket stopwatch using JSON Patch operations. Use this to stop, pause, or modify a running stopwatch. Requires a valid stopwatch ID — use cw_list_ticket_stopwatches to find IDs. Returns the updated stopwatch.
Companies
cw_count_companies details
cw_count_companies details
[ConnectWise] Get total count of companies matching optional conditions. Returns a count object. Useful for pagination planning or dashboards.
cw_create_company details
cw_create_company details
[ConnectWise] Create a new company record. Returns the created company with its assigned ID. The JSON must include at minimum 'name' and 'identifier'. Use cw_discover_company_statuses and cw_discover_company_types to find valid reference values.
cw_delete_company details
cw_delete_company details
[ConnectWise] Permanently delete a company by ID. This is irreversible and will fail if the company has associated records. Verify the company ID with cw_get_company before deleting.
cw_get_company details
cw_get_company details
[ConnectWise] Retrieve full details for a single company by ID. Returns company info including name, status, type, address, phone, and custom fields. Requires a valid company ID -- use cw_list_companies or cw_search_companies to find IDs.
cw_list_companies details
cw_list_companies details
[ConnectWise] List companies with optional filtering, ordering, and pagination. Returns company summaries including ID, name, status, and type. Use this to discover company IDs for filtering tickets, contacts, configurations, and other company-scoped data.
cw_list_customer_companies details
cw_list_customer_companies details
[ConnectWise] List active customer companies. Returns companies where status is 'Active' and type is 'Customer'. Useful for client roster views, billing reviews, and service reporting.
cw_list_prospect_companies details
cw_list_prospect_companies details
[ConnectWise] List companies with type 'Prospect'. Useful for sales pipeline reviews -- shows companies that are potential customers but not yet active clients.
cw_merge_companies details
cw_merge_companies details
[ConnectWise] Merge a company into another company. All associated records (tickets, contacts, agreements, etc.) are moved to the target company. This is irreversible -- use cw_get_company_usages to review impact before merging. The source company is deleted after the merge.
cw_search_companies details
cw_search_companies details
[ConnectWise] Search companies by name or identifier. Returns matching companies ranked by relevance. Use this when you know the company name but not the ID.
cw_update_company details
cw_update_company details
[ConnectWise] Update an existing company using JSON Patch operations. Returns the updated company. Use cw_get_company to check current values before updating.
Company Sites & Notes
cw_create_company_note details
cw_create_company_note details
[ConnectWise] Create a new note on a company. Returns the created note with its assigned ID. Use cw_discover_company_note_types to find valid note type references.
cw_create_company_site details
cw_create_company_site details
[ConnectWise] Create a new site for a company. Returns the created site with its assigned ID. The JSON must include at minimum a 'name'.
cw_get_company_site details
cw_get_company_site details
[ConnectWise] Retrieve full details for a single company site by company ID and site ID. Returns site info including name, address, city, state, zip, and phone number.
cw_list_company_notes details
cw_list_company_notes details
[ConnectWise] List all notes for a company. Returns note details including ID, text, type, and timestamps. Use conditions to filter by note type or date. Requires a valid company ID -- use cw_list_companies to find IDs.
cw_list_company_sites details
cw_list_company_sites details
[ConnectWise] List all sites for a company. Returns site details including name, address, and primary flag. Requires a valid company ID -- use cw_list_companies or cw_search_companies to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_update_company_note details
cw_update_company_note details
[ConnectWise] Update an existing company note using JSON Patch operations. Returns the updated note. Use cw_list_company_notes to find valid note IDs.
cw_update_company_site details
cw_update_company_site details
[ConnectWise] Update an existing company site using JSON Patch operations. Returns the updated site. Use cw_get_company_site to check current values before updating.
Contacts
cw_count_contacts details
cw_count_contacts details
[ConnectWise] Get total count of contacts matching optional conditions. Returns a count object. Useful for pagination planning or dashboards.
cw_create_contact details
cw_create_contact details
[ConnectWise] Create a new contact record. Returns the created contact with its assigned ID. The JSON must include at minimum 'firstName', 'lastName', and a company reference.
cw_create_contact_communication details
cw_create_contact_communication details
[ConnectWise] Add a new communication item (email, phone, fax) to a contact. Returns the created communication with its assigned ID.
cw_create_contact_note details
cw_create_contact_note details
[ConnectWise] Create a new note on a contact. Returns the created note with its assigned ID. Requires a valid contact ID -- use cw_list_contacts to find IDs.
cw_delete_contact details
cw_delete_contact details
[ConnectWise] Permanently delete a contact by ID. This is irreversible. Verify the contact ID with cw_get_contact before deleting.
cw_get_contact details
cw_get_contact details
[ConnectWise] Retrieve full details for a single contact by ID. Returns contact info including name, company, title, email, phone, and communication items. Requires a valid contact ID -- use cw_list_contacts or cw_search_contacts to find IDs.
cw_list_company_contacts details
cw_list_company_contacts details
[ConnectWise] List all contacts for a specific company. A convenience tool that filters contacts to a single company by ID. Useful for viewing the full contact roster for a client before creating tickets or communications.
cw_list_contact_communications details
cw_list_contact_communications details
[ConnectWise] List all communication items (email, phone, fax) for a contact. Returns communication type, value, and default flags. Requires a valid contact ID. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_contact_notes details
cw_list_contact_notes details
[ConnectWise] List all notes for a contact. Returns note text, type, and timestamps. Requires a valid contact ID. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_contacts details
cw_list_contacts details
[ConnectWise] List contacts with optional filtering, ordering, and pagination. Returns contact summaries including ID, name, company, email, and phone. Use this to discover contact IDs for communication records or ticket associations.
cw_search_contacts details
cw_search_contacts details
[ConnectWise] Search contacts by name, email address, or phone number. Matches a substring of first name or last name, and a substring of any communication item value (email, direct phone, mobile phone, fax). Returns matching contacts. Use this when you know the contact's name, email, or phone but not the ID. Phone note: ConnectWise matches the stored text literally and does not normalize numbers, so search the digits as they are stored (e.g. '5551234'); if a number is stored with spaces or a country code, search a distinctive fragment of it.
cw_update_contact details
cw_update_contact details
[ConnectWise] Update an existing contact using JSON Patch operations. Returns the updated contact. Use cw_get_contact to check current values before updating.
Configurations (Assets)
cw_count_configurations details
cw_count_configurations details
[ConnectWise] Get total count of configurations matching optional conditions. Returns a count object. Useful for pagination planning or asset inventory dashboards.
cw_create_configuration details
cw_create_configuration details
[ConnectWise] Create a new configuration (asset) record. Returns the created configuration with its assigned ID. The JSON must include at minimum 'name', a company reference, and a type reference. Use cw_discover_configuration_types and cw_discover_configuration_statuses to find valid reference values.
cw_delete_configuration details
cw_delete_configuration details
[ConnectWise] Permanently delete a configuration (asset) by ID. This is irreversible. Verify the configuration ID with cw_get_configuration before deleting.
cw_get_configuration details
cw_get_configuration details
[ConnectWise] Retrieve full details for a single configuration (asset) by ID. Returns configuration info including name, type, status, company, serial number, and custom fields. Requires a valid configuration ID -- use cw_list_configurations to find IDs.
cw_list_active_configurations details
cw_list_active_configurations details
[ConnectWise] List all configurations (assets) with active status. Returns only assets where status is 'Active', excluding retired or decommissioned equipment. Useful for current asset inventory views.
cw_list_company_configurations details
cw_list_company_configurations details
[ConnectWise] List all configurations (assets) for a specific company. A convenience tool that filters configurations to a single company by ID. Useful for asset inventory reviews or pre-ticket context gathering.
cw_list_configurations details
cw_list_configurations details
[ConnectWise] List configurations (assets/CIs) with optional filtering, ordering, and pagination. Returns configuration summaries including ID, name, type, status, company, and serial number. Use this to discover configuration IDs for asset management.
cw_search_configurations details
cw_search_configurations details
[ConnectWise] Search configurations (assets) by name, serial number, or MAC address. Returns matching configuration records. Use this when you know a device name, serial number, or MAC but not the numeric ID.
cw_update_configuration details
cw_update_configuration details
[ConnectWise] Update an existing configuration (asset) using JSON Patch operations. Returns the updated configuration. Use cw_get_configuration to check current values before updating.
Company & Contact Discovery
cw_discover_company_groups details
cw_discover_company_groups details
[ConnectWise] List all available company groups. Returns group IDs and names. Company groups are used for categorizing and organizing companies into logical collections (e.g., by region, service tier, or industry). In ConnectWise these are the marketing groups setup table; pass companyId to list the groups one company belongs to instead.
cw_discover_company_note_types details
cw_discover_company_note_types details
[ConnectWise] List all available company note types (e.g., General, Billing, Technical). Returns type IDs and names. Use these IDs when creating company notes with cw_create_company_note. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_company_statuses details
cw_discover_company_statuses details
[ConnectWise] List all available company statuses (e.g., Active, Inactive). Returns status IDs and names. Use these IDs when creating or filtering companies by status. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_company_types details
cw_discover_company_types details
[ConnectWise] List all available company types (e.g., Client, Prospect, Vendor). Returns type IDs and names. Use these IDs when creating or filtering companies by type. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_configuration_statuses details
cw_discover_configuration_statuses details
[ConnectWise] List all available configuration (asset) statuses (e.g., Active, Retired, In Repair). Returns status IDs and names. Use these IDs when creating or filtering configurations by status. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_configuration_type_questions details
cw_discover_configuration_type_questions details
[ConnectWise] List all questions (custom fields) defined for a configuration type. Returns question details including field type, options, and requirements. Requires a valid configuration type ID -- use cw_discover_configuration_types to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_configuration_types details
cw_discover_configuration_types details
[ConnectWise] List all available configuration (asset) types (e.g., Desktop, Server, Network Device). Returns type IDs and names. Use these IDs when creating or filtering configurations by type. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_contact_departments details
cw_discover_contact_departments details
[ConnectWise] List all available contact departments (e.g., IT, Finance, Operations). Returns department IDs and names. Use these IDs when creating or filtering contacts by department. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_contact_groups details
cw_discover_contact_groups details
[ConnectWise] List all available contact groups. Returns group IDs and names. Contact groups are used for categorizing contacts into logical collections for marketing, communication, or reporting purposes. In ConnectWise these are the marketing groups setup table; pass contactId to list the groups one contact belongs to instead.
cw_discover_contact_relationships details
cw_discover_contact_relationships details
[ConnectWise] List all relationships for a specific contact. Returns relationship details including related contact, company, and relationship type. Requires a valid contact ID -- use cw_list_contacts to find IDs.
cw_discover_contact_types details
cw_discover_contact_types details
[ConnectWise] List all available contact types (e.g., Primary, Billing, Technical). Returns type IDs and names. Use these IDs when creating or filtering contacts by type. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_portal_configurations details
cw_discover_portal_configurations details
[ConnectWise] List all portal configurations. Returns portal setup details including URL, login settings, and company-specific portal configuration. Useful for understanding client portal access and settings. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_company_usages details
cw_get_company_usages details
[ConnectWise] Get usage counts for a company showing how many related records exist (tickets, contacts, configurations, etc.). Returns a breakdown of record counts by type. Useful for assessing impact before merging or deleting a company.
cw_list_active_companies details
cw_list_active_companies details
[ConnectWise] List all active companies. A convenience filter that returns only companies with an Active status. Useful for quick client roster views or populating company dropdown lists.
cw_list_company_teams details
cw_list_company_teams details
[ConnectWise] List teams assigned to a specific company. Returns team details including team role, member assignments, and contact info. Requires a valid company ID -- use cw_list_companies or cw_search_companies to find IDs.
Agreements
cw_count_agreements details
cw_count_agreements details
[ConnectWise] Get total count of agreements matching optional conditions. Returns a count object. Useful for pagination planning or revenue dashboards.
cw_create_agreement details
cw_create_agreement details
[ConnectWise] Create a new agreement (contract). Returns the created agreement with its assigned ID. The JSON must include at minimum 'name', a company reference, and a type reference. Use cw_discover_agreement_types and cw_discover_billing_cycles to find valid reference values.
cw_create_agreement_addition details
cw_create_agreement_addition details
[ConnectWise] Add a new addition (line item) to an agreement. Returns the created addition with its assigned ID. The JSON must include at minimum a product reference and quantity.
cw_delete_agreement details
cw_delete_agreement details
[ConnectWise] Permanently delete an agreement by ID. This is irreversible and will fail if the agreement has associated additions or billing records. Verify the agreement ID with cw_get_agreement before deleting.
cw_get_agreement details
cw_get_agreement details
[ConnectWise] Retrieve full details for a single agreement by ID. Returns agreement info including name, type, company, billing cycle, start/end dates, and amounts. Requires a valid agreement ID -- use cw_list_agreements to find IDs.
cw_list_active_agreements details
cw_list_active_agreements details
[ConnectWise] List all active (non-cancelled, non-expired) agreements. A convenience filter that returns only agreements where cancelledFlag=false. Useful for quick MRR reviews or client contract overviews.
cw_list_agreement_additions details
cw_list_agreement_additions details
[ConnectWise] List the additions (line items) on an agreement. Returns addition details including product, quantity, amount, and billing info. Requires a valid agreement ID -- use cw_list_agreements to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_agreements details
cw_list_agreements details
[ConnectWise] List agreements (contracts) with optional filtering, ordering, and pagination. Returns agreement summaries including ID, name, type, company, and billing details. Use this to discover agreement IDs for additions, billing analysis, or profitability review.
cw_list_company_agreements details
cw_list_company_agreements details
[ConnectWise] List all agreements for a specific company. A convenience tool that filters agreements to a single company. Useful for reviewing a client's contract portfolio.
cw_list_expiring_agreements details
cw_list_expiring_agreements details
[ConnectWise] List agreements expiring within a specified number of days. Useful for proactive renewal management -- returns active agreements whose endDate falls within the given window. Default is 90 days.
cw_search_agreements details
cw_search_agreements details
[ConnectWise] Search agreements by name or company name. Returns matching agreements ranked by relevance. Use this when looking for agreements by keyword rather than structured filtering with cw_list_agreements.
cw_update_agreement details
cw_update_agreement details
[ConnectWise] Update an existing agreement using JSON Patch operations. Returns the updated agreement. Use cw_get_agreement to check current values before updating.
Agreement Sub-Resources
cw_copy_agreement details
cw_copy_agreement details
[ConnectWise] Create a copy of an existing agreement. Returns the newly created agreement with a new ID. The copy includes all additions, sites, work roles, and work types from the original. Useful for creating similar agreements for new clients.
cw_create_agreement_adjustment details
cw_create_agreement_adjustment details
[ConnectWise] Create a new adjustment on an agreement. Returns the created adjustment with its assigned ID. Adjustments modify the agreement billing total for a given period.
cw_create_agreement_site details
cw_create_agreement_site details
[ConnectWise] Add a site to an agreement's coverage. Returns the created agreement site association. Use cw_list_company_sites to find valid site IDs.
cw_create_agreement_workrole details
cw_create_agreement_workrole details
[ConnectWise] Add a work role to an agreement. Returns the created work role with its assigned ID. Use cw_discover_work_roles to find valid work role references.
cw_create_agreement_worktype details
cw_create_agreement_worktype details
[ConnectWise] Add a work type to an agreement. Returns the created work type with its assigned ID. Use cw_discover_work_types to find valid work type references.
cw_get_agreement_recaps details
cw_get_agreement_recaps details
[ConnectWise] Get recap/summary data for agreements. Returns agreement financial summaries including billed amounts, adjustments, and profit information. Use conditions to filter to specific agreements or date ranges.
cw_list_agreement_adjustments details
cw_list_agreement_adjustments details
[ConnectWise] List all adjustments for an agreement. Returns adjustment details including amount, description, and effective date. Adjustments modify the agreement billing total. Requires a valid agreement ID -- use cw_list_agreements to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_agreement_board_defaults details
cw_list_agreement_board_defaults details
[ConnectWise] List all board defaults configured for an agreement. Returns board default details including board reference, default work role, and work type. Board defaults define which settings are used when time is entered against the agreement on a specific service board. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_agreement_sites details
cw_list_agreement_sites details
[ConnectWise] List all sites covered by an agreement. Returns site details including company site reference and coverage info. Requires a valid agreement ID -- use cw_list_agreements to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_agreement_workroles details
cw_list_agreement_workroles details
[ConnectWise] List all work roles configured for an agreement. Returns work role details including rate, effective date, and ending date. Work roles define hourly rates for different staff roles under the agreement. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_agreement_worktypes details
cw_list_agreement_worktypes details
[ConnectWise] List all work types configured for an agreement. Returns work type details including rate, effective date, and billing method. Work types define rates for different categories of work (e.g., remote, on-site) under the agreement. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_update_agreement_addition details
cw_update_agreement_addition details
[ConnectWise] Update an existing addition (line item) on an agreement using JSON Patch operations. Returns the updated addition. Use cw_list_agreement_additions to find valid addition IDs.
Invoices
cw_count_invoices details
cw_count_invoices details
[ConnectWise] Get a count of invoices matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for billing dashboards or checking result set size before paginating with cw_list_invoices.
cw_create_invoice details
cw_create_invoice details
[ConnectWise] Create a new invoice. Returns the created invoice with its assigned ID. The JSON should include company reference and billing details. Use cw_discover_billing_terms and cw_discover_tax_codes to find valid reference values.
cw_create_invoice_payment details
cw_create_invoice_payment details
[ConnectWise] Record a payment against an invoice. Returns the created payment with its assigned ID. Requires a valid invoice ID -- use cw_list_invoices to find IDs.
cw_get_invoice details
cw_get_invoice details
[ConnectWise] Retrieve full details for a single invoice by ID. Returns invoice info including number, company, total, tax, date, due date, and line items. Requires a valid invoice ID -- use cw_list_invoices to find IDs.
cw_get_invoice_pdf details
cw_get_invoice_pdf details
[ConnectWise] Download the PDF of an invoice by ID. You get a time-limited download link plus the content type, file name and size, not the bytes themselves. The envelope keys are sasUrl, contentType, suggestedFileName, sizeBytes and expiresAt, and the link is valid for 15 minutes. Fetch it before it expires, because nothing in StackJack keeps a copy. ConnectWise renders the PDF through its Reporting Services, so a 500 here usually means the report server failed, not that the invoice is missing. Requires a valid invoice ID -- use cw_list_invoices to find IDs.
cw_list_company_invoices details
cw_list_company_invoices details
[ConnectWise] List all invoices for a specific company. A convenience tool that filters invoices to a single company by ID. Useful for reviewing a client's billing history.
cw_list_invoice_payments details
cw_list_invoice_payments details
[ConnectWise] List all payments applied to an invoice. Returns payment details including amount, date, and payment method. Requires a valid invoice ID -- use cw_list_invoices to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_invoices details
cw_list_invoices details
[ConnectWise] List invoices with optional filtering, ordering, and pagination. Returns invoice summaries including ID, invoice number, company, total, date, and status. Use this to review billing history or find specific invoices.
cw_list_recent_invoices details
cw_list_recent_invoices details
[ConnectWise] List the most recent invoices ordered by date descending. Useful for quick billing reviews -- shows the latest invoices across all companies without any filtering.
cw_search_invoices details
cw_search_invoices details
[ConnectWise] Search invoices by invoice number or company name. Returns matching invoices. Use this when you know the invoice number or company name but not the numeric ID.
cw_update_invoice details
cw_update_invoice details
[ConnectWise] Update an existing invoice using JSON Patch operations. Returns the updated invoice. Use cw_get_invoice to check current values before updating.
Accounting
cw_count_gl_entries details
cw_count_gl_entries details
[ConnectWise] Get a count of general ledger entries matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for financial reporting dashboards.
cw_count_unposted_expenses details
cw_count_unposted_expenses details
[ConnectWise] Get a count of unposted expenses matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for expense approval pipeline dashboards.
cw_count_unposted_invoices details
cw_count_unposted_invoices details
[ConnectWise] Get a count of unposted invoices matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for billing pipeline dashboards.
cw_create_accounting_batch details
cw_create_accounting_batch details
[ConnectWise] Create a new accounting batch for grouping transactions. Returns the created batch with its assigned ID. Batches are used to organize and export financial data to external accounting systems.
cw_discover_billing_setups details
cw_discover_billing_setups details
[ConnectWise] List all billing setup configurations. Returns setup details including email templates, invoice templates, and billing defaults. Useful for understanding how billing is configured in the ConnectWise instance. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_billing_statuses details
cw_discover_billing_statuses details
[ConnectWise] List all billing statuses. Returns status IDs and names (e.g., Billed, Unbilled, Do Not Bill). Use these values when filtering invoices, time entries, or expenses by billing status. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_delivery_methods details
cw_discover_delivery_methods details
[ConnectWise] List all invoice delivery methods. Returns method IDs and names (e.g., Email, Print, Mail). Use these values when creating or updating invoices to specify how they should be delivered to customers. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_accounting_batch details
cw_get_accounting_batch details
[ConnectWise] Retrieve full details for a single accounting batch by ID. Returns batch info including name, status, transactions, and export details. Requires a valid batch ID -- use cw_list_accounting_batches to find IDs.
cw_list_accounting_batches details
cw_list_accounting_batches details
[ConnectWise] List accounting batches with optional filtering and pagination. Returns batch summaries including ID, name, status, and export date. Batches group financial transactions for export to accounting systems.
cw_list_gl_entries details
cw_list_gl_entries details
[ConnectWise] List general ledger (GL) entries with optional filtering and pagination. Returns posted GL transactions including account, amount, and reference. Useful for financial reporting and reconciliation.
cw_list_unposted_expenses details
cw_list_unposted_expenses details
[ConnectWise] List unposted (pending) expenses with optional filtering and pagination. Returns expenses that have not yet been posted to the GL. Useful for reviewing expense reports before finalizing.
cw_list_unposted_invoices details
cw_list_unposted_invoices details
[ConnectWise] List unposted (pending) invoices with optional filtering and pagination. Returns invoices that have not yet been posted to the GL. Useful for reviewing billing before finalizing.
cw_list_unposted_payments details
cw_list_unposted_payments details
[ConnectWise] List unposted (pending) payments with optional filtering and pagination. Returns payments that have not yet been posted to the GL. Useful for reviewing incoming payments before finalizing.
Finance Discovery
cw_discover_agreement_types details
cw_discover_agreement_types details
[ConnectWise] List all available agreement types (e.g., Standard, Block Time, Retainer). Returns type IDs and names. Use these IDs when creating or filtering agreements by type. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_billing_cycles details
cw_discover_billing_cycles details
[ConnectWise] List all available billing cycles (e.g., Monthly, Quarterly, Annually). Returns cycle IDs and names. Use these IDs when creating agreements with specific billing schedules. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_billing_terms details
cw_discover_billing_terms details
[ConnectWise] List all available billing terms (e.g., Net 30, Net 60, Due on Receipt). Returns term IDs and names. Use these IDs when creating agreements or invoices with specific payment terms. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_currencies details
cw_discover_currencies details
[ConnectWise] List all available currencies. Returns currency IDs, codes, symbols, and names. Use these IDs when creating agreements or invoices in specific currencies. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_gl_accounts details
cw_discover_gl_accounts details
[ConnectWise] List all available general ledger (GL) accounts. Returns account IDs, numbers, and names. Use these IDs when configuring agreement or invoice GL mappings. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_invoice_templates details
cw_discover_invoice_templates details
[ConnectWise] List all available invoice templates. Returns template IDs and names. Invoice templates control the layout and formatting of generated invoices. Use these IDs when configuring billing setups or creating invoices. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_tax_codes details
cw_discover_tax_codes details
[ConnectWise] List all available tax codes. Returns tax code IDs, names, and rates. Use these IDs when creating agreements or invoices that require tax configuration. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Time Entries
cw_count_time_entries details
cw_count_time_entries details
[ConnectWise] Get a count of time entries matching optional conditions. Returns the total number of matching entries without fetching data. Useful for dashboards, reporting, and checking result set size before paginating with cw_list_time_entries.
cw_create_time_entry details
cw_create_time_entry details
[ConnectWise] Create a new time entry. Requires at minimum a member reference and either timeStart/timeEnd or actualHours. Use cw_discover_work_types and cw_discover_work_roles to find valid work type and role IDs. Returns the created time entry with its assigned ID.
cw_delete_time_entry details
cw_delete_time_entry details
[ConnectWise] Permanently delete a time entry by ID. This cannot be undone. Verify the entry with cw_get_time_entry before deleting. Requires a valid time entry ID — use cw_list_time_entries to find IDs.
cw_get_time_entry details
cw_get_time_entry details
[ConnectWise] Retrieve a single time entry by ID. Returns full time entry details including member, hours, charge-to reference, work type, work role, notes, and billable status. Requires a valid time entry ID — use cw_list_time_entries to find IDs.
cw_list_company_time_entries details
cw_list_company_time_entries details
[ConnectWise] List time entries charged to a specific company. A convenience tool that filters time entries by company ID. Useful for reviewing hours logged against a client for billing or utilization analysis.
cw_list_member_time_entries details
cw_list_member_time_entries details
[ConnectWise] List time entries for a specific member by identifier. A convenience tool that filters time entries to a single member. Useful for reviewing a technician's logged time.
cw_list_time_entries details
cw_list_time_entries details
[ConnectWise] List time entries with optional filtering and sorting. Returns paginated time entry summaries including member, hours, charge-to reference, work type, and billable status. Use this to review logged time across the team or for specific members/tickets.
cw_list_today_time_entries details
cw_list_today_time_entries details
[ConnectWise] List all time entries for today. Useful for daily standup reviews and monitoring current day activity across the team.
cw_list_unbilled_time_entries details
cw_list_unbilled_time_entries details
[ConnectWise] List time entries that have not yet been billed. Returns unbilled time entry records. Useful for identifying revenue that needs to be invoiced.
cw_search_time_entries details
cw_search_time_entries details
[ConnectWise] Search time entries by notes content or member identifier. Returns matching time entries ranked by relevance. Use this when looking for time entries by keyword rather than structured filtering with cw_list_time_entries.
cw_update_time_entry details
cw_update_time_entry details
[ConnectWise] Update an existing time entry using JSON Patch operations. Requires a valid time entry ID — use cw_list_time_entries to find IDs. Returns the updated time entry.
Timesheets
cw_count_timesheets details
cw_count_timesheets details
[ConnectWise] Get a count of timesheets matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for tracking timesheet submission or approval backlogs.
cw_get_timesheet details
cw_get_timesheet details
[ConnectWise] Retrieve a single timesheet by ID. Returns full timesheet details including member, period dates, approval status, and associated time entries. Requires a valid timesheet ID — use cw_list_timesheets to find IDs.
cw_list_pending_timesheets details
cw_list_pending_timesheets details
[ConnectWise] List timesheets pending approval. A convenience filter that returns only timesheets with a 'New' or submitted status. Useful for managers reviewing timesheet approval queues.
cw_list_timesheets details
cw_list_timesheets details
[ConnectWise] List timesheets with optional filtering. Returns paginated timesheet summaries including member, period, status, and total hours. Timesheets aggregate time entries into approval workflows. Use this to review timesheet submissions and approval status.
cw_search_timesheets details
cw_search_timesheets details
[ConnectWise] Search timesheets by member name or identifier. Returns matching timesheets. Use this when you know the member but want to find their timesheet submissions.
Time Discovery
cw_discover_charge_code_expense_types details
cw_discover_charge_code_expense_types details
[ConnectWise] List expense types associated with a specific charge code. Returns expense type entries that define how expenses are categorized under this charge code. Requires a valid charge code ID — use cw_discover_charge_codes to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_charge_codes details
cw_discover_charge_codes details
[ConnectWise] List all available charge codes. Charge codes define how time is categorized for billing and reporting. Use this to find valid charge code IDs when creating time entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_time_accruals details
cw_discover_time_accruals details
[ConnectWise] List all available time accruals. Time accruals track PTO, vacation, sick time, and other accrual-based time balances for members. Use this to find valid accrual IDs. Call cw_list_time_accrual_details to see individual accrual entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_work_role_locations details
cw_discover_work_role_locations details
[ConnectWise] List location-specific rate overrides for a work role. Returns location entries with billing rates that may differ from the work role's default rate. Requires a valid work role ID — use cw_discover_work_roles to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_work_roles details
cw_discover_work_roles details
[ConnectWise] List all available work roles. Work roles define the billing rate category for time entries (e.g., Engineer, Project Manager). Use this to find valid work role IDs when creating or filtering time entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_work_types details
cw_discover_work_types details
[ConnectWise] List all available work types. Work types categorize the kind of work performed (e.g., Remote Support, On-Site, Travel). Use this to find valid work type IDs when creating or filtering time entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_time_accrual_details details
cw_list_time_accrual_details details
[ConnectWise] List detail entries for a specific time accrual. Returns individual accrual transactions including date, hours, and reason. Requires a valid accrual ID — use cw_discover_time_accruals to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Projects
cw_count_projects details
cw_count_projects details
[ConnectWise] Get a count of projects matching optional conditions. Returns the total number of matching projects without fetching data. Useful for dashboards, reporting, and checking result set size before paginating with cw_list_projects.
cw_create_project details
cw_create_project details
[ConnectWise] Create a new project. Requires at minimum a name and board reference. Call cw_discover_project_boards first to find valid board IDs. Returns the created project with its assigned ID. This creates data visible to project managers and team members.
cw_delete_project details
cw_delete_project details
[ConnectWise] Permanently delete a project by ID. This cannot be undone and will remove all associated phases, tickets, and team member assignments. Verify the project with cw_get_project before deleting. Requires a valid project ID — use cw_list_projects to find IDs.
cw_get_project details
cw_get_project details
[ConnectWise] Retrieve a single project by ID. Returns full project details including name, status, company, manager, budget, billing method, phases, and scheduling info. Requires a valid project ID — use cw_list_projects to find IDs.
cw_list_active_projects details
cw_list_active_projects details
[ConnectWise] List all active (non-closed) projects. A convenience filter that returns only projects with an active status. Useful for quick project portfolio views without needing to know status IDs.
cw_list_company_projects details
cw_list_company_projects details
[ConnectWise] List all projects for a specific company. A convenience tool that filters projects to a single company by ID. Useful for reviewing a client's project portfolio or planning new work.
cw_list_overdue_projects details
cw_list_overdue_projects details
[ConnectWise] List active projects that are past their estimated end date. Useful for project management oversight -- identifies projects that may need attention or schedule adjustments.
cw_list_project_billing_rates details
cw_list_project_billing_rates details
[ConnectWise] List billing rates configured for a specific project. Returns rate records including work role, work type, and hourly rate. Requires a valid project ID — use cw_list_projects to find IDs.
cw_list_project_phases details
cw_list_project_phases details
[ConnectWise] List phases for a specific project. Returns phase summaries including ID, description, scheduled dates, and budget info. Phases break projects into manageable milestones. Requires a valid project ID — use cw_list_projects to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_projects details
cw_list_projects details
[ConnectWise] List projects with optional filtering and sorting. Returns paginated project summaries including ID, name, status, company, manager, and budget info. Use this to browse projects or narrow results before fetching full details with cw_get_project. Call cw_discover_project_statuses and cw_discover_project_types first to learn valid filter values.
cw_search_projects details
cw_search_projects details
[ConnectWise] Search projects by name or company name. Returns matching projects ranked by relevance. Use this when looking for projects by keyword rather than structured filtering with cw_list_projects.
cw_update_project details
cw_update_project details
[ConnectWise] Update an existing project using JSON Patch operations. Requires a valid project ID — use cw_list_projects to find IDs. Returns the updated project.
Project Phases
cw_create_project_phase details
cw_create_project_phase details
[ConnectWise] Create a new phase within a project. Phases break projects into manageable stages with their own schedules, budgets, and ticket assignments. Requires a valid project ID — use cw_list_projects to find IDs. Call cw_discover_phase_statuses to learn valid status values. Returns the created phase with its assigned ID.
cw_get_project_phase details
cw_get_project_phase details
[ConnectWise] Retrieve a single project phase by project and phase ID. Returns full phase details including description, board, status, scheduled hours, actual hours, and budget. Requires valid project and phase IDs — use cw_list_project_phases on a project to find phase IDs.
cw_update_project_phase details
cw_update_project_phase details
[ConnectWise] Update an existing project phase using JSON Patch operations. Requires valid project and phase IDs — use cw_list_project_phases to find phase IDs. Returns the updated phase.
Project Notes & Team
cw_create_project_note details
cw_create_project_note details
[ConnectWise] Add a note to a project. Use this to record decisions, updates, or communication history. Requires a valid project ID — use cw_list_projects to find IDs. Returns the created note with its assigned ID.
cw_create_project_team_member details
cw_create_project_team_member details
[ConnectWise] Add a team member to a project. Assigns a member with a specific work role and project role. Requires a valid project ID — use cw_list_projects to find IDs. Call cw_discover_work_roles and cw_discover_project_security_roles to find valid role IDs. Returns the created team member assignment.
cw_list_project_contacts details
cw_list_project_contacts details
[ConnectWise] List contacts associated with a specific project. Returns contact references linked to this project including contact ID, name, and role. Requires a valid project ID — use cw_list_projects to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_project_notes details
cw_list_project_notes details
[ConnectWise] List notes for a specific project. Returns note summaries including ID, text, type, and created date. Project notes capture decisions, updates, and communication history. Requires a valid project ID — use cw_list_projects to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_project_team_members details
cw_list_project_team_members details
[ConnectWise] List team members assigned to a specific project. Returns member summaries including ID, member reference, work role, and project role. Use this to see who is assigned to a project and their roles. Requires a valid project ID — use cw_list_projects to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Project Tickets
cw_count_project_tickets details
cw_count_project_tickets details
[ConnectWise] Get a count of project tickets matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for project workload assessment.
cw_create_project_ticket details
cw_create_project_ticket details
[ConnectWise] Create a new project ticket. Requires at minimum a summary and project reference. Returns the created project ticket with its assigned ID. Use cw_list_projects to find valid project IDs and cw_discover_project_boards for board IDs.
cw_create_project_ticket_note details
cw_create_project_ticket_note details
[ConnectWise] Add a note to a project ticket. Use this to record updates, decisions, or communication on project work items. Requires a valid project ticket ID — use cw_list_project_tickets to find IDs. Returns the created note with its assigned ID.
cw_get_project_ticket details
cw_get_project_ticket details
[ConnectWise] Retrieve a single project ticket by ID. Returns full ticket details including summary, status, phase, project, assigned resources, and scheduling info. Requires a valid project ticket ID — use cw_list_project_tickets to find IDs.
cw_list_project_ticket_notes details
cw_list_project_ticket_notes details
[ConnectWise] List notes for a specific project ticket. Returns note summaries including ID, text, type, and created date. Requires a valid project ticket ID — use cw_list_project_tickets to find IDs.
cw_list_project_tickets details
cw_list_project_tickets details
[ConnectWise] List project tickets with optional filtering. Returns paginated project ticket summaries including ID, summary, status, phase, and assigned resources. Project tickets track work items within projects. Use cw_discover_project_boards to find valid board IDs for filtering.
cw_search_project_tickets details
cw_search_project_tickets details
[ConnectWise] Search project tickets by summary keyword. Returns matching project tickets. Use this when you know a keyword from the ticket summary but not the numeric ID.
cw_update_project_ticket details
cw_update_project_ticket details
[ConnectWise] Update an existing project ticket using JSON Patch operations. Requires a valid project ticket ID — use cw_list_project_tickets to find IDs. Returns the updated project ticket.
Project Discovery
cw_discover_phase_statuses details
cw_discover_phase_statuses details
[ConnectWise] List all available project phase statuses. Phase statuses define the lifecycle of project phases (e.g., Open, In Progress, Completed). Use this to find valid status IDs when creating or updating project phases. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_project_billing_rates details
cw_discover_project_billing_rates details
[ConnectWise] List billing rate overrides for a specific project. Returns rate entries that define custom billing rates for this project, which may differ from the default work role rates. Requires a valid project ID — use cw_list_projects to find IDs.
cw_discover_project_boards details
cw_discover_project_boards details
[ConnectWise] List all available project boards. Project boards organize projects into categories with their own workflows and statuses. In ConnectWise a project board is a service board with projectFlag=true, so the ids work anywhere a board id does. Use this to find valid board IDs when creating projects or filtering with cw_list_projects.
cw_discover_project_security_roles details
cw_discover_project_security_roles details
[ConnectWise] List all available project security roles. Security roles define what permissions team members have within a project (e.g., Project Manager, Team Member, Read Only). Use this to find valid role IDs when adding team members to projects. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_project_statuses details
cw_discover_project_statuses details
[ConnectWise] List all available project statuses. Statuses define the lifecycle stages of projects (e.g., Open, In Progress, Completed, Closed). Use this to find valid status IDs when creating or filtering projects. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_project_types details
cw_discover_project_types details
[ConnectWise] List all available project types. Project types categorize projects (e.g., Internal, Client, Infrastructure). Use this to find valid type IDs when creating or filtering projects. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_project_template details
cw_get_project_template details
[ConnectWise] Retrieve a single project template by ID. Returns full template details including name, description, phases, and default settings. Requires a valid template ID — use cw_list_project_templates to find IDs.
cw_list_project_templates details
cw_list_project_templates details
[ConnectWise] List all available project templates. Templates provide pre-configured project structures with phases, tickets, and team assignments. Use this to find templates when creating new projects based on standard workflows. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Opportunities
cw_convert_opportunity_to_sales_order details
cw_convert_opportunity_to_sales_order details
[ConnectWise] Convert a won sales opportunity into a sales order. Creates a new sales order based on the opportunity details including products and pricing. This is typically used after a deal is closed/won to process the order. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. Returns the conversion result.
cw_convert_opportunity_to_ticket details
cw_convert_opportunity_to_ticket details
[ConnectWise] Convert a won sales opportunity into a service ticket. Creates a new service ticket based on the opportunity details. This is typically used to initiate service delivery after closing a deal. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. Returns the conversion result.
cw_count_opportunities details
cw_count_opportunities details
[ConnectWise] Get a count of sales opportunities matching optional conditions. Returns the total number of matching opportunities without fetching data. Useful for pipeline dashboards, reporting, and checking result set size before paginating with cw_list_opportunities.
cw_create_opportunity details
cw_create_opportunity details
[ConnectWise] Create a new sales opportunity. Requires at minimum a name. Call cw_discover_opportunity_types and cw_discover_opportunity_stages to find valid type and stage IDs. Returns the created opportunity with its assigned ID.
cw_delete_opportunity details
cw_delete_opportunity details
[ConnectWise] Permanently delete a sales opportunity by ID. This cannot be undone. Verify the opportunity with cw_get_opportunity before deleting. Requires a valid opportunity ID — use cw_list_opportunities to find IDs.
cw_get_opportunity details
cw_get_opportunity details
[ConnectWise] Retrieve a single sales opportunity by ID. Returns full opportunity details including name, status, stage, company, primary contact, expected revenue, probability, close date, and custom fields. Requires a valid opportunity ID — use cw_list_opportunities to find IDs.
cw_list_company_opportunities details
cw_list_company_opportunities details
[ConnectWise] List all sales opportunities for a specific company. A convenience tool that filters opportunities to a single company by ID. Useful for reviewing a client's sales history and active deals.
cw_list_opportunities details
cw_list_opportunities details
[ConnectWise] List sales opportunities with optional filtering and sorting. Returns paginated opportunity summaries including ID, name, status, stage, company, expected revenue, and close date. Use this to review the sales pipeline or narrow results before fetching full details with cw_get_opportunity. Call cw_discover_opportunity_statuses and cw_discover_opportunity_stages first to learn valid filter values.
cw_list_won_opportunities details
cw_list_won_opportunities details
[ConnectWise] List sales opportunities with status 'Won'. Useful for revenue tracking, sales performance reviews, and identifying deals that need to be converted to agreements or projects.
cw_search_opportunities details
cw_search_opportunities details
[ConnectWise] Search sales opportunities by name or company name. Returns matching opportunities ranked by relevance. Use this when looking for opportunities by keyword rather than structured filtering with cw_list_opportunities.
cw_update_opportunity details
cw_update_opportunity details
[ConnectWise] Update an existing sales opportunity using JSON Patch operations. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. Returns the updated opportunity.
Opportunity Sub-Resources
cw_convert_opportunity_to_agreement details
cw_convert_opportunity_to_agreement details
[ConnectWise] Convert a won sales opportunity into an agreement. Creates a new agreement based on the opportunity details. This is typically used after a deal is closed/won to set up recurring billing. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. Returns the conversion result.
cw_convert_opportunity_to_project details
cw_convert_opportunity_to_project details
[ConnectWise] Convert a won sales opportunity into a project. Creates a new project based on the opportunity details. This is typically used after a deal is closed/won to begin project delivery. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. Returns the conversion result.
cw_create_opportunity_contact details
cw_create_opportunity_contact details
[ConnectWise] Link a contact to a sales opportunity. Associates an existing contact with this deal. Requires a valid opportunity ID and contact reference. Returns the created opportunity-contact association.
cw_create_opportunity_note details
cw_create_opportunity_note details
[ConnectWise] Add a note to a sales opportunity. Use this to record sales conversations, decisions, or follow-up items. Requires a valid opportunity ID. Returns the created note with its assigned ID.
cw_create_opportunity_team_member details
cw_create_opportunity_team_member details
[ConnectWise] Add a team member to a sales opportunity. Assigns a member with a specific sales role and optional commission percentage. Requires a valid opportunity ID. Call cw_discover_sales_roles to find valid role IDs. Returns the created team member assignment.
cw_list_opportunity_contacts details
cw_list_opportunity_contacts details
[ConnectWise] List contacts associated with a sales opportunity. Returns contact references linked to this deal, including contact ID, name, and role. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_opportunity_forecasts details
cw_list_opportunity_forecasts details
[ConnectWise] List forecast entries for a sales opportunity. Returns forecast data including revenue projections, probability, and close date estimates. Forecasts help predict revenue from the sales pipeline. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_opportunity_notes details
cw_list_opportunity_notes details
[ConnectWise] List notes attached to a sales opportunity. Returns note summaries including ID, text, type, and created date. Opportunity notes capture sales conversations, decisions, and follow-up items. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_opportunity_team details
cw_list_opportunity_team details
[ConnectWise] List team members assigned to a sales opportunity. Returns team member references including member, role, and commission percentage. Use this to see who is working on a deal. Requires a valid opportunity ID — use cw_list_opportunities to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Sales Activities
cw_count_activities details
cw_count_activities details
[ConnectWise] Get a count of sales activities matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for tracking activity volumes or checking result set size before paginating with cw_list_activities.
cw_create_activity details
cw_create_activity details
[ConnectWise] Create a new sales activity. Activities track sales interactions such as calls, meetings, emails, and follow-ups. Returns the created activity with its assigned ID.
cw_delete_activity details
cw_delete_activity details
[ConnectWise] Permanently delete a sales activity by ID. This cannot be undone. Verify the activity with cw_get_activity before deleting. Requires a valid activity ID — use cw_list_activities to find IDs.
cw_get_activity details
cw_get_activity details
[ConnectWise] Retrieve a single sales activity by ID. Returns full activity details including name, type, status, assigned member, company, contact, opportunity, notes, and schedule info. Requires a valid activity ID — use cw_list_activities to find IDs.
cw_list_activities details
cw_list_activities details
[ConnectWise] List sales activities with optional filtering. Returns paginated activity summaries including ID, name, type, status, assigned member, company, and schedule info. Activities track sales interactions such as calls, meetings, emails, and follow-ups.
cw_list_activity_stopwatches_by_member details
cw_list_activity_stopwatches_by_member details
[ConnectWise] List activity stopwatches filtered by member identifier. Returns running or paused stopwatch records for activities. Use to find active timers associated with sales activities for a specific member.
cw_search_activities details
cw_search_activities details
[ConnectWise] Search sales activities by name or member identifier. Returns matching activities. Use this when you know the activity name or assigned member but not the numeric ID.
cw_update_activity details
cw_update_activity details
[ConnectWise] Update an existing sales activity using JSON Patch operations. Requires a valid activity ID — use cw_list_activities to find IDs. Returns the updated activity.
Sales Orders
cw_count_orders details
cw_count_orders details
[ConnectWise] Get a count of sales orders matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for sales pipeline dashboards.
cw_create_order details
cw_create_order details
[ConnectWise] Create a new sales order. Sales orders represent committed deals that are ready for fulfillment. Typically created by converting a won opportunity, but can also be created directly. Call cw_discover_order_statuses to find valid status IDs. Returns the created order with its assigned ID.
cw_create_order_line_item details
cw_create_order_line_item details
[ConnectWise] Add a line item to a sales order. Line items represent individual products or services being sold. Requires a valid sales order ID — use cw_list_orders to find IDs. Returns the created line item with its assigned ID.
cw_get_order details
cw_get_order details
[ConnectWise] Retrieve a single sales order by ID. Returns full order details including description, company, opportunity, status, total, line items, and billing info. Requires a valid sales order ID — use cw_list_orders to find IDs.
cw_list_order_line_items details
cw_list_order_line_items details
[ConnectWise] List line items for a specific sales order. Returns product/service entries including description, quantity, unit price, and total. Requires a valid sales order ID — use cw_list_orders to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_orders details
cw_list_orders details
[ConnectWise] List sales orders with optional filtering. Returns paginated order summaries including ID, description, company, opportunity, status, and total. Sales orders represent committed deals from won opportunities.
cw_search_orders details
cw_search_orders details
[ConnectWise] Search sales orders by description or company name. Returns matching orders. Use this when you know the order description or company but not the numeric ID.
cw_update_order details
cw_update_order details
[ConnectWise] Update an existing sales order using JSON Patch operations. Requires a valid sales order ID — use cw_list_orders to find IDs. Returns the updated order.
Sales Discovery
cw_discover_activity_statuses details
cw_discover_activity_statuses details
[ConnectWise] List all available activity statuses. Statuses define the lifecycle of sales activities (e.g., Open, Completed, Cancelled). Use this to find valid status IDs when creating or filtering sales activities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_activity_types details
cw_discover_activity_types details
[ConnectWise] List all available activity types. Activity types categorize sales activities (e.g., Phone Call, Email, Meeting, Demo). Use this to find valid type IDs when creating or filtering sales activities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_opportunity_ratings details
cw_discover_opportunity_ratings details
[ConnectWise] List all available opportunity ratings. Ratings qualify the likelihood and quality of a deal (e.g., Hot, Warm, Cold). Use this to find valid rating IDs when creating or filtering opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_opportunity_stages details
cw_discover_opportunity_stages details
[ConnectWise] List all available opportunity stages. Stages represent the sales process steps (e.g., Prospecting, Qualification, Proposal, Negotiation, Closed). Use this to find valid stage IDs when creating or filtering opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_opportunity_statuses details
cw_discover_opportunity_statuses details
[ConnectWise] List all available opportunity statuses. Statuses define the lifecycle of opportunities (e.g., Open, Won, Lost, Inactive). Use this to find valid status IDs when creating or filtering opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_opportunity_types details
cw_discover_opportunity_types details
[ConnectWise] List all available opportunity types. Opportunity types categorize deals (e.g., New Business, Renewal, Upsell). Use this to find valid type IDs when creating or filtering opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_order_statuses details
cw_discover_order_statuses details
[ConnectWise] List all available sales order statuses. Statuses define the lifecycle of sales orders (e.g., New, In Progress, Closed). Use this to find valid status IDs when creating or filtering sales orders. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_sales_probabilities details
cw_discover_sales_probabilities details
[ConnectWise] List all available sales probabilities. Probabilities represent the likelihood of closing a deal (e.g., 10%, 25%, 50%, 75%, 90%). Use this to find valid probability IDs when creating or filtering opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_sales_roles details
cw_discover_sales_roles details
[ConnectWise] List all available sales roles. Sales roles define team member responsibilities on opportunities (e.g., Primary Rep, Secondary Rep, Engineer). Use this to find valid role IDs when adding team members to opportunities. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
Members
cw_create_member_skill details
cw_create_member_skill details
[ConnectWise] Assign a skill to a member. ConnectWise requires both `skill` (a reference object, e.g. {"id":12}) and `skillLevel` (one of Beginner, Intermediate, Advanced, Expert); `certifiedFlag`, `yearsExperience`, and `notes` are optional. Example: {"skill":{"id":12},"skillLevel":"Advanced","yearsExperience":5,"certifiedFlag":true}. Use cw_list_skills to find skill IDs.
cw_create_skill details
cw_create_skill details
[ConnectWise] Create a skill in the System > Setup Tables > Skills List. ConnectWise requires both `name` and `category` (a reference object, e.g. {"id":3}). Example: {"name":"Azure AD","category":{"id":3}}. Use cw_list_skill_categories to find category IDs.
cw_create_skill_category details
cw_create_skill_category details
[ConnectWise] Create a skill category in the System > Setup Tables > Skill Category List. ConnectWise requires `name`. Example: {"name":"Cloud"}.
cw_delete_member_skill details
cw_delete_member_skill details
[ConnectWise] Remove a skill assignment from a member. This unassigns the skill from that member only — the skill itself stays in the Skills List. Use cw_delete_skill to remove the skill definition.
cw_delete_skill details
cw_delete_skill details
[ConnectWise] Permanently delete a skill from the Skills List. This removes the skill definition for the whole company, not one member's assignment — use cw_delete_member_skill for that. A skill still assigned to members or mapped to a service board may be refused by ConnectWise; clear those references first.
cw_delete_skill_category details
cw_delete_skill_category details
[ConnectWise] Permanently delete a skill category from the Skill Category List. A category still referenced by skills may be refused by ConnectWise; reassign those skills with cw_update_skill or remove them with cw_delete_skill first.
cw_get_member details
cw_get_member details
[ConnectWise] Get member by numeric ID. Accepts member identifier. Returns full member details including name, email, role, department, and inactive status. Requires a valid member ID — use cw_list_members to find IDs.
cw_get_system_info details
cw_get_system_info details
[ConnectWise] Retrieve ConnectWise system information including version and license info. Use to validate connectivity.
cw_list_active_members details
cw_list_active_members details
[ConnectWise] List all active (non-inactive) members. A convenience filter that returns only members with inactiveFlag=false. Useful for quick team roster views or populating member dropdown lists.
cw_list_certifications details
cw_list_certifications details
[ConnectWise] List all certification types configured in ConnectWise. Returns certification IDs and names. Use to discover available certification types before querying member-specific certifications with cw_list_member_certifications. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_department_members details
cw_list_department_members details
[ConnectWise] List active members in a specific department. A convenience tool that filters members by department identifier. Useful for department-level staffing views and workload distribution.
cw_list_departments details
cw_list_departments details
[ConnectWise] List departments with optional filtering and pagination. Returns department IDs and names. Use these values when filtering members or other department-scoped data.
cw_list_member_certifications details
cw_list_member_certifications details
[ConnectWise] List certifications held by a specific member. Returns certification records including name, number, and expiration date. Use to verify member qualifications or track certification renewals. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_member_delegations details
cw_list_member_delegations details
[ConnectWise] List delegations for a specific member. Returns delegation records showing who a member has delegated responsibilities to, including date ranges and delegation types. Use for coverage planning and OOO management. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_member_skills details
cw_list_member_skills details
[ConnectWise] List skills assigned to a specific member. Returns skill records including skill name, level, and years of experience. Use to understand a member's technical capabilities for dispatch or project assignment. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_members details
cw_list_members details
[ConnectWise] List members with optional filtering, sorting, and pagination. Returns member summaries including ID, identifier, name, email, and role. Use this to discover member IDs for filtering tickets, time entries, and other member-scoped data.
cw_list_skill_categories details
cw_list_skill_categories details
[ConnectWise] List the skill categories configured in System > Setup Tables > Skill Category List. Returns category IDs and names. Use to discover the category ID that cw_create_skill requires.
cw_list_skills details
cw_list_skills details
[ConnectWise] List all skills configured in ConnectWise. Returns skill IDs, names, and categories. Use to discover available skill types before querying member-specific skills with cw_list_member_skills. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_search_members details
cw_search_members details
[ConnectWise] Search members by name or identifier. Returns matching members ranked by relevance. Use this when you know the member's name or login identifier but not the numeric ID.
cw_update_member_skill details
cw_update_member_skill details
[ConnectWise] Update a member's skill assignment (level, certification, years of experience, notes) using JSON Patch operations. Example: [{"op":"replace","path":"skillLevel","value":"Expert"},{"op":"replace","path":"yearsExperience","value":8}]. skillLevel must be one of Beginner, Intermediate, Advanced, Expert. Use cw_list_member_skills to find the assignment ID.
cw_update_skill details
cw_update_skill details
[ConnectWise] Update a skill in the Skills List using JSON Patch operations. Example: [{"op":"replace","path":"name","value":"Entra ID"}]. Use cw_list_skills to find skill IDs.
cw_update_skill_category details
cw_update_skill_category details
[ConnectWise] Update a skill category using JSON Patch operations. Example: [{"op":"replace","path":"name","value":"Cloud Platforms"}]. Use cw_list_skill_categories to find category IDs.
Schedule
cw_create_schedule_entry details
cw_create_schedule_entry details
[ConnectWise] Create a new schedule entry. Requires at minimum a member reference and date range. Returns the created schedule entry with its assigned ID. This creates data visible to dispatchers and technicians. By default ConnectWise rejects an entry that overlaps an existing entry for the same member with a SystemConflict error -- set allowScheduleConflicts to true to book the overlap intentionally (double-booking).
cw_delete_schedule_entry details
cw_delete_schedule_entry details
[ConnectWise] Permanently delete a schedule entry by ID. This cannot be undone. Verify the entry with cw_get_schedule_entry before deleting. Requires a valid schedule entry ID — use cw_list_schedule_entries to find IDs.
cw_get_schedule_entry details
cw_get_schedule_entry details
[ConnectWise] Retrieve a single schedule entry by ID. Returns full schedule entry details including member, type, date range, status, and associated ticket or activity. Requires a valid schedule entry ID — use cw_list_schedule_entries to find IDs.
cw_list_calendars details
cw_list_calendars details
[ConnectWise] List calendars with optional filtering. Returns paginated calendar records including name, holiday list, and schedule details. Useful for discovering available calendars when creating or filtering schedule entries.
cw_list_member_schedule details
cw_list_member_schedule details
[ConnectWise] List schedule entries for a specific member by identifier. A convenience tool that filters schedule entries to a single member. Use this to quickly see a technician's upcoming or recent schedule.
cw_list_member_today_schedule details
cw_list_member_today_schedule details
[ConnectWise] List today's schedule entries for a specific member. Useful for daily planning and dispatch -- shows what a technician has scheduled for the current day.
cw_list_schedule_entries details
cw_list_schedule_entries details
[ConnectWise] List schedule entries with optional filtering and sorting. Returns paginated schedule entries including member, type, date range, and status. Use this to browse scheduled activities or narrow results before fetching full details with cw_get_schedule_entry.
cw_list_upcoming_schedule details
cw_list_upcoming_schedule details
[ConnectWise] List future schedule entries starting from today. Useful for dispatch planning and capacity views -- shows all upcoming scheduled work across the team.
cw_update_schedule_entry details
cw_update_schedule_entry details
[ConnectWise] Update an existing schedule entry using JSON Patch operations. Requires a valid schedule entry ID — use cw_list_schedule_entries to find IDs. Returns the updated schedule entry. Moving an entry onto an existing booking hits the same SystemConflict rejection as create -- set allowScheduleConflicts to true to permit the overlap.
Schedule Reference
cw_discover_schedule_statuses details
cw_discover_schedule_statuses details
[ConnectWise] List all schedule statuses configured in ConnectWise. Returns status IDs and names. Use to discover valid statuses when creating or filtering schedule entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_schedule_types details
cw_discover_schedule_types details
[ConnectWise] List all schedule types configured in ConnectWise. Returns type IDs and names. Use to discover valid schedule types when creating or filtering schedule entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_calendar details
cw_get_calendar details
[ConnectWise] Retrieve a single calendar by ID. Returns full calendar details including name, holiday list, and default schedule hours. Requires a valid calendar ID — use cw_list_calendars to find IDs.
cw_list_holiday_lists details
cw_list_holiday_lists details
[ConnectWise] List holiday lists with optional filtering. Returns paginated holiday list records including name and associated holidays. Use to discover configured holiday schedules that affect SLA calculations and scheduling.
cw_list_holidays details
cw_list_holidays details
[ConnectWise] List holidays within a specific holiday list. Returns holiday records including name, date, and hours off. Use to see which dates are configured as holidays for a given holiday list. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_schedule_entry_count details
cw_list_schedule_entry_count details
[ConnectWise] Get a count of schedule entries matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for understanding schedule density or checking result set size before paginating with cw_list_schedule_entries.
cw_search_schedule_entries details
cw_search_schedule_entries details
[ConnectWise] Search schedule entries by member identifier. Returns matching schedule entries. Use this when you know the member but want to find their schedule entries.
Procurement
cw_bulk_create_po_line_items details
cw_bulk_create_po_line_items details
[ConnectWise] Create multiple PO line items in a single bulk request. Body is a JSON array of line items.
cw_bulk_delete_po_line_items details
cw_bulk_delete_po_line_items details
[ConnectWise] Delete multiple PO line items in a single request. Body is a JSON array of line item IDs or line-item references.
cw_bulk_replace_po_line_items details
cw_bulk_replace_po_line_items details
cw_copy_catalog_item details
cw_copy_catalog_item details
[ConnectWise] Create a copy of a catalog item. Body is a copy-options payload (new identifier, description, etc.).
cw_copy_purchase_order details
cw_copy_purchase_order details
[ConnectWise] Create a copy of a purchase order. Body is a copy-options payload.
cw_count_adjustment_details details
cw_count_adjustment_details details
cw_count_adjustment_types details
cw_count_adjustment_types details
cw_count_adjustment_types_info details
cw_count_adjustment_types_info details
cw_count_adjustments details
cw_count_adjustments details
cw_count_catalog_components details
cw_count_catalog_components details
cw_count_catalog_inventory details
cw_count_catalog_inventory details
[ConnectWise] Count inventory rows on a catalog item, optionally filtered by conditions. Returns the CW count payload.
cw_count_catalog_items details
cw_count_catalog_items details
[ConnectWise] Get a count of catalog items matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for checking result set size before paginating with cw_list_catalog_items.
cw_count_catalog_items_endpoint details
cw_count_catalog_items_endpoint details
[ConnectWise] Call the dedicated /procurement/catalog/count endpoint. This is distinct from cw_count_catalog_items, which uses a list query with pageSize=1.
cw_count_catalog_items_info details
cw_count_catalog_items_info details
cw_count_catalog_min_stock details
cw_count_catalog_min_stock details
cw_count_change_orders details
cw_count_change_orders details
[ConnectWise] Count change orders. Note: swagger exposes count at the plural /procurement/changeorders/count path.
cw_count_directional_syncs details
cw_count_directional_syncs details
cw_count_invoice_groupings details
cw_count_invoice_groupings details
cw_count_manufacturers details
cw_count_manufacturers details
cw_count_manufacturers_info details
cw_count_manufacturers_info details
[ConnectWise] Count manufacturers at CW's /procurement/manufacturers/count/info endpoint. Swagger spells this differently than other count/info endpoints (no plain /info/count variant).
cw_count_onhand_serials details
cw_count_onhand_serials details
cw_count_po_line_items details
cw_count_po_line_items details
cw_count_po_notes details
cw_count_po_notes details
cw_count_po_quick_access details
cw_count_po_quick_access details
[ConnectWise] Retrieve the quick-access count for a purchase order. Returns CW's /quickAccess/count payload.
cw_count_po_status_email_templates details
cw_count_po_status_email_templates details
cw_count_po_status_notifications details
cw_count_po_status_notifications details
cw_count_po_statuses details
cw_count_po_statuses details
cw_count_po_statuses_info details
cw_count_po_statuses_info details
cw_count_pricing_schedule_breaks details
cw_count_pricing_schedule_breaks details
cw_count_pricing_schedule_details details
cw_count_pricing_schedule_details details
cw_count_pricing_schedules details
cw_count_pricing_schedules details
cw_count_procurement_categories details
cw_count_procurement_categories details
cw_count_procurement_categories_info details
cw_count_procurement_categories_info details
cw_count_procurement_settings details
cw_count_procurement_settings details
cw_count_procurement_subcategories_for_category details
cw_count_procurement_subcategories_for_category details
cw_count_procurement_subcategories_for_category_info details
cw_count_procurement_subcategories_for_category_info details
cw_count_product_components details
cw_count_product_components details
cw_count_product_picking_shipping details
cw_count_product_picking_shipping details
cw_count_product_types details
cw_count_product_types details
cw_count_product_types_info details
cw_count_product_types_info details
cw_count_products details
cw_count_products details
cw_count_purchase_orders details
cw_count_purchase_orders details
[ConnectWise] Get a count of purchase orders matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for checking result set size before paginating with cw_list_purchase_orders.
cw_count_purchase_orders_endpoint details
cw_count_purchase_orders_endpoint details
[ConnectWise] Call the dedicated /procurement/purchaseorders/count endpoint. Distinct from cw_count_purchase_orders (which is a list with pageSize=1).
cw_count_purchase_orders_info details
cw_count_purchase_orders_info details
cw_count_rma_actions details
cw_count_rma_actions details
cw_count_rma_actions_info details
cw_count_rma_actions_info details
cw_count_rma_dispositions details
cw_count_rma_dispositions details
cw_count_rma_dispositions_info details
cw_count_rma_dispositions_info details
cw_count_rma_status_email_templates details
cw_count_rma_status_email_templates details
cw_count_rma_status_notifications details
cw_count_rma_status_notifications details
cw_count_rma_statuses details
cw_count_rma_statuses details
cw_count_rma_statuses_info details
cw_count_rma_statuses_info details
cw_count_rma_tags details
cw_count_rma_tags details
cw_count_shipment_methods details
cw_count_shipment_methods details
cw_count_shipment_methods_info details
cw_count_shipment_methods_info details
cw_count_subcategories details
cw_count_subcategories details
cw_count_subcategories_info details
cw_count_subcategories_info details
cw_count_unit_of_measures details
cw_count_unit_of_measures details
cw_count_uom_conversions details
cw_count_uom_conversions details
cw_count_warehouse_bin_inventory details
cw_count_warehouse_bin_inventory details
cw_count_warehouse_bins details
cw_count_warehouse_bins details
cw_count_warehouse_bins_info details
cw_count_warehouse_bins_info details
cw_count_warehouses details
cw_count_warehouses details
cw_count_warehouses_info details
cw_count_warehouses_info details
cw_create_adjustment details
cw_create_adjustment details
cw_create_adjustment_detail details
cw_create_adjustment_detail details
cw_create_adjustment_type details
cw_create_adjustment_type details
cw_create_catalog_component details
cw_create_catalog_component details
[ConnectWise] Add a component to a catalog bundle. Returns the created component with its assigned ID.
cw_create_catalog_item details
cw_create_catalog_item details
[ConnectWise] Create a new product catalog item. Requires at minimum an identifier and description. Returns the created catalog item with its assigned ID. This adds a new product to the catalog visible to procurement staff.
cw_create_catalog_min_stock details
cw_create_catalog_min_stock details
cw_create_catalog_vendor_link details
cw_create_catalog_vendor_link details
[ConnectWise] Create a catalog-item-to-vendor association. Body shape is a vendor-link payload defined by CW.
cw_create_change_order details
cw_create_change_order details
cw_create_directional_sync details
cw_create_directional_sync details
cw_create_manufacturer details
cw_create_manufacturer details
cw_create_po_line_item details
cw_create_po_line_item details
[ConnectWise] Add a line item to an existing purchase order. Requires a valid purchase order ID and product information. Returns the created line item with its assigned ID.
cw_create_po_note details
cw_create_po_note details
cw_create_po_status details
cw_create_po_status details
cw_create_po_status_email_template details
cw_create_po_status_email_template details
cw_create_po_status_notification details
cw_create_po_status_notification details
cw_create_pricing_schedule details
cw_create_pricing_schedule details
cw_create_pricing_schedule_break details
cw_create_pricing_schedule_break details
cw_create_pricing_schedule_detail details
cw_create_pricing_schedule_detail details
cw_create_procurement_category details
cw_create_procurement_category details
cw_create_procurement_subcategory_for_category details
cw_create_procurement_subcategory_for_category details
cw_create_product details
cw_create_product details
cw_create_product_component details
cw_create_product_component details
cw_create_product_picking_shipping details
cw_create_product_picking_shipping details
cw_create_product_type details
cw_create_product_type details
cw_create_purchase_order details
cw_create_purchase_order details
[ConnectWise] Create a new purchase order. Requires at minimum a vendor reference. Returns the created purchase order with its assigned ID and PO number. This creates a PO visible to procurement staff.
cw_create_purchasing_demand details
cw_create_purchasing_demand details
[ConnectWise] Submit a purchasing demand. CW exposes only POST at /procurement/purchasingDemands -- there is no GET/list/delete.
cw_create_rma_action details
cw_create_rma_action details
cw_create_rma_disposition details
cw_create_rma_disposition details
cw_create_rma_status details
cw_create_rma_status details
cw_create_rma_status_email_template details
cw_create_rma_status_email_template details
cw_create_rma_status_notification details
cw_create_rma_status_notification details
cw_create_rma_tag details
cw_create_rma_tag details
cw_create_shipment_method details
cw_create_shipment_method details
cw_create_subcategory details
cw_create_subcategory details
cw_create_unit_of_measure details
cw_create_unit_of_measure details
cw_create_uom_conversion details
cw_create_uom_conversion details
cw_create_warehouse details
cw_create_warehouse details
[ConnectWise] Create a new warehouse. Returns the created warehouse with its assigned ID.
cw_create_warehouse_bin details
cw_create_warehouse_bin details
[ConnectWise] Create a new warehouse bin. Requires a warehouse reference.
cw_delete_adjustment details
cw_delete_adjustment details
cw_delete_adjustment_detail details
cw_delete_adjustment_detail details
cw_delete_adjustment_type details
cw_delete_adjustment_type details
cw_delete_catalog_component details
cw_delete_catalog_component details
[ConnectWise] Permanently remove a component from a catalog bundle. This cannot be undone.
cw_delete_catalog_item details
cw_delete_catalog_item details
[ConnectWise] Permanently delete a catalog item by ID. This cannot be undone. Verify the item with cw_get_catalog_item before deleting. Requires a valid catalog item ID.
cw_delete_catalog_min_stock details
cw_delete_catalog_min_stock details
[ConnectWise] Remove a minimum-stock threshold. This cannot be undone.
cw_delete_catalog_vendor details
cw_delete_catalog_vendor details
[ConnectWise] Remove a vendor link from a catalog item. This cannot be undone.
cw_delete_change_order details
cw_delete_change_order details
cw_delete_directional_sync details
cw_delete_directional_sync details
cw_delete_invoice_grouping details
cw_delete_invoice_grouping details
cw_delete_manufacturer details
cw_delete_manufacturer details
cw_delete_po_line_items details
cw_delete_po_line_items details
[ConnectWise] Delete line items on a purchase order filtered by conditions. Without conditions, CW deletes all line items on the PO.
cw_delete_po_note details
cw_delete_po_note details
cw_delete_po_status details
cw_delete_po_status details
cw_delete_po_status_email_template details
cw_delete_po_status_email_template details
cw_delete_po_status_notification details
cw_delete_po_status_notification details
cw_delete_pricing_schedule details
cw_delete_pricing_schedule details
cw_delete_pricing_schedule_break details
cw_delete_pricing_schedule_break details
cw_delete_pricing_schedule_detail details
cw_delete_pricing_schedule_detail details
cw_delete_procurement_category details
cw_delete_procurement_category details
cw_delete_procurement_subcategory_for_category details
cw_delete_procurement_subcategory_for_category details
cw_delete_product details
cw_delete_product details
[ConnectWise] Permanently delete a procurement product. This cannot be undone.
cw_delete_product_component details
cw_delete_product_component details
cw_delete_product_picking_shipping details
cw_delete_product_picking_shipping details
cw_delete_product_type details
cw_delete_product_type details
cw_delete_purchase_order details
cw_delete_purchase_order details
[ConnectWise] Permanently delete a purchase order by ID. This cannot be undone. Verify the PO with cw_get_purchase_order before deleting. Requires a valid purchase order ID.
cw_delete_rma_action details
cw_delete_rma_action details
cw_delete_rma_disposition details
cw_delete_rma_disposition details
cw_delete_rma_status details
cw_delete_rma_status details
cw_delete_rma_status_email_template details
cw_delete_rma_status_email_template details
cw_delete_rma_status_notification details
cw_delete_rma_status_notification details
cw_delete_rma_tag details
cw_delete_rma_tag details
cw_delete_shipment_method details
cw_delete_shipment_method details
cw_delete_subcategory details
cw_delete_subcategory details
cw_delete_unit_of_measure details
cw_delete_unit_of_measure details
cw_delete_uom_conversion details
cw_delete_uom_conversion details
cw_delete_warehouse details
cw_delete_warehouse details
[ConnectWise] Permanently delete a warehouse. This cannot be undone. Verify with cw_get_warehouse first.
cw_delete_warehouse_bin details
cw_delete_warehouse_bin details
[ConnectWise] Permanently delete a warehouse bin. This cannot be undone.
cw_detach_product details
cw_detach_product details
cw_discover_manufacturers details
cw_discover_manufacturers details
[ConnectWise] List all manufacturers configured in ConnectWise. Returns manufacturer IDs and names. Use to discover valid manufacturers when creating or filtering catalog items. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_po_statuses details
cw_discover_po_statuses details
[ConnectWise] List all purchase order statuses configured in ConnectWise. Returns status IDs and names. Use to discover valid statuses when creating or filtering purchase orders. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_procurement_categories details
cw_discover_procurement_categories details
[ConnectWise] List all procurement categories configured in ConnectWise. Returns category IDs and names. Use to discover valid categories when creating or filtering catalog items. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_procurement_subcategories details
cw_discover_procurement_subcategories details
[ConnectWise] List procurement subcategories for a specific category. Returns subcategory IDs and names. Requires a valid procurement category ID — use cw_discover_procurement_categories to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_product_types details
cw_discover_product_types details
[ConnectWise] List all product types configured in ConnectWise. Returns type IDs and names. Use to discover valid product types when creating or filtering catalog items. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_shipment_methods details
cw_discover_shipment_methods details
[ConnectWise] List all shipment methods configured in ConnectWise. Returns method IDs and names. Use to discover valid shipping methods when creating purchase orders. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_unit_of_measures details
cw_discover_unit_of_measures details
[ConnectWise] List all units of measure configured in ConnectWise. Returns unit IDs and names (e.g., Each, Hour, Pack). Use to discover valid units when creating or updating catalog items. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_warehouses details
cw_discover_warehouses details
[ConnectWise] List all warehouses configured in ConnectWise. Returns warehouse IDs, names, and locations. Use to discover valid warehouses when creating purchase orders or managing inventory. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_adjustment details
cw_get_adjustment details
cw_get_adjustment_detail details
cw_get_adjustment_detail details
cw_get_adjustment_type details
cw_get_adjustment_type details
cw_get_adjustment_type_info details
cw_get_adjustment_type_info details
cw_get_adjustment_type_usages details
cw_get_adjustment_type_usages details
cw_get_catalog_component details
cw_get_catalog_component details
cw_get_catalog_inventory details
cw_get_catalog_inventory details
[ConnectWise] Retrieve a single inventory record on a catalog item. Returns the per-warehouse inventory detail. Requires valid catalog item and inventory IDs.
cw_get_catalog_item details
cw_get_catalog_item details
[ConnectWise] Retrieve a single catalog item by ID. Returns full catalog item details including identifier, description, category, subcategory, type, cost, price, vendor, and manufacturer info. Requires a valid catalog item ID — use cw_list_catalog_items to find IDs.
cw_get_catalog_item_info details
cw_get_catalog_item_info details
cw_get_catalog_min_stock details
cw_get_catalog_min_stock details
cw_get_catalog_quantity_on_hand details
cw_get_catalog_quantity_on_hand details
[ConnectWise] Retrieve the total quantity-on-hand for a catalog item by its string identifier (SKU), not numeric ID. Use this for quick stock lookups when you know the SKU.
cw_get_directional_sync details
cw_get_directional_sync details
cw_get_invoice_grouping details
cw_get_invoice_grouping details
cw_get_invoice_grouping_usages details
cw_get_invoice_grouping_usages details
cw_get_manufacturer details
cw_get_manufacturer details
cw_get_manufacturer_info details
cw_get_manufacturer_info details
cw_get_onhand_serial details
cw_get_onhand_serial details
cw_get_po_line_item details
cw_get_po_line_item details
cw_get_po_note details
cw_get_po_note details
cw_get_po_status details
cw_get_po_status details
cw_get_po_status_email_template details
cw_get_po_status_email_template details
cw_get_po_status_info details
cw_get_po_status_info details
cw_get_po_status_notification details
cw_get_po_status_notification details
cw_get_po_status_usages details
cw_get_po_status_usages details
cw_get_pricing_schedule details
cw_get_pricing_schedule details
cw_get_pricing_schedule_break details
cw_get_pricing_schedule_break details
cw_get_pricing_schedule_detail details
cw_get_pricing_schedule_detail details
cw_get_procurement_category details
cw_get_procurement_category details
cw_get_procurement_category_info details
cw_get_procurement_category_info details
cw_get_procurement_setting details
cw_get_procurement_setting details
cw_get_procurement_subcategory_for_category details
cw_get_procurement_subcategory_for_category details
cw_get_procurement_subcategory_for_category_info details
cw_get_procurement_subcategory_for_category_info details
cw_get_product details
cw_get_product details
cw_get_product_component details
cw_get_product_component details
cw_get_product_picking_shipping details
cw_get_product_picking_shipping details
cw_get_product_type details
cw_get_product_type details
cw_get_product_type_info details
cw_get_product_type_info details
cw_get_product_type_usages details
cw_get_product_type_usages details
cw_get_purchase_order details
cw_get_purchase_order details
[ConnectWise] Retrieve a single purchase order by ID. Returns full purchase order details including PO number, vendor, status, line items, shipping info, total, and dates. Requires a valid purchase order ID — use cw_list_purchase_orders to find IDs.
cw_get_purchase_order_info details
cw_get_purchase_order_info details
cw_get_rma_action details
cw_get_rma_action details
cw_get_rma_action_info details
cw_get_rma_action_info details
cw_get_rma_disposition details
cw_get_rma_disposition details
cw_get_rma_disposition_info details
cw_get_rma_disposition_info details
cw_get_rma_status details
cw_get_rma_status details
cw_get_rma_status_email_template details
cw_get_rma_status_email_template details
cw_get_rma_status_info details
cw_get_rma_status_info details
cw_get_rma_status_notification details
cw_get_rma_status_notification details
cw_get_rma_status_usages details
cw_get_rma_status_usages details
cw_get_rma_tag details
cw_get_rma_tag details
cw_get_shipment_method details
cw_get_shipment_method details
cw_get_shipment_method_info details
cw_get_shipment_method_info details
cw_get_shipment_method_usages details
cw_get_shipment_method_usages details
cw_get_subcategory details
cw_get_subcategory details
cw_get_subcategory_info details
cw_get_subcategory_info details
cw_get_subcategory_usages details
cw_get_subcategory_usages details
cw_get_unit_of_measure details
cw_get_unit_of_measure details
cw_get_uom_conversion details
cw_get_uom_conversion details
cw_get_warehouse details
cw_get_warehouse details
[ConnectWise] Retrieve a single warehouse by ID. Returns warehouse name, location, default flag, and inactive status.
cw_get_warehouse_bin details
cw_get_warehouse_bin details
cw_get_warehouse_bin_info details
cw_get_warehouse_bin_info details
cw_get_warehouse_bin_inventory details
cw_get_warehouse_bin_inventory details
cw_get_warehouse_info details
cw_get_warehouse_info details
cw_list_adjustment_details details
cw_list_adjustment_details details
cw_list_adjustment_type_usages details
cw_list_adjustment_type_usages details
cw_list_adjustment_types details
cw_list_adjustment_types details
cw_list_adjustment_types_info details
cw_list_adjustment_types_info details
cw_list_adjustments details
cw_list_adjustments details
[ConnectWise] List inventory adjustments. Returns adjustment records used to correct on-hand stock counts.
cw_list_catalog_components details
cw_list_catalog_components details
[ConnectWise] List bundled components for a catalog bundle item. Returns sub-item references, quantities, and pricing roll-up flags. Requires a valid catalog item ID.
cw_list_catalog_inventory details
cw_list_catalog_inventory details
[ConnectWise] List inventory rows for a catalog item. Returns per-warehouse on-hand, allocated, and on-order quantities. Requires a valid catalog item ID -- use cw_list_catalog_items to find IDs.
cw_list_catalog_items details
cw_list_catalog_items details
[ConnectWise] List product catalog items with optional filtering. Returns paginated catalog entries including identifier, description, category, cost, and price. Use this to browse the product catalog or narrow results before fetching full details with cw_get_catalog_item.
cw_list_catalog_items_info details
cw_list_catalog_items_info details
[ConnectWise] List catalog items using the compact 'info' projection. Smaller payload; good for pickers and bulk scans.
cw_list_catalog_min_stock details
cw_list_catalog_min_stock details
[ConnectWise] List minimum-stock thresholds per warehouse for a catalog item. Returns the reorder thresholds used for automatic replenishment.
cw_list_catalog_vendors details
cw_list_catalog_vendors details
[ConnectWise] List the vendors associated with a catalog item. CW exposes this via /procurement/catalog/vendors/.
cw_list_change_orders details
cw_list_change_orders details
[ConnectWise] List procurement change orders. Note: swagger exposes this at the singular /procurement/changeorder path.
cw_list_directional_syncs details
cw_list_directional_syncs details
cw_list_invoice_grouping_usages details
cw_list_invoice_grouping_usages details
cw_list_invoice_groupings details
cw_list_invoice_groupings details
cw_list_manufacturers_info details
cw_list_manufacturers_info details
cw_list_onhand_serials details
cw_list_onhand_serials details
[ConnectWise] List serial numbers currently on hand across warehouses. Read-only; use adjustments or sales processes to move them.
cw_list_open_purchase_orders details
cw_list_open_purchase_orders details
[ConnectWise] List purchase orders with open or pending status. Useful for procurement tracking -- shows POs that are still being processed or awaiting delivery.
cw_list_po_line_items details
cw_list_po_line_items details
[ConnectWise] List line items for a specific purchase order. Returns line item records including product, description, quantity, cost, and received status. Requires a valid purchase order ID — use cw_list_purchase_orders to find IDs. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_po_notes details
cw_list_po_notes details
cw_list_po_status_email_templates details
cw_list_po_status_email_templates details
cw_list_po_status_notifications details
cw_list_po_status_notifications details
cw_list_po_status_usages details
cw_list_po_status_usages details
cw_list_po_statuses_info details
cw_list_po_statuses_info details
cw_list_pricing_schedule_breaks details
cw_list_pricing_schedule_breaks details
cw_list_pricing_schedule_details details
cw_list_pricing_schedule_details details
cw_list_pricing_schedules details
cw_list_pricing_schedules details
[ConnectWise] List pricing schedules. Pricing schedules define tiered pricing rules that apply across catalog items.
cw_list_procurement_categories_info details
cw_list_procurement_categories_info details
cw_list_procurement_settings details
cw_list_procurement_settings details
cw_list_procurement_subcategories_for_category_info details
cw_list_procurement_subcategories_for_category_info details
cw_list_product_components details
cw_list_product_components details
cw_list_product_picking_shipping details
cw_list_product_picking_shipping details
[ConnectWise] List picking and shipping detail records on a procurement product. Tracks serial numbers, quantities picked, and shipping info.
cw_list_product_type_usages details
cw_list_product_type_usages details
cw_list_product_types_info details
cw_list_product_types_info details
cw_list_products details
cw_list_products details
[ConnectWise] List procurement products. These are catalog-item instances attached to tickets, projects, opportunities, or sales orders. Distinct from catalog items.
cw_list_purchase_orders details
cw_list_purchase_orders details
[ConnectWise] List purchase orders with optional filtering. Returns paginated purchase orders including PO number, vendor, status, total, and dates. Use this to browse purchase orders or narrow results before fetching full details with cw_get_purchase_order.
cw_list_purchase_orders_info details
cw_list_purchase_orders_info details
cw_list_rma_actions details
cw_list_rma_actions details
[ConnectWise] List RMA actions (e.g., 'Return for Refund', 'Repair and Return'). Configures how returned products flow through the RMA process.
cw_list_rma_actions_info details
cw_list_rma_actions_info details
cw_list_rma_dispositions details
cw_list_rma_dispositions details
[ConnectWise] List RMA dispositions (final outcomes such as 'Scrap', 'Return to Stock'). Uses CW's ALL-CAPS /procurement/RMADispositions path.
cw_list_rma_dispositions_info details
cw_list_rma_dispositions_info details
cw_list_rma_status_email_templates details
cw_list_rma_status_email_templates details
[ConnectWise] List email templates attached to an RMA status. Per CW swagger, list uses the capital-T `emailTemplates` path.
cw_list_rma_status_notifications details
cw_list_rma_status_notifications details
cw_list_rma_status_usages details
cw_list_rma_status_usages details
cw_list_rma_statuses details
cw_list_rma_statuses details
cw_list_rma_statuses_info details
cw_list_rma_statuses_info details
cw_list_rma_tags details
cw_list_rma_tags details
cw_list_shipment_method_usages details
cw_list_shipment_method_usages details
cw_list_shipment_methods_info details
cw_list_shipment_methods_info details
cw_list_subcategories details
cw_list_subcategories details
cw_list_subcategories_info details
cw_list_subcategories_info details
cw_list_subcategory_usages details
cw_list_subcategory_usages details
cw_list_uom_conversions details
cw_list_uom_conversions details
cw_list_vendor_purchase_orders details
cw_list_vendor_purchase_orders details
[ConnectWise] List purchase orders for a specific vendor by name. Useful for vendor relationship management -- shows all POs placed with a particular supplier.
cw_list_warehouse_bin_inventory details
cw_list_warehouse_bin_inventory details
[ConnectWise] List inventory-on-hand records for a specific warehouse bin. Shows per-item on-hand counts stored in that bin.
cw_list_warehouse_bins details
cw_list_warehouse_bins details
[ConnectWise] List storage bins across warehouses. Returns bin name, warehouse, and default flag.
cw_list_warehouse_bins_info details
cw_list_warehouse_bins_info details
cw_list_warehouses_info details
cw_list_warehouses_info details
[ConnectWise] List warehouses using the compact 'info' projection. Smaller payload, good for selectors.
cw_rebatch_purchase_order details
cw_rebatch_purchase_order details
[ConnectWise] Trigger rebatching on a purchase order. CW will recompute batch associations and re-post to GL.
cw_replace_adjustment details
cw_replace_adjustment details
cw_replace_adjustment_type details
cw_replace_adjustment_type details
cw_replace_catalog_component details
cw_replace_catalog_component details
[ConnectWise] Replace a catalog component wholesale via PUT. Pass the full component body.
cw_replace_catalog_item details
cw_replace_catalog_item details
[ConnectWise] Replace a catalog item wholesale via PUT. Pass the full catalog-item body.
cw_replace_catalog_min_stock details
cw_replace_catalog_min_stock details
cw_replace_catalog_vendor details
cw_replace_catalog_vendor details
cw_replace_directional_sync details
cw_replace_directional_sync details
cw_replace_invoice_grouping details
cw_replace_invoice_grouping details
cw_replace_manufacturer details
cw_replace_manufacturer details
cw_replace_po_line_item details
cw_replace_po_line_item details
cw_replace_po_note details
cw_replace_po_note details
cw_replace_po_status details
cw_replace_po_status details
cw_replace_po_status_email_template details
cw_replace_po_status_email_template details
cw_replace_po_status_notification details
cw_replace_po_status_notification details
cw_replace_pricing_schedule details
cw_replace_pricing_schedule details
cw_replace_pricing_schedule_break details
cw_replace_pricing_schedule_break details
cw_replace_pricing_schedule_detail details
cw_replace_pricing_schedule_detail details
cw_replace_procurement_category details
cw_replace_procurement_category details
cw_replace_procurement_setting details
cw_replace_procurement_setting details
cw_replace_procurement_subcategory_for_category details
cw_replace_procurement_subcategory_for_category details
cw_replace_product details
cw_replace_product details
cw_replace_product_component details
cw_replace_product_component details
cw_replace_product_picking_shipping details
cw_replace_product_picking_shipping details
cw_replace_product_type details
cw_replace_product_type details
cw_replace_purchase_order details
cw_replace_purchase_order details
cw_replace_rma_action details
cw_replace_rma_action details
cw_replace_rma_disposition details
cw_replace_rma_disposition details
cw_replace_rma_status details
cw_replace_rma_status details
cw_replace_rma_status_email_template details
cw_replace_rma_status_email_template details
cw_replace_rma_status_notification details
cw_replace_rma_status_notification details
cw_replace_rma_tag details
cw_replace_rma_tag details
cw_replace_shipment_method details
cw_replace_shipment_method details
cw_replace_subcategory details
cw_replace_subcategory details
cw_replace_unit_of_measure details
cw_replace_unit_of_measure details
cw_replace_uom_conversion details
cw_replace_uom_conversion details
cw_replace_warehouse details
cw_replace_warehouse details
cw_replace_warehouse_bin details
cw_replace_warehouse_bin details
cw_search_catalog_items details
cw_search_catalog_items details
[ConnectWise] Search product catalog items by identifier or description. Returns matching catalog entries. Use this when you know the product name or SKU but not the numeric ID.
cw_search_purchase_orders details
cw_search_purchase_orders details
[ConnectWise] Search purchase orders by PO number or vendor. Returns matching purchase orders. Use this when you know the PO number or vendor name but not the numeric ID.
cw_unbatch_purchase_order details
cw_unbatch_purchase_order details
cw_update_adjustment details
cw_update_adjustment details
cw_update_adjustment_type details
cw_update_adjustment_type details
cw_update_catalog_component details
cw_update_catalog_component details
cw_update_catalog_item details
cw_update_catalog_item details
[ConnectWise] Update an existing catalog item using JSON Patch operations. Requires a valid catalog item ID — use cw_list_catalog_items to find IDs. Returns the updated catalog item.
cw_update_catalog_item_pricing details
cw_update_catalog_item_pricing details
[ConnectWise] Apply a pricing update to a catalog item via CW's pricing endpoint. Body is a pricing-change payload.
cw_update_catalog_min_stock details
cw_update_catalog_min_stock details
cw_update_catalog_vendor details
cw_update_catalog_vendor details
cw_update_change_order details
cw_update_change_order details
cw_update_directional_sync details
cw_update_directional_sync details
cw_update_invoice_grouping details
cw_update_invoice_grouping details
cw_update_manufacturer details
cw_update_manufacturer details
cw_update_po_line_item details
cw_update_po_line_item details
cw_update_po_note details
cw_update_po_note details
cw_update_po_status details
cw_update_po_status details
cw_update_po_status_email_template details
cw_update_po_status_email_template details
cw_update_po_status_notification details
cw_update_po_status_notification details
cw_update_pricing_schedule details
cw_update_pricing_schedule details
cw_update_pricing_schedule_break details
cw_update_pricing_schedule_break details
cw_update_pricing_schedule_detail details
cw_update_pricing_schedule_detail details
cw_update_procurement_category details
cw_update_procurement_category details
cw_update_procurement_setting details
cw_update_procurement_setting details
cw_update_procurement_subcategory_for_category details
cw_update_procurement_subcategory_for_category details
cw_update_product details
cw_update_product details
cw_update_product_component details
cw_update_product_component details
cw_update_product_picking_shipping details
cw_update_product_picking_shipping details
cw_update_product_type details
cw_update_product_type details
cw_update_purchase_order details
cw_update_purchase_order details
[ConnectWise] Update an existing purchase order using JSON Patch operations. Requires a valid purchase order ID — use cw_list_purchase_orders to find IDs. Returns the updated purchase order.
cw_update_rma_action details
cw_update_rma_action details
cw_update_rma_disposition details
cw_update_rma_disposition details
cw_update_rma_status details
cw_update_rma_status details
cw_update_rma_status_email_template details
cw_update_rma_status_email_template details
cw_update_rma_status_notification details
cw_update_rma_status_notification details
cw_update_rma_tag details
cw_update_rma_tag details
cw_update_shipment_method details
cw_update_shipment_method details
cw_update_subcategory details
cw_update_subcategory details
cw_update_unit_of_measure details
cw_update_unit_of_measure details
cw_update_uom_conversion details
cw_update_uom_conversion details
cw_update_warehouse details
cw_update_warehouse details
cw_update_warehouse_bin details
cw_update_warehouse_bin details
Expenses
cw_count_expense_entries details
cw_count_expense_entries details
[ConnectWise] Get a count of expense entries matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for expense reporting dashboards or checking result set size before paginating with cw_list_expense_entries.
cw_count_expense_reports details
cw_count_expense_reports details
[ConnectWise] Get a count of expense reports matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for tracking expense report submission backlogs.
cw_create_expense_entry details
cw_create_expense_entry details
[ConnectWise] Create a new expense entry. Requires at minimum a member reference, amount, and date. Returns the created expense entry with its assigned ID. This creates an expense record visible to accounting staff.
cw_delete_expense_entry details
cw_delete_expense_entry details
[ConnectWise] Permanently delete an expense entry by ID. This cannot be undone. Verify the entry with cw_get_expense_entry before deleting. Requires a valid expense entry ID.
cw_discover_expense_types details
cw_discover_expense_types details
[ConnectWise] List all expense types configured in ConnectWise. Returns type IDs and names. Use to discover valid expense types when creating or filtering expense entries. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_expense_entry details
cw_get_expense_entry details
[ConnectWise] Retrieve a single expense entry by ID. Returns full expense entry details including member, amount, date, type, classification, company, charge-to reference, payment method, and notes. Requires a valid expense entry ID — use cw_list_expense_entries to find IDs.
cw_get_expense_report details
cw_get_expense_report details
[ConnectWise] Retrieve a single expense report by ID. Returns full expense report details including member, status, total amount, entries, and approval info. Requires a valid expense report ID — use cw_list_expense_reports to find IDs.
cw_list_expense_entries details
cw_list_expense_entries details
[ConnectWise] List expense entries with optional filtering. Returns paginated expense records including member, amount, date, type, company, and charge-to references. Use this to browse expense entries or narrow results before fetching full details with cw_get_expense_entry.
cw_list_expense_reports details
cw_list_expense_reports details
[ConnectWise] List expense reports with optional filtering. Returns paginated expense report records including member, status, total, and date range. Use to browse submitted expense reports or track approval status.
cw_list_member_expenses details
cw_list_member_expenses details
[ConnectWise] List expense entries for a specific member by identifier. A convenience tool that filters expenses to a single member. Useful for reviewing a technician's or salesperson's submitted expenses.
cw_list_pending_expense_reports details
cw_list_pending_expense_reports details
[ConnectWise] List expense reports awaiting approval. Returns expense reports with status 'Open' that need manager review. Useful for finance workflow management and approval queue monitoring.
cw_search_expense_entries details
cw_search_expense_entries details
[ConnectWise] Search expense entries by member identifier or notes text. Returns matching expense entries. Use this when you know the member or keyword but want to find related expense records.
cw_search_expense_reports details
cw_search_expense_reports details
[ConnectWise] Search expense reports by member identifier. Returns matching expense reports. Use this when you want to find expense report submissions for a specific member.
cw_update_expense_entry details
cw_update_expense_entry details
[ConnectWise] Update an existing expense entry using JSON Patch operations. Requires a valid expense entry ID — use cw_list_expense_entries to find IDs. Returns the updated expense entry.
Marketing
cw_count_campaigns details
cw_count_campaigns details
[ConnectWise] Get a count of marketing campaigns matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for marketing dashboards or checking result set size.
cw_create_campaign details
cw_create_campaign details
[ConnectWise] Create a new marketing campaign. Requires at minimum a name. Returns the created campaign with its assigned ID. This creates a campaign record visible to marketing staff.
cw_delete_campaign details
cw_delete_campaign details
[ConnectWise] Permanently delete a marketing campaign by ID. This cannot be undone. Verify the campaign with cw_get_campaign before deleting. Requires a valid campaign ID.
cw_discover_campaign_statuses details
cw_discover_campaign_statuses details
[ConnectWise] List all campaign statuses configured in ConnectWise. Returns status IDs and names. Use to discover valid campaign statuses when creating or filtering campaigns. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_campaign_subtypes details
cw_discover_campaign_subtypes details
[ConnectWise] List all campaign sub-types configured in ConnectWise. Returns sub-type IDs and names. Use to discover valid campaign sub-types when creating or filtering campaigns. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_discover_campaign_types details
cw_discover_campaign_types details
[ConnectWise] List all campaign types configured in ConnectWise. Returns type IDs and names. Use to discover valid campaign types when creating or filtering campaigns. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_get_campaign details
cw_get_campaign details
[ConnectWise] Retrieve a single marketing campaign by ID. Returns full campaign details including name, type, sub-type, status, start/end dates, budget, actual cost, revenue, and notes. Requires a valid campaign ID — use cw_list_campaigns to find IDs.
cw_get_marketing_group details
cw_get_marketing_group details
[ConnectWise] Retrieve a single marketing group by ID. Returns full group details including name, type, and associated companies and contacts. Requires a valid marketing group ID — use cw_list_marketing_groups to find IDs.
cw_list_active_campaigns details
cw_list_active_campaigns details
[ConnectWise] List marketing campaigns with active status. Useful for reviewing currently running marketing initiatives. Returns only campaigns where status is 'Active'.
cw_list_campaign_activities details
cw_list_campaign_activities details
[ConnectWise] List sales activities linked to a specific campaign. A convenience tool that filters activities by campaign ID. Useful for tracking campaign effectiveness and follow-up activity.
cw_list_campaigns details
cw_list_campaigns details
[ConnectWise] List marketing campaigns with optional filtering. Returns paginated campaign records including name, type, status, start/end dates, and budget. Use this to browse campaigns or narrow results before fetching full details with cw_get_campaign.
cw_list_marketing_group_companies details
cw_list_marketing_group_companies details
[ConnectWise] List companies associated with a marketing group. Returns company records linked to the specified group. Use to see which companies are targeted by a marketing group. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_marketing_group_contacts details
cw_list_marketing_group_contacts details
[ConnectWise] List contacts associated with a marketing group. Returns contact records linked to the specified group. Use to see which individual contacts are targeted by a marketing group. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_marketing_groups details
cw_list_marketing_groups details
[ConnectWise] List marketing groups with optional filtering. Returns paginated group records including name, type, and member counts. Use to discover target audience groups for campaigns. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_search_campaigns details
cw_search_campaigns details
[ConnectWise] Search marketing campaigns by name. Returns matching campaigns. Use this when you know the campaign name but not the numeric ID.
cw_update_campaign details
cw_update_campaign details
[ConnectWise] Update an existing marketing campaign using JSON Patch operations. Requires a valid campaign ID — use cw_list_campaigns to find IDs. Returns the updated campaign.
Knowledge Base
cw_count_kb_articles details
cw_count_kb_articles details
[ConnectWise] Get a count of knowledge base articles matching optional conditions. Returns ConnectWise's own count as {"count":N}, from the resource's /count route. Useful for measuring KB coverage or checking result set size.
cw_create_kb_article details
cw_create_kb_article details
[ConnectWise] Create a new knowledge base article. Requires a title and content. Call cw_discover_kb_categories first to find valid category/subcategory IDs. Returns the created article with its assigned ID.
cw_discover_kb_categories details
cw_discover_kb_categories details
[ConnectWise] List all knowledge base categories. Returns category IDs and names. Categories organize KB articles into logical groups. Call this to discover valid category values before creating articles with cw_create_kb_article.
cw_discover_kb_subcategories details
cw_discover_kb_subcategories details
[ConnectWise] List all knowledge base subcategories. Returns subcategory IDs, names, and parent category references. Subcategories provide a second level of KB article organization under categories. Call this to discover valid subcategory values.
cw_get_kb_article details
cw_get_kb_article details
[ConnectWise] Retrieve a single knowledge base article by ID. Returns full article details including title, issue, resolution, category, and subcategory. Use cw_list_kb_articles to find valid article IDs.
cw_list_kb_articles details
cw_list_kb_articles details
[ConnectWise] List knowledge base articles with optional filtering. Returns paginated article summaries including ID, title, and category. Use this to browse available KB content or narrow results before fetching full articles with cw_get_kb_article.
cw_list_recent_kb_articles details
cw_list_recent_kb_articles details
[ConnectWise] List the most recently created knowledge base articles. Useful for reviewing new documentation additions and ensuring KB coverage is up to date. Ordered by creation date descending.
cw_search_kb_articles details
cw_search_kb_articles details
[ConnectWise] Search knowledge base articles by title or content keyword. Returns matching articles. Use this for natural-language KB lookups when troubleshooting issues.
cw_update_kb_article details
cw_update_kb_article details
[ConnectWise] Update an existing knowledge base article using JSON Patch operations. Requires a valid article ID — use cw_list_kb_articles to find IDs. Returns the updated article.
Workflows
cw_get_workflow details
cw_get_workflow details
[ConnectWise] Retrieve a single workflow by ID. Returns full workflow details including name, table reference, activation status, and batch interval. Requires a valid workflow ID — use cw_list_workflows to find IDs.
cw_list_workflow_events details
cw_list_workflow_events details
[ConnectWise] List events configured for a workflow. Returns event records including event type, execution order, and notification settings. Use to understand what actions a workflow performs when triggered. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_workflow_triggers details
cw_list_workflow_triggers details
[ConnectWise] List triggers configured for a workflow. Returns trigger records including trigger type, expected fields, and conditions. Use to understand what activates a workflow. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_workflows details
cw_list_workflows details
[ConnectWise] List automation workflows with optional filtering. Returns paginated workflow records including name, table reference, and activation status. Use this to discover configured workflows or audit automation rules.
cw_search_workflows details
cw_search_workflows details
[ConnectWise] Search workflows by name. Returns matching workflow records. Use this when you know the workflow name but not the numeric ID.
System Discovery
cw_download_document details
cw_download_document details
[ConnectWise] Download the content of a system document by id. You get a time-limited download link plus the content type, file name and size, not the bytes themselves. The envelope keys are sasUrl, contentType, suggestedFileName, sizeBytes and expiresAt, and the link is valid for 15 minutes. Fetch it before it expires, because nothing in StackJack keeps a copy. Use this for the .eml, .txt and .pdf attachments on service tickets and other records, where the other document tools return metadata only. Document ids come from cw_list_ticket_documents, cw_list_documents or cw_search_documents.
cw_get_document details
cw_get_document details
[ConnectWise] Get document metadata by ID including title, filename, and linked record info. Requires a valid document ID — use cw_list_documents to find IDs.
cw_list_documents details
cw_list_documents details
[ConnectWise] List documents attached to a specific record. Returns document IDs, titles, and metadata. recordType and recordId are REQUIRED — the ConnectWise system/documents endpoint is entity-scoped and returns a 400 error without them. Use the parent record's type (e.g. 'Ticket', 'Company', 'Contact', 'Project') and its numeric ID.
cw_list_locations details
cw_list_locations details
[ConnectWise] List system locations with optional filtering and pagination. Returns location IDs and names. Use these values when filtering or assigning location-scoped data such as members and tickets.
cw_search_documents details
cw_search_documents details
[ConnectWise] Search documents by title within a specific record. Returns matching document records. recordType and recordId are REQUIRED — the ConnectWise system/documents endpoint is entity-scoped and returns a 400 error without them. Use the parent record's type (e.g. 'Ticket', 'Company', 'Contact', 'Project') and its numeric ID.
System Utilities
cw_count_callbacks details
cw_count_callbacks details
[ConnectWise] Count total registered callback entries (webhooks), with optional active/inactive filtering. Returns the count and a list of callbacks. Use for quick integration audits.
cw_create_callback details
cw_create_callback details
[ConnectWise] Register a new callback entry (webhook). Creates a callback that will POST event notifications to the specified URL when the configured object type changes. Returns the created callback with its assigned ID.
cw_delete_callback details
cw_delete_callback details
[ConnectWise] Permanently delete a callback entry (webhook) by ID. This cannot be undone and will stop event notifications to the registered URL. Verify the callback with cw_list_callbacks before deleting.
cw_list_active_callbacks details
cw_list_active_callbacks details
[ConnectWise] List only active callback entries (webhooks) that are currently enabled. Returns callback records filtered to active status. Use to audit which integrations are actively receiving event notifications.
cw_list_audit_trail details
cw_list_audit_trail details
[ConnectWise] List the audit-trail history for ONE record. ConnectWise scopes the audit trail per record, so you MUST supply both the record type and its numeric id (a bare/global list is not supported and returns an error). Returns a JSON array of audit entries (text, enteredDate, enteredBy, auditType, auditSubType, auditSource). There is no system-wide / cross-record audit query in ConnectWise Manage.
cw_list_callbacks details
cw_list_callbacks details
[ConnectWise] List registered callback entries (webhooks) with optional filtering. Returns paginated callback records including URL, object type, and level. Use to audit which integrations receive event notifications from ConnectWise.
cw_list_custom_reports details
cw_list_custom_reports details
[ConnectWise] List all custom reports configured in ConnectWise. Returns report IDs, names, and module references. Use to discover available custom reports for data analysis. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_recent_audit_entries details
cw_list_recent_audit_entries details
[ConnectWise] List recent audit-trail entries for ONE record from the last N days, most-recent first. ConnectWise scopes the audit trail per record and has no system-wide 'recent changes' feed, so you MUST supply the record type and id; the day-window filter and sort are applied on the StackJack side. Returns the matching audit entries as a JSON array.
cw_list_security_roles details
cw_list_security_roles details
[ConnectWise] List all security roles configured in ConnectWise. Returns role IDs, names, and admin flags. Use to understand the permission structure or validate role assignments. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_standard_notes details
cw_list_standard_notes details
[ConnectWise] List all standard/canned notes configured in ConnectWise. Returns note IDs, names, and content. Use to discover pre-written note templates available for ticket notes, activities, and other records. PAGINATED: 50 per page by default, 200 maximum; reach later pages with page=2, page=3 and so on, and narrow the result set with conditions instead of paging through everything.
cw_list_user_defined_fields details
cw_list_user_defined_fields details
[ConnectWise] List user-defined fields (UDFs) with optional filtering. Returns paginated UDF records including field name, caption, type, and entry method. Use to discover custom fields configured in the ConnectWise instance.
cw_search_audit_trail details
cw_search_audit_trail details
[ConnectWise] Search the audit-trail history of ONE record. ConnectWise scopes the audit trail per record and offers no cross-record / global audit search, so you MUST supply the record type and id; the search text is matched (case-insensitive substring) against each entry's text and enteredBy fields on the StackJack side. Returns the matching audit entries as a JSON array.
cw_search_user_defined_fields details
cw_search_user_defined_fields details
[ConnectWise] Search user-defined fields by caption (the field's display label). Returns matching UDF records. Use this when you know the custom field's label but want to find its details and ID.
Analytics
cw_board_performance_comparison details
cw_board_performance_comparison details
[ConnectWise] Ticket volume and average resolution time per service board. Walks every page in the look-back window with a coverage block; avgResolutionHours is null, never 0, without closed tickets. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated; when truncated is true every per-board figure is a lower bound. closedWithResolutionData says how many tickets each average is over. totalBoards is over every board seen; the boards array lists at most 200, busiest first, with a returnedCount. The window and all timestamps are UTC.
cw_first_response_time_analytics details
cw_first_response_time_analytics details
[ConnectWise] First response time over a SAMPLE of the newest tickets in a range. The coverage block gives the sample size and ConnectWise's count for the range; truncated is true when they differ. Its totalAvailable is null when the count read fails, which is not zero. Every statistic is null, never 0, when no sampled ticket has a note. CAVEAT: the first note on a ConnectWise ticket is frequently the ticket's OWN initial description, created with the ticket, so measured times can read near zero -- treat them as a floor. Timestamps are compared in UTC. Makes 2+N API calls, default N=20.
cw_open_ticket_age_distribution details
cw_open_ticket_age_distribution details
[ConnectWise] Open tickets grouped by age bucket: 0-7d, 8-14d, 15-30d, 31-60d, 60d+. Walks every page and reports a coverage block; when coverage.truncated is true every bucket is a lower bound. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. Ages are measured in UTC from the moment of the call, so a bucket depends on time of day rather than on local midnight. totalTickets counts only tickets with a parseable dateEntered; undatedTickets reports the rest, which appear in no bucket.
cw_open_ticket_summary details
cw_open_ticket_summary details
[ConnectWise] Open tickets grouped by board, priority and age bucket. Walks every page with a coverage block; when coverage.truncated is true every group count is a lower bound. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. byBoard and byPriority list at most 200 groups each, largest first, with boardsReturnedCount and prioritiesReturnedCount beside them; byAge always carries all six buckets. Ages are measured in UTC from the moment of the call, and undatedTickets counts tickets with no parseable dateEntered, which appear in no age bucket.
cw_priority_distribution details
cw_priority_distribution details
[ConnectWise] Open ticket count per priority level. Walks every page with a coverage block; when coverage.truncated is true each count is a lower bound and the shares are only the sample's shape. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. totalPriorities is over every priority seen; the priorities array lists at most 200, largest first, with a returnedCount.
cw_stale_ticket_report details
cw_stale_ticket_report details
[ConnectWise] Identify open tickets with no activity beyond a threshold. Returns tickets sorted by days since last update. Use for daily triage.
cw_team_workload_balance details
cw_team_workload_balance details
[ConnectWise] Open ticket counts and share per member. Walks every page of tickets and members with a coverage block for each; when ticketCoverage.truncated is true each count is a lower bound. Each coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. The top-level truncated flag reflects the TICKET walk only, because a truncated member directory costs owner NAMES, not counts -- read memberDirectoryCoverage for that. memberCount is over every member holding open work; the members array lists at most 200, busiest first, with a returnedCount. A share is null, never 0, when there is nothing to divide by.
cw_ticket_aging_report details
cw_ticket_aging_report details
[ConnectWise] Open tickets grouped by the UTC week they were created. Walks every page with a coverage block; when coverage.truncated is true every week's count is a lower bound. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. Weeks are Monday-start and bucketed in UTC, so a ticket created late on a Sunday evening local time can land in the following week. weeklyBreakdown lists at most 200 weeks, OLDEST first, with a returnedCount, and undatedTickets counts tickets with no parseable dateEntered.
cw_ticket_resolution_analytics details
cw_ticket_resolution_analytics details
[ConnectWise] Resolution time for closed tickets in a date range. Walks every page in the range with a coverage block; every statistic is null, never 0, when nothing closed. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated; when truncated is true the figures describe only the tickets analyzed. Returns average, median, fastest and slowest resolution hours, compared in UTC.
cw_ticket_source_analysis details
cw_ticket_source_analysis details
[ConnectWise] Ticket volume by creation source for a date range. Walks every page in the range with a coverage block; when coverage.truncated is true the shares describe only the tickets analyzed. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated. totalTickets is the number analyzed across every page and is the denominator for every share. Date bounds are UTC.
cw_ticket_volume_trends details
cw_ticket_volume_trends details
[ConnectWise] Ticket volume per period, counted by ConnectWise over the whole period. A count it will not answer is null, never 0, and period bounds are UTC from the call time. Each period costs one API call; periods clamps to 1-12 and periodDays to 1-365.
cw_unassigned_ticket_report details
cw_unassigned_ticket_report details
[ConnectWise] Unassigned open tickets, counted and grouped by board. Walks every page with a coverage block; totalUnassigned is the full count, while the tickets array is a 200-row sample. The coverage block carries analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched and truncated; when truncated is true the counts are a lower bound. The walk pages by id for cross-request determinism; the tickets array is then sorted OLDEST FIRST and capped at 200 with a returnedCount, and byBoard lists at most 200 boards with its own boardsReturnedCount.
Advanced Analytics
cw_agreement_coverage_gaps details
cw_agreement_coverage_gaps details
[ConnectWise] Identify companies with open tickets but no agreement in force. Cross-references companies with open tickets against companies holding an agreement that is neither cancelled nor Expired/Inactive. Use for upselling agreement coverage. BOTH SIDES MUST BE COMPLETE FOR THIS ANSWER TO BE SAFE. A truncated AGREEMENT read invents coverage gaps -- a company whose only agreement sits past the page ceiling looks uncovered -- so when the agreement walk is truncated the gap list is suppressed entirely rather than published with false positives. A truncated TICKET read only misses gaps, which is stated but not suppressed. Both walks report a coverage block. Note: makes 2+ API calls internally.
cw_agreement_renewal_forecast details
cw_agreement_renewal_forecast details
[ConnectWise] List agreements expiring within N days, plus those already past their end date. Use for renewal pipeline management and proactive customer outreach. Walks every page of non-cancelled agreements (up to 10 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated -- so a renewal pipeline built from this is never quietly missing agreements past the first page. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_agreement_utilization_tracker details
cw_agreement_utilization_tracker details
[ConnectWise] Track agreement hours used vs budgeted. Returns per-agreement metrics showing hours consumed against billableHoursLimit. HOURS ARE ATTRIBUTED FROM A GLOBAL TIME-ENTRY READ, so this tool is only meaningful when that read completes. It walks every time entry carrying an agreement (up to 50 pages of 200) and, if the ceiling binds, sets usedHours, remainingHours, utilizationPercent and status to NULL for every agreement rather than attributing an arbitrary 10,000 entries -- a partial global read cannot be split per agreement, and a partial usedHours would read as a real consumption figure. Check timeEntryCoverage.truncated first. Only agreements in force are listed: an agreementStatus of Expired, Cancelled or Inactive is excluded and reported separately. An agreement with no billableHoursLimit has no budget to be utilized against, so its utilizationPercent is null and its status is "No Budget Set" -- it used to report 0% "On Track". Note: makes 2+ API calls internally.
cw_billing_leakage_detection details
cw_billing_leakage_detection details
[ConnectWise] Find billable time not yet invoiced, alongside the invoiced revenue for the same period. Use for billing reconciliation before month-end close. Walks every page of both dimensions (up to 50 pages of 200 each) and reports a coverage block per dimension -- analyzed, totalAvailable, pagesFetched, truncated. When truncated is true, totalUninvoicedBillableHours is a LOWER BOUND on the leakage, which is the direction that matters for this tool. totalInvoicedRevenue sums each invoice's `total` and is TAX-INCLUSIVE; use cw_company_financial_summary for an ex-VAT figure. Note: makes 2+ API calls internally.
cw_cross_board_ticket_flow details
cw_cross_board_ticket_flow details
[ConnectWise] Compare ticket volume and resolution across all boards. Identifies overloaded boards by showing open count, closed count, and average resolution hours per board. Use for capacity planning and board rebalancing. This reads EVERY ticket in the instance, not a date range, so on any established MSP it will hit the 50-page ceiling (10,000 tickets) and report truncated:true with the real total from ConnectWise's count endpoint. Board comparisons drawn from a truncated read are unsafe -- the analyzed slice is not evenly distributed across boards -- so check coverage.truncated before using them. A board's avgResolutionHours is null when none of its analyzed closed tickets carries both timestamps, never 0. Note: makes 1+ API calls internally.
cw_csat_report details
cw_csat_report details
[ConnectWise] Customer satisfaction report across every service survey. Walks each survey's results to exhaustion (shared 50-page budget across all surveys, 200 per page) and reports coverage per survey, so a truncated read is visible instead of silently complete. Scores are derived from each response's top-level totalPoints, NOT from a `score` field (there is none) and NOT from question IDs, which differ per survey and per instance -- one survey may score -1/0/1/3 out of 4 points while another scores 0=positive/1=neutral/2=negative out of 100. Each survey is scored against ITS OWN maximum: percentAtMaxPoints is the top-box CSAT (the share of responses at the survey's best possible score) and is the only figure pooled across surveys, because it is scale-free. A survey whose responses are all identical has no observable scale, so its scores are null with a note rather than a misleading 100. No per-member breakdown: survey results carry no member reference, and attributing 13,000 responses would need one ticket lookup each. Use the ticketId on each response with cw_get_ticket if you need owner attribution.
cw_dispatch_optimizer details
cw_dispatch_optimizer details
[ConnectWise] Workload-based dispatch suggestions for unassigned tickets. Analyzes open ticket distribution across active members and suggests assignments based on current capacity. Returns members ranked by available capacity, plus up to 20 unassigned tickets as examples. Walks every page of open tickets (up to 50 pages of 200) and of active members (up to 10) and reports a coverage block -- analyzed, totalAvailable, pagesFetched, truncated. A truncated walk means the per-member workload counts are a lower bound and the ranking may be wrong, which the response states rather than implying a complete picture. Note: makes 2+ API calls internally (one per page, plus a count only when more than one page exists).
cw_mean_time_metrics details
cw_mean_time_metrics details
[ConnectWise] Calculate MTTR (Mean Time To Resolve) and MTBF (Mean Time Between Failures per company) for closed tickets in a date range. Use for operational KPI reporting. Walks every page of closed tickets in the range (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. MTBF in particular is meaningless on a truncated read, because the gaps between a company's tickets depend on having all of them. Both figures are NULL when there is nothing to average, never 0 -- a zero MTTR would read as instant resolution. MTTA is not computed here; use cw_first_response_time_analytics. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_member_utilization_report details
cw_member_utilization_report details
[ConnectWise] Analyze member utilization showing billable vs total hours and utilization rate against a target. Returns per-member metrics for capacity planning and identifying under- or over-utilized staff. Walks every page of matching time entries (up to 50 pages of 200) and of active members (up to 10 pages of 200), and reports entriesAnalyzed against totalMatchingEntries so any truncation is visible in the output. Note: Makes 3+ API calls internally (one count plus one per page).
cw_overdue_ticket_report details
cw_overdue_ticket_report details
[ConnectWise] Tickets past their SLA resolution target. Compares open ticket age against SLA resolve hours and returns tickets that have exceeded their target, worst first. overdueCount is over every ticket analyzed; overdueTickets lists at most 200 of them with a returnedCount, so a large backlog cannot blow the platform result-size cap. Walks every page of open tickets (up to 50 pages of 200) and every SLA definition, and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A breach list that quietly stops at 200 open tickets hides exactly the tickets it exists to surface, so when truncated is true overdueCount is a lower bound and the response says so. Note: makes 2+ API calls internally.
cw_project_burn_rate details
cw_project_burn_rate details
[ConnectWise] Analyze project hours burned vs budgeted with projected completion. Walks every page of the project's time entries (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A project with no estimatedHours has no budget to burn against, so burnPercent, remainingHours and status are NULL rather than the 0% "On Track" they used to report. Likewise dailyBurnRate and estimatedDaysRemaining are null when the time entries span no measurable elapsed period. Note: makes 2+ API calls internally.
cw_repeat_caller_analysis details
cw_repeat_caller_analysis details
[ConnectWise] Identify companies and contacts with the highest ticket volume. Groups tickets in a lookback window by company and by contact and ranks by volume. Use for identifying frequent callers that may need proactive support or root-cause investigation. Walks every page of tickets in the window (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. This ranking is only trustworthy when truncated is false: an arbitrary 200 of several thousand tickets ranks whichever companies happened to land on page one. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_resource_capacity_planning details
cw_resource_capacity_planning details
[ConnectWise] Member availability vs scheduled work and open ticket assignments. Compares active members against scheduled entries in the horizon and open ticket load to assess capacity. Walks every page of all three dimensions (open tickets up to 50 pages of 200; members and schedule entries up to 10) and reports a coverage block per dimension -- analyzed, totalAvailable, pagesFetched, truncated. Per-member load counts are a lower bound whenever a dimension is truncated, so the capacity ranking may be wrong; the response says so rather than implying a complete picture. Note: makes 3+ API calls internally.
cw_sla_compliance_dashboard details
cw_sla_compliance_dashboard details
[ConnectWise] SLA compliance metrics for closed tickets in a date range. Returns compliance rates, breach counts, and near-miss counts based on SLA resolution targets. Use for management reporting and service quality assessment. Walks every page of closed tickets in the range (up to 50 pages of 200) and every SLA definition, and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. Compliance rates are null when no closed ticket in the range carries an SLA with a resolution target, because there is nothing to be compliant against; a zero would read as total non-compliance. Note: makes 2+ API calls internally (one per page, plus a count only when more than one page exists).
cw_ticket_category_trends details
cw_ticket_category_trends details
[ConnectWise] Track ticket type and subtype distribution over a date range. Groups tickets by type/subtype to show which issue categories are most common. Use for trend analysis and resource planning. Walks every page of tickets in the range (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. Percentages are shares of the tickets ANALYZED; when truncated is true they describe a sample, not the range. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_time_entry_anomaly_detection details
cw_time_entry_anomaly_detection details
[ConnectWise] Flag unusual time entries including entries over 12 hours, weekend entries, zero-hour entries, and potential duplicates. Use for time entry auditing and data quality checks. Walks every page of entries in the window (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. An audit tool that silently reads only the first 200 entries of a month misses most of what it is looking for, so when truncated is true the anomaly counts are a lower bound and the response says so. Weekend and hour-of-day tests are evaluated in UTC. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_timesheet_summary details
cw_timesheet_summary details
[ConnectWise] Summarize time entries by member and company for a date range. Returns total hours, billable hours, and per-member/company breakdowns. Use for payroll review, billing reconciliation, or management reporting. Walks every page of matching time entries (up to 50 pages of 200) and reports entriesAnalyzed against totalMatchingEntries so any truncation is visible in the output. Note: Makes 2+ API calls internally (one count plus one per page).
cw_top_time_consumers details
cw_top_time_consumers details
[ConnectWise] Members and companies with the most hours logged in a date range. Returns ranked lists of top time consumers by member and by company. Use for billing review and resource allocation analysis. Walks every page of entries in the range (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A ranking built from an arbitrary 200 of several thousand entries ranks whoever landed on page one, so check truncated before trusting the order. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_unbilled_time_report details
cw_unbilled_time_report details
[ConnectWise] Find billable time entries that have not been invoiced. Returns unbilled entries grouped by company with total hours. Use for billing reconciliation and revenue recovery. Walks every page of matching entries (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated -- because unbilled time at a busy MSP routinely exceeds one page, and a single-page total understates the revenue at risk. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_weekend_work_report details
cw_weekend_work_report details
[ConnectWise] Time entries logged on weekends (Saturday and Sunday) in a date range. Returns per-member weekend hours and entry counts. Use for overtime tracking, work-life balance monitoring, or billing review. Walks every page of entries in the range (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. Weekend entries are a small slice of a month's time, so a single-page read finds almost none of them; when truncated is true the weekend totals are a lower bound and the response says so. Saturday/Sunday is determined in UTC, so an instance whose technicians work in a distant timezone will see entries near midnight fall on the adjacent day. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
Premium Analytics
cw_agreement_profitability_analysis details
cw_agreement_profitability_analysis details
[ConnectWise] Analyze agreement profitability by comparing agreement revenue to labour cost from time entries. Returns revenue, estimated cost, margin, and effective hourly rate. Use to evaluate whether specific agreements are profitable. Walks every page of the agreement's time entries (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A truncated read UNDERSTATES labour cost and therefore OVERSTATES margin, which is the direction that loses money, so the response says so. An agreement with no billAmount yields null margin and null effective rate rather than a margin equal to the negative of the cost. Note: makes 2+ API calls internally.
cw_client_health_score details
cw_client_health_score details
[ConnectWise] Composite client health score (0-100) based on ticket volume, resolution time, open ticket age, and agreement status. Returns an overall score with per-dimension breakdowns. Use to identify at-risk clients or prepare for QBR meetings. Tickets and agreements are walked to exhaustion (tickets up to 50 pages of 200, agreements up to 10) and each dimension carries a coverage block: analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A truncated read means the SCORE ITSELF is computed over a sample -- the response says so rather than presenting a complete-looking number. avgResolutionHours is null when no ticket in the window closed; the score then falls to its lowest band and resolutionScoreBasis says why. agreementCoverage counts only agreements in force: an agreementStatus of Expired, Cancelled or Inactive does not count, and countedAgreements/excludedAgreements list exactly which agreements drove the score. Note: makes roughly 5 API calls plus one per page.
cw_client_retention_analysis details
cw_client_retention_analysis details
[ConnectWise] Identify at-risk clients based on agreement expiry and declining ticket engagement. Flags companies with agreements ending soon or already expired, combined with low recent ticket activity. totalActiveAgreements counts only agreements in force -- Expired, Cancelled and Inactive ones are excluded and listed separately, so a client whose contract lapsed is not reported as covered. Both dimensions are walked to exhaustion (agreements up to 10 pages of 200, 90-day tickets up to 50) and carry a coverage block. A truncated TICKET read is the dangerous direction: unseen tickets make a client look disengaged and inflate its risk level to High, so the response says so. Note: makes 2+ API calls internally.
cw_company_offboarding_audit details
cw_company_offboarding_audit details
[ConnectWise] Check a company for open items before offboarding: open tickets, agreements in force, open projects, and configurations. Returns a checklist of items that need resolution. Counts come from ConnectWise's own count endpoints rather than a page length capped at 200, so a company with 900 open tickets no longer reports 200. Agreements are walked so that agreementStatus is honoured: an Expired agreement is not a blocker to offboarding, and the ones excluded on that basis are listed. readyToOffboard is null, never true, if any count could not be read -- "no blockers found" and "could not check" must not look the same on a decision this destructive. Note: makes 4+ API calls internally.
cw_customer_lifetime_value details
cw_customer_lifetime_value details
[ConnectWise] Calculate total invoice revenue per company to estimate customer lifetime value. Ranks companies by total spend. Use for identifying top accounts and revenue concentration risk. This reads EVERY invoice in the instance with no date bound, so on any established MSP it will hit the 50-page ceiling (10,000 invoices) and report truncated:true. CONCENTRATION FIGURES FROM A TRUNCATED READ ARE UNSAFE: revenueShare is a percentage of the invoices analyzed, not of the company's history, so a client that looks like 40% of revenue may be an artifact of which invoices were fetched. revenueShare is withheld entirely when the walk truncates; per-company totals remain as lower bounds. totalRevenue sums each invoice's `total` and is TAX-INCLUSIVE. Note: makes 1+ API calls internally.
cw_effective_hourly_rate details
cw_effective_hourly_rate details
[ConnectWise] Calculate effective hourly rate by comparing invoiced revenue to billable hours logged. Returns actual rate, target variance, and per-company hours. Use to assess overall service delivery profitability. Both dimensions are walked to exhaustion (up to 50 pages of 200 each) and carry a coverage block. This is a RATIO of two independently truncatable totals, so if either walk truncates the rate is meaningless -- it is returned as null with a note rather than as a plausible number. totalRevenue sums each invoice's `total` and is TAX-INCLUSIVE, which inflates the rate wherever VAT applies; use cw_company_financial_summary for an ex-VAT figure. Note: makes 2+ API calls internally.
cw_monthly_recurring_revenue details
cw_monthly_recurring_revenue details
[ConnectWise] Calculate MRR from agreements in force with recurring billing, normalized to a monthly figure. Returns total MRR, agreement count, and per-agreement breakdown. Walks every page of non-cancelled agreements (up to 10 pages of 200) and reports a coverage block; a truncated walk makes MRR a LOWER BOUND and says so. EXPIRED AGREEMENTS ARE EXCLUDED -- they were previously counted, which is how a lapsed contract kept contributing to reported recurring revenue -- and the excluded ones are listed with their status. An agreement whose billingCycle ConnectWise does not name is assumed MONTHLY, and the count of such assumptions is reported rather than hidden. Note: makes 1+ API calls internally.
cw_pipeline_revenue_forecast details
cw_pipeline_revenue_forecast details
[ConnectWise] Weighted pipeline revenue forecast from open opportunities. Calculates expected revenue by multiplying each opportunity's value by its probability percentage. Returns per-stage and overall forecasts. An opportunity whose probability ConnectWise does not name is weighted at an ASSUMED 50%; opportunitiesWithAssumedProbability reports how many of the forecast rests on that guess. Use for sales forecasting and pipeline reviews.
cw_procurement_spend_analysis details
cw_procurement_spend_analysis details
[ConnectWise] Analyze purchase order spending by vendor and status. Groups purchase orders by vendor to show spending distribution. Use for vendor management and procurement optimization. Walks every page of purchase orders (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. spendShare is a percentage of the purchase orders ANALYZED, so it is withheld when the walk truncates: a share of a partial denominator is a different number, not a smaller one. Note: makes 1+ API calls internally.
cw_profitability_leaderboard details
cw_profitability_leaderboard details
[ConnectWise] Rank companies by profitability (invoice revenue minus estimated time cost). Compares invoiced revenue against time logged at a given hourly cost rate. Returns per-company profit and margin. Both dimensions are walked to exhaustion (up to 50 pages of 200 each) and carry a coverage block. THE RANKING IS THE POINT AND TRUNCATION BREAKS IT: a truncated invoice read understates revenue while a truncated time read understates cost, so companies move in opposite directions and the order becomes an artifact of which pages were fetched. The response flags this rather than presenting a leaderboard that looks authoritative. marginPercent is null for a company with no revenue in the period, not 0%. revenue sums each invoice's `total` and is TAX-INCLUSIVE. Note: makes 2+ API calls internally.
cw_project_portfolio_health details
cw_project_portfolio_health details
[ConnectWise] Project portfolio health dashboard comparing budget vs actual hours across active projects. Returns per-project budget utilization, overrun alerts, and portfolio status. HOURS ARE ATTRIBUTED FROM A GLOBAL TIME-ENTRY READ, so this is only meaningful when that read completes. It walks every time entry carrying a project (up to 50 pages of 200) and, if the ceiling binds, sets actualHours, remainingHours, utilizationPercent and status to NULL for every project rather than attributing an arbitrary 10,000 entries -- a partial global read cannot be split per project. Check timeEntryCoverage.truncated first. A project with no estimatedHours has no budget to utilize against, so its utilizationPercent is null and its status is "No Budget Set" -- it used to report 0% "On Track". Note: makes 2+ API calls internally.
cw_qbr_data_pack details
cw_qbr_data_pack details
[ConnectWise] Comprehensive quarterly business review data pack for a client. Returns ticket volume and resolution metrics, time logged, agreement status, and configuration counts. Every dimension is walked to exhaustion (tickets and time entries up to 50 pages of 200, agreements and configurations up to 10) and carries its own coverage block: analyzed, totalAvailable from ConnectWise's own count endpoint, pagesFetched, truncated. When truncated is true the derived figures are a LOWER BOUND over the records analyzed, never a period total. Averages and medians are null when there is nothing to average -- a zero there would be indistinguishable from a real measurement. agreementSummary.activeAgreements excludes agreements whose agreementStatus is Expired, Cancelled or Inactive, and lists exactly which agreements were counted and which were excluded so the number is auditable. ticketMetrics.openTickets counts tickets OPENED IN THIS QUARTER that are still open; currentlyOpenTickets is the company's whole open backlog regardless of when it was raised, which is usually the figure a QBR wants. Note: makes roughly 6 API calls plus one per page.
cw_revenue_per_employee details
cw_revenue_per_employee details
[ConnectWise] Calculate total invoiced revenue divided by active member count for a date range. Use for profitability benchmarking. Both dimensions are walked to exhaustion (invoices up to 50 pages of 200, members up to 10) and carry a coverage block. This is a RATIO of two independently truncatable totals, so if either walk truncates the metric is withheld as null with a note rather than published as a plausible number. totalRevenue sums each invoice's `total` and is TAX-INCLUSIVE. Note: makes 2+ API calls internally.
cw_service_margin_analysis details
cw_service_margin_analysis details
[ConnectWise] Analyze revenue vs labour cost per company by comparing invoiced amounts to time entries at a cost rate. Returns margin and margin percentage per company. Both dimensions are walked to exhaustion (up to 50 pages of 200 each) and carry a coverage block. A truncated INVOICE read understates revenue and a truncated TIME read understates cost, so on a truncated run the margins move in opposite directions and the response says so. A company with revenue but no invoices in the period has a null marginPercent, not 0%. revenue sums each invoice's `total` and is TAX-INCLUSIVE, which overstates margin wherever VAT applies. Note: makes 2+ API calls internally.
Cross-Domain
cw_board_health_dashboard details
cw_board_health_dashboard details
[ConnectWise] Health metrics for a specific service board: open ticket count, average age, SLA compliance estimate, and top assignees. Use for board-level performance monitoring. Walks every page of the board's open tickets (up to 50 pages of 200) and every SLA definition, and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. avgAgeHours and complianceRate are null when there is nothing to measure, never 0: a zero average age would read as a board whose tickets were all raised this instant, and a zero compliance rate as total SLA failure. Note: makes 2+ API calls internally.
cw_bulk_status_summary details
cw_bulk_status_summary details
[ConnectWise] Counts of open items across all domains for a company: open tickets, agreements in force, open projects, open opportunities, and configurations. Use for a quick company health snapshot. EVERY COUNT COMES FROM ConnectWise's OWN COUNT ENDPOINT, not from the length of a page. Previously each number was an array length capped at 200, so a company with 900 open tickets reported exactly 200 -- and totalOpenItems compounded four such caps into one plausible-looking total. Agreements are the exception: they are walked so that agreementStatus can be honoured, since a count endpoint cannot exclude Expired ones. A count that ConnectWise did not answer is null, never 0, and totalOpenItems is null if any of its parts is. Note: makes 5+ API calls internally.
cw_company_financial_summary details
cw_company_financial_summary details
[ConnectWise] Total invoiced revenue, total hours logged, agreement value, and open ticket count for a company. Every dimension is walked to exhaustion and carries a coverage block (analyzed, totalAvailable, pagesFetched, truncated); when truncated is true the totals are a LOWER BOUND, not a company lifetime figure. TAX BASIS: totalInvoiced is each invoice's `total`, which is TAX-INCLUSIVE -- at 25% VAT it runs about a quarter above the money actually billed for work. totalInvoicedExVat sums the invoices' own `subtotal` (falling back to total minus salesTax) and is the figure to compare against labour cost or agreement value; it is NULL when no invoice carried either field, never 0. totalInvoicedExVatBasis breaks down how many invoices came from each path INCLUDING how many were excluded for having neither, so a partial sum is never mistaken for a complete one. KNOWN CONNECTWISE CAVEATS, not defects here: an invoice with invoiceType "Agreement" commonly reports agreementAmount 0.00 with the money sitting in productTotal instead; and unless the instance syncs payments back from its accounting package, every invoice reports payments 0.00 and balance equal to the full total, so outstanding balance cannot be derived from these records. Neither figure is emitted rather than emitting an unusable number. agreements counts only agreements in force -- an agreementStatus of Expired, Cancelled or Inactive does not count -- and lists which were counted and which excluded. Note: makes roughly 6 API calls plus one per page.
cw_entity_relationship_map details
cw_entity_relationship_map details
[ConnectWise] Show relationships between a company's tickets, agreements, projects, opportunities, contacts, and configurations. Returns totals plus open/closed splits for each entity type linked to the company. Every dimension is walked to exhaustion (tickets up to 50 pages of 200, the rest up to 10) and carries its own coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated -- so a company with 900 tickets no longer reports 200. The agreements split reports active (in force), expired-or-inactive, and cancelled as three separate numbers, because a lapsed agreement was previously counted as active. Note: makes 6+ API calls internally.
cw_new_client_onboarding_status details
cw_new_client_onboarding_status details
[ConnectWise] Check what's been set up for a new client: contacts, sites, configurations, and agreements. Returns counts and details for each category with an overall readiness score. Contact and configuration counts come from ConnectWise's own count endpoints rather than a page length capped at 200. "Agreements in place" counts only agreements in force -- Expired, Cancelled and Inactive ones do not make a client onboarded -- and the excluded ones are listed. A step whose count could not be read reports complete:null (NOT false, which would read as a missing step on a healthy client) and readinessScore is withheld unless every check ran; allChecksRan says which case you are in. Note: makes 4+ API calls internally.
cw_technician_dashboard details
cw_technician_dashboard details
[ConnectWise] Today's schedule entries, open assigned tickets, and time logged today for a specific member. Use for technician daily briefings or self-service dashboards. All three dimensions are walked to exhaustion (open tickets up to 50 pages of 200; today's schedule and time entries up to 10) and carry a coverage block, so a technician with more than 200 open tickets no longer sees exactly 200. Schedule entries are returned in dateStart order (the walk itself pages by id for determinism) and capped at 200 rows with a returnedCount. Note: makes 3+ API calls internally.
cw_ticket_handoff_analysis details
cw_ticket_handoff_analysis details
[ConnectWise] Analyze resolution patterns for closed tickets, identifying tickets with unusually long resolution times and board distribution. Walks every page of closed tickets in the window (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. The ">2x average" threshold is computed from the tickets analyzed, so on a truncated read both the average and the outlier list describe a sample rather than the window; avgResolutionHours is null when no analyzed ticket carries both timestamps, never 0. Note: does NOT detect individual reassignment events; it uses resolution time as a proxy for handoff complexity. Makes 1+ API calls internally.
cw_weekly_operations_report details
cw_weekly_operations_report details
[ConnectWise] Tickets opened and closed in the last 7 days plus time logged, as a weekly operations snapshot for management review. All three dimensions are walked to exhaustion (up to 50 pages of 200 each) and carry a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. netChange is the difference between two walked totals, so it is only meaningful when neither side truncated; the response says so. A busy MSP opens well over 200 tickets a week, which is precisely when the previous single-page read reported 200 opened, 200 closed and a net change of exactly zero. Note: makes 3+ API calls internally.
Intelligence
cw_after_hours_impact_report details
cw_after_hours_impact_report details
[ConnectWise] Analyze time logged outside standard business hours (before 8 AM or after 6 PM, and weekends). Returns after-hours time entries grouped by member and day of week. Use for overtime analysis and staffing decisions. Walks every page of entries in the window (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. After-hours entries are a small slice of a month's time, so a single-page read finds almost none of them; when truncated is true these totals are a lower bound. Timestamps are compared in UTC, so an instance whose technicians work in a distant timezone will shift the business-hours window. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_company_360_view details
cw_company_360_view details
[ConnectWise] Comprehensive 360-degree view of a company: company details, open tickets, agreements, contacts, and configurations in a single composite call. Use for account reviews or before customer calls. Each dimension is walked to exhaustion (open tickets up to 50 pages of 200; agreements, contacts and configurations up to 10) and carries a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated -- so the COUNTS are complete. THE ROWS ARE A SAMPLE: each list is capped at 200 with a matching returnedCount, because emitting four full walks verbatim would exceed the platform result-size cap and fail the entire call. Use the per-domain list tools (cw_list_tickets, cw_list_contacts, cw_list_configurations, cw_list_agreements) to page through any dimension in full. Note: makes 5+ API calls internally.
cw_company_onboarding_checklist details
cw_company_onboarding_checklist details
[ConnectWise] Evaluate onboarding completeness for a company. Checks for contacts, configurations, an agreement in force, and site information, and returns a checklist with completion status. Contact, configuration and agreement counts come from ConnectWise's own count endpoints, so a company with 900 contacts reports 900 rather than the capped 200 an unpaginated list returned. The agreement check ignores agreements whose agreementStatus is Expired, Cancelled or Inactive -- a lapsed contract is not a contract in place. An item whose count could not be read reports complete:null (NOT false, which would read as an unmet requirement on a healthy client) and completionRate is withheld unless every check ran; allChecksRan says which case you are in. Note: makes 6 API calls internally.
cw_company_risk_assessment details
cw_company_risk_assessment details
[ConnectWise] Churn risk score (0-100) for a company based on 90-day ticket volume, stale open tickets, and agreement coverage. A higher score indicates greater churn risk. Returns the overall risk score with per-dimension breakdowns. Tickets and agreements are walked to exhaustion (tickets up to 50 pages of 200, agreements up to 10) and each dimension carries a coverage block: analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A truncated ticket read UNDERSTATES volume risk, so the response says so instead of returning a complete-looking score. agreementCoverage counts only agreements in force -- an agreementStatus of Expired, Cancelled or Inactive does not count -- and countedAgreements/excludedAgreements list exactly which agreements drove the score. This tool does NOT score SLA compliance; use cw_sla_compliance_dashboard for that. Note: makes roughly 4 API calls plus one per page.
cw_configuration_lifecycle_tracker details
cw_configuration_lifecycle_tracker details
[ConnectWise] Assets approaching warranty expiry or with high ticket correlation. Identifies configurations nearing end of warranty and those generating the most tickets in the last 180 days. Walks every page of configurations (up to 10 pages of 200) and of tickets in that window (up to 50), and reports a coverage block per dimension -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A truncated configuration read means assets whose warranty is expiring were never examined at all, which is the failure this tool exists to prevent, so the response says so. Note: makes 2+ API calls internally.
cw_daily_operations_briefing details
cw_daily_operations_briefing details
[ConnectWise] Daily operations summary: new tickets (last 24h), SLA warning tickets (open > 4 hours), stale tickets (no update in 7+ days), and the unassigned queue. EACH count COMES FROM ConnectWise's OWN COUNT ENDPOINT, so it is the true size of the bucket. The accompanying tickets array is a SAMPLE of at most 200 -- the newest for the new-ticket bucket, the oldest for the three backlog buckets, which is where attention belongs -- and returnedCount says how many are listed. Previously count was the array length, so any bucket over 200 reported exactly 200 and a queue of 900 unassigned tickets read as 200. Note: makes 8 API calls internally.
cw_escalation_risk_scorer details
cw_escalation_risk_scorer details
[ConnectWise] Score open tickets by escalation risk based on age, priority, assignment and staleness. Returns a ranked list of tickets most likely to escalate. Use for proactive service management. Walks every page of open tickets (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. A risk list that quietly stops at 200 open tickets hides exactly the ones it exists to surface, so when truncated is true the counts are a lower bound and the response says so. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_knowledge_article_recommendation details
cw_knowledge_article_recommendation details
[ConnectWise] Given a ticket ID, find knowledge base articles with matching keywords. Fetches the ticket summary and searches KB articles for relevant matches. Use for suggesting solutions to technicians. Note: Makes 2 API calls internally.
cw_proactive_maintenance_alerts details
cw_proactive_maintenance_alerts details
[ConnectWise] Configurations with recent tickets suggesting maintenance needs. Correlates configurations with recent tickets to identify assets generating repeated issues. Walks every page of configurations (up to 10 pages of 200) and of tickets in the window (up to 50), and reports a coverage block per dimension -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. Threshold counting is exactly what a truncated read breaks: an asset with 6 tickets can fall under a minTickets of 2 if only 1 of them lands in the analyzed slice, so absence of an alert is NOT evidence of a healthy asset when truncated is true. Note: makes 2+ API calls internally.
cw_recurring_issue_detector details
cw_recurring_issue_detector details
[ConnectWise] Detect recurring issues by grouping tickets by company and type. Identifies patterns where the same issue type recurs for a company beyond a minimum occurrence threshold. Use to identify systemic problems that need permanent resolution. Walks every page of tickets in the window (up to 50 pages of 200) and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. Occurrence counting is exactly the thing a truncated read breaks: a pattern that recurs 8 times can fall under a minOccurrences of 3 if only 2 of its tickets land in the analyzed slice, so check truncated before concluding an issue is NOT recurring. Note: makes 1+ API calls internally (one per page, plus a count only when more than one page exists).
cw_resource_skill_matcher details
cw_resource_skill_matcher details
[ConnectWise] Given a ticket, find SKILLS whose names match the ticket's type/subtype keywords. Walks every page of the instance's skill catalogue (up to 10 pages of 200) and reports how many were checked, so a matching skill past the first 200 is no longer silently missed. This does NOT resolve members: it returns skill names to feed into cw_list_member_skills. Note: makes 2+ API calls internally.
cw_revenue_leakage_scan details
cw_revenue_leakage_scan details
[ConnectWise] Identify potential revenue leakage: billable time entries not yet invoiced, and zero-hour entries that may indicate logging errors. Returns uninvoiced billable entries grouped by company plus zero-value time entries. The uninvoiced dimension is walked to exhaustion (up to 50 pages of 200) because an under-reported leakage figure is the failure this tool exists to prevent; it carries a coverage block with the true total from ConnectWise's count endpoint. The zero-hour dimension reports its true count from the same endpoint and lists at most 200 example entries -- previously its count was the array length, so any instance with more than 200 zero-hour entries reported exactly 200. Note: makes 3+ API calls internally.
cw_schedule_gap_analysis details
cw_schedule_gap_analysis details
[ConnectWise] Find unscheduled time blocks for members by comparing schedule entries against a workday. Returns members with the most available (unscheduled) time. Walks every page of active members and of schedule entries in the horizon (up to 10 pages of 200 each) and reports a coverage block per dimension. A truncated SCHEDULE read is the dangerous direction here: unseen entries make a member look free, so the response says so rather than sending work to someone who is already booked. Note: makes 2+ API calls internally.
cw_similar_ticket_finder details
cw_similar_ticket_finder details
[ConnectWise] Find tickets with similar summaries to a given ticket. Fetches the ticket, extracts keywords, and searches for matching closed tickets. Use for finding prior resolutions to similar issues. Note: Makes 2 API calls internally.
cw_sla_breach_alerts details
cw_sla_breach_alerts details
[ConnectWise] Identify open tickets at risk of SLA breach. Compares open ticket age against SLA resolution targets and flags tickets that have exceeded or are approaching (>80%) their SLA window. The breached and atRisk COUNTS are over every ticket analyzed; each ticket LIST is capped at 200 rows with a returnedCount, so a large backlog cannot blow the platform result-size cap. Walks every page of open tickets (up to 50 pages of 200) and every SLA definition, and reports a coverage block -- analyzed, totalAvailable from ConnectWise's count endpoint, pagesFetched, truncated. An alert list that quietly stops at 200 open tickets hides exactly the breaches it exists to surface, so when truncated is true the counts are a lower bound and the response says so. Note: makes 2+ API calls internally.
cw_ticket_triage_assist details
cw_ticket_triage_assist details
[ConnectWise] Triage assistance for a ticket. Fetches the ticket details, finds similar resolved tickets (by summary keyword matching), and lists member skills to suggest an assignee. Returns the ticket, up to 5 similar resolved tickets, and available member skills. Note: Makes 3 API calls internally.
cw_time_prediction_model details
cw_time_prediction_model details
[ConnectWise] Based on similar past tickets (same type, same board), estimate time to resolve. Samples the 50 most recently closed matching tickets and computes the average, median and range of their calendar hours from open to close. With no similar closed ticket, every prediction field is NULL and confidence is "Insufficient data" -- previously they were all 0, which reads as a prediction of instant resolution. Note: makes 2 API calls internally.
Member Administration
cw_update_member details
cw_update_member details
[ConnectWise] DESTRUCTIVE: update a ConnectWise member (a live user of your PSA) with JSON Patch operations. Returns the updated member. Why this is destructive: a member is a signed-in person, and this route changes their security role, license class, inactive flag (which locks them out), e-mail, default board, time approver and expense approver, all effective at once and with no undo from here. Read the member with cw_get_member first and patch only the fields you mean to change. Paths use ConnectWise field names, for example [{"op": "replace", "path": "/title", "value": "Service Lead"}] or [{"op": "replace", "path": "/securityRole", "value": {"id": 7}}]. Never send a password this way unless you mean to reset it.
Company Note Management
cw_delete_company_note details
cw_delete_company_note details
[ConnectWise] Permanently delete a company note. This cannot be undone. Verify the note with cw_list_company_notes before deleting.
Raw Requests
cw_raw_get details
cw_raw_get details
[ConnectWise] Send one GET to any ConnectWise PSA API path and return the response exactly as ConnectWise sent it. This is the escape hatch for anything the typed cw_ tools do not cover yet. It never bypasses a tool's own gate: your connector subscription, endpoint tool selection, plan and billing all still apply, and ConnectWise still authorizes on the API member's own security role, so this returns exactly what that member could read anyway. Prefer the typed tool when one exists: it names its filters as arguments and its description says what the answer means. The path is relative to the API root (https:///v4_6_release/apis/3.0/) and must start with company, configurations, expense, finance, marketing, procurement, project, sales, schedule, service, system or time, for example service/boards/12/statuses. It may carry its own query string, passed through untouched: conditions uses ConnectWise's own filter language (status/name='Open' and closedFlag=false), NOT OData; page and pageSize page it. The path check reads the whole string, query included: a '#', '..', '://' or backslash anywhere is refused. Percent-encode a '#' in a conditions value as %23 and the colon of a URL as %3A; a value containing '..' cannot be sent here, so use the typed tool's conditions argument for it. Two ConnectWise GETs act rather than read (system/authAnvils/testConnection and system/managementNetworkSecurities//testCredentials run a live connection test), which is why this tool is not marked read-only, and a raw read is never auto-retried on a server error. A route that answers a file (an invoice PDF, an image, a document download) is refused before the file is read: use cw_get_invoice_pdf or cw_download_document, which return a download link. A JSON answer larger than 16 MB is refused too; narrow it with pageSize, conditions or a fields list.
cw_raw_request details
cw_raw_request details
[ConnectWise] DESTRUCTIVE: send one POST, PUT, PATCH or DELETE to any ConnectWise PSA API path and return the response exactly as ConnectWise sent it. Why this is destructive: the blast radius is whatever path you name. A DELETE removes the record with no recycle bin, a PUT replaces every field you leave out, a ticket or note write can e-mail a customer, a time, expense, invoice or agreement write changes what someone is billed or paid, and a member write changes who can sign in. None of that is recoverable from here. It never bypasses a tool's own gate: subscription, endpoint tool selection, plan, billing and the agent consent gate all still apply, and ConnectWise still authorizes on the API member's own security role. Prefer the typed tool when one exists. The path is relative to the API root and must start with company, configurations, expense, finance, marketing, procurement, project, sales, schedule, service, system or time. Updates are PATCH with a JSON Patch array, for example [{"op":"replace","path":"/summary","value":"New summary"}]; POST and PUT take the resource object; a few bulk DELETEs take a body such as {"ids":[1,2]}. GET is refused: use cw_raw_get. A success with no body arrives as {"success":true}, which means accepted, not confirmed: re-read the object to see the result.
Ticket Finance & All Notes
cw_count_ticket_all_notes details
cw_count_ticket_all_notes details
[ConnectWise] Count every note on a service ticket, of every kind cw_list_ticket_all_notes returns. Returns ConnectWise's own {"count":N}. Requires a valid ticket ID.
cw_get_ticket_finance details
cw_get_ticket_finance details
[ConnectWise] Get the billing view of a service ticket (ConnectWise's TicketFinance): billing method, hourly rate, work role and type, whether time, expenses and products bill, estimated revenue and cost, bill-to company, contact and site, billing terms, tax code, currency, and the four 2026.11 bill flags (billTicketSeparately, billTicketOnlyAfterClosed, billUnapprovedTimeAndExpenses, restrictDownPayment). Use it before invoicing a ticket or when time is not billing as expected. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
cw_list_ticket_all_notes details
cw_list_ticket_all_notes details
[ConnectWise] List every note on a service ticket in one stream (ConnectWise's TicketAllNote), time-entry notes included: each row carries its noteType, its description, internal-analysis and resolution flags, and timeStart and timeEnd when it came from time. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow. Requires a valid ticket ID -- use cw_list_tickets to find IDs.
Ticket Bundles
cw_attach_child_tickets details
cw_attach_child_tickets details
[ConnectWise] DESTRUCTIVE: attach tickets as children of a parent service ticket (a ticket bundle). Why this is destructive: it changes how the tickets relate, and a bundle's children are handled together with their parent in ConnectWise. Check the tickets with cw_get_ticket first. Undo with cw_detach_child_tickets.
cw_detach_child_tickets details
cw_detach_child_tickets details
[ConnectWise] DESTRUCTIVE: detach child tickets from a parent service ticket (new in 2026.11). Why this is destructive: the detached tickets leave the bundle and are no longer handled together with the parent. Check the bundle first. Undo with cw_attach_child_tickets.
Ticket Contact Authentication
cw_count_ticket_contact_authentications details
cw_count_ticket_contact_authentications details
[ConnectWise] Count caller-verification records across service tickets. Returns ConnectWise's own {"count":N}.
cw_get_ticket_contact_authentication details
cw_get_ticket_contact_authentication details
[ConnectWise] Get the caller-verification record for one service ticket: the contact authenticated, who authenticated them and when. The 2026.11 spec names this path parameter TicketId.
cw_list_ticket_contact_authentications details
cw_list_ticket_contact_authentications details
[ConnectWise] List caller-verification records across service tickets (new in 2026.11): which contact was authenticated on which ticket, by whom and when. Use it to check whether a caller was verified before acting on a request. Filter by ticket with conditions, e.g. serviceRecId=1234. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Project Ticket Finance & Notes
cw_count_all_project_ticket_notes details
cw_count_all_project_ticket_notes details
[ConnectWise] Count notes across all project tickets (new in 2026.11). Returns ConnectWise's own {"count":N}.
cw_count_project_ticket_all_notes details
cw_count_project_ticket_all_notes details
[ConnectWise] Count every note on a project ticket (new in 2026.11). Returns ConnectWise's own {"count":N}.
cw_get_project_ticket_finance details
cw_get_project_ticket_finance details
[ConnectWise] Get the billing view of a project ticket (new in 2026.11, ConnectWise's ProjectTicketFinance): billing method, hourly rate, work role and type, whether time, expenses and products bill, and the subcontractor fields. Requires a valid project ticket ID -- use cw_list_project_tickets to find IDs.
cw_list_all_project_ticket_notes details
cw_list_all_project_ticket_notes details
[ConnectWise] List notes across ALL project tickets at once (new in 2026.11), rather than one ticket at a time. Narrow with conditions, e.g. ticketId=1234 or dateCreated>[2026-09-01T00:00:00Z]. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_project_ticket_all_notes details
cw_list_project_ticket_all_notes details
[ConnectWise] List every note on a project ticket in one stream (ConnectWise's TicketAllNote), time-entry notes included: each row carries its noteType and its description, internal-analysis and resolution flags. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Service Template Resources
cw_count_service_template_resources details
cw_count_service_template_resources details
[ConnectWise] Count the resources on a service template. Returns ConnectWise's own {"count":N}.
cw_create_service_template_resource details
cw_create_service_template_resource details
[ConnectWise] Add a resource (a member to schedule, with hours, times, reminder and recurrence) to a service template. The spec has no DELETE for template resources, so plan before adding one.
cw_get_service_template_resource details
cw_get_service_template_resource details
cw_list_service_template_resources details
cw_list_service_template_resources details
[ConnectWise] List the resources (scheduled members) on a service template (new in 2026.11): member, start and end, hours, schedule status, reminder settings and recurrence. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_service_template_resource details
cw_replace_service_template_resource details
[ConnectWise] DESTRUCTIVE: replace a resource on a service template wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read it with cw_get_service_template_resource and send the whole object back; use cw_update_service_template_resource to change single fields.
cw_update_service_template_resource details
cw_update_service_template_resource details
[ConnectWise] Update a resource on a service template using JSON Patch operations. Returns the updated resource.
Setup Usages
cw_get_configuration_type_question_usages details
cw_get_configuration_type_question_usages details
[ConnectWise] Show where a configuration type question is used (new in 2026.11): the records that reference it, by type and count. Check this before deleting or renaming a question.
cw_get_rma_action_usages details
cw_get_rma_action_usages details
[ConnectWise] Show where an RMA action is used (new in 2026.11), by record type and count. Check this before deleting an action.
cw_get_rma_disposition_usages details
cw_get_rma_disposition_usages details
[ConnectWise] Show where an RMA disposition is used (new in 2026.11), by record type and count. Check this before deleting a disposition.
cw_list_configuration_type_question_usages details
cw_list_configuration_type_question_usages details
[ConnectWise] List the individual records that use a configuration type question (new in 2026.11). PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_rma_action_usages details
cw_list_rma_action_usages details
[ConnectWise] List the individual records that use an RMA action (new in 2026.11). PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_rma_disposition_usages details
cw_list_rma_disposition_usages details
[ConnectWise] List the individual records that use an RMA disposition (new in 2026.11). PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Schedule Reminder Times
cw_count_schedule_reminder_times_info details
cw_count_schedule_reminder_times_info details
[ConnectWise] Count the schedule reminder times. Returns ConnectWise's own {"count":N}.
cw_get_schedule_reminder_time_info details
cw_get_schedule_reminder_time_info details
cw_list_schedule_reminder_times_info details
cw_list_schedule_reminder_times_info details
[ConnectWise] List the schedule reminder times (new in 2026.11): the reminder times a schedule entry can use, with their names and which is the default. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Finance Documents
cw_create_standard_invoice details
cw_create_standard_invoice details
[ConnectWise] DESTRUCTIVE: create a standard invoice from a sales order or a service ticket (new in 2026.11). Why this is destructive: it raises a real invoice against the customer. Review the ticket with cw_get_ticket_finance first. Send salesOrderRecId for a sales order or ticketRecId for a ticket.
cw_download_company_statement_pdf details
cw_download_company_statement_pdf details
[ConnectWise] Download a company's account statement as a PDF (new in 2026.11). You get a time-limited download link plus the content type, file name and size, not the bytes themselves. The envelope keys are sasUrl, contentType, suggestedFileName, sizeBytes and expiresAt, and the link is valid for 15 minutes. ConnectWise renders the statement through its Reporting Services: a 502 means the report server did not return a PDF, not that the company or your credential is wrong.
Expense Report Attachments
cw_list_expense_report_attachments details
cw_list_expense_report_attachments details
[ConnectWise] List the receipts attached to an expense report for one member (new in 2026.11): expense type, date, amount and a fileURL per receipt. The file itself is at fileURL; this returns metadata and links, not bytes. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Standard Reports
cw_run_standard_report details
cw_run_standard_report details
[ConnectWise] Run a ConnectWise standard report by its numeric ID and return its columns and rows (new in 2026.11). A POST that only reads. Report parameters go in parametersJson as string values; the report's own definition says which it takes. A large report may exceed the result cap. Use cw_run_standard_report_by_link when you have the report link instead of the ID.
cw_run_standard_report_by_link details
cw_run_standard_report_by_link details
[ConnectWise] Run a ConnectWise standard report by its report LINK name and return its columns and rows (new in 2026.11). A POST that only reads. The link is the report's name in its URL, not a number: an all-digit link is refused, because ConnectWise would run the report with that ID instead; use cw_run_standard_report for IDs.
Custom Field Infos
cw_bulk_delete_custom_field_infos details
cw_bulk_delete_custom_field_infos details
[ConnectWise] DESTRUCTIVE: delete several custom field definitions in one call (new in 2026.11). Why this is destructive: each field is removed from ConnectWise, and the API documents no way to restore them. ConnectWise answers a per-id result (207 Multi-Status), returned as it came, so check it for ids that did not delete.
cw_delete_custom_field_info details
cw_delete_custom_field_info details
[ConnectWise] DESTRUCTIVE: delete a custom field definition (new in 2026.11). Why this is destructive: the field is removed from ConnectWise, and the API documents no way to restore it. Check it with cw_list_custom_field_infos first.
cw_list_custom_field_infos details
cw_list_custom_field_infos details
[ConnectWise] List the custom field definitions (customFieldInfos): each field's caption, type, entry method, screen and pod. Use it to find a field id or caption before filtering with customFieldConditions. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
User-Defined Field Screens
cw_list_user_defined_field_screen_pods details
cw_list_user_defined_field_screen_pods details
[ConnectWise] List the screen pods a user-defined (custom) field can be placed on (new in 2026.11). PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_user_defined_field_screens details
cw_list_user_defined_field_screens details
[ConnectWise] List the screens a user-defined (custom) field can be placed on (new in 2026.11). PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
My Recent Items
cw_list_my_recent_items details
cw_list_my_recent_items details
[ConnectWise] List the recent items of the logged-in member (new in 2026.11). Over the API the logged-in member is the integration's API member, not a person. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_upsert_my_recent_item details
cw_upsert_my_recent_item details
[ConnectWise] Add or refresh an entry on the logged-in member's recent-items list (new in 2026.11). Over the API that member is the integration's API member. ConnectWise keeps at most 30 per item type and trims the oldest. recId must be the target record's id and greater than zero.
Workflow Trigger Catalog
cw_list_workflow_table_type_trigger_options details
cw_list_workflow_table_type_trigger_options details
[ConnectWise] List the value options for one workflow trigger of a table type (new in 2026.11), the choices the workflow editor offers for that trigger. As with the trigger catalog, page and pageSize are omitted unless you pass them.
cw_list_workflow_table_type_triggers details
cw_list_workflow_table_type_triggers details
[ConnectWise] List the triggers a workflow can use for one table type (new in 2026.11), the catalog the workflow editor shows. ConnectWise answers the WHOLE catalog only when no page size is sent, so page and pageSize are omitted unless you pass them. Refine with srBoardRecId, ownerLevelRecId and billingUnitRecId.
cw_test_workflow_draft details
cw_test_workflow_draft details
[ConnectWise] Test a workflow definition without saving it (new in 2026.11): ConnectWise evaluates the draft's conditions and returns the rows that would match, with a total count. A POST that is documented to answer matches only; that it runs none of the workflow's actions is read from the schema, not yet observed live.
Knowledge Base Setup
cw_count_knowledge_base_categories details
cw_count_knowledge_base_categories details
[ConnectWise] Count knowledge base categories. Returns ConnectWise's own {"count":N}.
cw_count_knowledge_base_sub_categories details
cw_count_knowledge_base_sub_categories details
[ConnectWise] Count knowledge base sub categories. Returns ConnectWise's own {"count":N}.
cw_create_kb_category details
cw_create_kb_category details
[ConnectWise] Create a knowledge base category. Returns the created record with its ID. The body is ConnectWise's KnowledgeBaseCategory object.
cw_create_kb_subcategory details
cw_create_kb_subcategory details
[ConnectWise] Create a knowledge base subcategory. Returns the created record with its ID. The body is ConnectWise's KnowledgeBaseSubCategory object.
cw_delete_kb_article details
cw_delete_kb_article details
[ConnectWise] DESTRUCTIVE: permanently delete a knowledge base article. This cannot be undone.
cw_delete_kb_category details
cw_delete_kb_category details
[ConnectWise] DESTRUCTIVE: permanently delete a knowledge base category. This cannot be undone.
cw_delete_kb_subcategory details
cw_delete_kb_subcategory details
[ConnectWise] DESTRUCTIVE: permanently delete a knowledge base subcategory. This cannot be undone. Check where it is used with cw_get_kb_subcategory_usages first.
cw_get_kb_category details
cw_get_kb_category details
cw_get_kb_subcategory details
cw_get_kb_subcategory details
cw_get_kb_subcategory_usages details
cw_get_kb_subcategory_usages details
[ConnectWise] Show where a knowledge base subcategory is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_list_kb_subcategory_usages details
cw_list_kb_subcategory_usages details
[ConnectWise] List the individual records that use a knowledge base subcategory. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_kb_article details
cw_replace_kb_article details
[ConnectWise] DESTRUCTIVE: replace a knowledge base article wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back.
cw_replace_kb_category details
cw_replace_kb_category details
[ConnectWise] DESTRUCTIVE: replace a knowledge base category wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_kb_category to change single fields.
cw_replace_kb_subcategory details
cw_replace_kb_subcategory details
[ConnectWise] DESTRUCTIVE: replace a knowledge base subcategory wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_kb_subcategory to change single fields.
cw_update_kb_category details
cw_update_kb_category details
[ConnectWise] Update a knowledge base category with JSON Patch operations. Returns the updated record.
cw_update_kb_subcategory details
cw_update_kb_subcategory details
[ConnectWise] Update a knowledge base subcategory with JSON Patch operations. Returns the updated record.
SLAs & Priorities
cw_count_priorities details
cw_count_priorities details
[ConnectWise] Count priorities. Returns ConnectWise's own {"count":N}.
cw_count_sla_priorities details
cw_count_sla_priorities details
[ConnectWise] Count SLA priorities on an SLA. Returns ConnectWise's own {"count":N}.
cw_count_slas details
cw_count_slas details
[ConnectWise] Count SLAs. Returns ConnectWise's own {"count":N}.
cw_count_slas_info details
cw_count_slas_info details
[ConnectWise] Count SLAs (the info shape). Returns ConnectWise's own {"count":N}.
cw_create_priority details
cw_create_priority details
[ConnectWise] Create a priority. Returns the created record with its ID. The body is ConnectWise's Priority object.
cw_create_sla details
cw_create_sla details
[ConnectWise] Create an SLA. Returns the created record with its ID. The body is ConnectWise's SLA object.
cw_create_sla_priority details
cw_create_sla_priority details
[ConnectWise] Create an SLA priority on an SLA. Returns the created record with its ID. The body is ConnectWise's SLAPriority object.
cw_delete_priority details
cw_delete_priority details
[ConnectWise] DESTRUCTIVE: permanently delete a priority. This cannot be undone. Check where it is used with cw_get_priority_usages first.
cw_delete_sla details
cw_delete_sla details
[ConnectWise] DESTRUCTIVE: permanently delete an SLA. This cannot be undone. Check where it is used with cw_get_sla_usages first.
cw_delete_sla_priority details
cw_delete_sla_priority details
[ConnectWise] DESTRUCTIVE: permanently delete an SLA priority on an SLA. This cannot be undone.
cw_get_priority_usages details
cw_get_priority_usages details
[ConnectWise] Show where a priority is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_sla_info details
cw_get_sla_info details
cw_get_sla_priority details
cw_get_sla_priority details
cw_get_sla_usages details
cw_get_sla_usages details
[ConnectWise] Show where an SLA is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_list_priority_usages details
cw_list_priority_usages details
[ConnectWise] List the individual records that use a priority. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_sla_usages details
cw_list_sla_usages details
[ConnectWise] List the individual records that use an SLA. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_slas_info details
cw_list_slas_info details
[ConnectWise] List SLAs in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_priority details
cw_replace_priority details
[ConnectWise] DESTRUCTIVE: replace a priority wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_priority to change single fields.
cw_replace_sla details
cw_replace_sla details
[ConnectWise] DESTRUCTIVE: replace an SLA wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_sla to change single fields.
cw_replace_sla_priority details
cw_replace_sla_priority details
[ConnectWise] DESTRUCTIVE: replace an SLA priority on an SLA wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_sla_priority to change single fields.
cw_update_priority details
cw_update_priority details
[ConnectWise] Update a priority with JSON Patch operations. Returns the updated record.
cw_update_sla details
cw_update_sla details
[ConnectWise] Update an SLA with JSON Patch operations. Returns the updated record.
cw_update_sla_priority details
cw_update_sla_priority details
[ConnectWise] Update an SLA priority on an SLA with JSON Patch operations. Returns the updated record.
Service Board Setup
cw_count_board_items details
cw_count_board_items details
[ConnectWise] Count board items on a service board. Returns ConnectWise's own {"count":N}.
cw_count_board_statuses details
cw_count_board_statuses details
[ConnectWise] Count board statuses on a service board. Returns ConnectWise's own {"count":N}.
cw_count_board_statuses_info details
cw_count_board_statuses_info details
[ConnectWise] Count board statuses on a service board (the info shape). Returns ConnectWise's own {"count":N}.
cw_count_board_subtypes details
cw_count_board_subtypes details
[ConnectWise] Count board subtypes on a service board. Returns ConnectWise's own {"count":N}.
cw_count_board_subtypes_info details
cw_count_board_subtypes_info details
[ConnectWise] Count board subtypes on a service board (the info shape). Returns ConnectWise's own {"count":N}.
cw_count_board_types details
cw_count_board_types details
[ConnectWise] Count board types on a service board. Returns ConnectWise's own {"count":N}.
cw_count_boards details
cw_count_boards details
[ConnectWise] Count boards. Returns ConnectWise's own {"count":N}.
cw_count_service_board_teams details
cw_count_service_board_teams details
[ConnectWise] Count service board teams on a service board. Returns ConnectWise's own {"count":N}.
cw_count_service_board_teams_info details
cw_count_service_board_teams_info details
[ConnectWise] Count service board teams on a service board (the info shape). Returns ConnectWise's own {"count":N}.
cw_create_board details
cw_create_board details
[ConnectWise] Create a board. Returns the created record with its ID. The body is ConnectWise's Board object.
cw_create_board_item details
cw_create_board_item details
[ConnectWise] Create a board item on a service board. Returns the created record with its ID. The body is ConnectWise's BoardItem object.
cw_create_board_status details
cw_create_board_status details
[ConnectWise] Create a board status on a service board. Returns the created record with its ID. The body is ConnectWise's BoardStatus object.
cw_create_board_subtype details
cw_create_board_subtype details
[ConnectWise] Create a board subtype on a service board. Returns the created record with its ID. The body is ConnectWise's BoardSubType object.
cw_create_board_type details
cw_create_board_type details
[ConnectWise] Create a board type on a service board. Returns the created record with its ID. The body is ConnectWise's BoardType object.
cw_create_service_board_team details
cw_create_service_board_team details
[ConnectWise] Create a service board team on a service board. Returns the created record with its ID. The body is ConnectWise's BoardTeam object.
cw_delete_board details
cw_delete_board details
[ConnectWise] DESTRUCTIVE: permanently delete a board. This cannot be undone. Check where it is used with cw_get_board_usages first.
cw_delete_board_item details
cw_delete_board_item details
[ConnectWise] DESTRUCTIVE: permanently delete a board item on a service board. This cannot be undone. Check where it is used with cw_get_board_item_usages first.
cw_delete_board_status details
cw_delete_board_status details
[ConnectWise] DESTRUCTIVE: permanently delete a board status on a service board. This cannot be undone. Check where it is used with cw_get_board_status_usages first.
cw_delete_board_subtype details
cw_delete_board_subtype details
[ConnectWise] DESTRUCTIVE: permanently delete a board subtype on a service board. This cannot be undone. Check where it is used with cw_get_board_subtype_usages first.
cw_delete_board_type details
cw_delete_board_type details
[ConnectWise] DESTRUCTIVE: permanently delete a board type on a service board. This cannot be undone. Check where it is used with cw_get_board_type_usages first.
cw_delete_service_board_team details
cw_delete_service_board_team details
[ConnectWise] DESTRUCTIVE: permanently delete a service board team on a service board. This cannot be undone.
cw_get_board_item details
cw_get_board_item details
cw_get_board_item_usages details
cw_get_board_item_usages details
[ConnectWise] Show where a board item is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_board_status details
cw_get_board_status details
cw_get_board_status_info details
cw_get_board_status_info details
cw_get_board_status_usages details
cw_get_board_status_usages details
[ConnectWise] Show where a board status is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_board_subtype details
cw_get_board_subtype details
cw_get_board_subtype_info details
cw_get_board_subtype_info details
cw_get_board_subtype_usages details
cw_get_board_subtype_usages details
[ConnectWise] Show where a board subtype is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_board_type details
cw_get_board_type details
cw_get_board_type_usages details
cw_get_board_type_usages details
[ConnectWise] Show where a board type is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_board_usages details
cw_get_board_usages details
[ConnectWise] Show where a board is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_service_board_team details
cw_get_service_board_team details
cw_get_service_board_team_info details
cw_get_service_board_team_info details
cw_list_board_item_usages details
cw_list_board_item_usages details
[ConnectWise] List the individual records that use a board item. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_status_usages details
cw_list_board_status_usages details
[ConnectWise] List the individual records that use a board status. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_statuses_info details
cw_list_board_statuses_info details
[ConnectWise] List board statuses on a service board in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_subtype_usages details
cw_list_board_subtype_usages details
[ConnectWise] List the individual records that use a board subtype. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_subtypes_info details
cw_list_board_subtypes_info details
[ConnectWise] List board subtypes on a service board in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_type_usages details
cw_list_board_type_usages details
[ConnectWise] List the individual records that use a board type. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_board_usages details
cw_list_board_usages details
[ConnectWise] List the individual records that use a board. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_service_board_team_usages details
cw_list_service_board_team_usages details
[ConnectWise] List the individual records that use a service board team. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_service_board_teams_info details
cw_list_service_board_teams_info details
[ConnectWise] List service board teams on a service board in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_board details
cw_replace_board details
[ConnectWise] DESTRUCTIVE: replace a board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_board to change single fields.
cw_replace_board_item details
cw_replace_board_item details
[ConnectWise] DESTRUCTIVE: replace a board item on a service board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_board_item to change single fields.
cw_replace_board_status details
cw_replace_board_status details
[ConnectWise] DESTRUCTIVE: replace a board status on a service board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_board_status to change single fields.
cw_replace_board_subtype details
cw_replace_board_subtype details
[ConnectWise] DESTRUCTIVE: replace a board subtype on a service board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_board_subtype to change single fields.
cw_replace_board_type details
cw_replace_board_type details
[ConnectWise] DESTRUCTIVE: replace a board type on a service board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_board_type to change single fields.
cw_replace_service_board_team details
cw_replace_service_board_team details
[ConnectWise] DESTRUCTIVE: replace a service board team on a service board wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_board_team to change single fields.
cw_update_board details
cw_update_board details
[ConnectWise] Update a board with JSON Patch operations. Returns the updated record.
cw_update_board_item details
cw_update_board_item details
[ConnectWise] Update a board item on a service board with JSON Patch operations. Returns the updated record.
cw_update_board_status details
cw_update_board_status details
[ConnectWise] Update a board status on a service board with JSON Patch operations. Returns the updated record.
cw_update_board_subtype details
cw_update_board_subtype details
[ConnectWise] Update a board subtype on a service board with JSON Patch operations. Returns the updated record.
cw_update_board_type details
cw_update_board_type details
[ConnectWise] Update a board type on a service board with JSON Patch operations. Returns the updated record.
cw_update_service_board_team details
cw_update_service_board_team details
[ConnectWise] Update a service board team on a service board with JSON Patch operations. Returns the updated record.
Service Setup Tables
cw_count_impacts details
cw_count_impacts details
[ConnectWise] Count impacts. Returns ConnectWise's own {"count":N}.
cw_count_service_codes details
cw_count_service_codes details
[ConnectWise] Count service codes. Returns ConnectWise's own {"count":N}.
cw_count_service_locations details
cw_count_service_locations details
[ConnectWise] Count service locations. Returns ConnectWise's own {"count":N}.
cw_count_service_locations_info details
cw_count_service_locations_info details
[ConnectWise] Count service locations (the info shape). Returns ConnectWise's own {"count":N}.
cw_count_service_sources details
cw_count_service_sources details
[ConnectWise] Count service sources. Returns ConnectWise's own {"count":N}.
cw_count_service_sources_info details
cw_count_service_sources_info details
[ConnectWise] Count service sources (the info shape). Returns ConnectWise's own {"count":N}.
cw_count_severities details
cw_count_severities details
[ConnectWise] Count severities. Returns ConnectWise's own {"count":N}.
cw_create_service_code details
cw_create_service_code details
[ConnectWise] Create a service code. Returns the created record with its ID. The body is ConnectWise's Code object.
cw_create_service_location details
cw_create_service_location details
[ConnectWise] Create a service location. Returns the created record with its ID. The body is ConnectWise's ServiceLocation object.
cw_create_service_source details
cw_create_service_source details
[ConnectWise] Create a service source. Returns the created record with its ID. The body is ConnectWise's Source object.
cw_delete_service_code details
cw_delete_service_code details
[ConnectWise] DESTRUCTIVE: permanently delete a service code. This cannot be undone.
cw_delete_service_location details
cw_delete_service_location details
[ConnectWise] DESTRUCTIVE: permanently delete a service location. This cannot be undone. Check where it is used with cw_get_service_location_usages first.
cw_delete_service_source details
cw_delete_service_source details
[ConnectWise] DESTRUCTIVE: permanently delete a service source. This cannot be undone. Check where it is used with cw_get_service_source_usages first.
cw_get_impact details
cw_get_impact details
cw_get_service_code details
cw_get_service_code details
cw_get_service_location details
cw_get_service_location details
cw_get_service_location_info details
cw_get_service_location_info details
cw_get_service_location_usages details
cw_get_service_location_usages details
[ConnectWise] Show where a service location is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_service_source details
cw_get_service_source details
cw_get_service_source_info details
cw_get_service_source_info details
cw_get_service_source_usages details
cw_get_service_source_usages details
[ConnectWise] Show where a service source is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_get_severity details
cw_get_severity details
cw_list_service_location_usages details
cw_list_service_location_usages details
[ConnectWise] List the individual records that use a service location. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_service_locations_info details
cw_list_service_locations_info details
[ConnectWise] List service locations in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_service_source_usages details
cw_list_service_source_usages details
[ConnectWise] List the individual records that use a service source. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_service_sources_info details
cw_list_service_sources_info details
[ConnectWise] List service sources in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_impact details
cw_replace_impact details
[ConnectWise] DESTRUCTIVE: replace an impact wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_impact to change single fields.
cw_replace_service_code details
cw_replace_service_code details
[ConnectWise] DESTRUCTIVE: replace a service code wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_code to change single fields.
cw_replace_service_location details
cw_replace_service_location details
[ConnectWise] DESTRUCTIVE: replace a service location wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_location to change single fields.
cw_replace_service_source details
cw_replace_service_source details
[ConnectWise] DESTRUCTIVE: replace a service source wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_source to change single fields.
cw_replace_severity details
cw_replace_severity details
[ConnectWise] DESTRUCTIVE: replace a severity wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_severity to change single fields.
cw_update_impact details
cw_update_impact details
[ConnectWise] Update an impact with JSON Patch operations. Returns the updated record.
cw_update_service_code details
cw_update_service_code details
[ConnectWise] Update a service code with JSON Patch operations. Returns the updated record.
cw_update_service_location details
cw_update_service_location details
[ConnectWise] Update a service location with JSON Patch operations. Returns the updated record.
cw_update_service_source details
cw_update_service_source details
[ConnectWise] Update a service source with JSON Patch operations. Returns the updated record.
cw_update_severity details
cw_update_severity details
[ConnectWise] Update a severity with JSON Patch operations. Returns the updated record.
Service Surveys
cw_count_service_survey_results details
cw_count_service_survey_results details
[ConnectWise] Count service survey results on a survey. Returns ConnectWise's own {"count":N}.
cw_count_service_surveys details
cw_count_service_surveys details
[ConnectWise] Count service surveys. Returns ConnectWise's own {"count":N}.
cw_create_service_survey details
cw_create_service_survey details
[ConnectWise] Create a service survey. Returns the created record with its ID. The body is ConnectWise's ServiceSurvey object.
cw_create_service_survey_result details
cw_create_service_survey_result details
[ConnectWise] Create a service survey result on a survey. Returns the created record with its ID. The body is ConnectWise's SurveyResult object.
cw_delete_service_survey details
cw_delete_service_survey details
[ConnectWise] DESTRUCTIVE: permanently delete a service survey. This cannot be undone. Check where it is used with cw_get_service_survey_usages first.
cw_delete_service_survey_result details
cw_delete_service_survey_result details
[ConnectWise] DESTRUCTIVE: permanently delete a service survey result on a survey. This cannot be undone.
cw_get_service_survey details
cw_get_service_survey details
cw_get_service_survey_result details
cw_get_service_survey_result details
cw_get_service_survey_usages details
cw_get_service_survey_usages details
[ConnectWise] Show where a service survey is used: the record types that reference it and how many of each. Check this before deleting or renaming it.
cw_list_service_survey_usages details
cw_list_service_survey_usages details
[ConnectWise] List the individual records that use a service survey. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_service_survey details
cw_replace_service_survey details
[ConnectWise] DESTRUCTIVE: replace a service survey wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_survey to change single fields.
cw_replace_service_survey_result details
cw_replace_service_survey_result details
[ConnectWise] DESTRUCTIVE: replace a service survey result on a survey wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_survey_result to change single fields.
cw_update_service_survey details
cw_update_service_survey details
[ConnectWise] Update a service survey with JSON Patch operations. Returns the updated record.
cw_update_service_survey_result details
cw_update_service_survey_result details
[ConnectWise] Update a service survey result on a survey with JSON Patch operations. Returns the updated record.
Service Template Records
cw_count_service_templates details
cw_count_service_templates details
[ConnectWise] Count service templates. Returns ConnectWise's own {"count":N}.
cw_count_service_templates_info details
cw_count_service_templates_info details
[ConnectWise] Count service templates (the info shape). Returns ConnectWise's own {"count":N}.
cw_create_service_template details
cw_create_service_template details
[ConnectWise] Create a service template. Returns the created record with its ID. The body is ConnectWise's ServiceTemplate object.
cw_delete_service_template details
cw_delete_service_template details
[ConnectWise] DESTRUCTIVE: permanently delete a service template. This cannot be undone.
cw_get_service_template_info details
cw_get_service_template_info details
cw_list_service_templates_info details
cw_list_service_templates_info details
[ConnectWise] List service templates in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_replace_service_template details
cw_replace_service_template details
[ConnectWise] DESTRUCTIVE: replace a service template wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_service_template to change single fields.
cw_update_service_template details
cw_update_service_template details
[ConnectWise] Update a service template with JSON Patch operations. Returns the updated record.
Company Group Memberships
cw_count_company_group_memberships details
cw_count_company_group_memberships details
[ConnectWise] Count company group memberships on a company. Returns ConnectWise's own {"count":N}.
cw_create_company_group_membership details
cw_create_company_group_membership details
[ConnectWise] Create a company group membership on a company. Returns the created record with its ID. The body is ConnectWise's CompanyGroup object.
cw_delete_company_group_membership details
cw_delete_company_group_membership details
[ConnectWise] DESTRUCTIVE: permanently delete a company group membership on a company. This cannot be undone.
cw_get_company_group_membership details
cw_get_company_group_membership details
cw_replace_company_group_membership details
cw_replace_company_group_membership details
[ConnectWise] DESTRUCTIVE: replace a company group membership on a company wholesale (PUT). Why this is destructive: every field you leave out is reset, not kept. Read the record first and send the whole object back. Use cw_update_company_group_membership to change single fields.
cw_update_company_group_membership details
cw_update_company_group_membership details
[ConnectWise] Update a company group membership on a company with JSON Patch operations. Returns the updated record.
Company Info & Defaults
cw_count_companies_info details
cw_count_companies_info details
[ConnectWise] Count companies (the info shape). Returns ConnectWise's own {"count":N}.
cw_count_company_info_types details
cw_count_company_info_types details
[ConnectWise] Count company info types. Returns ConnectWise's own {"count":N}.
cw_get_company_info_type details
cw_get_company_info_type details
cw_get_default_company details
cw_get_default_company details
cw_list_companies_info details
cw_list_companies_info details
[ConnectWise] List companies in ConnectWise's lightweight info shape: ids, names and flags, cheaper than the full records. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
cw_list_company_info_types details
cw_list_company_info_types details
[ConnectWise] List company info types. PAGINATED: 50 per page by default, 200 maximum; use page for later pages and conditions to narrow.
Company Management Reports
cw_count_company_management_report_notifications details
cw_count_company_management_report_notifications details
[ConnectWise] Count company management report notifications on a company. Returns ConnectWise's own {"count":N}.
cw_count_company_management_summary_reports details
cw_count_company_management_summary_reports details
[ConnectWise] Count company management summary reports on a company. Returns ConnectWise's own {"count":N}.
cw_create_company_management_report_notification details
cw_create_company_management_report_notification details
[ConnectWise] DESTRUCTIVE: create a company management report notification on a company. Why this is destructive: it decides who is e-mailed or notified, and when. Returns the created record with its ID. The body is ConnectWise's ManagementReportNotification object.
cw_create_company_management_report_setup details
cw_create_company_management_report_setup details
[ConnectWise] Create a company management report setup on a company. Returns the created record with its ID. The body is ConnectWise's ManagementReportSetup object.
cw_create_company_management_summary_report details
cw_create_company_management_summary_report details
[ConnectWise] Create a company management summary report on a company. Returns the created record with its ID. The body is ConnectWise's CompanyManagementSummary object.
cw_delete_company_management_report_notification details
cw_delete_company_management_report_notification details
[ConnectWise] DESTRUCTIVE: permanently delete a company management report notification on a company. This cannot be undone.
cw_delete_company_management_summary_report details
cw_delete_company_management_summary_report details
[ConnectWise] DESTRUCTIVE: permanently delete a company management summary report on a company. This cannot be undone.
cw_get_company_management_report_notification details
cw_get_company_management_report_notification details
More in Tools Reference
Atera ToolsAuvik ToolsAvanan (Check Point Harmony Email) ToolsConnectWise Sell ToolsStill need help? Ask the team