How to read the error
The status code tells you which of three things is true, and they have different fixes:
The 403/404 distinction matters most. A 403 is yours to fix. A 404 across an entire API family means the vendor is not serving it to your account at all, and no permission change will help.
After making any grant below, open the integration and click Verify now rather than waiting for the nightly check at 03:10 UTC.
Microsoft 365
Graph permissions are granted per application, and each one needs admin consent — adding the permission is not enough on its own.- In the Entra admin center, go to Applications → App registrations and open the registration ConfigView uses.
- API permissions → Add a permission → Microsoft Graph → Application permissions.
- Add the permission named in the error, then click Grant admin consent for <tenant>.
- Wait a minute or two — consent takes a moment to propagate — then Verify now.
IdentityRiskyUser.Read.All and IdentityRiskEvent.Read.All are licensed features. On a tenant without Entra ID P2 they keep returning 403 no matter how the consent is granted — that is expected, and the right response is to leave those collectors off.Azure
Azure splits its permissions in two, and each half fails differently. Control plane (ARM) — role assignments. Add the role at the scope named in the error, under Access control (IAM) → Add role assignment, assigned to the service principal ConfigView uses:
Data plane (Key Vault) — a separate grant. Listing vaults is a control-plane call and works with Reader; reading what is inside a vault is not. For an RBAC vault, grant the service principal both Key Vault Reader and Key Vault Secrets User on the vault. For a vault still on the legacy model, add an access policy with get and list on secrets, keys, and certificates.
This is why you can see the vault list and still get 403 on secrets — they are two different permission systems, and the vault decides which one applies.
Google Workspace
Scopes for a service account are granted through domain-wide delegation, and the service account’s own IAM roles have nothing to do with it.- In the Admin console, go to Security → Access and data control → API controls → Manage Domain Wide Delegation.
- Find the client ID for the ConfigView service account, or add it if it is not listed.
- Edit and add the scope named in the error — the full URL, exactly as shown, e.g.
https://www.googleapis.com/auth/admin.directory.group.member.readonly. - Save, then Verify now.
The scope list is replaced, not merged, when you save. Paste the existing scopes back alongside the new one, or the collectors that were working will stop.
CrowdStrike
Falcon API scopes are set on the API client, under Support and resources → API clients and keys. Edit the client, tick Read for the scope named in the error, and save. The client secret is not reissued, so nothing needs re-entering in ConfigView. A 404 on a CrowdStrike endpoint is different, and no scope will fix it. If the whole/incidents/ family returns 404 while /alerts/ returns 200, your CID does not include the Incidents module — that is a licensing question for your CrowdStrike account team. Until it is added, turn off the collectors that read it:
crowdstrike_get_incidents.py
Looker
Looker returns 404 for an authentication backend that is not configured, so an instance that uses SAML answers 404 for/ldap_config and /oidc_config. There is nothing to fix; the endpoints do not exist for you. Check which backend you actually use under Admin → Authentication, and turn off the collectors for the other two:
A 403 from Looker is a different matter: several endpoints — scheduled plans, alerts, and the SSO configs — are admin-only, so the API3 credential needs the Admin role. See Looker setup.
AWS
Add the action named in the error to the ConfigView IAM policy. One is worth calling out because it is optional:organizations:ListAccounts— only needed if you want cost broken down by member account. Without it, ConfigView still collects everything else, and the check reports a warning rather than a failure. Grant it on the payer account; a member account cannot list the organization.