SingleScripts/Install-Library.ps1

[CmdletBinding()]
Param(
  [Parameter(Mandatory=$true,Position=1)] [string] $DBAPIRootUrl,
  [Parameter(Mandatory=$True,Position=2)] [string] $DBAPIKey,
  [Parameter(Mandatory=$True,Position=3)] [string] $ClusterID,
  [Parameter(Mandatory=$True,Position=3)] [st] $LibraryToinstall

)
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
$headers = @{
  Authorization = "Bearer $DBAPIKey"
  "Content-Type" = "application/json"
}

$LibraryAPIInstallUrl = $DBAPIRootUrl.Trim('/') + "/api/2.0/libraries/install"

$package = @{
  "package" = $LibraryToinstall
}

$pypiPackages = @{"pypi" = $package }
$libraries = @()
$libraries += $pypiPackages

$islibraryforallclusters = $true
$parameters = @{
  cluster_id = $ClusterID
  libraries = $libraries
  is_library_for_all_clusters = $islibraryforallclusters
} | ConvertTo-Json -Depth 50

$result = Invoke-RestMethod -Uri $LibraryAPIInstallUrl -Method POST -Headers $headers -Body $parameters

$result