Configuration file reference
Complete reference for all 175 probod JSON and YAML configuration fields
This reference documents 175 fields accepted by the current probod configuration schema. It is generated from pkg/probodconfig, so every serialized field is included.
JSON and YAML use the same field names and hierarchy. Array paths use []; map paths use {name} to represent a user-defined key.
The serialization column describes whether an empty value can be omitted from generated files. It does not by itself indicate whether a value is operationally required.
| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
unit.metrics.addr |
string | Always emitted | — | View field |
unit.tracing.addr |
string | Omitted when empty | — | View field |
unit.tracing.max-batch-size |
integer | Always emitted | — | View field |
unit.tracing.batch-timeout |
integer | Always emitted | — | View field |
unit.tracing.export-timeout |
integer | Always emitted | — | View field |
unit.tracing.max-queue-size |
integer | Always emitted | — | View field |
Core application
Section titled “Core application”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.base-url |
string | Omitted when empty | — | View field |
probod.encryption-key |
string | Always emitted | — | View field |
probod.chrome-dp-addr |
string | Omitted when empty | — | View field |
probod.branding |
boolean | Always emitted | — | View field |
PostgreSQL
Section titled “PostgreSQL”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.pg.addr |
string | Omitted when empty | — | View field |
probod.pg.username |
string | Omitted when empty | — | View field |
probod.pg.password |
string | Omitted when empty | — | View field |
probod.pg.database |
string | Omitted when empty | — | View field |
probod.pg.pool-size |
integer | Always emitted | — | View field |
probod.pg.min-pool-size |
integer | Always emitted | — | View field |
probod.pg.max-conn-idle-time-seconds |
integer | Always emitted | — | View field |
probod.pg.max-conn-lifetime-seconds |
integer | Always emitted | — | View field |
probod.pg.max-conn-lifetime-jitter-seconds |
integer | Always emitted | — | View field |
probod.pg.health-check-period-seconds |
integer | Always emitted | — | View field |
probod.pg.ca-cert-bundle |
string | Omitted when empty | — | View field |
probod.pg.debug |
boolean | Always emitted | — | View field |
| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.api.addr |
string | Omitted when empty | — | View field |
probod.api.proxy-protocol.trusted-proxies |
string[] | Omitted when empty | — | View field |
probod.api.cors.allowed-origins |
string[] | Omitted when empty | — | View field |
probod.api.extra-header-fields |
object | Omitted when empty | — | View field |
probod.api.graphql.parser-token-limit |
integer | Always emitted | — | View field |
probod.api.graphql.complexity-limit |
integer | Always emitted | — | View field |
probod.api.graphql.query-cache-size |
integer | Always emitted | — | View field |
probod.api.graphql.disable-suggestion |
boolean | Always emitted | — | View field |
| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.auth.cookie.domain |
string | Omitted when empty | — | View field |
probod.auth.cookie.secret |
string | Always emitted | — | View field |
probod.auth.cookie.duration |
integer | Always emitted | — | View field |
probod.auth.cookie.name |
string | Omitted when empty | — | View field |
probod.auth.cookie.secure |
boolean | Always emitted | — | View field |
probod.auth.cookie.same-site |
CookieSameSite | Omitted when empty | — | View field |
probod.auth.password.iterations |
integer | Always emitted | — | View field |
probod.auth.password.pepper |
string | Always emitted | — | View field |
probod.auth.disable-signup |
boolean | Always emitted | — | View field |
probod.auth.invitation-confirmation-token-validity |
integer | Always emitted | — | View field |
probod.auth.password-reset-token-validity |
integer | Always emitted | — | View field |
probod.auth.magic-link-token-validity |
integer | Always emitted | — | View field |
probod.auth.email-confirmation-token-validity |
integer | Always emitted | — | View field |
probod.auth.saml.session-duration |
integer | Always emitted | — | View field |
probod.auth.saml.cleanup-interval-seconds |
integer | Always emitted | — | View field |
probod.auth.saml.certificate |
string | Always emitted | — | View field |
probod.auth.saml.private-key |
string | Always emitted | — | View field |
probod.auth.saml.domain-verification-interval-seconds |
integer | Always emitted | — | View field |
probod.auth.saml.domain-verification-resolver-addr |
string | Omitted when empty | — | View field |
probod.auth.google.client-id |
string | Omitted when empty | — | View field |
probod.auth.google.client-secret |
string | Omitted when empty | — | View field |
probod.auth.google.enabled |
boolean | Omitted when empty | — | View field |
probod.auth.microsoft.client-id |
string | Omitted when empty | — | View field |
probod.auth.microsoft.client-secret |
string | Omitted when empty | — | View field |
probod.auth.microsoft.enabled |
boolean | Omitted when empty | — | View field |
probod.auth.oauth2-server.signing-keys[].private-key |
string | Always emitted | — | View field |
probod.auth.oauth2-server.signing-keys[].kid |
string | Always emitted | — | View field |
probod.auth.oauth2-server.signing-keys[].active |
boolean | Always emitted | — | View field |
probod.auth.oauth2-server.access-token-duration |
integer | Always emitted | — | View field |
probod.auth.oauth2-server.refresh-token-duration |
integer | Always emitted | — | View field |
probod.auth.oauth2-server.authorization-code-duration |
integer | Always emitted | — | View field |
probod.auth.oauth2-server.device-code-duration |
integer | Always emitted | — | View field |
probod.auth.oauth2-server.cimd-allowed-client-ids |
string[] | Omitted when empty | — | View field |
| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.itam.device-enrollment-token-validity |
integer | Always emitted | — | View field |
Compliance portal
Section titled “Compliance portal”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.trust-center.http-addr |
string | Omitted when empty | — | View field |
probod.trust-center.https-addr |
string | Omitted when empty | — | View field |
probod.trust-center.base-domain |
string | Omitted when empty | — | View field |
probod.trust-center.proxy-protocol.trusted-proxies |
string[] | Omitted when empty | — | View field |
Object storage
Section titled “Object storage”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.aws.region |
string | Omitted when empty | — | View field |
probod.aws.bucket |
string | Omitted when empty | — | View field |
probod.aws.access-key-id |
string | Omitted when empty | — | View field |
probod.aws.secret-access-key |
string | Omitted when empty | — | View field |
probod.aws.endpoint |
string | Omitted when empty | — | View field |
probod.aws.use-path-style |
boolean | Always emitted | — | View field |
Notifications
Section titled “Notifications”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.notifications.mailer.mailer-interval |
integer | Always emitted | — | View field |
probod.notifications.mailer.sender-name |
string | Omitted when empty | — | View field |
probod.notifications.mailer.sender-email |
string | Omitted when empty | — | View field |
probod.notifications.mailer.smtp.addr |
string | Omitted when empty | — | View field |
probod.notifications.mailer.smtp.user |
string | Omitted when empty | — | View field |
probod.notifications.mailer.smtp.password |
string | Omitted when empty | — | View field |
probod.notifications.mailer.smtp.tls-required |
boolean | Always emitted | — | View field |
probod.notifications.mailer.smtp.hello-name |
string | Omitted when empty | — | View field |
probod.notifications.slack.sender-interval |
integer | Always emitted | — | View field |
probod.notifications.slack.signing-secret |
string | Omitted when empty | — | View field |
probod.notifications.webhook.sender-interval |
integer | Always emitted | — | View field |
probod.notifications.webhook.cache-ttl |
integer | Always emitted | — | View field |
probod.notifications.document.interval |
integer | Always emitted | Interval is how often the worker scans for pending requests. | View field |
probod.notifications.document.debounce-delay |
integer | Always emitted | DebounceDelay is how long a request must have been pending before its first notification is sent. | View field |
probod.notifications.document.reminder-interval |
integer | Always emitted | ReminderInterval is the base reminder cadence in seconds. Reminders are sent at 1x, 2x and 3x this interval after the previous email, then stop. Reminder sends that fall on Saturday or Sunday are deferred to Monday at the same clock time; the first (debounced) notice is unchanged. | View field |
Connectors
Section titled “Connectors”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.connectors[].provider |
string | Always emitted | — | View field |
probod.connectors[].protocol |
connector.ProtocolType | Always emitted | — | View field |
probod.connectors[].config |
object | Omitted when empty | — | View field |
probod.connectors[].settings |
object | Omitted when empty | — | View field |
Connector Endpoints
Section titled “Connector Endpoints”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.connector-endpoints.{name}.auth |
string | Omitted when empty | — | View field |
probod.connector-endpoints.{name}.token |
string | Omitted when empty | — | View field |
probod.connector-endpoints.{name}.probe |
string | Omitted when empty | — | View field |
probod.connector-endpoints.{name}.identity |
string | Omitted when empty | Identity is the host a provider’s driver resolves its real data host from, for providers that split the two. It must move together with Probe — probod refuses to start on a mismatch, because a moved probe with a stale identity host reports healthy while every data call still reaches the real provider. | View field |
probod.connector-endpoints.{name}.api-base |
string | Omitted when empty | — | View field |
AI providers and agents
Section titled “AI providers and agents”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.llm.providers.{name}.type |
string | Always emitted | “openai”, “anthropic”, “bedrock” | View field |
probod.llm.providers.{name}.api-key |
string | Omitted when empty | for OpenAI and Anthropic | View field |
probod.llm.defaults.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.defaults.model-name |
string | Omitted when empty | — | View field |
probod.llm.defaults.temperature |
number | Omitted when empty | — | View field |
probod.llm.defaults.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.probo.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.probo.model-name |
string | Omitted when empty | — | View field |
probod.llm.probo.temperature |
number | Omitted when empty | — | View field |
probod.llm.probo.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.evidence-describer.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.evidence-describer.model-name |
string | Omitted when empty | — | View field |
probod.llm.evidence-describer.temperature |
number | Omitted when empty | — | View field |
probod.llm.evidence-describer.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.third-party-vetter.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.third-party-vetter.model-name |
string | Omitted when empty | — | View field |
probod.llm.third-party-vetter.temperature |
number | Omitted when empty | — | View field |
probod.llm.third-party-vetter.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.third-party-disambiguation.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.third-party-disambiguation.model-name |
string | Omitted when empty | — | View field |
probod.llm.third-party-disambiguation.temperature |
number | Omitted when empty | — | View field |
probod.llm.third-party-disambiguation.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.tracker-mapping.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.tracker-mapping.model-name |
string | Omitted when empty | — | View field |
probod.llm.tracker-mapping.temperature |
number | Omitted when empty | — | View field |
probod.llm.tracker-mapping.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.tracker-enrichment.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.tracker-enrichment.model-name |
string | Omitted when empty | — | View field |
probod.llm.tracker-enrichment.temperature |
number | Omitted when empty | — | View field |
probod.llm.tracker-enrichment.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.common-third-party-enrichment.provider |
string | Omitted when empty | key into AgentsConfig.Providers | View field |
probod.llm.common-third-party-enrichment.model-name |
string | Omitted when empty | — | View field |
probod.llm.common-third-party-enrichment.temperature |
number | Omitted when empty | — | View field |
probod.llm.common-third-party-enrichment.max-tokens |
integer | Omitted when empty | — | View field |
probod.llm.tools.firecrawl-api-key |
string | Omitted when empty | — | View field |
Evidence Describer
Section titled “Evidence Describer”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.evidence-describer.interval |
integer | Always emitted | seconds between polls | View field |
probod.evidence-describer.stale-after |
integer | Always emitted | seconds before a claim is recycled | View field |
probod.evidence-describer.max-concurrency |
integer | Always emitted | — | View field |
Third Party Vetting Worker
Section titled “Third Party Vetting Worker”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.third-party-vetting-worker.interval |
integer | Always emitted | seconds between polls | View field |
probod.third-party-vetting-worker.stale-after |
integer | Always emitted | seconds before a claim is recycled | View field |
probod.third-party-vetting-worker.max-concurrency |
integer | Always emitted | — | View field |
Tracker Mapping Worker
Section titled “Tracker Mapping Worker”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.tracker-mapping-worker.interval |
integer | Always emitted | seconds between polls | View field |
probod.tracker-mapping-worker.max-concurrency |
integer | Always emitted | — | View field |
probod.tracker-mapping-worker.stale-after |
integer | Always emitted | seconds before a claim is recycled | View field |
probod.tracker-mapping-worker.agent-timeout |
integer | Always emitted | seconds, single agent run | View field |
probod.tracker-mapping-worker.agent-max-turns |
integer | Always emitted | — | View field |
probod.tracker-mapping-worker.disambiguation-agent-timeout |
integer | Always emitted | seconds, single disambiguation run | View field |
Common Pattern Enrichment Worker
Section titled “Common Pattern Enrichment Worker”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.common-pattern-enrichment-worker.interval |
integer | Always emitted | seconds between polls | View field |
probod.common-pattern-enrichment-worker.max-concurrency |
integer | Always emitted | — | View field |
probod.common-pattern-enrichment-worker.stale-after |
integer | Always emitted | seconds before a claim is recycled | View field |
probod.common-pattern-enrichment-worker.agent-timeout |
integer | Always emitted | seconds, single agent run | View field |
probod.common-pattern-enrichment-worker.agent-max-turns |
integer | Always emitted | — | View field |
Common Third Party Enrichment Worker
Section titled “Common Third Party Enrichment Worker”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.common-third-party-enrichment-worker.interval |
integer | Always emitted | seconds between polls | View field |
probod.common-third-party-enrichment-worker.max-concurrency |
integer | Always emitted | — | View field |
probod.common-third-party-enrichment-worker.stale-after |
integer | Always emitted | seconds before a claim is recycled | View field |
probod.common-third-party-enrichment-worker.agent-timeout |
integer | Always emitted | seconds, single agent run | View field |
probod.common-third-party-enrichment-worker.agent-max-turns |
integer | Always emitted | — | View field |
probod.common-third-party-enrichment-worker.confidence-threshold |
number | Always emitted | — | View field |
probod.common-third-party-enrichment-worker.max-attempts |
integer | Always emitted | — | View field |
Custom Domains
Section titled “Custom Domains”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.custom-domains.renewal-interval |
integer | Always emitted | — | View field |
probod.custom-domains.provision-interval |
integer | Always emitted | — | View field |
probod.custom-domains.resolver-addr |
string | Omitted when empty | — | View field |
probod.custom-domains.cname-target |
string | Always emitted | — | View field |
probod.custom-domains.caa-issuer-domain |
string | Always emitted | — | View field |
probod.custom-domains.acme.directory |
string | Omitted when empty | — | View field |
probod.custom-domains.acme.email |
string | Omitted when empty | — | View field |
probod.custom-domains.acme.key-type |
string | Omitted when empty | — | View field |
probod.custom-domains.acme.account-key |
string | Omitted when empty | — | View field |
probod.custom-domains.acme.root-ca |
string | Omitted when empty | — | View field |
SCIM Bridge
Section titled “SCIM Bridge”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.scim-bridge.sync-interval |
integer | Always emitted | — | View field |
probod.scim-bridge.poll-interval |
integer | Always emitted | — | View field |
Electronic signatures
Section titled “Electronic signatures”| Field | Type | Serialization | Description | Source |
|---|---|---|---|---|
probod.esign.tsa-url |
string | Omitted when empty | — | View field |
Connector configuration variants
Section titled “Connector configuration variants”probod.connectors[].config depends on the connector protocol:
| Variant | Field | Type | Serialization | Source |
|---|---|---|---|---|
| OAuth 2.0 | probod.connectors[].config.client-id |
string | Always emitted | View field |
| OAuth 2.0 | probod.connectors[].config.client-secret |
string | Always emitted | View field |
| OAuth 2.0 | probod.connectors[].config.integration-slug |
string | Omitted when empty | View field |
| Managed API key | probod.connectors[].config.api-key |
string | Always emitted | View field |
| Managed API key | probod.connectors[].config.resource-id |
string | Omitted when empty | View field |
Connector settings is a provider-specific object and therefore has no fixed set of child fields in the shared configuration schema.