Private/Output/2.3/ServiceNow-CS.psm1

#Region '.\Private\Add-ServiceNow.ps1' 0
function add-servicenow($table,$body,$sntenant,$snuser,$snpass){
    
    # Build auth header
    $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))

    $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $headers.Add('Authorization',('Basic {0}' -f $base64AuthInfo))
    $headers.Add('Accept','application/json')
    $headers.Add('Content-Type','application/json')
 
    # Specify endpoint uri
    $uri = "https://$sntenant.service-now.com/api/now/table/$table"


    # Send HTTP request
    $response = Invoke-WebRequest -Headers $headers -Method post -Uri $uri -Body $body

}

#EndRegion '.\Private\Add-ServiceNow.ps1' 19
#Region '.\Private\Get-ServiceNow.ps1' 0
function get-servicenow ([String]$query,[String]$table,[String]$sntenant,$snuser,$snpass) {
  
    $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))
     
    $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $headers.Add('Authorization',('Basic {0}' -f "$base64AuthInfo"))
    $headers.Add('Accept','application/json')
    $headers.Add('Content-Type','application/json')

    $uri = "https://$sntenant.service-now.com/api/now/table/$table" + "?sysparm_query=$query"

    # Specify HTTP method
  
    $response = (Invoke-WebRequest -Headers $headers -Method get -Uri $uri).content  | ConvertFrom-Json | select -expand result
    return $response 
}


#EndRegion '.\Private\Get-ServiceNow.ps1' 18
#Region '.\Private\Update-ServiceNow.ps1' 0
function update-servicenow($sys_id,$body,$table,$sntenant,$snuser,$snpass) {

# Build auth header
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))

# Set proper headers
$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add('Authorization',('Basic {0}' -f $base64AuthInfo))
$headers.Add('Accept','application/json')
$headers.Add('Content-Type','application/json')

# Specify endpoint uri
$uri = "https://$sntenant.service-now.com/api/now/table/$table/$sys_id"

# Specify HTTP method
$method = "patch"

# Specify request body

$response = Invoke-WebRequest -Headers $headers -Method $method -Uri $uri -Body $body

}

#EndRegion '.\Private\Update-ServiceNow.ps1' 23
#Region '.\Public\Add-ServiceNow.ps1' 0
function add-servicenow($table,$body,$sntenant,$snuser,$snpass){
    
    # Build auth header
    $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))

    $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $headers.Add('Authorization',('Basic {0}' -f $base64AuthInfo))
    $headers.Add('Accept','application/json')
    $headers.Add('Content-Type','application/json')
 
    # Specify endpoint uri
    $uri = "https://$sntenant.service-now.com/api/now/table/$table"


    # Send HTTP request
    $response = Invoke-WebRequest -Headers $headers -Method post -Uri $uri -Body $body

}

#EndRegion '.\Public\Add-ServiceNow.ps1' 19
#Region '.\Public\Get-ServiceNow.ps1' 0
function get-servicenow ([String]$query,[String]$table,[String]$sntenant,$snuser,$snpass) {
  
    $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))
     
    $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $headers.Add('Authorization',('Basic {0}' -f "$base64AuthInfo"))
    $headers.Add('Accept','application/json')
    $headers.Add('Content-Type','application/json')

    $uri = "https://$sntenant.service-now.com/api/now/table/$table" + "?sysparm_query=$query"

    # Specify HTTP method
  
    $response = (Invoke-WebRequest -Headers $headers -Method get -Uri $uri).content  | ConvertFrom-Json | select -expand result
    return $response 
}


#EndRegion '.\Public\Get-ServiceNow.ps1' 18
#Region '.\Public\Update-ServiceNow.ps1' 0
function update-servicenow($sys_id,$body,$table,$sntenant,$snuser,$snpass) {

# Build auth header
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $snuser, $snpass)))

# Set proper headers
$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add('Authorization',('Basic {0}' -f $base64AuthInfo))
$headers.Add('Accept','application/json')
$headers.Add('Content-Type','application/json')

# Specify endpoint uri
$uri = "https://$sntenant.service-now.com/api/now/table/$table/$sys_id"

# Specify HTTP method
$method = "patch"

# Specify request body

$response = Invoke-WebRequest -Headers $headers -Method $method -Uri $uri -Body $body

}

#EndRegion '.\Public\Update-ServiceNow.ps1' 23