{"id":31626513,"url":"https://github.com/auth0/auth0-checkmate","last_synced_at":"2026-07-02T05:00:45.733Z","repository":{"id":315160298,"uuid":"1050941529","full_name":"auth0/auth0-checkmate","owner":"auth0","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-18T03:23:40.000Z","size":574,"stargazers_count":41,"open_issues_count":0,"forks_count":9,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-18T05:11:30.520Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/auth0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-05T07:28:08.000Z","updated_at":"2026-06-18T03:14:58.000Z","dependencies_parsed_at":"2026-04-14T07:01:39.453Z","dependency_job_id":null,"html_url":"https://github.com/auth0/auth0-checkmate","commit_stats":null,"previous_names":["auth0/auth0-checkmate"],"tags_count":32,"template":false,"template_full_name":null,"purl":"pkg:github/auth0/auth0-checkmate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/auth0%2Fauth0-checkmate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/auth0%2Fauth0-checkmate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/auth0%2Fauth0-checkmate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/auth0%2Fauth0-checkmate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/auth0","download_url":"https://codeload.github.com/auth0/auth0-checkmate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/auth0%2Fauth0-checkmate/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35031038,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-06T19:53:10.678Z","updated_at":"2026-07-02T05:00:45.671Z","avatar_url":"https://github.com/auth0.png","language":"JavaScript","funding_links":[],"categories":["Developer Ecosystem"],"sub_categories":[],"readme":"# CheckMate for Auth0\n\n**CheckMate for Auth0** is a command-line utility that performs configuration checks on your Auth0 tenant. It helps ensure your tenant is securely and correctly configured by validating key settings and generating a detailed report.\n\n---\n\n## 🚀 Features\n\n- Validates your Auth0 tenant configuration\n- Generates comprehensive audit reports\n- Simple and intuitive CLI interface\n\n---\n\n## ⚠️ Auth0 Management API Use Notice\n\nThis tool makes use of the **Auth0 Management API**, which **consumes your tenant’s [rate limits](https://auth0.com/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations)**. Use it thoughtfully to avoid throttling.\n\nCheckMate for Auth0 is designed to provide visibility into its behavior through your Auth0 tenant's [log events](https://auth0.com/docs/deploy-monitor/logs). Tracking its use is important for monitoring and debugging purposes. You can track its use in several ways, including:\n\n-  The `User-Agent` string in the HTTP request header, which will have a value in the form of `${packageName}/${packageVersion}` (e.g. `@auth0/auth0-checkmate/1.4.0`). Keep in mind that if the `User-Agent` string is modified on the client side, then CheckMate for Auth0 usage cannot be tracked this way.\n- The `client_name` and `scopes` assigned to CheckMate when configuring initial access\n- `seccft` events (Successful exchange of Access Token for a Client Credentials Grant) in Auth0 logs\n\nAs an example, CheckMate activity might result in a log entry like the one shown below. Each field in the log entry provides valuable information for troubleshooting or auditing, such as the `client_name` identifying the application, the `scope` showing granted permissions, and the `user_agent` indicating the tool version used.\n\n```json\n{\n  \"date\": \"2025-08-05T19:19:43.071Z\",\n  \"type\": \"seccft\",\n  \"description\": \"Client Credentials for Access Token\",\n  \"connection_id\": \"\",\n  \"client_id\": \"{CHECKMATE_CLIENT_ID}\",\n  \"client_name\": \"{CHECKMATE_CLIENT_NAME}\",\n  \"ip\": \"{REQUEST_IP}\",\n  \"client_ip\": \"{REQUEST_IP}\",\n  \"user_agent\": \"{CHECKMATE_USER_AGENT}\",\n  \"hostname\": \"{TENANT_HOSTNAME}\",\n  \"user_id\": \"\",\n  \"user_name\": \"\",\n  \"audience\": \"https://{TENANT_HOSTNAME}/api/v2/\",\n  \"scope\": \"{CHECKMATE_SCOPES}\",\n  \"$event_schema\": {\n    \"version\": \"1.0.0\"\n  },\n  \"environment_name\": \"{AUTH0_ENVIRONMENT}\",\n  \"log_id\": \"{LOG_ID}\",\n  \"tenant_name\": \"{AUTH0_TENANT}\",\n  \"_id\": \"{ID}\",\n  \"isMobile\": false,\n  \"location_info\": {},\n  \"id\": \"{ID}\"\n}\n```\n\n---\n\n## 📦 Prerequisites\n\n- [Node.js](https://nodejs.dev/) **v20.18.3 or higher**\n- A valid [Auth0 tenant](https://auth0.com/)\n\n---\n\n## 🛠️ Installation Options\n\n### Option 1 – Global Installation\n\nInstall CheckMate for Auth0 globally to use it as a standalone CLI tool:\n\n```bash\nnpm install -g @auth0/auth0-checkmate\n```\n\nThen run it with:\n\n```bash\na0checkmate\n```\n\nFollow the interactive prompts to get started.\n\nTo update CheckMate:\n\n```bash\nnpm update -g @auth0/auth0-checkmate\n```\n---\n\n### Option 2 – Run from Source\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/auth0/auth0-checkmate\n   ```\n\n2. **Navigate into the project folder:**\n\n   ```bash\n   cd auth0-checkmate\n   ```\n\n3. **Install dependencies:**\n\n   ```bash\n   npm install\n   ```\n\n4. **Run the tool:**\n\n   ```bash\n   npm start\n   ```\n\n---\n\n## 🔐 Auth0 Setup Instructions\n\nTo use CheckMate for Auth0, you need a **dedicated Auth0 Application** to authorize calls to the Management API.\n\n### Create a Machine-to-Machine Application\n\n1. In the Auth0 Dashboard, go to:\n   **Applications → Applications**\n\n2. Click **“Create Application”**\n\n3. In the setup form:\n   - **Name:** `Auth0 CheckMate` (or similar)\n   - **Application Type:** `Machine to Machine Applications`\n   - Click **“Create”**\n\n4. On the \"Authorize Machine to Machine Application\" screen:\n   - Select **Auth0 Management API**\n   - Grant only the following scopes:\n\n   ```text\n   read:tenant_settings\n   read:custom_domains\n   read:prompts\n   read:clients\n   read:connections\n   read:connections_options\n   read:resource_servers\n   read:client_grants\n   read:roles\n   read:branding\n   read:email_provider\n   read:email_templates\n   read:phone_providers\n   read:phone_templates\n   read:shields\n   read:attack_protection\n   read:self_service_profiles\n   read:guardian_factors\n   read:mfa_policies\n   read:actions\n   read:log_streams\n   read:logs\n   read:network_acls\n   read:event_streams\n   read:hooks\n   read:rules\n   ```\n\n5. Click **“Authorize”** to complete setup.\n\n6. Optional: the following environment variables can be used to provide a CI friendly configuration\n   ```text\n    AUTH0CHECKMATE_DISABLE_PDF_REPORTING=true|false\n    AUTH0CHECKMATE_DOMAIN=your_domain\n    AUTH0CHECKMATE_CLIENT_ID=your_client_id\n    AUTH0CHECKMATE_CLIENT_SECRET=your_client_secret\n    AUTH0CHECKMATE_FILE_PATH=\"./reports\"\n    AUTH0CHECKMATE_SHOW_VALIDATORS=false\n   ```\n\n---\n\n## ✅ You're All Set\n\nWith your Auth0 application configured and the CLI installed, you’re ready to run **CheckMate for Auth0** and ensure your tenant setup is secure and complete.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fauth0%2Fauth0-checkmate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fauth0%2Fauth0-checkmate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fauth0%2Fauth0-checkmate/lists"}