Skip to content

Class tigrbl.op.types.OpSpec

tigrbl.op.types.OpSpec dataclass

OpSpec(
    alias,
    target,
    table=None,
    expose_routes=True,
    expose_rpc=True,
    expose_method=True,
    engine=None,
    arity="collection",
    http_methods=None,
    path_suffix=None,
    tags=tuple(),
    status_code=None,
    response=None,
    persist="default",
    request_model=None,
    response_model=None,
    returns="raw",
    handler=None,
    hooks=tuple(),
    rbac_guard_op=None,
    core=None,
    core_raw=None,
    extra=dict(),
    deps=tuple(),
    secdeps=tuple(),
)

Single source of truth for an operation.

target = canonical verb ("create"…,"custom") • arity = REST shape ("member"|"collection")

Serialization mode is inferred only from schema presence: - if model.schemas..out exists → serialize - otherwise → raw pass-through

Optional engine binding
  • engine allows per-op routing (DSN string or structured mapping). When present, it participates in resolver precedence (op > table > api > app).

alias instance-attribute

alias

target instance-attribute

target

table class-attribute instance-attribute

table = None

expose_routes class-attribute instance-attribute

expose_routes = True

expose_rpc class-attribute instance-attribute

expose_rpc = True

expose_method class-attribute instance-attribute

expose_method = True

engine class-attribute instance-attribute

engine = None

arity class-attribute instance-attribute

arity = 'collection'

http_methods class-attribute instance-attribute

http_methods = None

path_suffix class-attribute instance-attribute

path_suffix = None

tags class-attribute instance-attribute

tags = field(default_factory=tuple)

status_code class-attribute instance-attribute

status_code = None

response class-attribute instance-attribute

response = None

persist class-attribute instance-attribute

persist = 'default'

request_model class-attribute instance-attribute

request_model = None

response_model class-attribute instance-attribute

response_model = None

returns class-attribute instance-attribute

returns = 'raw'

handler class-attribute instance-attribute

handler = None

hooks class-attribute instance-attribute

hooks = field(default_factory=tuple)

rbac_guard_op class-attribute instance-attribute

rbac_guard_op = None

core class-attribute instance-attribute

core = None

core_raw class-attribute instance-attribute

core_raw = None

extra class-attribute instance-attribute

extra = field(default_factory=dict)

deps class-attribute instance-attribute

deps = field(default_factory=tuple)

secdeps class-attribute instance-attribute

secdeps = field(default_factory=tuple)