SnipeitPS/SnipeitPS/Public/Set-SnipeitCompany.ps1
2021-07-08 23:59:31 +03:00

79 lines
1.5 KiB
PowerShell

<#
.SYNOPSIS
Updates company name
.DESCRIPTION
Updates companyt name on Snipe-It system
.PARAMETER id
ID number of company
.PARAMETER name
Company name
.PARAMETER image
Image file name and path for item
.PARAMETER image_delete
Remove current image
.PARAMETER url
URL of Snipeit system, can be set using Set-SnipeitInfo command
.PARAMETER apiKey
User's API Key for Snipeit, can be set using Set-SnipeitInfo command
.EXAMPLE
An example
.NOTES
General notes
#>
function Set-SnipeitCompany()
{
[CmdletBinding(
SupportsShouldProcess = $true,
ConfirmImpact = "Medium"
)]
Param(
[parameter(mandatory = $true,ValueFromPipelineByPropertyName)]
[int[]]$id,
[parameter(mandatory = $true)]
[string]$name,
[ValidateScript({Test-Path $_})]
[string]$image,
[switch]$image_delete=$false,
[parameter(mandatory = $true)]
[string]$url,
[parameter(mandatory = $true)]
[string]$apiKey
)
begin{
$Values = . Get-ParameterValue -Parameters $MyInvocation.MyCommand.Parameters -BoundParameters $PSBoundParameters
}
process{
foreach($company_id in $id){
$Parameters = @{
Uri = "$url/api/v1/companies/$company_id"
Method = 'Patch'
Body = $Values
Token = $apiKey
}
If ($PSCmdlet.ShouldProcess("ShouldProcess?"))
{
$result = Invoke-SnipeitMethod @Parameters
}
$result
}
}
}