httk.serve.optimade.model.config

Classes

OptimadeConfig

Configure a served OPTIMADE database.

OptimadeIndexConfig

Configure an OPTIMADE index meta-database.

Module Contents

class httk.serve.optimade.model.config.OptimadeConfig[source]

Configure a served OPTIMADE database.

implementation extends/overrides the fields of the meta -> implementation dictionary (e.g. issue_tracker, source_url, maintainer). database, schema_url, and request_delay populate the corresponding optional meta fields (OPTIMADE v1.2+) when set. license, available_licenses, and available_licenses_for_entries populate the corresponding optional base-info attributes when set.

Parameters:
  • provider – Provider metadata for the OPTIMADE response envelope.

  • links – Provider links exposed by the /links endpoint.

  • implementation – Implementation metadata merged into response metadata.

  • database – Optional database metadata for response metadata.

  • schema_url – URL of the served schema, when one is available.

  • request_delay – Optional advertised request delay.

  • license – License metadata exposed by the base-info endpoint.

  • available_licenses – Licenses advertised for the service.

  • available_licenses_for_entries – Licenses advertised for entries.

  • page_limit_max – Largest page_limit accepted; larger requests get a 403.

  • partial_data_chunk_size – Number of outer items emitted per partial-data page.

  • cors_origins – Exact browser origins allowed to make cross-origin requests.

Raises:

ValueError – If page_limit_max is not an integer >= 1.

provider: dict[str, Any][source]
implementation: dict[str, Any][source]
database: dict[str, Any] | None = None[source]
schema_url: str | None = None[source]
request_delay: float | None = None[source]
license: dict[str, Any] | str | None = None[source]
available_licenses: list[str] | None = None[source]
available_licenses_for_entries: list[str] | None = None[source]
page_limit_max: int = 50[source]
partial_data_chunk_size: int = 1000[source]
cors_origins: tuple[str, Ellipsis] = ()[source]
class httk.serve.optimade.model.config.OptimadeIndexConfig[source]

Bases: OptimadeConfig

Configure an OPTIMADE index meta-database.

The links are the configured databases advertised by the index. Exactly one must have link_type == "root"; child links are the databases that may be selected as the index’s default relationship. The regular OptimadeConfig remains a non-index service configuration.

Parameters:

default_link_id – Identifier of the default configured child link, or None when the index has no default.

Raises:

ValueError – If configured links do not satisfy the links schema or the root/default-link constraints.