Server Information#

class GroupByEnum(value)[source]#

Bases: str, Enum

user = 'user'#
day = 'day'#
hour = 'hour'#
country = 'country'#
subdivision = 'subdivision'#
class DeleteBeforeDateBody(*, before=None)[source]#

Bases: RestModelBase

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

before (datetime | None)

before: datetime | None#
classmethod parse_dates(v)[source]#
model_config = {'extra': 'forbid', 'validate_assignment': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class AccessLogQueryFilters(*, include=None, exclude=None, limit=None, cursor=None, module=None, method=None, user=None, before=None, after=None)[source]#

Bases: QueryProjModelBase

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • include (list[str] | None)

  • exclude (list[str] | None)

  • limit (int | None)

  • cursor (int | None)

  • module (list[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]] | None)

  • method (list[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]] | None)

  • user (list[int | str] | None)

  • before (datetime | None)

  • after (datetime | None)

module: list[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]] | None#
method: list[Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]] | None#
user: list[int | str] | None#
before: datetime | None#
after: datetime | None#
classmethod parse_dates(v)[source]#
model_config = {'extra': 'forbid', 'validate_assignment': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_lists(v)#
limit#
cursor#
include#
exclude#
class AccessLogEntry(*, id, timestamp, method, module, full_uri, request_duration, request_bytes, response_bytes, user, ip_address, user_agent, country_code, subdivision, city, ip_lat, ip_long)[source]#

Bases: BaseModel

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • id (int)

  • timestamp (datetime)

  • method (str)

  • module (str | None)

  • full_uri (str | None)

  • request_duration (float | None)

  • request_bytes (float | None)

  • response_bytes (float | None)

  • user (str | None)

  • ip_address (IPvAnyAddress | None)

  • user_agent (str | None)

  • country_code (str | None)

  • subdivision (str | None)

  • city (str | None)

  • ip_lat (float | None)

  • ip_long (float | None)

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

id: int#
timestamp: datetime#
method: str#
module: str | None#
full_uri: str | None#
request_duration: float | None#
request_bytes: float | None#
response_bytes: float | None#
user: str | None#
ip_address: IPvAnyAddress | None#
user_agent: str | None#
country_code: str | None#
subdivision: str | None#
city: str | None#
ip_lat: float | None#
ip_long: float | None#
class AccessLogQueryIterator(client, query_filters)[source]#

Bases: QueryIteratorBase[AccessLogEntry]

Iterator for access log queries

This iterator transparently handles batching and pagination over the results of an access log query

Construct an iterator

Parameters:
  • client – QCPortal client object used to contact/retrieve data from the server

  • query_filters (AccessLogQueryFilters) – The actual query information to send to the server

reset()#

Starts retrieval of results from the beginning again

class AccessLogSummaryFilters(*, group_by=GroupByEnum.day, before=None, after=None)[source]#

Bases: RestModelBase

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • group_by (GroupByEnum)

  • before (datetime | None)

  • after (datetime | None)

group_by: GroupByEnum#
before: datetime | None#
after: datetime | None#
classmethod validate_lists(v)[source]#
classmethod parse_dates(v)[source]#
model_config = {'extra': 'forbid', 'validate_assignment': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class AccessLogSummaryEntry(*, module, method, count, request_duration_info, response_bytes_info)[source]#

Bases: BaseModel

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • module (str | None)

  • method (str)

  • count (int)

  • request_duration_info (list[float])

  • response_bytes_info (list[float])

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

module: str | None#
method: str#
count: int#
request_duration_info: list[float]#
response_bytes_info: list[float]#
class AccessLogSummary(*, entries)[source]#

Bases: BaseModel

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

entries (dict[str, list[AccessLogSummaryEntry]])

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

entries: dict[str, list[AccessLogSummaryEntry]]#
class ErrorLogQueryFilters(*, limit=None, cursor=None, error_id=None, user=None, before=None, after=None)[source]#

Bases: QueryModelBase

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • limit (int | None)

  • cursor (int | None)

  • error_id (list[int] | None)

  • user (list[int | str] | None)

  • before (datetime | None)

  • after (datetime | None)

error_id: list[int] | None#
user: list[int | str] | None#
before: datetime | None#
after: datetime | None#
classmethod parse_dates(v)[source]#
model_config = {'extra': 'forbid', 'validate_assignment': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_lists(v)#
limit#
cursor#
class ErrorLogEntry(*, id, error_date, qcfractal_version, error_text, user, request_path, request_headers, request_body)[source]#

Bases: BaseModel

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • id (int)

  • error_date (datetime)

  • qcfractal_version (str)

  • error_text (str | None)

  • user (str | None)

  • request_path (str | None)

  • request_headers (str | None)

  • request_body (str | None)

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

id: int#
error_date: datetime#
qcfractal_version: str#
error_text: str | None#
user: str | None#
request_path: str | None#
request_headers: str | None#
request_body: str | None#
class ErrorLogQueryIterator(client, query_filters)[source]#

Bases: QueryIteratorBase[ErrorLogEntry]

Iterator for error log queries

This iterator transparently handles batching and pagination over the results of an error log query

Construct an iterator

Parameters:
  • client – QCPortal client object used to contact/retrieve data from the server

  • query_filters (ErrorLogQueryFilters) – The actual query information to send to the server

reset()#

Starts retrieval of results from the beginning again

class ServerStatsEntry(*, date, record_count, cpu_hours, record_count_details, database_size, timestamp)[source]#

Bases: BaseModel

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • date (date)

  • record_count (int)

  • cpu_hours (float)

  • record_count_details (dict[str, dict[RecordStatusEnum, int]])

  • database_size (int)

  • timestamp (datetime)

date: date#
record_count: int#
cpu_hours: float#
record_count_details: dict[str, dict[RecordStatusEnum, int]]#
database_size: int#
timestamp: datetime#
model_config = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].