jumpcloud

v0.2.0 collector

Collects JumpCloud identity, access, and device posture metrics

Install

epack install collector jumpcloud

Adds to epack.yaml, resolves dependencies, downloads binary.

Usage

Run all configured collectors and build a pack:

epack collect

Runs all collectors in epack.yaml and outputs an evidence pack.

Configuration

Or add manually to epack.yaml:

collectors:
  jumpcloud:
    source: https://github.com/locktivity/epack-collector-jumpcloud

Then run epack install to lock and sync.

v0.2.0 Latest
2026-11-05

What's Changed

New Contributors

Full Changelog: https://github.com/locktivity/epack-collector-jumpcloud/compare/v0.1.1...v0.2.0

darwin/amd64 darwin/arm64 linux/amd64 linux/arm64
v0.1.1
2026-10-22
darwin/amd64 darwin/arm64 linux/amd64 linux/arm64
v0.1.0
2026-10-22
darwin/amd64 darwin/arm64 linux/amd64 linux/arm64

Field reference

322 fields. No test account checks this collector yet.

Summary values jumpcloud.endpoint-posture.json

The values Foundational Controls and other profiles read.

General 4 fields · 3 trust, 1 audit
Collected at collected_at
Trust
Collected in
Trust, audit, and internal runs
Type
string
Organization ID organization_id The provider's organization identifier
Audit
Collected in
Audit and internal runs
Type
string

The provider's organization identifier

Provider provider
Trust
Collected in
Trust, audit, and internal runs
Type
string
Schema version schema_version
Trust
Collected in
Trust, audit, and internal runs
Type
string
Assigned user 2 fields · from audit
Login devices[].assigned_user.login
Audit
Collected in
Audit and internal runs
Type
string
User ID devices[].assigned_user.user_id
Audit
Collected in
Audit and internal runs
Type
string
Availability 3 fields · from trust
Message availability[].message
Trust
Collected in
Trust, audit, and internal runs
Type
string
Path availability[].path
Trust
Collected in
Trust, audit, and internal runs
Type
string
Reason availability[].reason unsupported when the vendor never reports the metric, and not_read when the vendor reports it but the collector does not read it
Trust
Collected in
Trust, audit, and internal runs
Type
value

unsupported when the vendor never reports the metric, and not_read when the vendor reports it but the collector does not read it

Compliance 4 fields · from trust
Baseline ID compliance.baseline_id
Trust
Collected in
Trust, audit, and internal runs
Type
string
Baseline version compliance.baseline_version
Trust
Collected in
Trust, audit, and internal runs
Type
string
Basis compliance.basis
Trust
Collected in
Trust, audit, and internal runs
Type
value
Compliant compliance.compliant_pct Percentage of devices where the provider's or a baseline's compliance verdict passes, out of the devices whose reading passed or failed....
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where the provider's or a baseline's compliance verdict passes, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["compliance.compliant_pct"] counts the devices by outcome

Controls 2 fields · from audit
Observed at devices[].controls.{key}.observed_at
Audit
Collected in
Audit and internal runs
Type
string
State devices[].controls.{key}.state
Audit
Collected in
Audit and internal runs
Type
value
Devices 9 fields · from audit
Created at devices[].created_at
Audit
Collected in
Audit and internal runs
Type
string
Device ID devices[].device_id
Audit
Collected in
Audit and internal runs
Type
string
Hostname devices[].hostname
Audit
Collected in
Audit and internal runs
Type
string
In scope devices[].in_scope
Audit
Collected in
Audit and internal runs
Type
boolean
Last seen at devices[].last_seen_at
Audit
Collected in
Audit and internal runs
Type
string
Management state devices[].management_state
Audit
Collected in
Audit and internal runs
Type
value
OS family devices[].os_family
Audit
Collected in
Audit and internal runs
Type
value
OS name devices[].os_name
Audit
Collected in
Audit and internal runs
Type
string
OS version devices[].os_version
Audit
Collected in
Audit and internal runs
Type
string
Findings 7 fields · from audit
Control devices[].findings[].control
Audit
Collected in
Audit and internal runs
Type
value
Finding ID devices[].findings[].finding_id
Audit
Collected in
Audit and internal runs
Type
string
First seen at devices[].findings[].first_seen_at
Audit
Collected in
Audit and internal runs
Type
string
Last seen at devices[].findings[].last_seen_at
Audit
Collected in
Audit and internal runs
Type
string
Reason code devices[].findings[].reason_code
Audit
Collected in
Audit and internal runs
Type
string
Resolved at devices[].findings[].resolved_at
Audit
Collected in
Audit and internal runs
Type
string
Status devices[].findings[].status
Audit
Collected in
Audit and internal runs
Type
value
Fleet 6 fields · 2 trust, 4 audit
Device count fleet.device_count Devices in scope
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Devices in scope

Devices by OS fleet.devices_by_os Devices in scope by operating system family
Audit
Collected in
Audit and internal runs
Type
object

Devices in scope by operating system family

Devices present fleet.devices_present Whether the fleet has any devices in scope. When false, the percentages have no devices to count
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the fleet has any devices in scope. When false, the percentages have no devices to count

Managed device count fleet.managed_device_count Devices in scope that the provider manages
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Devices in scope that the provider manages

Mdm enrolled device count fleet.mdm_enrolled_device_count Devices in scope with affirmative evidence of MDM enrollment
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Devices in scope with affirmative evidence of MDM enrollment

Mdm enrolled fleet.mdm_enrolled_pct Percentage of devices in scope with affirmative evidence of MDM enrollment. Null when there are no devices
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
fleet.device_count

Percentage of devices in scope with affirmative evidence of MDM enrollment. Null when there are no devices

Hardening 3 fields · from trust
Disk encryption hardening.disk_encryption_pct Percentage of devices where every volume is encrypted at rest, out of the devices whose reading passed or failed. Devices that are unknow...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where every volume is encrypted at rest, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["hardening.disk_encryption_pct"] counts the devices by outcome

Firewall enabled hardening.firewall_enabled_pct Percentage of devices where the host firewall is on, out of the devices whose reading passed or failed. Devices that are unknown or not a...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where the host firewall is on, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["hardening.firewall_enabled_pct"] counts the devices by outcome

Screen lock compliant hardening.screen_lock_compliant_pct Percentage of devices where the screen lock setting meets policy, out of the devices whose reading passed or failed. Devices that are unk...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where the screen lock setting meets policy, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["hardening.screen_lock_compliant_pct"] counts the devices by outcome

Local admin accounts 2 fields · internal only
Account ID devices[].local_admin_accounts[].account_id
Internal
Collected in
Internal runs only
Type
string
Username devices[].local_admin_accounts[].username
Internal
Collected in
Internal runs only
Type
string
Metric coverage 4 fields · from audit
Failing device count metric_coverage.{key}.failing_device_count
Audit
Collected in
Audit and internal runs
Type
integer, can be null
Not applicable device count metric_coverage.{key}.not_applicable_device_count
Audit
Collected in
Audit and internal runs
Type
integer, can be null
Passing device count metric_coverage.{key}.passing_device_count
Audit
Collected in
Audit and internal runs
Type
integer, can be null
Unknown device count metric_coverage.{key}.unknown_device_count
Audit
Collected in
Audit and internal runs
Type
integer, can be null
Patching 5 fields · 4 trust, 1 audit
Baseline ID patching.baseline_id
Trust
Collected in
Trust, audit, and internal runs
Type
string
Baseline version patching.baseline_version
Trust
Collected in
Trust, audit, and internal runs
Type
string
OS baseline compliant patching.os_baseline_compliant_pct Percentage of devices where the operating system meets the named baseline, out of the devices whose reading passed or failed. Devices tha...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where the operating system meets the named baseline, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["patching.os_baseline_compliant_pct"] counts the devices by outcome

OS supported patching.os_supported_pct Percentage of devices where the operating system version still gets security updates, out of the devices whose reading passed or failed....
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where the operating system version still gets security updates, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["patching.os_supported_pct"] counts the devices by outcome

Unsupported OS count patching.unsupported_os_count Devices whose operating system version no longer gets security updates
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Devices whose operating system version no longer gets security updates

Protection 4 fields · from trust
Antimalware healthy protection.antimalware_healthy_pct Percentage of devices where anti-malware is installed, running, and current, out of the devices whose reading passed or failed. Devices t...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where anti-malware is installed, running, and current, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["protection.antimalware_healthy_pct"] counts the devices by outcome

Antimalware installed protection.antimalware_installed_pct Percentage of devices where anti-malware is installed, out of the devices whose reading passed or failed. Devices that are unknown or not...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where anti-malware is installed, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["protection.antimalware_installed_pct"] counts the devices by outcome

Edr healthy protection.edr_healthy_pct Percentage of devices where an EDR agent is installed, running, and reporting, out of the devices whose reading passed or failed. Devices...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where an EDR agent is installed, running, and reporting, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["protection.edr_healthy_pct"] counts the devices by outcome

Edr installed protection.edr_installed_pct Percentage of devices where an EDR agent is installed, out of the devices whose reading passed or failed. Devices that are unknown or not...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null

Percentage of devices where an EDR agent is installed, out of the devices whose reading passed or failed. Devices that are unknown or not applicable are left out. At the audit level, metric_coverage["protection.edr_installed_pct"] counts the devices by outcome

Protection modules 5 fields · from audit
Enabled devices[].protection_modules[].enabled
Audit
Collected in
Audit and internal runs
Type
boolean
Healthy devices[].protection_modules[].healthy
Audit
Collected in
Audit and internal runs
Type
boolean
Installed devices[].protection_modules[].installed
Audit
Collected in
Audit and internal runs
Type
boolean
Kind devices[].protection_modules[].kind
Audit
Collected in
Audit and internal runs
Type
value
Observed at devices[].protection_modules[].observed_at
Audit
Collected in
Audit and internal runs
Type
string
Scope 4 fields · 3 trust, 1 audit
Description scope.description A fixed name for the scope, such as managed_devices
Trust
Collected in
Trust, audit, and internal runs
Type
string

A fixed name for the scope, such as managed_devices

Discovery complete scope.discovery_complete Whether every device the provider lists was read. When false or null, fleet totals and percentages are left out. Null when the collector...
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether every device the provider lists was read. When false or null, fleet totals and percentages are left out. Null when the collector could not tell

Max observation age seconds scope.max_observation_age_seconds How recently a device must have reported to count
Trust
Collected in
Trust, audit, and internal runs
Type
integer

How recently a device must have reported to count

Observed device count scope.observed_device_count Devices observed within max_observation_age_seconds
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Devices observed within max_observation_age_seconds

Summary values jumpcloud.idp-posture.json

The values Foundational Controls and other profiles read.

General 4 fields · from trust
Collected at collected_at ISO 8601 timestamp when data was collected
Trust
Collected in
Trust, audit, and internal runs
Type
string

ISO 8601 timestamp when data was collected

Org domain org_domain Organization domain or tenant identifier
Trust
Collected in
Trust, audit, and internal runs
Type
string

Organization domain or tenant identifier

Provider provider Identity provider vendor
Trust
Collected in
Trust, audit, and internal runs
Type
string

Identity provider vendor

Schema version schema_version Version of this schema, always 1.0.0.
Trust
Collected in
Trust, audit, and internal runs
Type
string

Version of this schema, always 1.0.0.

App security 9 fields · 4 trust, 5 audit
App count app_security.app_count Applications the app_security percentages count
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Applications the app_security percentages count

Apps present app_security.apps_present Whether the provider has any applications the app_security percentages count. When false, those percentages are null
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the provider has any applications the app_security percentages count. When false, those percentages are null

Authorized third party apps count app_security.authorized_third_party_apps_count Count of authorized third-party applications or OAuth integrations
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Count of authorized third-party applications or OAuth integrations

Deprovisioning app count app_security.deprovisioning_app_count Applications with automated deprovisioning
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Applications with automated deprovisioning

Deprovisioning enabled app_security.deprovisioning_enabled_pct Percentage of applications with automated deprovisioning
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
app_security.app_count

Percentage of applications with automated deprovisioning

Provisioning app count app_security.provisioning_app_count Applications with automated provisioning
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Applications with automated provisioning

Provisioning enabled app_security.provisioning_enabled_pct Percentage of applications with automated provisioning
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
app_security.app_count

Percentage of applications with automated provisioning

SSO app count app_security.sso_app_count Applications using federated SSO (SAML or OIDC)
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Applications using federated SSO (SAML or OIDC)

SSO coverage app_security.sso_coverage_pct Percentage of applications using federated SSO (SAML/OIDC)
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
app_security.app_count

Percentage of applications using federated SSO (SAML/OIDC)

Device access 2 fields · from trust
Managed device required device_access.managed_device_required Whether access to core corporate resources requires a managed or compliant device
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether access to core corporate resources requires a managed or compliant device

Managed device required for admins device_access.managed_device_required_for_admins Whether privileged access requires a managed or compliant device
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether privileged access requires a managed or compliant device

Lifecycle 6 fields · 3 trust, 3 audit
Account count lifecycle.account_count Accounts in every state, including suspended and archived accounts. The lifecycle percentages count these
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Accounts in every state, including suspended and archived accounts. The lifecycle percentages count these

Accounts present lifecycle.accounts_present Whether the provider has any accounts, in any state. When false, the lifecycle percentages are null
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the provider has any accounts, in any state. When false, the lifecycle percentages are null

Archived account count lifecycle.archived_account_count Accounts in an archived, retained, or soft-deleted state
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Accounts in an archived, retained, or soft-deleted state

Archived lifecycle.archived_pct Percentage of accounts in archived, retained, or soft-deleted state
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
lifecycle.account_count

Percentage of accounts in archived, retained, or soft-deleted state

Suspended account count lifecycle.suspended_account_count Accounts in a suspended or disabled state
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Accounts in a suspended or disabled state

Suspended lifecycle.suspended_pct Percentage of accounts in suspended or disabled state
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
lifecycle.account_count

Percentage of accounts in suspended or disabled state

Policy 7 fields · 6 trust, 1 audit
Idle timeout max min policy.idle_timeout_max_min Maximum idle timeout across all policies (minutes)
Trust
Collected in
Trust, audit, and internal runs
Type
integer, can be null

Maximum idle timeout across all policies (minutes)

Legacy auth blocked policy.legacy_auth_blocked Whether legacy authentication protocols are blocked
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether legacy authentication protocols are blocked

MFA required policy.mfa_required Whether the tenant enforces MFA for all covered users
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the tenant enforces MFA for all covered users

MFA required coverage policy.mfa_required_coverage_pct Percentage of users covered by policies that require MFA
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users covered by policies that require MFA

MFA required user count policy.mfa_required_user_count Users covered by policies that require MFA, out of user_security.user_count
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users covered by policies that require MFA, out of user_security.user_count

Phishing resistant required for privileged policy.phishing_resistant_required_for_privileged Whether phishing-resistant authentication is required for privileged users
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether phishing-resistant authentication is required for privileged users

Session lifetime max min policy.session_lifetime_max_min Maximum session lifetime across all policies (minutes)
Trust
Collected in
Trust, audit, and internal runs
Type
integer, can be null

Maximum session lifetime across all policies (minutes)

Privileged access 9 fields · 4 trust, 5 audit
Privileged MFA coverage privileged_access.privileged_mfa_coverage_pct Percentage of privileged users with MFA enabled or enforced
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
privileged_access.privileged_users_count

Percentage of privileged users with MFA enabled or enforced

Privileged MFA user count privileged_access.privileged_mfa_user_count Privileged users with MFA enabled or enforced
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Privileged users with MFA enabled or enforced

Privileged phishing resistant privileged_access.privileged_phishing_resistant_pct Percentage of privileged users with phishing-resistant MFA
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
privileged_access.privileged_users_count

Percentage of privileged users with phishing-resistant MFA

Privileged phishing resistant user count privileged_access.privileged_phishing_resistant_user_count Privileged users with phishing-resistant MFA
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Privileged users with phishing-resistant MFA

Privileged users count privileged_access.privileged_users_count Count of users with privileged administrative access
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Count of users with privileged administrative access

Privileged users present privileged_access.privileged_users_present Whether the provider has any users with privileged administrative access. When false, the privileged percentages are null
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the provider has any users with privileged administrative access. When false, the privileged percentages are null

Standing privileged users count privileged_access.standing_privileged_users_count Count of users with standing privileged access instead of just-in-time or eligible access
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Count of users with standing privileged access instead of just-in-time or eligible access

Standing privileged users present privileged_access.standing_privileged_users_present Whether any user holds standing privileged access, as standing_privileged_users_count defines it
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any user holds standing privileged access, as standing_privileged_users_count defines it

Super admin count privileged_access.super_admin_count Count of highest-privilege administrative accounts (for example Global Admin or Super Admin)
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Count of highest-privilege administrative accounts (for example Global Admin or Super Admin)

User security 14 fields · 7 trust, 7 audit
Inactive user_security.inactive_pct Percentage of users inactive for 90+ days
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users inactive for 90+ days

Inactive user count user_security.inactive_user_count Users inactive for 90 days or more
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users inactive for 90 days or more

Locked out user_security.locked_out_pct Percentage of users currently locked out
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users currently locked out

Locked out user count user_security.locked_out_user_count Users currently locked out
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users currently locked out

MFA coverage user_security.mfa_coverage_pct Percentage of users with any MFA factor enrolled
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users with any MFA factor enrolled

MFA phishing resistant user_security.mfa_phishing_resistant_pct Percentage of users with phishing-resistant MFA (WebAuthn/FIDO2)
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users with phishing-resistant MFA (WebAuthn/FIDO2)

MFA user count user_security.mfa_user_count Users with any MFA factor enrolled
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users with any MFA factor enrolled

Password policy noncompliant user_security.password_policy_noncompliant_pct Percentage of users whose passwords do not meet current password policy requirements
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users whose passwords do not meet current password policy requirements

Password policy noncompliant user count user_security.password_policy_noncompliant_user_count Users whose passwords do not meet current password policy requirements
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users whose passwords do not meet current password policy requirements

Phishing resistant user count user_security.phishing_resistant_user_count Users with phishing-resistant MFA (WebAuthn or FIDO2) enrolled
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users with phishing-resistant MFA (WebAuthn or FIDO2) enrolled

User count user_security.user_count Accounts that can sign in. The user_security percentages and policy.mfa_required_coverage_pct count these
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Accounts that can sign in. The user_security percentages and policy.mfa_required_coverage_pct count these

Users present user_security.users_present Whether the provider has any users the user_security percentages count. When false, those percentages are null
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the provider has any users the user_security percentages count. When false, those percentages are null

Weak password user_security.weak_password_pct Percentage of users with weak passwords
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
user_security.user_count

Percentage of users with weak passwords

Weak password user count user_security.weak_password_user_count Users with weak passwords
Audit
Collected in
Audit and internal runs
Type
integer, can be null

Users with weak passwords

Detailed output jumpcloud.details.json

Everything this collector reads, grouped by area. Each field lists the lowest level that collects it.

General 4 fields · from trust
Collected at collected_at
Trust
Collected in
Trust, audit, and internal runs
Type
string
Collected at level collected_at_level
Trust
Collected in
Trust, audit, and internal runs
Type
value
Org ID org_id The organization's ID from /api/organizations. Left out, with a gap, when the organization list could not be read, as for a service account
Trust
Collected in
Trust, audit, and internal runs
Type
string

The organization's ID from /api/organizations. Left out, with a gap, when the organization list could not be read, as for a service account

Schema version schema_version
Trust
Collected in
Trust, audit, and internal runs
Type
string
Admins 6 fields · from trust
MFA required count admins.mfa_required_count Administrators who are not suspended and whose account requires MFA at sign-in
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Administrators who are not suspended and whose account requires MFA at sign-in

Partial admins.partial True when fewer administrators were read than the totalCount JumpCloud reports. Left out when every one was read.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when fewer administrators were read than the totalCount JumpCloud reports. Left out when every one was read.

Super admin count admins.super_admin_count Administrators with the Administrator With Billing role who are not suspended
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Administrators with the Administrator With Billing role who are not suspended

Total admins admins.total_admins Admin Portal administrators listed who are not suspended
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Admin Portal administrators listed who are not suspended

Totp enrolled count admins.totp_enrolled_count Administrators who are not suspended and have TOTP enrolled. JumpCloud reports no other administrator factor
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Administrators who are not suspended and have TOTP enrolled. JumpCloud reports no other administrator factor

Totp enrolled admins.totp_enrolled_pct Percentage of the administrators who are not suspended that have TOTP enrolled. Null when there are none
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
admins.total_admins

Percentage of the administrators who are not suspended that have TOTP enrolled. Null when there are none

App inventory 3 fields · from audit
Name app_inventory.per_app[].name
Audit
Collected in
Audit and internal runs
Type
string
SSO enabled app_inventory.per_app[].sso_enabled Whether the application has an SSO type set
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the application has an SSO type set

SSO type app_inventory.per_app[].sso_type The application's SSO type, such as saml or oidc
Audit
Collected in
Audit and internal runs
Type
string

The application's SSO type, such as saml or oidc

Apps 4 fields · from trust
Partial apps.partial True when fewer applications were read than the totalCount JumpCloud reports. Left out when every one was read.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when fewer applications were read than the totalCount JumpCloud reports. Left out when every one was read.

SSO coverage apps.sso_coverage_pct Percentage of applications with an SSO type set. Null when there are no applications
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
apps.total_apps

Percentage of applications with an SSO type set. Null when there are no applications

SSO enabled apps apps.sso_enabled_apps Applications with an SSO type set
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Applications with an SSO type set

Total apps apps.total_apps Applications listed, with or without an SSO type
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Applications listed, with or without an SSO type

Audit log 7 fields · internal only
Count by type audit_log.count_by_type Events by Directory Insights event type, over the events read
Internal
Collected in
Internal runs only
Type
object

Events by Directory Insights event type, over the events read

Actor audit_log.events[].actor Email of whoever initiated the event, when JumpCloud reports one
Internal
Collected in
Internal runs only
Type
string

Email of whoever initiated the event, when JumpCloud reports one

Event type audit_log.events[].event_type
Internal
Collected in
Internal runs only
Type
string
Timestamp audit_log.events[].timestamp
Internal
Collected in
Internal runs only
Type
string
Truncated audit_log.truncated True when more events were read than the 5,000 the collector keeps. Left out otherwise
Internal
Collected in
Internal runs only
Type
boolean

True when more events were read than the 5,000 the collector keeps. Left out otherwise

Truncated dropped audit_log.truncated_dropped Events the 5,000-row limit left out
Internal
Collected in
Internal runs only
Type
integer

Events the 5,000-row limit left out

Window days audit_log.window_days How many days of events were requested
Internal
Collected in
Internal runs only
Type
integer

How many days of events were requested

Authentication 6 fields · from trust
MFA coverage authentication.mfa_coverage_pct Percentage of active users with any MFA method enrolled. Active users are those neither suspended nor staged
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No user is active.

Percentage of active users with any MFA method enrolled. Active users are those neither suspended nor staged

MFA not enrolled count authentication.mfa_not_enrolled_count Active users with no MFA method enrolled
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Active users with no MFA method enrolled

Portal MFA required count authentication.portal_mfa_required_count Active users whose account requires MFA for the User Portal
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Active users whose account requires MFA for the User Portal

Push enrolled authentication.push_enrolled_pct Percentage of active users with push MFA enrolled
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No user is active.

Percentage of active users with push MFA enrolled

Totp enrolled authentication.totp_enrolled_pct Percentage of active users with a TOTP authenticator enrolled
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No user is active.

Percentage of active users with a TOTP authenticator enrolled

WebAuthn enrolled authentication.webauthn_enrolled_pct Percentage of active users with a WebAuthn or FIDO2 key enrolled
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No user is active.

Percentage of active users with a WebAuthn or FIDO2 key enrolled

Device controls 22 fields · from trust
Failing devices count device_controls.antimalware_healthy.failing_devices_count Devices whose antimalware healthy reading failed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose antimalware healthy reading failed

Not applicable devices count device_controls.antimalware_healthy.not_applicable_devices_count Devices the antimalware healthy control does not apply to
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices the antimalware healthy control does not apply to

Passing devices count device_controls.antimalware_healthy.passing_devices_count Devices whose antimalware healthy reading passed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose antimalware healthy reading passed

Passing device_controls.antimalware_healthy.passing_pct Percentage of the devices whose antimalware healthy reading passed, out of those whose reading passed or failed. Null when no device's re...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No device's reading passed or failed.

Percentage of the devices whose antimalware healthy reading passed, out of those whose reading passed or failed. Null when no device's reading passed or failed

Unknown devices count device_controls.antimalware_healthy.unknown_devices_count Devices with no usable antimalware healthy reading
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices with no usable antimalware healthy reading

Failing devices count device_controls.antimalware_installed.failing_devices_count Devices whose antimalware installed reading failed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose antimalware installed reading failed

Not applicable devices count device_controls.antimalware_installed.not_applicable_devices_count Devices the antimalware installed control does not apply to
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices the antimalware installed control does not apply to

Passing devices count device_controls.antimalware_installed.passing_devices_count Devices whose antimalware installed reading passed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose antimalware installed reading passed

Passing device_controls.antimalware_installed.passing_pct Percentage of the devices whose antimalware installed reading passed, out of those whose reading passed or failed. Null when no device's...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No device's reading passed or failed.

Percentage of the devices whose antimalware installed reading passed, out of those whose reading passed or failed. Null when no device's reading passed or failed

Unknown devices count device_controls.antimalware_installed.unknown_devices_count Devices with no usable antimalware installed reading
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices with no usable antimalware installed reading

Discovery complete device_controls.discovery_complete Whether every device JumpCloud reports was listed. When false or null, the control summaries are left out. Null when the systems list lea...
Trust
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether every device JumpCloud reports was listed. When false or null, the control summaries are left out. Null when the systems list leaves it unknown

Failing devices count device_controls.disk_encryption.failing_devices_count Devices whose disk encryption reading failed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose disk encryption reading failed

Not applicable devices count device_controls.disk_encryption.not_applicable_devices_count Devices the disk encryption control does not apply to
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices the disk encryption control does not apply to

Passing devices count device_controls.disk_encryption.passing_devices_count Devices whose disk encryption reading passed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose disk encryption reading passed

Passing device_controls.disk_encryption.passing_pct Percentage of the devices whose disk encryption reading passed, out of those whose reading passed or failed. Null when no device's readin...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No device's reading passed or failed.

Percentage of the devices whose disk encryption reading passed, out of those whose reading passed or failed. Null when no device's reading passed or failed

Unknown devices count device_controls.disk_encryption.unknown_devices_count Devices with no usable disk encryption reading
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices with no usable disk encryption reading

Failing devices count device_controls.firewall.failing_devices_count Devices whose firewall reading failed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose firewall reading failed

Not applicable devices count device_controls.firewall.not_applicable_devices_count Devices the firewall control does not apply to
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices the firewall control does not apply to

Passing devices count device_controls.firewall.passing_devices_count Devices whose firewall reading passed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices whose firewall reading passed

Passing device_controls.firewall.passing_pct Percentage of the devices whose firewall reading passed, out of those whose reading passed or failed. Null when no device's reading passe...
Trust
Collected in
Trust, audit, and internal runs
Type
number, can be null
Null means
No device's reading passed or failed.

Percentage of the devices whose firewall reading passed, out of those whose reading passed or failed. Null when no device's reading passed or failed

Unknown devices count device_controls.firewall.unknown_devices_count Devices with no usable firewall reading
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Devices with no usable firewall reading

Max observation age seconds device_controls.max_observation_age_seconds How old, in seconds, a device reading may be and still count
Trust
Collected in
Trust, audit, and internal runs
Type
integer

How old, in seconds, a device reading may be and still count

Device inventory 17 fields · from audit
Active device_inventory.per_device[].active Whether the system's active flag is true
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the system's active flag is true

Agent version device_inventory.per_device[].agent_version
Audit
Collected in
Audit and internal runs
Type
string
Observed at device_inventory.per_device[].controls.antimalware_healthy.observed_at When the device reported the reading. Absent when the source gives no time
Audit
Collected in
Audit and internal runs
Type
string

When the device reported the reading. Absent when the source gives no time

State device_inventory.per_device[].controls.antimalware_healthy.state The device's antimalware healthy reading. Unknown means no usable reading
Audit
Collected in
Audit and internal runs
Type
value

The device's antimalware healthy reading. Unknown means no usable reading

Observed at device_inventory.per_device[].controls.antimalware_installed.observed_at When the device reported the reading. Absent when the source gives no time
Audit
Collected in
Audit and internal runs
Type
string

When the device reported the reading. Absent when the source gives no time

State device_inventory.per_device[].controls.antimalware_installed.state The device's antimalware installed reading. Unknown means no usable reading
Audit
Collected in
Audit and internal runs
Type
value

The device's antimalware installed reading. Unknown means no usable reading

Observed at device_inventory.per_device[].controls.disk_encryption.observed_at When the device reported the reading. Absent when the source gives no time
Audit
Collected in
Audit and internal runs
Type
string

When the device reported the reading. Absent when the source gives no time

State device_inventory.per_device[].controls.disk_encryption.state The device's disk encryption reading. Unknown means no usable reading
Audit
Collected in
Audit and internal runs
Type
value

The device's disk encryption reading. Unknown means no usable reading

Observed at device_inventory.per_device[].controls.firewall.observed_at When the device reported the reading. Absent when the source gives no time
Audit
Collected in
Audit and internal runs
Type
string

When the device reported the reading. Absent when the source gives no time

State device_inventory.per_device[].controls.firewall.state The device's firewall reading. Unknown means no usable reading
Audit
Collected in
Audit and internal runs
Type
value

The device's firewall reading. Unknown means no usable reading

Device ID device_inventory.per_device[].device_id
Audit
Collected in
Audit and internal runs
Type
string
Hostname device_inventory.per_device[].hostname
Audit
Collected in
Audit and internal runs
Type
string
Mdm enrolled device_inventory.per_device[].mdm_enrolled Whether the system shows evidence of MDM enrollment
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the system shows evidence of MDM enrollment

OS device_inventory.per_device[].os
Audit
Collected in
Audit and internal runs
Type
string
OS version device_inventory.per_device[].os_version
Audit
Collected in
Audit and internal runs
Type
string
Truncated device_inventory.truncated True when the rows stopped at 20,000. Left out otherwise
Audit
Collected in
Audit and internal runs
Type
boolean

True when the rows stopped at 20,000. Left out otherwise

Truncated dropped device_inventory.truncated_dropped Device rows the 20,000-row limit left out
Audit
Collected in
Audit and internal runs
Type
integer

Device rows the 20,000-row limit left out

Devices 5 fields · from trust
Active systems devices.active_systems Systems whose active flag is true
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Systems whose active flag is true

Mdm enrolled devices.mdm_enrolled Systems with evidence of MDM enrollment
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Systems with evidence of MDM enrollment

OS breakdown devices.os_breakdown Systems by operating system, grouped into macOS, Windows, and Linux where the OS name matches
Trust
Collected in
Trust, audit, and internal runs
Type
object

Systems by operating system, grouped into macOS, Windows, and Linux where the OS name matches

Partial devices.partial True when fewer distinct systems were read than the totalCount JumpCloud reports. Left out when every one was read.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when fewer distinct systems were read than the totalCount JumpCloud reports. Left out when every one was read.

Total systems devices.total_systems Distinct systems listed, one per device ID
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Distinct systems listed, one per device ID

Diagnostics 2 fields · from trust
Permission errors diagnostics.permission_errors Surfaces skipped because the API key was refused
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

Surfaces skipped because the API key was refused

Warnings diagnostics.warnings Other problems during collection
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

Other problems during collection

Group inventory 4 fields · from audit
Name group_inventory.system_groups[].name
Audit
Collected in
Audit and internal runs
Type
string
Type group_inventory.system_groups[].type
Audit
Collected in
Audit and internal runs
Type
string
Name group_inventory.user_groups[].name
Audit
Collected in
Audit and internal runs
Type
string
Type group_inventory.user_groups[].type
Audit
Collected in
Audit and internal runs
Type
string
Policies 5 fields · from trust
Has device managed condition policies.has_device_managed_condition Whether any enabled policy has a managed-device condition
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

Whether any enabled policy has a managed-device condition

Has MFA required policy policies.has_mfa_required_policy Whether any enabled policy requires MFA. It does not show which users or sign-ins the policy covers
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

Whether any enabled policy requires MFA. It does not show which users or sign-ins the policy covers

Has phishing resistant admin policy policies.has_phishing_resistant_admin_policy Whether an enabled Admin Portal policy requires MFA and allows only WebAuthn or FIDO2 factors
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

Whether an enabled Admin Portal policy requires MFA and allows only WebAuthn or FIDO2 factors

MFA required policies policies.mfa_required_policies Enabled policies that require MFA
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Enabled policies that require MFA

Total policies policies.total_policies Authentication policies listed, enabled or not
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Authentication policies listed, enabled or not

Policy inventory 6 fields · from audit
Allowed factors policy_inventory.auth_policies[].allowed_factors The MFA factors the policy accepts. Absent when it accepts any factor
Audit
Collected in
Audit and internal runs
Type
list of strings

The MFA factors the policy accepts. Absent when it accepts any factor

Device managed policy_inventory.auth_policies[].device_managed Whether the policy has a deviceManaged condition
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the policy has a deviceManaged condition

Disabled policy_inventory.auth_policies[].disabled Whether the policy is turned off
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the policy is turned off

MFA required policy_inventory.auth_policies[].mfa_required Whether the policy's effect requires MFA
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the policy's effect requires MFA

Name policy_inventory.auth_policies[].name
Audit
Collected in
Audit and internal runs
Type
string
Type policy_inventory.auth_policies[].type What sign-in the policy governs, such as user_portal or admin_portal
Audit
Collected in
Audit and internal runs
Type
string

What sign-in the policy governs, such as user_portal or admin_portal

User inventory 10 fields · from audit
Account locked user_inventory.per_user[].account_locked Whether the account is locked
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the account is locked

Created user_inventory.per_user[].created When the user was created
Audit
Collected in
Audit and internal runs
Type
string

When the user was created

Email user_inventory.per_user[].email
Audit
Collected in
Audit and internal runs
Type
string
MFA enrolled user_inventory.per_user[].mfa_enrolled Whether the user has any MFA method enrolled
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the user has any MFA method enrolled

State user_inventory.per_user[].state Account state, such as ACTIVATED, STAGED, or SUSPENDED
Audit
Collected in
Audit and internal runs
Type
string

Account state, such as ACTIVATED, STAGED, or SUSPENDED

Totp enabled user_inventory.per_user[].totp_enabled Whether the user has a TOTP authenticator enrolled
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the user has a TOTP authenticator enrolled

Username user_inventory.per_user[].username
Audit
Collected in
Audit and internal runs
Type
string
WebAuthn enabled user_inventory.per_user[].webauthn_enabled Whether the user has a WebAuthn or FIDO2 key enrolled
Audit
Collected in
Audit and internal runs
Type
boolean

Whether the user has a WebAuthn or FIDO2 key enrolled

Truncated user_inventory.truncated True when the rows stopped at 20,000. Left out otherwise
Audit
Collected in
Audit and internal runs
Type
boolean

True when the rows stopped at 20,000. Left out otherwise

Truncated dropped user_inventory.truncated_dropped User rows the 20,000-row limit left out
Audit
Collected in
Audit and internal runs
Type
integer

User rows the 20,000-row limit left out

Users 6 fields · from trust
Active users.active Users whose state is ACTIVATED
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Users whose state is ACTIVATED

Locked users.locked Users whose account is locked, in any state
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Users whose account is locked, in any state

Partial users.partial True when fewer users were read than the totalCount JumpCloud reports. Left out when every one was read.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when fewer users were read than the totalCount JumpCloud reports. Left out when every one was read.

Staged users.staged Users whose state is STAGED
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Users whose state is STAGED

Suspended users.suspended Users whose state is SUSPENDED
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Users whose state is SUSPENDED

Total users.total Directory users listed
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Directory users listed

Run details jumpcloud.collector-result.json

The status of each run, and any value it couldn't read and why.

General 1 field · from trust
Checks dropped checks_dropped Number of findings left out after the first 100.
Trust
Collected in
Trust, audit, and internal runs
Type
integer

Number of findings left out after the first 100.

Calls 30 fields · 7 trust, 23 audit
Attempts calls.operations[].attempts Number of requests sent, including retries. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

Number of requests sent, including retries. Present at the audit and internal levels only.

Calls calls.operations[].calls Number of times the collector made the call, not counting retries. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

Number of times the collector made the call, not counting retries. Present at the audit and internal levels only.

Deprecation calls.operations[].deprecation The Deprecation header from the vendor's most recent response that carried one.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The Deprecation header from the vendor's most recent response that carried one.

Error codes calls.operations[].error_codes The codes of the operation's failed attempts, without their counts.
Trust
Collected in
Trust, audit, and internal runs
Type
list

The codes of the operation's failed attempts, without their counts.

Errors calls.operations[].errors Number of failed attempts per code. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
object

Number of failed attempts per code. Present at the audit and internal levels only.

Name calls.operations[].name The operation's name, such as okta.users.list.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The operation's name, such as okta.users.list.

Permission calls.operations[].permission The permission the call needs, in the vendor's terms. The collector declares it with Operation.Permission. A permission_denied gap from t...
Trust
Collected in
Trust, audit, and internal runs
Type
string

The permission the call needs, in the vendor's terms. The collector declares it with Operation.Permission. A permission_denied gap from the call records it as its missing_permission.

Retried calls.operations[].retried True when a request for the operation was a retry.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when a request for the operation was a retry.

Retries calls.operations[].retries Number of requests that were retries. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

Number of requests that were retries. Present at the audit and internal levels only.

Status codes calls.operations[].status_codes The HTTP status codes, or DNS response codes for a lookup, that the operation's responses had, without their counts.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

The HTTP status codes, or DNS response codes for a lookup, that the operation's responses had, without their counts.

Statuses calls.operations[].statuses Number of responses per HTTP status code, or per DNS response code for a lookup. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
object

Number of responses per HTTP status code, or per DNS response code for a lookup. Present at the audit and internal levels only.

Sunset calls.operations[].sunset The Sunset header from the vendor's most recent response that carried one.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The Sunset header from the vendor's most recent response that carried one.

Problem requests dropped calls.problem_requests_dropped Number of the rows left out whose attempt failed or was a retry. Present wherever the rows are; 0 means every failed or retried request h...
Audit
Collected in
Audit and internal runs
Type
integer

Number of the rows left out whose attempt failed or was a retry. Present wherever the rows are; 0 means every failed or retried request has a row.

Attempt calls.requests[].attempt Which attempt the request was: 1 for the first, higher for a retry.
Audit
Collected in
Audit and internal runs
Type
integer

Which attempt the request was: 1 for the first, higher for a retry.

Call calls.requests[].call The call's number in the run, counting from 1 in the order calls start. Every attempt of one call has the same number.
Audit
Collected in
Audit and internal runs
Type
integer

The call's number in the run, counting from 1 in the order calls start. Every attempt of one call has the same number.

Duration ms calls.requests[].duration_ms How long the request took, in milliseconds.
Audit
Collected in
Audit and internal runs
Type
integer

How long the request took, in milliseconds.

Error calls.requests[].error The code for a request that failed. Absent when it succeeded.
Audit
Collected in
Audit and internal runs
Type
value

The code for a request that failed. Absent when it succeeded.

Host calls.requests[].host The request's host, the name a DNS lookup queried, or the host dialed.
Audit
Collected in
Audit and internal runs
Type
string

The request's host, the name a DNS lookup queried, or the host dialed.

Method calls.requests[].method The HTTP method, DNS and the record type looked up, such as DNS TXT, or DIAL.
Audit
Collected in
Audit and internal runs
Type
string

The HTTP method, DNS and the record type looked up, such as DNS TXT, or DIAL.

Operation calls.requests[].operation The operation the request belongs to.
Audit
Collected in
Audit and internal runs
Type
string

The operation the request belongs to.

Query keys calls.requests[].query_keys Names of the request's query parameters. Their values are not recorded.
Audit
Collected in
Audit and internal runs
Type
list of strings

Names of the request's query parameters. Their values are not recorded.

Rcode calls.requests[].rcode DNS lookups only: the response code. A lookup that got no response has none.
Audit
Collected in
Audit and internal runs
Type
value

DNS lookups only: the response code. A lookup that got no response has none.

Request ID calls.requests[].request_id The vendor's request ID from the response headers, when it sent one.
Audit
Collected in
Audit and internal runs
Type
string

The vendor's request ID from the response headers, when it sent one.

Route calls.requests[].route HTTP requests only.
Audit
Collected in
Audit and internal runs
Type
string

HTTP requests only.

Start ms calls.requests[].start_ms When the attempt was sent, in milliseconds after the run's started_at.
Audit
Collected in
Audit and internal runs
Type
integer

When the attempt was sent, in milliseconds after the run's started_at.

Status calls.requests[].status The response's HTTP status code. Absent when no response arrived.
Audit
Collected in
Audit and internal runs
Type
integer

The response's HTTP status code. Absent when no response arrived.

Step calls.requests[].step The step the call was made in. Absent for a call made outside every step.
Audit
Collected in
Audit and internal runs
Type
string

The step the call was made in. Absent for a call made outside every step.

Vendor code calls.requests[].vendor_code The vendor's own error code from a failed response, such as E0000047. Never the vendor's message. Absent for collectors that do not read...
Audit
Collected in
Audit and internal runs
Type
string

The vendor's own error code from a failed response, such as E0000047. Never the vendor's message. Absent for collectors that do not read one.

Waited ms calls.requests[].waited_ms On a retry, how long the SDK waited before sending it: the Retry-After value, the rate limit reset, or its own backoff. Absent on a first...
Audit
Collected in
Audit and internal runs
Type
integer

On a retry, how long the SDK waited before sending it: the Retry-After value, the rate limit reset, or its own backoff. Absent on a first attempt and on a retry sent at once.

Requests dropped calls.requests_dropped Number of request rows left out.
Audit
Collected in
Audit and internal runs
Type
integer

Number of request rows left out.

Checks 4 fields · from trust
Check checks[].check schema, schema_unusable, population, nulls, rollups, ratios, guidance, or levels.
Trust
Collected in
Trust, audit, and internal runs
Type
string

schema, schema_unusable, population, nulls, rollups, ratios, guidance, or levels.

Message checks[].message What the check found.
Trust
Collected in
Trust, audit, and internal runs
Type
string

What the check found.

Path checks[].path The artifact the finding is about. A schema_unusable finding has none.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The artifact the finding is about. A schema_unusable finding has none.

Pointer checks[].pointer JSON pointer to the value the finding is about.
Trust
Collected in
Trust, audit, and internal runs
Type
string

JSON pointer to the value the finding is about.

Choice 6 fields · from trust
Consequence gaps[].choice.options[].consequence What happens if the customer picks the option, including its cost and what stays Not collected.
Trust
Collected in
Trust, audit, and internal runs
Type
string

What happens if the customer picks the option, including its cost and what stays Not collected.

Label gaps[].choice.options[].label
Trust
Collected in
Trust, audit, and internal runs
Type
string
Question gaps[].choice.question
Trust
Collected in
Trust, audit, and internal runs
Type
string
Consequence warnings[].choice.options[].consequence What happens if the customer picks the option, including its cost and what stays Not collected.
Trust
Collected in
Trust, audit, and internal runs
Type
string

What happens if the customer picks the option, including its cost and what stays Not collected.

Label warnings[].choice.options[].label
Trust
Collected in
Trust, audit, and internal runs
Type
string
Question warnings[].choice.question
Trust
Collected in
Trust, audit, and internal runs
Type
string
Collect 3 fields · from trust
Left out collect.left_out Each kind the collector could write that the key left out. Each has a not_shared gap.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

Each kind the collector could write that the key left out. Each has a not_shared gap.

Listed collect.listed The kinds of evidence the collect config key listed, such as cloud-posture.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

The kinds of evidence the collect config key listed, such as cloud-posture.

Unmatched collect.unmatched Each kind the key listed that the run never wrote, such as a misspelled one.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

Each kind the key listed that the run never wrote, such as a misspelled one.

Collector 3 fields · from trust
Commit collector.commit The source commit the collector was built from. Absent when the build set none.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The source commit the collector was built from. Absent when the build set none.

Name collector.name The collector's name, as its spec declares it.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The collector's name, as its spec declares it.

Version collector.version The collector's version, such as v0.3.0. Absent when the build set none.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The collector's version, such as v0.3.0. Absent when the build set none.

Gaps 17 fields · 12 trust, 5 audit
Call gaps[].call The number of that call, matching the call on its request rows. A partial gap names the first failed call among those it counts. Present...
Audit
Collected in
Audit and internal runs
Type
integer

The number of that call, matching the call on its request rows. A partial gap names the first failed call among those it counts. Present at the audit and internal levels only.

Code gaps[].code Why the value was left out: auth_failed, permission_denied, config_invalid, not_licensed, unsupported, not_read, rate_limited, vendor_err...
Trust
Collected in
Trust, audit, and internal runs
Type
value

Why the value was left out: auth_failed, permission_denied, config_invalid, not_licensed, unsupported, not_read, rate_limited, vendor_error, timeout, invalid_response, too_large, internal, or not_shared. unsupported means the vendor does not report the value. too_large means the vendor holds more than the collector reads. not_shared means the customer left it out of this pack with the collect config key.

Detail gaps[].detail Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

Present at the audit and internal levels only.

Fix gaps[].fix The one instruction that fixes collection. It uses fixed wording plus permission, plan, and region names. A gap has at most one of fix, n...
Trust
Collected in
Trust, audit, and internal runs
Type
string

The one instruction that fixes collection. It uses fixed wording plus permission, plan, and region names. A gap has at most one of fix, no_action, and choice.

Missing permission gaps[].missing_permission For a permission_denied gap, the permission to grant, in the vendor's own terms, such as okta.logs.read.
Trust
Collected in
Trust, audit, and internal runs
Type
string

For a permission_denied gap, the permission to grant, in the vendor's own terms, such as okta.logs.read.

No action gaps[].no_action True when nothing needs changing now. It does not clear the gap.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when nothing needs changing now. It does not clear the gap.

Operation gaps[].operation The operation whose failed call left the value out. Absent when no call's error caused the gap, such as for a feature the plan lacks.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The operation whose failed call left the value out. Absent when no call's error caused the gap, such as for a feature the plan lacks.

Owner gaps[].owner Who can act on the code: customer, nobody for an expected gap such as a feature the plan lacks, vendor, vendor_or_runner, or publisher.
Trust
Collected in
Trust, audit, and internal runs
Type
value

Who can act on the code: customer, nobody for an expected gap such as a feature the plan lacks, vendor, vendor_or_runner, or publisher.

Path gaps[].path The artifact the value belongs in. Absent when the run wrote no such artifact, in which case schema names it.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The artifact the value belongs in. Absent when the run wrote no such artifact, in which case schema names it.

Pointer gaps[].pointer JSON pointer to the value within the artifact. Items are addressed by array index.
Trust
Collected in
Trust, audit, and internal runs
Type
string

JSON pointer to the value within the artifact. Items are addressed by array index.

Schema gaps[].schema The schema of the artifact the value belongs in, when the run wrote no such artifact.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The schema of the artifact the value belongs in, when the run wrote no such artifact.

Scope gaps[].scope The account, tenant, or region affected. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

The account, tenant, or region affected. Present at the audit and internal levels only.

Source gaps[].source The file and line in the collector's own source that recorded the gap, relative to its module root, such as internal/collector/system_log...
Trust
Collected in
Trust, audit, and internal runs
Type
string

The file and line in the collector's own source that recorded the gap, relative to its module root, such as internal/collector/system_log.go:155.

Status gaps[].status not_collected when the collector could not read the value. partial when a rollup was left out because some of the items it covers could n...
Trust
Collected in
Trust, audit, and internal runs
Type
value

not_collected when the collector could not read the value. partial when a rollup was left out because some of the items it covers could not be read, or when a list or object holds only the items that could be.

Unmeasured gaps[].unmeasured For a partial gap, the number of items that could not be read. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

For a partial gap, the number of items that could not be read. Present at the audit and internal levels only.

Vendor code gaps[].vendor_code The vendor's own error code, when its response included one.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The vendor's own error code, when its response included one.

Warning gaps[].warning The collector's message to the operator about the gap, redacted. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

The collector's message to the operator about the gap, redacted. Present at the audit and internal levels only.

Operations 2 fields · 1 trust, 1 audit
Calls steps[].operations[].calls Its calls in the step. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

Its calls in the step. Present at the audit and internal levels only.

Name steps[].operations[].name The operation.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The operation.

Outcome 3 fields · from trust
Code outcome.code For a partial run, the code of the first gap other than a not_shared, unsupported, or not_read one, saying why its value was left out.
Trust
Collected in
Trust, audit, and internal runs
Type
value

For a partial run, the code of the first gap other than a not_shared, unsupported, or not_read one, saying why its value was left out.

Owner outcome.owner For a partial run, who can act on that code.
Trust
Collected in
Trust, audit, and internal runs
Type
value

For a partial run, who can act on that code.

Status outcome.status collected when the run read every value its level collects, or partial when it left values out. gaps lists each one. A not_shared or unsu...
Trust
Collected in
Trust, audit, and internal runs
Type
value

collected when the run read every value its level collects, or partial when it left values out. gaps lists each one. A not_shared or unsupported gap does not make a run partial.

Run 6 fields · from trust
Custom ca run.custom_ca True when SSL_CERT_FILE or SSL_CERT_DIR was set for the run.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when SSL_CERT_FILE or SSL_CERT_DIR was set for the run.

Finished at run.finished_at When the run finished, in RFC 3339 UTC.
Trust
Collected in
Trust, audit, and internal runs
Type
string

When the run finished, in RFC 3339 UTC.

Level run.level The level the run collected at, at every level. A reader uses it to tell a value the level left out from one the collector could not read...
Trust
Collected in
Trust, audit, and internal runs
Type
string

The level the run collected at, at every level. A reader uses it to tell a value the level left out from one the collector could not read. Absent from results of older SDKs.

Proxy run.proxy True when a proxy variable such as HTTPS_PROXY was set for the run.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when a proxy variable such as HTTPS_PROXY was set for the run.

Run ID run.run_id The run ID the runner passed in EPACK_RUN_ID. Absent when it passed none.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The run ID the runner passed in EPACK_RUN_ID. Absent when it passed none.

Started at run.started_at When the run started, in RFC 3339 UTC.
Trust
Collected in
Trust, audit, and internal runs
Type
string

When the run started, in RFC 3339 UTC.

Signed in as 8 fields · 6 trust, 2 audit
Auth method signed_in_as.auth_method How the collector proved its identity, such as private_key_jwt for OAuth 2.0 client credentials with a signed key assertion or api_token...
Trust
Collected in
Trust, audit, and internal runs
Type
string

How the collector proved its identity, such as private_key_jwt for OAuth 2.0 client credentials with a signed key assertion or api_token for an API token.

ID signed_in_as.id Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

Present at the audit and internal levels only.

Kind signed_in_as.kind The kind of principal, such as service_app, service_principal, or user.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The kind of principal, such as service_app, service_principal, or user.

Provider signed_in_as.provider The identity system, such as okta or microsoft-entra.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The identity system, such as okta or microsoft-entra.

Read only signed_in_as.read_only Present when the collector can show that its credential could only read.
Trust
Collected in
Trust, audit, and internal runs
Type
value

Present when the collector can show that its credential could only read.

Requested scopes signed_in_as.requested_scopes The scopes the collector asked for. A scope here and missing from scopes was not granted.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

The scopes the collector asked for. A scope here and missing from scopes was not granted.

Scopes signed_in_as.scopes The permissions the sign-in carried.
Trust
Collected in
Trust, audit, and internal runs
Type
list of strings

The permissions the sign-in carried.

Tenant ID signed_in_as.tenant_id The tenant, account, or organization signed in to. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

The tenant, account, or organization signed in to. Present at the audit and internal levels only.

Steps 9 fields · 3 trust, 6 audit
Any failed steps[].any_failed True when an attempt in the step failed: one with an error code or a status of 400 or more.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when an attempt in the step failed: one with an error code or a status of 400 or more.

Calls steps[].calls The calls those requests belong to. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

The calls those requests belong to. Present at the audit and internal levels only.

End ms steps[].end_ms When the step ended, in milliseconds after the run's started_at. A step still open when the collector emitted ended then. Present at the...
Audit
Collected in
Audit and internal runs
Type
integer

When the step ended, in milliseconds after the run's started_at. A step still open when the collector emitted ended then. Present at the audit and internal levels only.

Failed steps[].failed The attempts that failed: those with an error code or a status of 400 or more. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

The attempts that failed: those with an error code or a status of 400 or more. Present at the audit and internal levels only.

Name steps[].name The step's name, such as people. Step names are part of the collector's contract, like operation names.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The step's name, such as people. Step names are part of the collector's contract, like operation names.

Requests steps[].requests The requests sent in the step, including rows left out of calls.requests. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

The requests sent in the step, including rows left out of calls.requests. Present at the audit and internal levels only.

Retries steps[].retries The requests that were retries. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

The requests that were retries. Present at the audit and internal levels only.

Start ms steps[].start_ms When the step started, in milliseconds after the run's started_at. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
integer

When the step started, in milliseconds after the run's started_at. Present at the audit and internal levels only.

Title steps[].title The step's title, such as People and sign-in methods.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The step's title, such as People and sign-in methods.

Unrecognized 3 fields · 2 trust, 1 audit
Count unrecognized[].count How many distinct values the run read that the vocabulary lacks.
Trust
Collected in
Trust, audit, and internal runs
Type
integer

How many distinct values the run read that the vocabulary lacks.

Values unrecognized[].values The first 50 of those values, sorted. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
list of strings

The first 50 of those values, sorted. Present at the audit and internal levels only.

Vocabulary unrecognized[].vocabulary The vocabulary's name, such as okta.event_types.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The vocabulary's name, such as okta.event_types.

Warnings 5 fields · 3 trust, 2 audit
Fix warnings[].fix The one instruction that fixes collection. A warning has at most one of fix, no_action, and choice.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The one instruction that fixes collection. A warning has at most one of fix, no_action, and choice.

Message warnings[].message The collector's message about what happened. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

The collector's message about what happened. Present at the audit and internal levels only.

Missing permission warnings[].missing_permission The permission to grant, in the vendor's own terms.
Trust
Collected in
Trust, audit, and internal runs
Type
string

The permission to grant, in the vendor's own terms.

No action warnings[].no_action True when nothing needs changing now.
Trust
Collected in
Trust, audit, and internal runs
Type
boolean

True when nothing needs changing now.

Scope warnings[].scope The account, tenant, or region affected. Present at the audit and internal levels only.
Audit
Collected in
Audit and internal runs
Type
string

The account, tenant, or region affected. Present at the audit and internal levels only.

Details

Publisher
locktivity
Latest
v0.2.0
Protocol
v1

Platforms

darwin/amd64 darwin/arm64 linux/amd64 linux/arm64

Links