> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell-universal/fr/commandes-powershell/new-psuendpoint.md).

# New-PSUEndpoint

New-PSUEndpoint crée un nouveau terminal d'API REST dans PowerShell Universal, en définissant son URL, ses méthodes HTTP, la logique de son script et ses rôles d'accès.

## SYNOPSIS

Crée un nouveau terminal d'API REST.

## SYNTAXE

### Endpoint

```
New-PSUEndpoint [-Method <String[]>] -Url <String> [-Description <String>] -Endpoint <ScriptBlock>
 [-Path <String>] [-Authentication] [-Role <String[]>] [-RegEx] [-Tag <Tag[]>] [-Timeout <Int32>]
 [-Environment <String>] [-PersistentLog] [-Documentation <String>] [-Module <String>] [-Command <String>]
 [-Credential <String>] [-ComputerGroup <String[]>] [-AvailableInBranch <String[]>] [-Disabled]
 [-ExecutionRole <String[]>] [-ComputerName <String>] [-AppToken <String>] [-UseDefaultCredentials]
 [-Integrated] [-TrustCertificate] [-Cookies] [<CommonParameters>]
```

### Path

```
New-PSUEndpoint [-Method <String[]>] -Url <String> [-Description <String>] -Path <String> [-Authentication]
 [-Role <String[]>] [-RegEx] [-Tag <Tag[]>] [-Timeout <Int32>] [-Environment <String>] [-PersistentLog]
 [-Documentation <String>] [-Module <String>] [-Command <String>] [-Credential <String>]
 [-ComputerGroup <String[]>] [-AvailableInBranch <String[]>] [-Disabled] [-ExecutionRole <String[]>]
 [-ComputerName <String>] [-AppToken <String>] [-UseDefaultCredentials] [-Integrated] [-TrustCertificate]
 [-Cookies] [<CommonParameters>]
```

### Module

```
New-PSUEndpoint [-Method <String[]>] -Url <String> [-Description <String>] [-Authentication] [-Role <String[]>]
 [-RegEx] [-Tag <Tag[]>] [-Timeout <Int32>] [-Environment <String>] [-PersistentLog] [-Documentation <String>]
 -Module <String> -Command <String> [-Credential <String>] [-ComputerGroup <String[]>]
 [-AvailableInBranch <String[]>] [-Disabled] [-ExecutionRole <String[]>] [-ComputerName <String>]
 [-AppToken <String>] [-UseDefaultCredentials] [-Integrated] [-TrustCertificate] [-Cookies]
 [<CommonParameters>]
```

## DESCRIPTION

Crée un nouveau terminal d'API REST.

Cette applet de commande est une applet de commande de configuration. Vous pouvez l'utiliser avec le système de configuration de PowerShell Universal ainsi qu'avec l'API de gestion de PowerShell Universal. Les terminaux sont stockés dans le fichier ./universal/endpoints.ps1.

## EXEMPLES

### Exemple 1

```
New-PSUEndpoint -Url "/hello" -Method GET -Endpoint {
    "Hello"
}
PS C:\> Invoke-RestMethod http://localhost:5000/hello
```

Crée un terminal d'API REST qui retourne « Hello » lorsque l'utilisateur l'appelle via la méthode HTTP GET.

### Exemple 2

```
New-PSUEndpoint -Url "/hello/:variable" -Method GET -Endpoint {
    $Variable
}

PS C:\> Invoke-RestMethod http://localhost:5000/hello/world
```

Crée une API REST qui utilise des variables. Les variables permettent aux utilisateurs de transmettre des données à l'API REST. Elles apparaîtront comme des variables PowerShell dans le bloc de script du terminal.

### Exemple 3

```
New-PSUEndpoint -Url "/hello/" -Method GET -Endpoint {
    "Hello authenticated user"
} -Authentication -Role 'Administrators'

PS C:\> Invoke-RestMethod http://localhost:5000/hello/world -Headers @{ Authorization = "Bearer appTokenGoesHere" }
```

Crée une API REST qui exige une authentification et une autorisation. Seuls les utilisateurs possédant un AppToken valide peuvent accéder à ce terminal, et uniquement les utilisateurs qui détiennent le rôle Administrators.

### Exemple 4

```
New-PSUEndpoint -Url "/hello/" -Method GET -Endpoint {
    "Hello user"
} -ComputerName http://localhost:5000 -AppToken 'appToken'

PS C:\> Invoke-RestMethod http://localhost:5000/hello/world -Headers @{ Authorization = "Bearer appTokenGoesHere" }
```

Crée une API REST à l'aide de l'API de gestion de PowerShell Universal. Lors de l'appel de l'API de gestion, vous devrez définir le nom de l'ordinateur et le jeton d'application pour appeler l'API avec succès.

## PARAMÈTRES

### -AppToken

Le AppToken utilisé pour appeler l'API de gestion de PowerShell Universal. Vous pouvez également appeler Connect-PSUServer avant d'appeler cette applet de commande afin de définir le AppToken pour toute la session.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Authentication

Indique si ce terminal exige une authentification. L'authentification nécessite une licence d'API.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -ComputerName

Spécifie le nom de l'ordinateur ou l'URL qui doit être appelé lors de l'accès à l'API de gestion de PowerShell Universal. Vous pouvez également utiliser Connect-PSUServer avant d'appeler cette applet de commande afin de définir le nom de l'ordinateur pour toute la session.

```yaml
Type: String
Parameter Sets: (All)
Aliases: Uri

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Endpoint

Le contenu du terminal. Il s'agit du script PowerShell qui sera appelé lorsque l'API REST est exécutée.

```yaml
Type: ScriptBlock
Parameter Sets: Endpoint
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Method

Les méthodes HTTP requises pour appeler ce terminal.

```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Accepted values: GET, POST, PUT, DELETE, OPTIONS

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -RegEx

Indique s'il faut traiter l'URL fournie comme une chaîne RegEx plutôt que comme une URL littérale.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -Role

Spécifie le rôle requis pour accéder à ce terminal. Le paramètre -Authentication doit également être spécifié lorsque le paramètre -Role est utilisé. Les rôles nécessitent une licence d'API.

```yaml
Type: String[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Url

L'URL du terminal. Cette URL peut être une expression RegEx si vous spécifiez le paramètre de commutateur -RegEx. Cette URL peut également contenir des variables en utilisant le préfixe deux-points (:).

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Description

Une description du terminal à afficher dans la console.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -UseDefaultCredentials

Utiliser les identifiants par défaut lors de la connexion à l'API de gestion

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Integrated

Exécute la commande en interne plutôt qu'en utilisant l'API de gestion. Fonctionne uniquement lors de l'exécution du script à partir de PowerShell Universal.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Tag

Étiquettes pour ce terminal.

```yaml
Type: Tag[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Timeout

Le délai d'expiration en secondes pour ce terminal d'API. 0 ou non défini signifie aucun délai d'expiration.

```yaml
Type: Int32
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Path

Le chemin vers un fichier PS1 contenant le contenu de ce terminal.

```yaml
Type: String
Parameter Sets: Endpoint
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

```yaml
Type: String
Parameter Sets: Path
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Environment

L'environnement dans lequel exécuter ce terminal.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -PersistentLog

Indique s'il faut stocker le journal de ce terminal dans la base de données.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Documentation

La définition de documentation à associer à ce terminal.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Command

La commande qui définit le contenu de ce terminal.

```yaml
Type: String
Parameter Sets: Endpoint, Path
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

```yaml
Type: String
Parameter Sets: Module
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Module

Le module qui contient la commande qui définit le contenu de ce terminal.

```yaml
Type: String
Parameter Sets: Endpoint, Path
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

```yaml
Type: String
Parameter Sets: Module
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -ComputerGroup

Le groupe d'ordinateurs sur lequel exécuter ce terminal.

```yaml
Type: String[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -AvailableInBranch

Lorsqu'il est spécifié, le terminal sera disponible uniquement dans les branches spécifiées.

```yaml
Type: String[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Credential

Identifiants pour se connecter à l'API de gestion de PowerShell Universal.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -TrustCertificate

Indique si l'applet de commande doit ignorer les problèmes de certificat.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Disabled

Désactive le terminal. Le terminal ne sera pas disponible tant qu'il n'est pas activé.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -Cookies

Réutilise et conserve les témoins d'authentification pour la session PowerShell actuelle.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -ExecutionRole

Spécifie un ou plusieurs rôles qui peuvent exécuter la ressource.

```yaml
Type: String[]
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### CommonParameters

Cette applet de commande prend en charge les paramètres communs : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -Verbose, -WarningAction, -WarningVariable et -ProgressAction. Pour plus d'informations, consultez [about\_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).

## ENTRÉES

### Aucune

## SORTIES

### System.Object

## NOTES

## LIENS CONNEXES

[New-PSUApiResponse](/powershell-universal/fr/commandes-powershell/new-psuapiresponse.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell-universal/fr/commandes-powershell/new-psuendpoint.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
