Skip to content

Models: A

View as Markdown
  • kind: Literal['direct']
  • role: Union[Literal['owner', 'admin', 'editor', 'viewer'], str]
  • since: AwareDatetime | None (optional)

An admin of the org the project sits in: admin on the project.

  • kind: Literal['org-admin']
  • org_id: str (orgId on the wire)
  • org_name: str (orgName on the wire)
  • kind: Literal['team']
  • team_id: str (teamId on the wire)
  • team_name: str (teamName on the wire)
  • role: Union[Literal['owner', 'admin', 'editor', 'viewer'], str]
  • since: AwareDatetime | None (optional)

A tenant admin: admin on every project.

  • kind: Literal['tenant-admin']

A kind this client doesn't know yet, from a newer runtime: the object as it came, every field kept.

  • kind: str

Whom access is held by: a person, or a service account.

  • kind: Union[Literal['user', 'service-account'], str]
  • id: str
  • kind: Optional[Annotated[Union[Literal['user', 'agent', 'system', 'admin', 'external'], str], <kindgi.client._open.OpenEnum object at 0x10700bbd0>]] (optional)
  • id: str | None (optional)
  • ip_address: str | None (ipAddress on the wire) (optional)
  • user_agent: str | None (userAgent on the wire) (optional)
  • adapter_id: str (adapterId on the wire)
  • kind: Union[Literal['model', 'model-provider', 'embedding', 'blob', 'sandbox', 'eval-judge'], str]
  • name: str
  • version: str
  • capabilities: list[str]
  • config: dict[str, Any] | None (optional)
  • status: Union[Literal['active', 'degraded', 'error'], str]
  • status_reason: str | None (statusReason on the wire) (optional)
  • data: list[kindgi.client.Adapter]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • path: str
  • message: str
  • ok: bool
  • latency_ms: float (latencyMs on the wire)
  • probe: dict[str, Any]
  • root: str

Exactly one of userId and email names the person.

  • user_id: str | None (userId on the wire) (optional)
  • email: str | None (optional)
  • role: Literal['viewer', 'editor', 'owner', 'admin']
  • project_id: str (projectId on the wire)
  • user_id: str (userId on the wire)
  • role: Union[Literal['viewer', 'editor', 'owner', 'admin', 'member'], str]
  • user_id: str (userId on the wire)
  • role: Union[Literal['admin', 'member'], str]
  • team_id: str (teamId on the wire)
  • user_id: str (userId on the wire)
  • role: Union[Literal['admin', 'member'], str]
  • team_id: str (teamId on the wire)
  • role: Union[Literal['viewer', 'editor', 'admin'], str]

The tenant's first admin key, without firstAdmin: shown once.

  • token_id: str (tokenId on the wire)
  • token: str
  • id: str
  • version: str
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • name: str
  • description: str | None (optional)
  • instructions: kindgi.client.Instructions | kindgi.client.PromptRef
  • parameters: list[kindgi.client.PromptParameter] | None (optional)
  • settings: list[kindgi.client.BlockRef] | None (optional)
  • model_settings: kindgi.client.BlockRef | None (modelSettings on the wire) (optional)
  • capabilities: list[kindgi.client.Capability4]
  • tools: list[kindgi.client.ToolRef]
  • retrieval: list[kindgi.client.RetrievalIntent]
  • memory: kindgi.client.AgentMemoryPolicy | None (optional)
  • guardrails: list[str]
  • preferred_provider: str | None (preferredProvider on the wire) (optional)
  • preferred_model: str | None (preferredModel on the wire) (optional)
  • conversation_policy: kindgi.client.ConversationPolicy | None (conversationPolicy on the wire) (optional)
  • budget: kindgi.client.TurnBudget | None (optional)
  • tags: list[str] | None (optional)
  • output: kindgi.client.AgentOutputSpec | None (optional)
  • tool_errors: kindgi.client.ToolErrorsSpec | None (toolErrors on the wire) (optional)
  • pins: kindgi.client.AgentPins | None (optional)
  • derived_from: kindgi.client.VersionDerivation | None (derivedFrom on the wire) (optional)
  • unregistered_at: AwareDatetime | None (unregisteredAt on the wire) (optional)
  • pins_digest: str | None (pinsDigest on the wire) (optional)
  • data: list[kindgi.client.Agent]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)

How the agent uses what it retrieves.

  • instruction_types: list[kindgi.client.InstructionType] | None (instructionTypes on the wire) (optional)
  • remember: kindgi.client.Remember | None (optional)
  • schema_: dict[str, Any] (schema on the wire)
  • name: str | None (optional)
  • max_repairs: int | None (maxRepairs on the wire) (optional)

The data-block pins to swap, by block id → exact version. Only blocks the version already references; tool pins come from code.

  • prompts: dict[str, str] | None (optional)
  • settings: dict[str, str] | None (optional)

The exact block versions an agent version runs: its lockfile. Set by the runtime when the version is published, never in the publish body: each tool range resolves once to the version every run of that agent version uses, so a new tool version reaches the agent only through a new agent version. Absent on a version published before pins existed (its ranges resolve per run).

  • tools: dict[str, str]
  • prompts: dict[str, str]
  • settings: dict[str, str]
  • root: str

Whom an API key acts for: a person, or a service account.

  • kind: Union[Literal['user', 'service-account'], str]
  • id: str

An API key. Never includes the secret. principal is whom it acts for; absent on a key that is a service account of its own (service_account:<tokenId>), as keys minted before principals are.

  • token_id: uuid.UUID (tokenId on the wire)
  • principal: kindgi.client.ApiKeyPrincipal | None (optional)
  • role: Union[Literal['admin', 'member'], str]
  • capabilities: list[kindgi.client.Capability]
  • label: str | None (optional)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • created_by: str | None (createdBy on the wire) (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • expires_at: AwareDatetime | None (expiresAt on the wire) (optional)
  • revoked_at: AwareDatetime | None (revokedAt on the wire) (optional)
  • last_used_at: AwareDatetime | None (lastUsedAt on the wire) (optional)
  • data: list[kindgi.client.Datum4]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • id: uuid.UUID
  • tenant_id: uuid.UUID (tenantId on the wire)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • subject_kind: str (subjectKind on the wire)
  • subject_ref: dict[str, Any] (subjectRef on the wire)
  • required_role: Union[Literal['standard', 'senior', 'admin'], str] (requiredRole on the wire)
  • status: Union[Literal['pending', 'assigned', 'in_review', 'approved', 'rejected', 'escalated', 'expired', 'withdrawn'], str]
  • assigned_to: uuid.UUID | None (assignedTo on the wire) (optional)
  • batch_key: str | None (batchKey on the wire) (optional)
  • title: str | None (optional)
  • description: str | None (optional)
  • context: dict[str, Any] | None (optional)
  • provenance_ref: kindgi.client.ProvenanceRef | None (provenanceRef on the wire) (optional)
  • wait_token_id: str | None (waitTokenId on the wire) (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • updated_at: AwareDatetime (updatedAt on the wire)
  • decided_at: AwareDatetime | None (decidedAt on the wire) (optional)
  • expires_at: AwareDatetime | None (expiresAt on the wire) (optional)
  • decision: kindgi.client.ApprovalDecisionRecord | None (optional)
  • requested_by: str | None (requestedBy on the wire) (optional)
  • separate_approver: bool | None (separateApprover on the wire) (optional)
  • withdrawn_because: Optional[Annotated[Union[Literal['run-cancelled', 'run-ended'], str], <kindgi.client._open.OpenEnum object at 0x10700bbd0>]] (withdrawnBecause on the wire) (optional)
  • escalated_from: uuid.UUID | None (escalatedFrom on the wire) (optional)
  • escalated_to: uuid.UUID | None (escalatedTo on the wire) (optional)
  • data: list[kindgi.client.Approval]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • order: Optional[Annotated[Union[Literal['asc', 'desc'], str], <kindgi.client._open.OpenEnum object at 0x10700bbd0>]] (optional)
  • decided_by: Optional[Annotated[Union[Literal['me'], str], <kindgi.client._open.OpenEnum object at 0x10700bbd0>]] (decidedBy on the wire) (optional)
  • decision: Union[Literal['approve', 'reject', 'escalate', 'withdraw'], str]
  • decided_by: str | None (decidedBy on the wire) (optional)
  • reviewer_id: uuid.UUID (reviewerId on the wire)
  • reviewer_role_at_decision: Union[Literal['standard', 'senior', 'admin'], str] (reviewerRoleAtDecision on the wire)
  • decided_at: AwareDatetime (decidedAt on the wire)
  • rationale: str | None (optional)
  • session_provider: str | None (sessionProvider on the wire) (optional)
  • decider_name: str | None (deciderName on the wire) (optional)

An approval was asked for: a reviewer's decision is waiting. Sent once per approval (an escalation is a new approval). projectId in the endpoint's filter narrows it to the approval's project.

  • id: str
  • type: Literal['approval.requested']
  • created_at: AwareDatetime (createdAt on the wire)
  • data: kindgi.client.ApprovalRequestedEventData
  • approval: kindgi.client.RequestedApproval
  • root: Literal['pending', 'assigned', 'in_review', 'approved', 'rejected', 'escalated', 'expired', 'withdrawn']

A passing promotion waits for a reviewer.

  • role: Optional[Annotated[Union[Literal['standard', 'senior', 'admin'], str], <kindgi.client._open.OpenEnum object at 0x10700bbd0>]] (optional)
  • separate_approver: bool | None (separateApprover on the wire) (optional)
  • data: list[kindgi.client.Datum5]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)

Assertion attribute names. Defaults: userId = the NameID, email = email.

  • user_id: str | None (userId on the wire) (optional)
  • email: str | None (optional)
  • display_name: str | None (displayName on the wire) (optional)
  • user_id: str | None (userId on the wire) (optional)
  • email: str | None (optional)
  • display_name: str | None (displayName on the wire) (optional)
  • data: list[kindgi.client.Datum6]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • data: list[kindgi.client.SignInEvent]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)

The workspace's sign-in settings.

  • second_factor: kindgi.client.SecondFactor (secondFactor on the wire)

Require a second factor at sign-in, or stop requiring one.

  • second_factor: kindgi.client.SecondFactor1 (secondFactor on the wire)