/ConnectWisePSModule

PowerShell Module that provide several CmdLets to interact with ConnectWise REST API service.

Primary LanguagePowerShell

#Readme

Collection of PowerShell CmdLet that interface with ConnectWise's REST API service. This project is meant to target the latest general releases of PowerShell and ConnectWise.

##Version 1.0.0 Milestones Milestone Requirement: Create the minimum required CmdLets that is needed to get, create, update, and delete a ConnectWise ticket.

  1. Get-CWServiceTicket -- Completed
  2. Remove-CWServiceTicket
  3. Get-CWServiceBoard -- Completed
  4. Get-CWServiceBoardStatus -- Completed
  5. Get-CWServicePriority -- Completed (Not Tested)
  6. New-CWServiceTicket
  7. Update-CWServiceTicket

##CmdLets Overview

  • ConnectWise Service Tickets

    • Get-CWServiceTicket
      • Use Case: Gets ticket(s) via the ticket number, array of ticket numbers, or query.
      • Features
        • Request for specific CW ticket fields (ie id, summary, etc).
        • Accepted ticket ids via the pipe.
    • Add-CWServiceTicket
      • Not Implemented Yet
    • Remove-CWServiceTicket
      • Not Implemented Yet
    • Update-CWServiceTicket
      • Not Implemented Yet
  • ConnectWise Service Boards

    • Get-CWServiceBoard
      • Use Case: Gets board(s) via the board number, array of board numbers, or query.
      • Features
        • Request for specific CW board fields (ie id, summary, etc).
        • Accepted board ids via the pipe.

#Requirements

  • PowerShell 5.0
  • ConnectWise Server v2015.3 or Newer
  • CW Member's Public and Private API Key
  • ConnectWise Service's Base URL for API Request

#Example

###Import Module for the current PS Session 0. Download or Clone this Repository

  • Or Download Only the ConnectWisePSModule.psm1 Module File
  1. Open PowerShell
  2. Import the Module (.psm1) within the scr Directory
    • Import-Module "C:\Path\To\ConnectWisePSModule\scr\ConnectWisePSModule.psm1" -Force;
  3. CmdLets are Imported and Ready to Use

Get ConnectWise Ticket

  1. Open PS and Import Module (see above)
  2. Execute in PowerShell:
    • Get-CWServiceTicket -TicketID 1234567 -BaseApiUrl "https://TechInUrPocket.example.com/v4_6_Release/apis/3.0" -CompanyName "TechInUrPocket" -PublicKey 'Pub1icK3yH3r3' -PrivateKey 'Pri@t3K3yH3r3';

#Extra Information

  • There is no module manifest until initial v1.0.0 milestones are meet.
  • The pester Directory Stores the Unit Test Scripts
  • Documented Architecture of the Dependent PS Classes
    • It is not required to read or understand it to use PowerShell CmdLets.
    • Its target is future contributors to this project.