Permissions API State Debugger

Is the camera granted? Is geolocation still promptable? This debugger queries every Permissions API descriptor at once, shows each state in real time, and logs changes as they happen — no guessing, no DevTools.

PWA & Browser Storage Local processing Queries run locally. Nothing is uploaded or triggered.

Tool interface

Introduction

Permission-gated features fail silently when you guess the state. The Permissions API lets you query it directly — but you have to know every descriptor name and handle unsupported ones. This debugger does all of that in one view.

How it works

  • Iterates a curated list of permission descriptors.
  • Calls navigator.permissions.query() for each.
  • Attaches onchange listeners to log live transitions.
  • Clearly marks unsupported or errored descriptors.

Privacy

All queries are local via the Permissions API. Querying a permission never triggers a prompt or sends data anywhere. No account, no API key.

Limitations

  • Descriptor support varies by browser; unsupported ones are flagged.
  • Some permissions require additional descriptor fields not covered here.
  • State reflects the current origin only.

FAQ

Does querying trigger a permission prompt?

No. navigator.permissions.query() is read-only and never shows a prompt.

Is my data uploaded?

No. Everything runs locally in your browser.

Related tools

Version and changelog

  • Version: 1.0.0
  • Last updated: August 12, 2026
  • Changelog: Initial production release.