public/git/Add-PSTSGitRepositoryImportRequest.ps1

function Add-PSTSGitRepositoryImportRequest
{
    param(
         [Parameter(Mandatory=$true)][string] $project,
         [Parameter(Mandatory=$true)][string] $repoName,
         [Parameter(Mandatory=$true)][string] $url,
         [Parameter(Mandatory=$true)][string] $serviceEndPointId

    )

    $id = $(Get-PSTSGitRepository -project $project | Where-Object {$_.name -eq $repoName} | Select-Object -ExpandProperty id )
    if ([String]::IsNullOrEmpty($id))
    {
        Write-Error "$repoName doesn't exist in $project !!"
        return 128
    }
    else
    {
        Write-Debug "$repoName exists in $project"
        [GitImportRequestParameters ] $gitImportRequestParameters  = [GitImportRequestParameters ]::new()
        $GitImportRequestParameters.deleteServiceEndpointAfterImportIsDone = $true
        $GitImportRequestParameters.gitSource = @{overwrite=$false; url="$url" }
        $GitImportRequestParameters.serviceEndpointId="$serviceEndPointId"
        $payload= New-Object -TypeName "PSObject"
        $payload |  Add-Member -MemberType NoteProperty "parameters" -Value $GitImportRequestParameters
        $content = `
        _PSTSAPI `
            -resource "git/repositories/$id/importRequests" `
            -method "POST" `
            -project $project `
            -repositoryId $id `
            -body $($payload| ConvertTo-Json )  `
            -contentType "application/json" `
            -apiVersion "api-version=5.2-preview.1"

        return [Object]$content
   }

}