dto.queries

Query-related DTOs for SecretVaults API.

class QueryVariableValidator(*, path: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=^\$(\.[$a-zA-Z][a-zA-Z0-9-_]+(\[\d+])*)+$)], description: str | None = None)[source]

Bases: BaseModel

Validator for query variables, specifying the path and optional description.

path: [$a-zA-Z][a-zA-Z0-9-_]+(\[\d+])*)+$)]
description: str | None
class CreateQueryRequest(*, _id: Uuid, collection: Uuid, name: str, pipeline: List[Dict[str, Any]], variables: Dict[str, Any])[source]

Bases: BaseModel

Request model for creating a new query.

id: Uuid
collection: Uuid
name: str
pipeline: List[Dict[str, Any]]
variables: Dict[str, Any]
classmethod allow_id_or__id(data)[source]

Allow both ‘id’ and ‘_id’ fields for backward compatibility.

class QueryDocumentResponse(*, _id: Uuid, name: str, collection: Uuid)[source]

Bases: BaseModel

A summary of a query, including its ID, name, and collection.

id: Uuid
name: str
collection: Uuid
class ReadQueriesResponse(*, data: List[QueryDocumentResponse])[source]

Bases: BaseModel

Response model for listing all queries.

data: List[QueryDocumentResponse]
class ReadQueryResponse(*, data: QueryDocumentResponse)[source]

Bases: BaseModel

Response model for reading a single query.

data: QueryDocumentResponse
class DeleteQueryRequest(*, id: Uuid)[source]

Bases: BaseModel

Request model for deleting a query by ID.

id: Uuid
class RunQueryRequest(*, _id: Uuid, variables: Dict[str, Any])[source]

Bases: BaseModel

Request model for running a query with variables.

id: Uuid
variables: Dict[str, Any]
class RunQueryResponse(*, data: Uuid)[source]

Bases: BaseModel

Response model for running a query, returning the result ID.

data: Uuid
class RunQueryResultStatus(value, names=_not_given, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: str, Enum

Status values for a query run result.

pending = 'pending'
running = 'running'
complete = 'complete'
error = 'error'
__new__(value)
__repr__()

Return repr(self).

__str__()

Return str(self).

__format__(format_spec)

Return a formatted version of the string as described by format_spec.

class ReadQueryRunByIdDto(*, _id: Uuid, query: Uuid, status: RunQueryResultStatus, started: datetime | None = None, completed: datetime | None = None, result: Any | None = None, errors: List[str] | None = None)[source]

Bases: BaseModel

Details of a query run, including status, result, and errors.

id: Uuid
query: Uuid
status: RunQueryResultStatus
started: datetime | None
completed: datetime | None
result: Any | None
errors: List[str] | None
class ReadQueryRunByIdResponse(*, data: ReadQueryRunByIdDto)[source]

Bases: BaseModel

Response model for reading a query run by ID.

data: ReadQueryRunByIdDto