httk.serve.optimade.engine.validate¶
Validate OPTIMADE paths, versions, and query parameters.
Attributes¶
Functions¶
|
Validate a raw request against an explicit served schema. |
|
Determine the OPTIMADE version named by a request path. |
Module Contents¶
- httk.serve.optimade.engine.validate.validate_optimade_request(request, version, schema, page_limit_max=50)[source]¶
Validate a raw request against an explicit served schema.
- Parameters:
request (httk.serve.optimade.model.request.RawRequest) – Raw request supplied by the web layer.
version (str) – API version selected for the request.
schema (httk.serve.optimade.schema.served.ServedSchema) – Served entry and property schema.
page_limit_max (int) – Largest accepted
page_limit; larger requests raise 403.
- Returns:
Canonical request and validated query parameters.
- Raises:
httk.serve.optimade.model.errors.OptimadeError – If the path, version, or query is invalid.
- Return type:
- httk.serve.optimade.engine.validate.determine_optimade_version(request)[source]¶
Determine the OPTIMADE version named by a request path.
- Parameters:
request (httk.serve.optimade.model.request.RawRequest) – Raw request whose relative path is inspected.
- Returns:
Supported API version, using the default when unversioned.
- Raises:
httk.serve.optimade.model.errors.OptimadeError – If the path names an unsupported version.
- Return type: