Skip to content

Models: T

View as Markdown

Who the trigger's runs act as from now. Absent, or an empty body: the caller takes it over (today's behaviour). With runAsServiceAccountId: that service account becomes the owner.

  • run_as_service_account_id: str | None (runAsServiceAccountId on the wire) (optional)
  • id: str
  • tenant_id: str (tenantId on the wire)
  • org_id: str | None (orgId on the wire) (optional)
  • name: str
  • slug: str
  • description: str | None (optional)
  • created_at: str (createdAt on the wire)
  • updated_at: str (updatedAt on the wire)
  • data: list[kindgi.client.Team]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • team_id: str (teamId on the wire)
  • user_id: str (userId on the wire)
  • role: Union[Literal['admin', 'member'], str]
  • joined_at: str (joinedAt on the wire)
  • data: list[kindgi.client.TeamMembership]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • name: str | None (optional)
  • slug: str | None (optional)
  • description: str | None (optional)
  • org_id: str | None (orgId on the wire) (optional)

A team's role on a project.

  • team_id: str (teamId on the wire)
  • project_id: str (projectId on the wire)
  • role: Union[Literal['viewer', 'editor', 'admin'], str]
  • granted_at: AwareDatetime | None (grantedAt on the wire) (optional)
  • team_name: str | None (teamName on the wire) (optional)
  • project_name: str | None (projectName on the wire) (optional)
  • data: list[kindgi.client.TeamProjectGrant]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • name: str
  • slug: str
  • description: str | None (optional)
  • org_id: str | None (orgId on the wire) (optional)
  • id: uuid.UUID
  • name: str
  • slug: str
  • created_at: AwareDatetime (createdAt on the wire)
  • updated_at: AwareDatetime (updatedAt on the wire)
  • production_allowed: bool | None (productionAllowed on the wire) (optional)
  • production_next: str | None (productionNext on the wire) (optional)
  • state: Optional[Annotated[Union[Literal['active', 'suspended', 'closing'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • limits: kindgi.client.TenantLimits | None (optional)
  • egress: kindgi.client.EgressAddresses | None (optional)
  • data: list[kindgi.client.Datum3]
  • data: list[kindgi.client.TenantConfigEntry]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • tenant_id: str (tenantId on the wire)
  • kind: Union[Literal['env', 'config', 'secret'], str]
  • key: str
  • value: str
  • sensitive: bool
  • revision: int
  • updated_at: str (updatedAt on the wire)

The tenant's limits that are set. A limit that isn't set is absent, and isn't enforced.

  • api_requests_per_minute: int | None (apiRequestsPerMinute on the wire) (optional)
  • webhook_receives_per_minute: int | None (webhookReceivesPerMinute on the wire) (optional)
  • runs_at_once: int | None (runsAtOnce on the wire) (optional)
  • runs_pending: int | None (runsPending on the wire) (optional)
  • tool_calls_in_flight: int | None (toolCallsInFlight on the wire) (optional)
  • approvals_pending: int | None (approvalsPending on the wire) (optional)
  • projects_in_production: int | None (projectsInProduction on the wire) (optional)

How much of each limit that counts something the tenant uses now, whether the limit is set or not: on GET …/limits only, and only from a runtime that counts it. A limit can be lowered below it: nothing is taken back, and the next one waits until the count is under the limit.

  • projects_in_production: int (projectsInProduction on the wire)
  • tenant_id: uuid.UUID (tenantId on the wire)
  • limits: kindgi.client.TenantLimits
  • in_use: kindgi.client.TenantLimitsInUse | None (inUse on the wire) (optional)
  • tenant_id: uuid.UUID (tenantId on the wire)
  • production_allowed: bool (productionAllowed on the wire)

Default 5 judgments, across 3 runs, from 2 judges.

  • judgments: int | None (optional)
  • runs: int | None (optional)
  • judges: int | None (optional)
  • from_: AwareDatetime (from on the wire)
  • to: AwareDatetime
  • user_id: str (userId on the wire)
  • expires_at: AwareDatetime (expiresAt on the wire)
  • id: str
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • description: str
  • version: str | None (optional)
  • input: dict[str, Any]
  • output: dict[str, Any]
  • needs: list[kindgi.client.ToolNeed] | None (optional)
  • effects: list[kindgi.client.ToolEffect] | None (optional)
  • transport: Optional[Annotated[Union[Literal['auto', 'native', 'mcp'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • mcp_endpoint: str | None (mcpEndpoint on the wire) (optional)
  • metadata: dict[str, Any] | None (optional)
  • mutating: bool | None (optional)
  • needs_approval_when_unattended: bool | None (needsApprovalWhenUnattended on the wire) (optional)
  • sandbox: Optional[Annotated[Union[Literal['none', 'context-isolated', 'strict'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • limits: kindgi.client.RuntimeLimits | None (optional)
  • network: Optional[Annotated[kindgi.client.NetworkPolicy1 | kindgi.client.NetworkPolicy2 | kindgi.client.NetworkPolicyUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087db3d0>]] (optional)
  • needs_spec: kindgi.client.TypedNeeds | None (needsSpec on the wire) (optional)
  • code_artifact_ref: Optional[Annotated[kindgi.client.CodeArtifactRefOci | kindgi.client.CodeArtifactRefFilesystem | kindgi.client.CodeArtifactRefUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087db6d0>]] (codeArtifactRef on the wire) (optional)
  • spec: kindgi.client.ToolSpec | None (optional)
  • unregistered_at: AwareDatetime | None (unregisteredAt on the wire) (optional)
  • secret_scopes: dict[str, Optional[Annotated[kindgi.client.RecordedSecretScopeTenant | kindgi.client.RecordedSecretScopeOrg | kindgi.client.RecordedSecretScopeProject | kindgi.client.RecordedSecretScopeUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087dbad0>]]] | None (secretScopes on the wire) (optional)
  • tool_id: str (toolId on the wire)
  • invocation_id: str (invocationId on the wire)
  • data: list[kindgi.client.Tool]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • kind: Union[Literal['reads', 'writes', 'deletes', 'network', 'spawns-run', 'emits-event', 'external-side-effect', 'sensitive-data-egress'], str]
  • resource: str | None (optional)
  • notes: str | None (optional)
  • max_retries: int | None (maxRetries on the wire) (optional)
  • retry_on: list[Annotated[Union[Literal['invalid-arguments', 'unknown-tool', 'tool-error'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] | None (retryOn on the wire) (optional)
  • name: str
  • optional: bool | None (optional)

Typed tool reference. version is a semver range (npm-style: 1.2.3 exact pin, ^1.2.3 compatible-updates, ~1.2.3 patch-updates-only, >=1.0.0 <2.0.0 explicit range). Dispatch resolves the range to a concrete active version via semver.maxSatisfying at run start. No implicit "latest" — every tool ref names both id and range.

  • id: str
  • version: str
  • env_name: str (envName on the wire)
  • name: str
  • root: kindgi.client.HttpToolSpec
  • data: list[kindgi.client.ToolVersionRow]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • id: str
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • description: str
  • version: str | None (optional)
  • input: dict[str, Any]
  • output: dict[str, Any]
  • needs: list[kindgi.client.ToolNeed] | None (optional)
  • effects: list[kindgi.client.ToolEffect] | None (optional)
  • transport: Optional[Annotated[Union[Literal['auto', 'native', 'mcp'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • mcp_endpoint: str | None (mcpEndpoint on the wire) (optional)
  • metadata: dict[str, Any] | None (optional)
  • mutating: bool | None (optional)
  • needs_approval_when_unattended: bool | None (needsApprovalWhenUnattended on the wire) (optional)
  • sandbox: Optional[Annotated[Union[Literal['none', 'context-isolated', 'strict'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • limits: kindgi.client.RuntimeLimits | None (optional)
  • network: Optional[Annotated[kindgi.client.NetworkPolicy1 | kindgi.client.NetworkPolicy2 | kindgi.client.NetworkPolicyUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087f1350>]] (optional)
  • needs_spec: kindgi.client.TypedNeeds | None (needsSpec on the wire) (optional)
  • code_artifact_ref: Optional[Annotated[kindgi.client.CodeArtifactRefOci | kindgi.client.CodeArtifactRefFilesystem | kindgi.client.CodeArtifactRefUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087f1650>]] (codeArtifactRef on the wire) (optional)
  • spec: kindgi.client.ToolSpec | None (optional)
  • unregistered_at: AwareDatetime | None (unregisteredAt on the wire) (optional)
  • secret_scopes: dict[str, Optional[Annotated[kindgi.client.RecordedSecretScopeTenant | kindgi.client.RecordedSecretScopeOrg | kindgi.client.RecordedSecretScopeProject | kindgi.client.RecordedSecretScopeUnrecognized, <kindgi.client._open.OpenUnion object at 0x1087f18d0>]]] | None (secretScopes on the wire) (optional)
  • yes_weight: float (yesWeight on the wire)
  • total_weight: float (totalWeight on the wire)

The improve schedule and fire that started it (GET /v1/schedules/{triggerId}/fires); absent for a pass a person started.

  • trigger_id: str (triggerId on the wire)
  • fire_id: str (fireId on the wire)
  • kind: Union[Literal['user', 'service'], str]
  • id: str
  • display_name: str | None (displayName on the wire) (optional)
  • key_id: str (keyId on the wire)
  • algorithm: Optional[Literal['ed25519']] (optional)
  • public_key: str (publicKey on the wire)
  • label: str | None (optional)

A public key the tenant trusts to sign deployments (POST /v1/deployments). A revoked key stays readable, with revokedAt, so the deployments it signed can be audited; it verifies no new ones.

  • key_id: str (keyId on the wire)
  • tenant_id: uuid.UUID (tenantId on the wire)
  • algorithm: Union[Literal['ed25519'], str]
  • public_key: str (publicKey on the wire)
  • label: str | None (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • revoked_at: AwareDatetime | None (revokedAt on the wire) (optional)
  • revoked_reason: str | None (revokedReason on the wire) (optional)
  • data: list[kindgi.client.TrustedSigningKey]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • max_steps: int | None (maxSteps on the wire) (optional)
  • max_cost_usd: float | None (maxCostUsd on the wire) (optional)
  • max_wall_ms: int | None (maxWallMs on the wire) (optional)
  • root: str

Typed discriminated needs (env / secrets / config / capabilities / bindings). Optional additive field.

  • env: dict[str, dict[str, Any]] | None (optional)
  • secrets: dict[str, dict[str, Any]] | None (optional)
  • config: dict[str, dict[str, Any]] | None (optional)
  • capabilities: list[kindgi.client.Capability5] | None (optional)
  • bindings: list[kindgi.client.Binding] | None (optional)