ArchiveBox/docs/apidocs/archivebox/archivebox.config.common.md

57 KiB

{py:mod}archivebox.config.common

:allowtitles:

Module Contents

Classes

:class: autosummary longtable
:align: left

* - {py:obj}`ShellConfig <archivebox.config.common.ShellConfig>`
  -
* - {py:obj}`StorageConfig <archivebox.config.common.StorageConfig>`
  -
* - {py:obj}`GeneralConfig <archivebox.config.common.GeneralConfig>`
  -
* - {py:obj}`ServerConfig <archivebox.config.common.ServerConfig>`
  -
* - {py:obj}`DatabaseConfig <archivebox.config.common.DatabaseConfig>`
  -
* - {py:obj}`ArchivingConfig <archivebox.config.common.ArchivingConfig>`
  -
* - {py:obj}`SearchBackendConfig <archivebox.config.common.SearchBackendConfig>`
  -
* - {py:obj}`ArchiveBoxBaseConfig <archivebox.config.common.ArchiveBoxBaseConfig>`
  - ```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig
    :summary:
    ```

Functions

:class: autosummary longtable
:align: left

* - {py:obj}`_legacy_bool <archivebox.config.common._legacy_bool>`
  - ```{autodoc2-docstring} archivebox.config.common._legacy_bool
    :summary:
    ```
* - {py:obj}`permissions_from_legacy_public_flags <archivebox.config.common.permissions_from_legacy_public_flags>`
  - ```{autodoc2-docstring} archivebox.config.common.permissions_from_legacy_public_flags
    :summary:
    ```
* - {py:obj}`resolve_delete_after_config_value <archivebox.config.common.resolve_delete_after_config_value>`
  - ```{autodoc2-docstring} archivebox.config.common.resolve_delete_after_config_value
    :summary:
    ```
* - {py:obj}`_plugin_sensitive_config_keys <archivebox.config.common._plugin_sensitive_config_keys>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_sensitive_config_keys
    :summary:
    ```
* - {py:obj}`is_sensitive_config_key <archivebox.config.common.is_sensitive_config_key>`
  - ```{autodoc2-docstring} archivebox.config.common.is_sensitive_config_key
    :summary:
    ```
* - {py:obj}`redact_sensitive_config <archivebox.config.common.redact_sensitive_config>`
  - ```{autodoc2-docstring} archivebox.config.common.redact_sensitive_config
    :summary:
    ```
* - {py:obj}`normalize_runtime_config <archivebox.config.common.normalize_runtime_config>`
  - ```{autodoc2-docstring} archivebox.config.common.normalize_runtime_config
    :summary:
    ```
* - {py:obj}`build_crawl_config_snapshot <archivebox.config.common.build_crawl_config_snapshot>`
  - ```{autodoc2-docstring} archivebox.config.common.build_crawl_config_snapshot
    :summary:
    ```
* - {py:obj}`rprint <archivebox.config.common.rprint>`
  - ```{autodoc2-docstring} archivebox.config.common.rprint
    :summary:
    ```
* - {py:obj}`parse_delete_after <archivebox.config.common.parse_delete_after>`
  - ```{autodoc2-docstring} archivebox.config.common.parse_delete_after
    :summary:
    ```
* - {py:obj}`_plugin_user_config_value <archivebox.config.common._plugin_user_config_value>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_user_config_value
    :summary:
    ```
* - {py:obj}`_plugin_user_config <archivebox.config.common._plugin_user_config>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_user_config
    :summary:
    ```
* - {py:obj}`_plugin_input_config <archivebox.config.common._plugin_input_config>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_input_config
    :summary:
    ```
* - {py:obj}`_explicit_plugin_enabled_keys <archivebox.config.common._explicit_plugin_enabled_keys>`
  - ```{autodoc2-docstring} archivebox.config.common._explicit_plugin_enabled_keys
    :summary:
    ```
* - {py:obj}`_discover_plugin_config_schemas <archivebox.config.common._discover_plugin_config_schemas>`
  - ```{autodoc2-docstring} archivebox.config.common._discover_plugin_config_schemas
    :summary:
    ```
* - {py:obj}`_plugin_config_properties <archivebox.config.common._plugin_config_properties>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_config_properties
    :summary:
    ```
* - {py:obj}`_plugin_config_model <archivebox.config.common._plugin_config_model>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_config_model
    :summary:
    ```
* - {py:obj}`_archivebox_config_input_names <archivebox.config.common._archivebox_config_input_names>`
  - ```{autodoc2-docstring} archivebox.config.common._archivebox_config_input_names
    :summary:
    ```
* - {py:obj}`_build_archivebox_config_model <archivebox.config.common._build_archivebox_config_model>`
  - ```{autodoc2-docstring} archivebox.config.common._build_archivebox_config_model
    :summary:
    ```
* - {py:obj}`_normalize_plugins_config_value <archivebox.config.common._normalize_plugins_config_value>`
  - ```{autodoc2-docstring} archivebox.config.common._normalize_plugins_config_value
    :summary:
    ```
* - {py:obj}`_plugin_enabled_config_keys <archivebox.config.common._plugin_enabled_config_keys>`
  - ```{autodoc2-docstring} archivebox.config.common._plugin_enabled_config_keys
    :summary:
    ```
* - {py:obj}`get_live_config_url <archivebox.config.common.get_live_config_url>`
  - ```{autodoc2-docstring} archivebox.config.common.get_live_config_url
    :summary:
    ```
* - {py:obj}`config_field_metadata <archivebox.config.common.config_field_metadata>`
  - ```{autodoc2-docstring} archivebox.config.common.config_field_metadata
    :summary:
    ```
* - {py:obj}`find_config_section <archivebox.config.common.find_config_section>`
  - ```{autodoc2-docstring} archivebox.config.common.find_config_section
    :summary:
    ```
* - {py:obj}`find_config_default <archivebox.config.common.find_config_default>`
  - ```{autodoc2-docstring} archivebox.config.common.find_config_default
    :summary:
    ```
* - {py:obj}`config_field_type <archivebox.config.common.config_field_type>`
  - ```{autodoc2-docstring} archivebox.config.common.config_field_type
    :summary:
    ```
* - {py:obj}`find_config_type <archivebox.config.common.find_config_type>`
  - ```{autodoc2-docstring} archivebox.config.common.find_config_type
    :summary:
    ```
* - {py:obj}`find_config_source <archivebox.config.common.find_config_source>`
  - ```{autodoc2-docstring} archivebox.config.common.find_config_source
    :summary:
    ```
* - {py:obj}`get_request_config <archivebox.config.common.get_request_config>`
  - ```{autodoc2-docstring} archivebox.config.common.get_request_config
    :summary:
    ```
* - {py:obj}`get_config <archivebox.config.common.get_config>`
  - ```{autodoc2-docstring} archivebox.config.common.get_config
    :summary:
    ```
* - {py:obj}`get_all_configs <archivebox.config.common.get_all_configs>`
  - ```{autodoc2-docstring} archivebox.config.common.get_all_configs
    :summary:
    ```

Data

:class: autosummary longtable
:align: left

* - {py:obj}`ConfigOverrides <archivebox.config.common.ConfigOverrides>`
  - ```{autodoc2-docstring} archivebox.config.common.ConfigOverrides
    :summary:
    ```
* - {py:obj}`ConfigPayload <archivebox.config.common.ConfigPayload>`
  - ```{autodoc2-docstring} archivebox.config.common.ConfigPayload
    :summary:
    ```
* - {py:obj}`PluginSchemaDocuments <archivebox.config.common.PluginSchemaDocuments>`
  - ```{autodoc2-docstring} archivebox.config.common.PluginSchemaDocuments
    :summary:
    ```
* - {py:obj}`LIVE_CONFIG_BASE_URL <archivebox.config.common.LIVE_CONFIG_BASE_URL>`
  - ```{autodoc2-docstring} archivebox.config.common.LIVE_CONFIG_BASE_URL
    :summary:
    ```
* - {py:obj}`_STDOUT_CONSOLE <archivebox.config.common._STDOUT_CONSOLE>`
  - ```{autodoc2-docstring} archivebox.config.common._STDOUT_CONSOLE
    :summary:
    ```
* - {py:obj}`_STDERR_CONSOLE <archivebox.config.common._STDERR_CONSOLE>`
  - ```{autodoc2-docstring} archivebox.config.common._STDERR_CONSOLE
    :summary:
    ```
* - {py:obj}`_WARNED_ARCHIVING_CONFIGS <archivebox.config.common._WARNED_ARCHIVING_CONFIGS>`
  - ```{autodoc2-docstring} archivebox.config.common._WARNED_ARCHIVING_CONFIGS
    :summary:
    ```
* - {py:obj}`_SENSITIVE_CONFIG_KEY_NEEDLES <archivebox.config.common._SENSITIVE_CONFIG_KEY_NEEDLES>`
  - ```{autodoc2-docstring} archivebox.config.common._SENSITIVE_CONFIG_KEY_NEEDLES
    :summary:
    ```
* - {py:obj}`SENSITIVE_CONFIG_VALUE_REDACTED <archivebox.config.common.SENSITIVE_CONFIG_VALUE_REDACTED>`
  - ```{autodoc2-docstring} archivebox.config.common.SENSITIVE_CONFIG_VALUE_REDACTED
    :summary:
    ```
* - {py:obj}`_SCOPE_CRAWL_FROZEN <archivebox.config.common._SCOPE_CRAWL_FROZEN>`
  - ```{autodoc2-docstring} archivebox.config.common._SCOPE_CRAWL_FROZEN
    :summary:
    ```
* - {py:obj}`_SCOPE_CRAWL_EXECUTION <archivebox.config.common._SCOPE_CRAWL_EXECUTION>`
  - ```{autodoc2-docstring} archivebox.config.common._SCOPE_CRAWL_EXECUTION
    :summary:
    ```
* - {py:obj}`_SCOPE_SERVER <archivebox.config.common._SCOPE_SERVER>`
  - ```{autodoc2-docstring} archivebox.config.common._SCOPE_SERVER
    :summary:
    ```
* - {py:obj}`PLUGIN_CONFIG_SCHEMAS <archivebox.config.common.PLUGIN_CONFIG_SCHEMAS>`
  - ```{autodoc2-docstring} archivebox.config.common.PLUGIN_CONFIG_SCHEMAS
    :summary:
    ```
* - {py:obj}`ArchiveBoxConfig <archivebox.config.common.ArchiveBoxConfig>`
  - ```{autodoc2-docstring} archivebox.config.common.ArchiveBoxConfig
    :summary:
    ```

API

:canonical: archivebox.config.common.ConfigOverrides
:value: >
   None

```{autodoc2-docstring} archivebox.config.common.ConfigOverrides
```

:canonical: archivebox.config.common.ConfigPayload
:value: >
   None

```{autodoc2-docstring} archivebox.config.common.ConfigPayload
```

:canonical: archivebox.config.common.PluginSchemaDocuments
:value: >
   None

```{autodoc2-docstring} archivebox.config.common.PluginSchemaDocuments
```

:canonical: archivebox.config.common.LIVE_CONFIG_BASE_URL
:value: >
   '/admin/environment/config/'

```{autodoc2-docstring} archivebox.config.common.LIVE_CONFIG_BASE_URL
```

:canonical: archivebox.config.common._STDOUT_CONSOLE
:value: >
   'Console(...)'

```{autodoc2-docstring} archivebox.config.common._STDOUT_CONSOLE
```

:canonical: archivebox.config.common._STDERR_CONSOLE
:value: >
   'Console(...)'

```{autodoc2-docstring} archivebox.config.common._STDERR_CONSOLE
```

:canonical: archivebox.config.common._WARNED_ARCHIVING_CONFIGS
:type: set[tuple[int, bool]]
:value: >
   'set(...)'

```{autodoc2-docstring} archivebox.config.common._WARNED_ARCHIVING_CONFIGS
```

:canonical: archivebox.config.common._legacy_bool

```{autodoc2-docstring} archivebox.config.common._legacy_bool
```
:canonical: archivebox.config.common.permissions_from_legacy_public_flags

```{autodoc2-docstring} archivebox.config.common.permissions_from_legacy_public_flags
```
:canonical: archivebox.config.common.resolve_delete_after_config_value

```{autodoc2-docstring} archivebox.config.common.resolve_delete_after_config_value
```
:canonical: archivebox.config.common._SENSITIVE_CONFIG_KEY_NEEDLES
:value: >
   ('TOKEN', 'SECRET', 'API_KEY', 'APIKEY', 'PASSWORD')

```{autodoc2-docstring} archivebox.config.common._SENSITIVE_CONFIG_KEY_NEEDLES
```

:canonical: archivebox.config.common.SENSITIVE_CONFIG_VALUE_REDACTED
:value: >
   '********'

```{autodoc2-docstring} archivebox.config.common.SENSITIVE_CONFIG_VALUE_REDACTED
```

:canonical: archivebox.config.common._SCOPE_CRAWL_FROZEN
:value: >
   'crawl_frozen'

```{autodoc2-docstring} archivebox.config.common._SCOPE_CRAWL_FROZEN
```

:canonical: archivebox.config.common._SCOPE_CRAWL_EXECUTION
:value: >
   'crawl_execution'

```{autodoc2-docstring} archivebox.config.common._SCOPE_CRAWL_EXECUTION
```

:canonical: archivebox.config.common._SCOPE_SERVER
:value: >
   'server'

```{autodoc2-docstring} archivebox.config.common._SCOPE_SERVER
```

:canonical: archivebox.config.common._plugin_sensitive_config_keys

```{autodoc2-docstring} archivebox.config.common._plugin_sensitive_config_keys
```
:canonical: archivebox.config.common.is_sensitive_config_key

```{autodoc2-docstring} archivebox.config.common.is_sensitive_config_key
```
:canonical: archivebox.config.common.redact_sensitive_config

```{autodoc2-docstring} archivebox.config.common.redact_sensitive_config
```
:canonical: archivebox.config.common.normalize_runtime_config

```{autodoc2-docstring} archivebox.config.common.normalize_runtime_config
```
:canonical: archivebox.config.common.build_crawl_config_snapshot

```{autodoc2-docstring} archivebox.config.common.build_crawl_config_snapshot
```
:canonical: archivebox.config.common.rprint

```{autodoc2-docstring} archivebox.config.common.rprint
```
:canonical: archivebox.config.common.ShellConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.ShellConfig.toml_section_header
:type: str
:value: >
   'SHELL_CONFIG'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.ShellConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig._scope
```

````

````{py:attribute} DEBUG
:canonical: archivebox.config.common.ShellConfig.DEBUG
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.DEBUG
```

````

````{py:attribute} IS_TTY
:canonical: archivebox.config.common.ShellConfig.IS_TTY
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.IS_TTY
```

````

````{py:attribute} USE_COLOR
:canonical: archivebox.config.common.ShellConfig.USE_COLOR
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.USE_COLOR
```

````

````{py:attribute} SHOW_PROGRESS
:canonical: archivebox.config.common.ShellConfig.SHOW_PROGRESS
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.SHOW_PROGRESS
```

````

````{py:attribute} IN_DOCKER
:canonical: archivebox.config.common.ShellConfig.IN_DOCKER
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.IN_DOCKER
```

````

````{py:attribute} IN_QEMU
:canonical: archivebox.config.common.ShellConfig.IN_QEMU
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.IN_QEMU
```

````

````{py:attribute} ANSI
:canonical: archivebox.config.common.ShellConfig.ANSI
:type: dict[str, str]
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ShellConfig.ANSI
```

````

````{py:property} TERM_WIDTH
:canonical: archivebox.config.common.ShellConfig.TERM_WIDTH
:type: int

```{autodoc2-docstring} archivebox.config.common.ShellConfig.TERM_WIDTH
```

````

````{py:property} COMMIT_HASH
:canonical: archivebox.config.common.ShellConfig.COMMIT_HASH
:type: str | None

```{autodoc2-docstring} archivebox.config.common.ShellConfig.COMMIT_HASH
```

````

````{py:property} BUILD_TIME
:canonical: archivebox.config.common.ShellConfig.BUILD_TIME
:type: str

```{autodoc2-docstring} archivebox.config.common.ShellConfig.BUILD_TIME
```

````

:canonical: archivebox.config.common.StorageConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.StorageConfig.toml_section_header
:type: str
:value: >
   'STORAGE_CONFIG'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.StorageConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig._scope
```

````

````{py:attribute} TMP_DIR
:canonical: archivebox.config.common.StorageConfig.TMP_DIR
:type: pathlib.Path
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.TMP_DIR
```

````

````{py:attribute} ABXPKG_LIB_DIR
:canonical: archivebox.config.common.StorageConfig.ABXPKG_LIB_DIR
:type: pathlib.Path
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.ABXPKG_LIB_DIR
```

````

````{py:attribute} OUTPUT_PERMISSIONS
:canonical: archivebox.config.common.StorageConfig.OUTPUT_PERMISSIONS
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.OUTPUT_PERMISSIONS
```

````

````{py:attribute} ENFORCE_ATOMIC_WRITES
:canonical: archivebox.config.common.StorageConfig.ENFORCE_ATOMIC_WRITES
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.ENFORCE_ATOMIC_WRITES
```

````

````{py:attribute} ALLOW_NO_UNIX_SOCKETS
:canonical: archivebox.config.common.StorageConfig.ALLOW_NO_UNIX_SOCKETS
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.StorageConfig.ALLOW_NO_UNIX_SOCKETS
```

````

:canonical: archivebox.config.common.GeneralConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.GeneralConfig.toml_section_header
:type: str
:value: >
   'GENERAL_CONFIG'

```{autodoc2-docstring} archivebox.config.common.GeneralConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.GeneralConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.GeneralConfig._scope
```

````

````{py:attribute} TAG_SEPARATOR_PATTERN
:canonical: archivebox.config.common.GeneralConfig.TAG_SEPARATOR_PATTERN
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.GeneralConfig.TAG_SEPARATOR_PATTERN
```

````

:canonical: archivebox.config.common.ServerConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.ServerConfig.toml_section_header
:type: str
:value: >
   'SERVER_CONFIG'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.ServerConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig._scope
```

````

````{py:attribute} SERVER_SECURITY_MODES
:canonical: archivebox.config.common.ServerConfig.SERVER_SECURITY_MODES
:type: typing.ClassVar[tuple[str, ...]]
:value: >
   ('safe-subdomains-fullreplay', 'safe-onedomain-nojsreplay', 'unsafe-onedomain-noadmin', 'danger-oned...

```{autodoc2-docstring} archivebox.config.common.ServerConfig.SERVER_SECURITY_MODES
```

````

````{py:attribute} SECRET_KEY
:canonical: archivebox.config.common.ServerConfig.SECRET_KEY
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.SECRET_KEY
```

````

````{py:attribute} BIND_ADDR
:canonical: archivebox.config.common.ServerConfig.BIND_ADDR
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.BIND_ADDR
```

````

````{py:attribute} BASE_URL
:canonical: archivebox.config.common.ServerConfig.BASE_URL
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.BASE_URL
```

````

````{py:attribute} ALLOWED_HOSTS
:canonical: archivebox.config.common.ServerConfig.ALLOWED_HOSTS
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.ALLOWED_HOSTS
```

````

````{py:attribute} CSRF_TRUSTED_ORIGINS
:canonical: archivebox.config.common.ServerConfig.CSRF_TRUSTED_ORIGINS
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.CSRF_TRUSTED_ORIGINS
```

````

````{py:attribute} SERVER_SECURITY_MODE
:canonical: archivebox.config.common.ServerConfig.SERVER_SECURITY_MODE
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.SERVER_SECURITY_MODE
```

````

````{py:attribute} SNAPSHOTS_PER_PAGE
:canonical: archivebox.config.common.ServerConfig.SNAPSHOTS_PER_PAGE
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.SNAPSHOTS_PER_PAGE
```

````

````{py:attribute} FOOTER_INFO
:canonical: archivebox.config.common.ServerConfig.FOOTER_INFO
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.FOOTER_INFO
```

````

````{py:attribute} PUBLIC_INDEX
:canonical: archivebox.config.common.ServerConfig.PUBLIC_INDEX
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.PUBLIC_INDEX
```

````

````{py:attribute} PUBLIC_ADD_VIEW
:canonical: archivebox.config.common.ServerConfig.PUBLIC_ADD_VIEW
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.PUBLIC_ADD_VIEW
```

````

````{py:attribute} ADMIN_USERNAME
:canonical: archivebox.config.common.ServerConfig.ADMIN_USERNAME
:type: str | None
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.ADMIN_USERNAME
```

````

````{py:attribute} ADMIN_PASSWORD
:canonical: archivebox.config.common.ServerConfig.ADMIN_PASSWORD
:type: str | None
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.ADMIN_PASSWORD
```

````

````{py:attribute} REVERSE_PROXY_USER_HEADER
:canonical: archivebox.config.common.ServerConfig.REVERSE_PROXY_USER_HEADER
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.REVERSE_PROXY_USER_HEADER
```

````

````{py:attribute} REVERSE_PROXY_WHITELIST
:canonical: archivebox.config.common.ServerConfig.REVERSE_PROXY_WHITELIST
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.REVERSE_PROXY_WHITELIST
```

````

````{py:attribute} LOGOUT_REDIRECT_URL
:canonical: archivebox.config.common.ServerConfig.LOGOUT_REDIRECT_URL
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ServerConfig.LOGOUT_REDIRECT_URL
```

````

````{py:method} validate_server_security_mode(v: str) -> str
:canonical: archivebox.config.common.ServerConfig.validate_server_security_mode

```{autodoc2-docstring} archivebox.config.common.ServerConfig.validate_server_security_mode
```

````

````{py:property} USES_SUBDOMAIN_ROUTING
:canonical: archivebox.config.common.ServerConfig.USES_SUBDOMAIN_ROUTING
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.USES_SUBDOMAIN_ROUTING
```

````

````{py:property} ENABLES_FULL_JS_REPLAY
:canonical: archivebox.config.common.ServerConfig.ENABLES_FULL_JS_REPLAY
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.ENABLES_FULL_JS_REPLAY
```

````

````{py:property} CONTROL_PLANE_ENABLED
:canonical: archivebox.config.common.ServerConfig.CONTROL_PLANE_ENABLED
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.CONTROL_PLANE_ENABLED
```

````

````{py:property} BLOCK_UNSAFE_METHODS
:canonical: archivebox.config.common.ServerConfig.BLOCK_UNSAFE_METHODS
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.BLOCK_UNSAFE_METHODS
```

````

````{py:property} SHOULD_NEUTER_RISKY_REPLAY
:canonical: archivebox.config.common.ServerConfig.SHOULD_NEUTER_RISKY_REPLAY
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.SHOULD_NEUTER_RISKY_REPLAY
```

````

````{py:property} IS_UNSAFE_MODE
:canonical: archivebox.config.common.ServerConfig.IS_UNSAFE_MODE
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.IS_UNSAFE_MODE
```

````

````{py:property} IS_DANGEROUS_MODE
:canonical: archivebox.config.common.ServerConfig.IS_DANGEROUS_MODE
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.IS_DANGEROUS_MODE
```

````

````{py:property} IS_LOWER_SECURITY_MODE
:canonical: archivebox.config.common.ServerConfig.IS_LOWER_SECURITY_MODE
:type: bool

```{autodoc2-docstring} archivebox.config.common.ServerConfig.IS_LOWER_SECURITY_MODE
```

````

:canonical: archivebox.config.common.DatabaseConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.DatabaseConfig.toml_section_header
:type: str
:value: >
   'DATABASE_CONFIG'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.DatabaseConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig._scope
```

````

````{py:attribute} DATABASE_NAME
:canonical: archivebox.config.common.DatabaseConfig.DATABASE_NAME
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.DATABASE_NAME
```

````

````{py:attribute} SQLITE_JOURNAL_MODE
:canonical: archivebox.config.common.DatabaseConfig.SQLITE_JOURNAL_MODE
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.SQLITE_JOURNAL_MODE
```

````

````{py:attribute} SQLITE_MMAP_SIZE
:canonical: archivebox.config.common.DatabaseConfig.SQLITE_MMAP_SIZE
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.SQLITE_MMAP_SIZE
```

````

````{py:attribute} SQLITE_BUSY_TIMEOUT
:canonical: archivebox.config.common.DatabaseConfig.SQLITE_BUSY_TIMEOUT
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.SQLITE_BUSY_TIMEOUT
```

````

````{py:attribute} SQLITE_LOCK_RETRY_TIMEOUT
:canonical: archivebox.config.common.DatabaseConfig.SQLITE_LOCK_RETRY_TIMEOUT
:type: float
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.SQLITE_LOCK_RETRY_TIMEOUT
```

````

````{py:attribute} SQLITE_LOCK_RETRY_INTERVAL
:canonical: archivebox.config.common.DatabaseConfig.SQLITE_LOCK_RETRY_INTERVAL
:type: float
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.DatabaseConfig.SQLITE_LOCK_RETRY_INTERVAL
```

````

:canonical: archivebox.config.common.ArchivingConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.ArchivingConfig.toml_section_header
:type: str
:value: >
   'ARCHIVING_CONFIG'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.ArchivingConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig._scope
```

````

````{py:attribute} PLUGINS
:canonical: archivebox.config.common.ArchivingConfig.PLUGINS
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.PLUGINS
```

````

````{py:attribute} ONLY_NEW
:canonical: archivebox.config.common.ArchivingConfig.ONLY_NEW
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.ONLY_NEW
```

````

````{py:attribute} INDEX_ONLY
:canonical: archivebox.config.common.ArchivingConfig.INDEX_ONLY
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.INDEX_ONLY
```

````

````{py:attribute} TIMEOUT
:canonical: archivebox.config.common.ArchivingConfig.TIMEOUT
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.TIMEOUT
```

````

````{py:attribute} CRAWL_MAX_URLS
:canonical: archivebox.config.common.ArchivingConfig.CRAWL_MAX_URLS
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.CRAWL_MAX_URLS
```

````

````{py:attribute} CRAWL_MAX_SIZE
:canonical: archivebox.config.common.ArchivingConfig.CRAWL_MAX_SIZE
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.CRAWL_MAX_SIZE
```

````

````{py:attribute} CRAWL_TIMEOUT
:canonical: archivebox.config.common.ArchivingConfig.CRAWL_TIMEOUT
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.CRAWL_TIMEOUT
```

````

````{py:attribute} CRAWL_MAX_CONCURRENT_SNAPSHOTS
:canonical: archivebox.config.common.ArchivingConfig.CRAWL_MAX_CONCURRENT_SNAPSHOTS
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.CRAWL_MAX_CONCURRENT_SNAPSHOTS
```

````

````{py:attribute} SNAPSHOT_MAX_SIZE
:canonical: archivebox.config.common.ArchivingConfig.SNAPSHOT_MAX_SIZE
:type: int
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.SNAPSHOT_MAX_SIZE
```

````

````{py:attribute} RESOLUTION
:canonical: archivebox.config.common.ArchivingConfig.RESOLUTION
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.RESOLUTION
```

````

````{py:attribute} CHECK_SSL_VALIDITY
:canonical: archivebox.config.common.ArchivingConfig.CHECK_SSL_VALIDITY
:type: bool
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.CHECK_SSL_VALIDITY
```

````

````{py:attribute} USER_AGENT
:canonical: archivebox.config.common.ArchivingConfig.USER_AGENT
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.USER_AGENT
```

````

````{py:attribute} COOKIES_FILE
:canonical: archivebox.config.common.ArchivingConfig.COOKIES_FILE
:type: pathlib.Path | None
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.COOKIES_FILE
```

````

````{py:attribute} URL_DENYLIST
:canonical: archivebox.config.common.ArchivingConfig.URL_DENYLIST
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.URL_DENYLIST
```

````

````{py:attribute} URL_ALLOWLIST
:canonical: archivebox.config.common.ArchivingConfig.URL_ALLOWLIST
:type: str | None
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.URL_ALLOWLIST
```

````

````{py:attribute} DEFAULT_PERSONA
:canonical: archivebox.config.common.ArchivingConfig.DEFAULT_PERSONA
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.DEFAULT_PERSONA
```

````

````{py:attribute} PERMISSIONS
:canonical: archivebox.config.common.ArchivingConfig.PERMISSIONS
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.PERMISSIONS
```

````

````{py:attribute} DELETE_AFTER
:canonical: archivebox.config.common.ArchivingConfig.DELETE_AFTER
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.DELETE_AFTER
```

````

````{py:method} warn_if_invalid() -> None
:canonical: archivebox.config.common.ArchivingConfig.warn_if_invalid

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.warn_if_invalid
```

````

````{py:method} validate_check_ssl_validity(v)
:canonical: archivebox.config.common.ArchivingConfig.validate_check_ssl_validity

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.validate_check_ssl_validity
```

````

````{py:method} validate_delete_after(value)
:canonical: archivebox.config.common.ArchivingConfig.validate_delete_after
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.validate_delete_after
```

````

````{py:method} validate_permissions(value)
:canonical: archivebox.config.common.ArchivingConfig.validate_permissions
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.validate_permissions
```

````

````{py:property} URL_ALLOWLIST_PTN
:canonical: archivebox.config.common.ArchivingConfig.URL_ALLOWLIST_PTN
:type: re.Pattern | None

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.URL_ALLOWLIST_PTN
```

````

````{py:property} URL_DENYLIST_PTN
:canonical: archivebox.config.common.ArchivingConfig.URL_DENYLIST_PTN
:type: re.Pattern

```{autodoc2-docstring} archivebox.config.common.ArchivingConfig.URL_DENYLIST_PTN
```

````

:canonical: archivebox.config.common.parse_delete_after

```{autodoc2-docstring} archivebox.config.common.parse_delete_after
```
:canonical: archivebox.config.common.SearchBackendConfig

Bases: {py:obj}`archivebox.config.configset.BaseConfigSet`

````{py:attribute} toml_section_header
:canonical: archivebox.config.common.SearchBackendConfig.toml_section_header
:type: str
:value: >
   'SEARCH_BACKEND_CONFIG'

```{autodoc2-docstring} archivebox.config.common.SearchBackendConfig.toml_section_header
```

````

````{py:attribute} _scope
:canonical: archivebox.config.common.SearchBackendConfig._scope
:type: str
:value: >
   'PrivateAttr(...)'

```{autodoc2-docstring} archivebox.config.common.SearchBackendConfig._scope
```

````

````{py:attribute} SEARCH_BACKEND_ENGINE
:canonical: archivebox.config.common.SearchBackendConfig.SEARCH_BACKEND_ENGINE
:type: str
:value: >
   'Field(...)'

```{autodoc2-docstring} archivebox.config.common.SearchBackendConfig.SEARCH_BACKEND_ENGINE
```

````

:canonical: archivebox.config.common._plugin_user_config_value

```{autodoc2-docstring} archivebox.config.common._plugin_user_config_value
```
:canonical: archivebox.config.common._plugin_user_config

```{autodoc2-docstring} archivebox.config.common._plugin_user_config
```
:canonical: archivebox.config.common._plugin_input_config

```{autodoc2-docstring} archivebox.config.common._plugin_input_config
```
:canonical: archivebox.config.common._explicit_plugin_enabled_keys

```{autodoc2-docstring} archivebox.config.common._explicit_plugin_enabled_keys
```
:canonical: archivebox.config.common._discover_plugin_config_schemas

```{autodoc2-docstring} archivebox.config.common._discover_plugin_config_schemas
```
:canonical: archivebox.config.common._plugin_config_properties

```{autodoc2-docstring} archivebox.config.common._plugin_config_properties
```
:canonical: archivebox.config.common._plugin_config_model

```{autodoc2-docstring} archivebox.config.common._plugin_config_model
```
:canonical: archivebox.config.common._archivebox_config_input_names

```{autodoc2-docstring} archivebox.config.common._archivebox_config_input_names
```
:canonical: archivebox.config.common.ArchiveBoxBaseConfig

Bases: {py:obj}`archivebox.config.common.ShellConfig`, {py:obj}`archivebox.config.common.StorageConfig`, {py:obj}`archivebox.config.common.GeneralConfig`, {py:obj}`archivebox.config.common.ServerConfig`, {py:obj}`archivebox.config.common.DatabaseConfig`, {py:obj}`archivebox.config.common.ArchivingConfig`, {py:obj}`archivebox.config.common.SearchBackendConfig`, {py:obj}`archivebox.config.ldap.LDAPConfig`

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig
```

```{rubric} Initialization
```

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.__init__
```

````{py:attribute} model_config
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.model_config
:value: >
   'SettingsConfigDict(...)'

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.model_config
```

````

````{py:attribute} computed_config_keys
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.computed_config_keys
:type: typing.ClassVar[tuple[str, ...]]
:value: >
   None

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.computed_config_keys
```

````

````{py:method} _core_config_classes() -> tuple[type[archivebox.config.configset.BaseConfigSet], ...]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._core_config_classes
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._core_config_classes
```

````

````{py:method} _core_field_scope(key: str) -> str | None
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._core_field_scope
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._core_field_scope
```

````

````{py:method} _plugin_field_scope(key: str) -> str | None
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._plugin_field_scope
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._plugin_field_scope
```

````

````{py:method} scope_for_key(key: str) -> str
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.scope_for_key
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.scope_for_key
```

````

````{py:method} _scope_by_key() -> dict[str, str]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._scope_by_key
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._scope_by_key
```

````

````{py:method} _crawl_frozen_keys() -> frozenset[str]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._crawl_frozen_keys
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._crawl_frozen_keys
```

````

````{py:method} _crawl_runtime_keys() -> frozenset[str]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._crawl_runtime_keys
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._crawl_runtime_keys
```

````

````{py:method} runtime_derived_config_keys() -> frozenset[str]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.runtime_derived_config_keys
:classmethod:

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.runtime_derived_config_keys
```

````

````{py:method} _scoped_config(*, include_execution: bool) -> dict[str, typing.Any]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._scoped_config

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._scoped_config
```

````

````{py:method} for_crawl() -> dict[str, typing.Any]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.for_crawl

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.for_crawl
```

````

````{py:method} for_crawl_frozen(*, persona: typing.Any = None) -> dict[str, typing.Any]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.for_crawl_frozen

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.for_crawl_frozen
```

````

````{py:method} for_crawl_runtime(*, crawl: typing.Any = None, snapshot: typing.Any = None, persona: typing.Any = None, runtime_overrides: collections.abc.Mapping[str, typing.Any] | None = None, extra_context: collections.abc.Mapping[str, typing.Any] | None = None, crawl_output_dir: typing.Any = None, snapshot_output_dir: typing.Any = None) -> dict[str, typing.Any]
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.for_crawl_runtime

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.for_crawl_runtime
```

````

````{py:method} resolve_runtime_paths()
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.resolve_runtime_paths

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.resolve_runtime_paths
```

````

````{py:method} derive_plugin_enabled_config()
:canonical: archivebox.config.common.ArchiveBoxBaseConfig.derive_plugin_enabled_config

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig.derive_plugin_enabled_config
```

````

````{py:method} _derive_plugin_enabled_config(*, respect_current_enabled: bool) -> None
:canonical: archivebox.config.common.ArchiveBoxBaseConfig._derive_plugin_enabled_config

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxBaseConfig._derive_plugin_enabled_config
```

````

:canonical: archivebox.config.common._build_archivebox_config_model

```{autodoc2-docstring} archivebox.config.common._build_archivebox_config_model
```
:canonical: archivebox.config.common.PLUGIN_CONFIG_SCHEMAS
:value: >
   '_discover_plugin_config_schemas(...)'

```{autodoc2-docstring} archivebox.config.common.PLUGIN_CONFIG_SCHEMAS
```

:canonical: archivebox.config.common.ArchiveBoxConfig
:value: >
   '_build_archivebox_config_model(...)'

```{autodoc2-docstring} archivebox.config.common.ArchiveBoxConfig
```

:canonical: archivebox.config.common._normalize_plugins_config_value

```{autodoc2-docstring} archivebox.config.common._normalize_plugins_config_value
```
:canonical: archivebox.config.common._plugin_enabled_config_keys

```{autodoc2-docstring} archivebox.config.common._plugin_enabled_config_keys
```
:canonical: archivebox.config.common.get_live_config_url

```{autodoc2-docstring} archivebox.config.common.get_live_config_url
```
:canonical: archivebox.config.common.config_field_metadata

```{autodoc2-docstring} archivebox.config.common.config_field_metadata
```
:canonical: archivebox.config.common.find_config_section

```{autodoc2-docstring} archivebox.config.common.find_config_section
```
:canonical: archivebox.config.common.find_config_default

```{autodoc2-docstring} archivebox.config.common.find_config_default
```
:canonical: archivebox.config.common.config_field_type

```{autodoc2-docstring} archivebox.config.common.config_field_type
```
:canonical: archivebox.config.common.find_config_type

```{autodoc2-docstring} archivebox.config.common.find_config_type
```
:canonical: archivebox.config.common.find_config_source

```{autodoc2-docstring} archivebox.config.common.find_config_source
```
:canonical: archivebox.config.common.get_request_config

```{autodoc2-docstring} archivebox.config.common.get_request_config
```
:canonical: archivebox.config.common.get_config

```{autodoc2-docstring} archivebox.config.common.get_config
```
:canonical: archivebox.config.common.get_all_configs

```{autodoc2-docstring} archivebox.config.common.get_all_configs
```