# Définir l'URL de l'API
$apiUrl = "https://localhost/action/delperm"

# Définir les données du dépôt à obtenir
$repoName = "REPONAME"  # Remplace par le nom du dépôt que tu souhaites obtenir
$user = "USERNAME"     # Remplace par le nom de l'utilisateur à supprimer
$apiKey = "TOKEN"  # Remplace par ta clé API si nécessaire

# Créer les données à envoyer dans le corps de la requête
$body = @{
    repoName = $repoName
    user = $user
}

# Convertir les données en JSON
$jsonBody = $body | ConvertTo-Json

# Ignorer les erreurs de certificat SSL non valide si nécessaire
# Ajout d'un type uniquement si nécessaire
if (-not [System.Type]::GetType("TrustAllCertsPolicy")) {
    $typeDefinition = @"
        using System.Net;
        using System.Security.Cryptography.X509Certificates;
        public class TrustAllCertsPolicy : ICertificatePolicy {
            public bool CheckValidationResult(
                ServicePoint srvPoint, X509Certificate certificate,
                WebRequest request, int certificateProblem) {
                    return true;
                }
        }
"@

    Add-Type -TypeDefinition $typeDefinition
    [System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
}

# Envoyer la requête POST à l'API
try {
    $response = Invoke-RestMethod -Uri $apiUrl -Method Post -Body $jsonBody -ContentType "application/json" -Headers @{ "x-api-key" = $apiKey }
    
    # Afficher la réponse de l'API
    $response | Format-List
} catch {
    Write-Host "Erreur lors de l'appel à l'API : $_"
}
