--- title: Permissions API slug: Web/API/Permissions_API translation_of: Web/API/Permissions_API ---

{{DefaultAPISidebar("Permissions API")}}{{SeeCompatTable}}

Les permissions d'API fournissent une manière consistente de demander programatiquement le statut des permissions dans le context courrant— par exemple, si l'autorisation d'utiliser l'API est accordée ou refusée, et si l'utilisateur sera invité à indiquer si une autorisation doit être accordée pour une API.

Conceptes et usages

Historiquement les differentes API gérée leur propres permissions inconsistamment — par example l'API Notifications permet de vérifier explicitement sont status d'autorisation et et d'en faire la demande, alors que l'API de Geolocation ne le fait pas (ce qui peut poser des problèmes si l'utilisateur décline la première demande d'autorisation). L'API de permissions fournit l'outil pour autorisé les déveloopers à implementes une meilleure expérience utilisteur.

La propriétée permissions a rendu disponible dans l'objet {{domxref("Navigator")}}, ainsi que dans le context standard du navigateur browsin et dans le context du worker ({{domxref("WorkerNavigator")}} — donc les vérificationd de permissions sont disponible dans les workers), et retournent un obet {{domxref("Permissions")}} qui fournit l'accés aux fonctionalité des Permissions API.

Une fois que vous avez cette objet vous pouvez effectuer une tache nécéssitant des permissions, par exemple demander la permission en utilisant la méthode {{domxref("Permissions.query()")}} pour retourner une promesse qui résous avec {{domxref("PermissionStatus")}} pour une API spécifique.

Toutes les status de permissions d'API ne peuvent être demandé en utilisant Permissions API. API notables prenant en compte les autorisations:

Plus d'APIs devrais être supporté par Permissions API dans le future.

Examples

Nous avons fait un exemple simple appelé Location Finder. Vous pouvez lancer cet exemple en live ici, ou voire le code source sur Github.

Ou en lire plus sur comment cela fonctionne dans notre article Utiliser Permissions API.

Interfaces

{{domxref("Navigator.permissions")}} et {{domxref("WorkerNavigator.permissions")}} {{readonlyinline}}
Fournit l'accés à l'objet {{domxref("Permissions")}} depuis context principal ainsi que celui du worker.
{{domxref("Permissions")}}
Fournit la principale fonctionalité de Permission API, tel que les methodes de demande et revocation de permissions.
{{domxref("PermissionStatus")}}
Fournit l'accés au status actuel d'une permission, et un gestionnaire d'évenement pour répondre au changements de status d'une permission.

Specification

Specification Status Comment
{{SpecName('Permissions API')}} {{Spec2('Permissions API')}} Initial definition.

Browser compatibility

Permissions interface

{{Compat("api.Permissions")}}

See also