Skip to content
This repository has been archived by the owner on Aug 5, 2021. It is now read-only.
/ PSConnectWise Public archive
forked from sgtoj/PSConnectWise

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

License

Notifications You must be signed in to change notification settings

Xantrion/PSConnectWise

 
 

Repository files navigation

Looking for Someone to Take Ownership of this Project

PSConnectWise

Collection of PowerShell functions that interface with ConnectWise's REST API service. This project is meant to target the latest general releases of PowerShell (i.e. PS v5.0) and ConnectWise.

Functions

Goal of the version of v1.0 was to create the minimum required PowerShell functions that is needed to properly create, read, update, and delete a ConnectWise ticket. While doing so, develop a core that will easly allow for future functions to be added.

Service Module
  1. Get-CWServiceTicket
  2. New-CWServiceTicket
  3. Update-CWServiceTicket
  4. Remove-CWServiceTicket
  5. Get-CWServiceBoard
  6. Get-CWServiceBoardStatus
  7. Get-CWServiceBoardType
  8. Get-CWServiceBoardSubtype
  9. Get-CWServicePriority
  10. Get-CWServiceTicketNote
  11. Add-CWServiceTicketNote
Company Module
  1. Get-CWCompany
  2. Get-CWCompanyContact
TimeEntry Module
  1. Get-CWTimeEntry
  2. Add-CWTimeEntry
  3. Update-CWTimeEntry
  4. Remove-CWTimeEntry
System Module
  1. Get-CWSystemMember
  2. Set-CWSession
  3. Test-CWSession

Requirements

  • PowerShell 5.0
  • ConnectWise Server v2015.3 or Newer
  • CW Member's Public and Private API Key
  • FQDN to the ConnectWise (API) Server
    • On permise CW server and CW API server are the same.
    • Cloud based CW server and CW API server are not the same.

Import Module to PS Session

  1. Download or Clone this Repository
  2. Open PowerShell
  3. Import the Module (.psm1) within the PSConnectWise Directory
    • Import-Module "...\PSConnectWise\PSConnectWise\PSConnectWise.psm1" -Force;
  4. Functions are Imported and Ready to Use

Examples

Get ConnectWise Ticket

Execute
$CWSession = Set-CWSession -Domain 'TechInUrPocket.example.com' -CompanyName 'TechInUrPocket' -PublicKey '...' -PrivateKey '...';`
Get-CWServiceTicket -ID 1234567 -Session $CWSession;  # Session parameter and value not required
Returns
id                         : 1234567
summary                    : My Computer is Broken
recordType                 : ServiceTicket
board                      : @{id=1; name=BreakFix; _info=}
status                     : @{id=1; name=New; _info=}
... 

Contributing

See the Contributing Documentation

Extra Information

  • This module (v1.0) is still under development.
  • Test Directory Stores the Unit Test Scripts for Pester.
  • Documented Architecture of the Dependent PS Classes
    • It is not required to read or understand it to use PowerShell function.
    • Its target is future contributors to this project.

License

MIT

About

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PowerShell 100.0%