1. concepts
temper
  • Temper documentation
  • cli
    • README
    • admin
    • auditor
    • auth
    • blob
    • check
    • cogmap
    • config
    • context
    • data-artifact
    • edge
    • graph
    • health
    • init
    • invitations
    • invocation
    • memory
    • profile
    • pull
    • query
    • resource
    • search
    • skill
    • slack
    • status
    • steward
    • team
    • trail
    • update
    • version
    • warmup
  • concepts
    • Auth Identity
    • Authoring Authorization
    • Contexts and Refs
    • Machine Tokens
    • Operational Memory
    • Release Verification
    • The SAML Reconcile Channel
    • Slack Identity and Revocation
    • Teams and Roles
    • Telemetry
    • Token Verification
    • The Trust Boundary
    • Query Cost and the Bounds That Shape It
    • Deleting a blob — custody, the ledger, and bytes
    • Erasure and the terms of use
    • Blob uploads
  • config
    • README
  • doors
    • Building against Temper
    • Running Temper
    • Using Temper
  • playbooks
    • Adopt operational memory
    • Authenticate
    • Bootstrap an Org
    • Bootstrap a Team's Self-Cognition
    • Build a cognitive map
    • Connect Claude Code
    • Connect Temper to Claude Desktop
    • Deliver L0 Kernel Content
    • Deploy a Steward Agent
    • Deploy the Web UI
    • Enterprise Install
    • Provision a Read-Only GitHub Connection
    • Ingest a corpus
    • Install Temper
    • Run a Team
    • Self-Host Temper
    • Self-host Temper with Okta
    • Self-host Temper with a SAML IdP
    • Send traces to an OTLP backend
    • Slack Mentions
    • Standing Up a Machine Credential
    • Commit structured data as an artifact
    • Compose Queries That Stay Fast
    • Offboard a Departure
    • Reblock a corpus
    • Rate-limit an instance at the edge
  • sdks
    • Integrating Ruby with temper-rb
  • Temper Cloud API
    • Reference
      • API Reference
        • Access
          • Request to join the gating team
          • Check your join request status
          • Withdraw your pending join request
          • Ask an admin to reconsider a revocation
          • Read public system settings
        • Slack Link
          • Disconnect any principal's Slack link
          • Disconnect all your own Slack links
        • Auditor
          • Claim a batch of auditor jobs
          • Survey audit coverage across findings
          • Complete a claimed auditor job
        • Graph
          • Slice a neighborhood within a cognitive map
          • Read a cognitive map's interior
          • Read a container's composition
          • Read goal-container territories and residuals
          • Read your teams and cognitive maps
          • Read the resources composing a region
          • Read what your work is built around
          • Traverse from where you are
        • Cognitive Maps
          • List cognitive maps you can see
          • Create a cognitive map and its telos charter
          • Get one cognitive map
          • Reconcile a cognitive map's contents
          • Read cognitive-map analytics
          • Grant access to a cognitive map
          • Revoke access to a cognitive map
          • Materialize a cognitive map's regions
          • Read formation drift since last materialize
          • Read per-region metrics for a map
          • Read a cognitive map's shape
          • Bind a team to a cognitive map
          • Unbind a team from a cognitive map
        • Contexts
          • List contexts you can see
          • Create a context
          • Resolve a context ref to its id
          • Get one context
          • Materialize a context's regions
          • Retire a context
          • Read per-region metrics for a context
          • Reassign a context to another owner
          • Read a context's shape
          • Rename a context
          • Read formation drift since a context's last materialize
          • Restore a retired context
          • Read a context's analytics
          • Share a context with a team
          • Stop sharing a context with a team
        • Events
          • Read a context's changes after a position
          • Read the event cursor for a context
          • Read a node or edge's event trail
        • Facets
          • Set a facet on a resource
          • Read the live facets of one edge
          • Set a facet on a relationship
          • Retract one facet of a relationship
          • Read the live facets of one resource
        • Health
          • Check service health
        • Ingest
          • Begin a segmented ingest
          • Update an in-progress ingest
          • List the blocks landed so far
          • Append a block to an in-progress ingest
          • Finalize a segmented ingest
        • Invitations
          • Accept a team invitation
          • Decline a team invitation
          • List invitations addressed to you
          • Count the invitations addressed to you
          • List a team's open invitations
          • Revoke a team invitation
          • Invite someone to a team
        • Invocations
          • List agent invocations
          • Open an invocation
          • Get one invocation
          • Close an invocation
        • Profile
          • Read your profile
          • Update your profile
          • List your linked identity providers
        • Query
          • Run a composition of situated acts
        • Relationships
          • Assert a relationship between resources
          • Fold a relationship
          • Change a relationship's type
          • Change a relationship's weight
        • Resources
          • Record a citation-audit verdict against a block's citation
          • List resources you can see
          • Create a resource
          • Get one resource
          • Soft-delete a resource
          • Update a resource
          • List a finding's citation-audit trail
          • Read one content block by address (the three-state resolution)
          • Record a citation-audit verdict
          • List a resource's relationships
          • Read a resource's reconstituted content
          • Read a resource's evidential standing
          • Grant access to a resource
          • Trace a resource's derivation lineage
          • Revoke access to a resource
          • Read a resource's block provenance
          • Attach provenance sources to a resource
          • Reassign a resource to another owner
          • List a resource's relationships, bounded, with the filtered total stated
        • Meta
          • Read a resource's frontmatter
          • Replace a resource's frontmatter
        • Search
          • Search resources by text or embedding
        • Steward
          • List steward candidates
          • Claim steward jobs for a worker
          • Survey steward drift across maps
          • Read a map's ingest delta
          • Advance a map's steward watermark
        • Teams
          • List teams you belong to
          • Create a team
          • Get one team
          • Delete a team
          • Update a team
          • Add a member to a team
          • Remove a member from a team
          • Attach a child team under this team
          • Change a member's role
          • Detach a child team from this team
          • Bulk reassign a team's resources
          • Set, change or clear a team's auto-join role
          • Change a team's slug
          • List the openings that confer on you
          • Forbid or allow public_within over a team's subtree
          • Move this team from one parent to another
          • Open a team's contexts to an ancestor's subtree
          • Restore a soft-deleted team
          • Close a team's opening to an ancestor's subtree
        • Data Artifacts
          • List artifacts for a resource, or counts with counts=true
          • Get a single artifact by ID under its owning resource
          • Commit one data artifact to a resource
          • Get a single artifact by ID — the flat read.
          • Read the artifacts one ask matches, whole
        • Data Artifact Shapes
          • List live shapes declared for a context home.
          • Declare a shape for a data-artifact family within a context home.
          • Get a single shape by ID, with what an ask may name
          • List live shapes declared for a cognitive-map home.
          • Declare a shape for a data-artifact family within a cognitive-map home.
        • Schema
          • List every document type this instance knows, with a schema summary for each.
          • Describe one document type: its JSON Schema, required fields, closed vocabularies, and a filled-in example of the managed tier.
          • Describe the recognized conventions of the open (caller-defined) metadata tier.
        • Blobs
          • List the blobs the caller can read (optionally scoped to one home)
          • Commit bytes as a blob — one multipart request at or under the D7 threshold
          • Begin a segmented upload — declare the home and media type, get the session id
          • Read a staged upload's progress — the resume read
          • Finalize a staged upload — assemble, hash, commit
          • Append one segment to a staged upload — raw bytes as the request body
          • Read a blob's bytes back, whole, streamed (D6)
          • Delete one blob — the ordinary delete act's ruled door
          • List the edges incident to a blob — "what relates to this blob" (D3)
          • Assert one relation between a blob and another anchor
        • Reblocking
          • Run one bounded, resumable re-blocking step
        • Admin
          • Reconcile auto-join team rosters
          • Revoke a profile's system-admin grant
          • Approve a principal
          • Deactivate a principal
          • Reactivate a principal
          • Revoke a principal's admission
          • List profiles in the operator directory
          • Show a profile's state card
          • Promote a profile to system admin
          • List pending join requests
          • Count pending join requests
          • Approve or reject a join request
          • List open reconsideration requests
          • Count open reconsideration requests
          • Close a reconsideration request
          • Read full system settings
          • Update system settings
          • Erase a principal
          • Survey a principal erasure
          • Scrub the history of resource blocks
          • Survey a block history scrub
          • Erase a resource
          • Survey a resource erasure
          • Scrub a resource field's history
          • List a resource's scrubbable fields
          • Survey a field scrub
          • List the erasure retention policy
          • Re-embed stale chunks
          • Set an erasure retention policy
          • Create a SAML group mapping
          • Rebind a machine client to a new client ID
          • Remove an erasure retention policy
          • Remove a SAML group mapping
        • Admin Ledger
          • Read the admin ledger
        • Connections
          • List connections
          • Provision a connection
          • Get a connection
          • Revoke a connection
          • Attach a connection credential
          • Grant a team read-reach on a connection
          • Revoke a team's read-reach on a connection
          • Set connection tool manifest
          • Set connection webhook events
        • Machine Clients
          • List machine clients
          • Register a machine client
          • Issue a machine credential
          • Get a machine client
          • Revoke a machine client
          • Rotate a machine client secret
        • Subscriptions
          • List subscriptions
          • Create a subscription
          • Get a subscription
          • Revoke a subscription
        • Me
          • When you last changed something in each context you can read
    • Schemas
      • AcceptInvitationResponse
      • ActInput
      • ActInvocation
      • ActName
      • ActQuantity
      • ActRefusal
      • ActorAuthority
      • AddMemberRequest
      • AdvanceWatermarkAck
      • AdminDirectoryEntry
      • AdvanceWatermarkRequest
      • AdminDirectoryListResponse
      • AgentAuthorship
      • AdminOpenJoinRequest
      • AdminLedgerEntry
      • AppendBlockPayload
      • AnchorAddressResolution
      • AdminOpenReviewRequest
      • AdminLedgerResponse
      • AdminProfileAuthLink
      • AtlasEdge
      • AnchorVerdict
      • AdminProfileCard
      • AtlasHome
      • AtlasEntry
      • AdminProfileInvitation
      • AdminProfileTeamMembership
      • AssertRelationshipRequest
      • AtlasNode
      • AtlasSubgraph
      • AdminProfilesListAnswer
      • AuditCitation
      • AuditorDispatchTickRequest
      • AuditorDispatchTickResponse
      • AuditorJobCompleteAck
      • BindTeamOutcome
      • BindTeamRequest
      • AnchorShape
      • BlockId
      • BlocksResponse
      • ArtifactCommitRequest
      • ArtifactAsk
      • BodyStorage
      • ArtifactAskPopulation
      • Bridge
      • ArtifactAskTrace
      • BulkReassignAck
      • AskOperator
      • ArtifactPredicate
      • BulkReassignRequest
      • ArtifactCommitResponse
      • BlobId
      • BlobDeleteAck
      • AskablePath
      • ChangeRoleRequest
      • BlobCommitResponse
      • BlobRelationAck
      • ArtifactCursor
      • CharterBlock
      • CharterDisposition
      • ArtifactView
      • BlobRelationAssertRequest
      • BlobRelationDirection
      • CitationAuditRequest
      • BlobRelationEdgeDirection
      • CitationAuditRow
      • BlobRelationRow
      • AttachCredentialResponse
      • AskOrder
      • ClaimedAuditJob
      • BlobSummary
      • AskRequest
      • AuditSweepRow
      • ClaimedJob
      • AskResponse
      • CloseInvocationRequest
      • BlobUploadBeginResponse
      • AutoJoinReconcileRow
      • CogmapAnalyticsRow
      • BlobUploadFinalizeRequest
      • AskedShape
      • CogmapDetail
      • BlobUploadBeginRequest
      • BlobUploadProgress
      • CogmapFoundationRow
      • BlobUploadSegmentInfo
      • BlobCoLinks
      • CogmapGrantBody
      • BlockChunkRef
      • BlockProvenanceRow
      • CogmapId
      • BlockFoldDisposition
      • CogmapRegionMetricsRow
      • CogmapRegionRow
      • CogmapRegulationRow
      • BlockRead
      • BlockCitationAuditRequest
      • AttachChildOutcome
      • CogmapRevokeBody
      • BlockSuccessor
      • CogmapRow
      • AttachOutcome
      • BlobStrikeView
      • CombineOp
      • CompositionTrace
      • CogmapStaleness
      • ConfidenceBand
      • Composition
      • ContextId
      • ContextOwnerRef
      • ContextPanorama
      • CorrelationId
      • CreateCogmapOutcome
      • BlockHistoryScrubExecuteResponse
      • CreateCogmapRequest
      • BlockHistoryScrubPlan
      • BlockHistoryScrubRequestBody
      • ContextRowWithCounts
      • CreateRequestBody
      • BlockHistoryScrubSurvey
      • CreateReviewBody
      • DeleteResponse
      • DeviceOverrides
      • DispatchTickRequest
      • DataArtifactId
      • BlockScrubCount
      • DispatchTickResponse
      • Disposition
      • DriftSweepRow
      • DiscouragedOpenMetaKey
      • EdgeFacetsResponse
      • CloseReviewBody
      • EdgeId
      • EdgeKind
      • DocTypeDescription
      • DocTypeSummary
      • ElementKind
      • EmbedDispatchSummary
      • ErrorBody
      • EntryBounds
      • BoundKind
      • ErrorDetails
      • EventTrail
      • EnforcementMode
      • ExactHit
      • ByteBlock
      • FacetAck
      • FinalizePayload
      • FoldRelationshipRequest
      • CombineNode
      • GrantOutcome
      • ConnectionCredential
      • ConnectionSubscription
      • GroupKeyMeta
      • HealthResponse
      • HomeCogmap
      • HomeContext
      • IdKind
      • EdgeFacetSetRequest
      • IdProvenance
      • ContextResolution
      • ContextCreateRequest
      • FacetSetRequest
      • IdpRevocation
      • IngestCreateResponse
      • IngestDelta
      • ElementEvent
      • DemoteAdminRequest
      • InheritedReadGrant
      • InheritedShare
      • EmbeddingStatus
      • InputSource
      • CredentialVerification
      • InvitationStatus
      • InviteeInvitation
      • ContextActivity
      • InvocationAck
      • ContextChange
      • ContentResponse
      • ContextChangeSubject
      • InvocationCloseAck
      • ContextChangesResponse
      • InvocationId
      • GraphEdgeRow
      • InvocationSummary
      • DeriverFingerprint
      • JoinRequest
      • Intention
      • JoinRequestStatus
      • FacetRetractAck
      • LensId
      • LineageNode
      • ContextRow
      • CreateInvitationRequest
      • ManagedMeta
      • MatchLocation
      • ErasureExecuteRequest
      • CreateSubscriptionRequest
      • EdgeFacetRow
      • MaterializeRequest
      • KindOwnerInput
      • MergePolicy
      • ErasureSurveyRequest
      • EdgeFilter
      • NarrowedBy
      • ErasureTargetOutcome
      • NodeHome
      • CreateSamlGroupMappingOutcome
      • OpenInvocationRequest
      • CreateSamlGroupMappingRequest
      • OrdOp
      • OrphanNode
      • EventId
      • MaterializeAck
      • PlanRefusalDetails
      • Entitlements
      • MaterializeDelta
      • Polarity
      • Profile
      • ProfileAuthLink
      • ProfileId
      • ErasureExecuteResponse
      • ProfileUpdateRequest
      • ErasureSurveyResponse
      • OpenMetaConvention
      • ProvenanceSource
      • PublicSystemSettings
      • QuantityScale
      • EstateCounts
      • QueryResponse
      • EstateDisposition
      • ReassignAck
      • EstateErasureKind
      • EstateResourceErasure
      • ReassignContextRequest
      • EstateResourcePlan
      • ReassignResourceRequest
      • GrantConnectionReachRequest
      • FacetPredicate
      • ReconcileCogmapRequest
      • ReconcileEdge
      • GrantSpec
      • ReconcileEdgeTombstone
      • ProfileWithEntitlements
      • ReconcileEntry
      • ReconcileOutcome
      • FieldScrubClearingEvent
      • ExactArm
      • ReconcileTelos
      • FingerprintMatch
      • FieldScrubExecuteResponse
      • ReconcileTelosBlock
      • FieldScrubFamilies
      • ReconcileTombstone
      • FieldScrubFamiliesRequest
      • Refusal
      • FieldScrubHeldPaths
      • RegionHit
      • RegionDisclosure
      • FieldScrubPlan
      • RegionId
      • FieldScrubRefusalReason
      • RelationshipAck
      • FieldScrubRequestBody
      • ErrorDetail
      • RemoveMemberOutcome
      • FieldScrubFamily
      • RenameContextOutcome
      • RenameContextRequest
      • ResidualBucket
      • ResidualContext
      • ResidualGroups
      • FieldScrubSurvey
      • EventCursorResponse
      • ResidualOwnedReach
      • IngestEnded
      • ResourceAnnotateRequest
      • IngestState
      • ResourceCreateRequest
      • JoinRequestWithProfile
      • ResourceFacetRow
      • ResourceFacets
      • ResourceFacetsResponse
      • Extent
      • ResourceGrantBody
      • ResourceId
      • IssueMachineRequest
      • InvitationTokenRequest
      • ResourceLineage
      • ResourceListResponse
      • FailedExpectation
      • ResourceRevokeBody
      • IdSet
      • LedgerRef
      • ReblockCandidate
      • LedgerRefKind
      • ReturnSpec
      • LedgerRefRel
      • IngestPayload
      • RetypeRelationshipRequest
      • ReblockReceipt
      • LedgerRefTarget
      • RevokeOutcome
      • ReblockRequest
      • ReweightRelationshipRequest
      • ReblockScope
      • OtherAuthorEdge
      • ReblockSummary
      • OtherAuthorEdgeProperty
      • RelationshipTarget
      • SearchReason
      • SearchResponse
      • SearchResultRow
      • SearchScope
      • InvocationActRow
      • SearchScopeInfo
      • SegmentedBegin
      • SegmentedBeginResponse
      • InvocationView
      • ShareContextOutcome
      • RestoreContextOutcome
      • PromoteAdminRequest
      • ShareContextRequest
      • RetireContextOutcome
      • PropertyId
      • SlackDisconnectRequest
      • IssuedMachineCredential
      • SlackDisconnectResponse
      • SlackDisconnectedPrincipal
      • SliceRequest
      • SortOrder
      • InheritedPublicWithin
      • StageDisposition
      • StageInput
      • QueueCount
      • StageInputTrace
      • JsonType
      • StageName
      • ShapeId
      • StageNode
      • OutcomeDeclaration
      • StageOutput
      • StageRelation
      • ResourceConnections
      • RebindMachineRequest
      • ShapeEmptiness
      • PendingInvitationCounts
      • Standing
      • Subscription
      • SubscriptionOverride
      • SystemAccessDetails
      • ReconcileAutoJoinOutcome
      • ProvisionConnectionRequest
      • ProvisionMachineRequest
      • PropertyOp
      • TeamMemberDetail
      • PropertyPredicate
      • TeamMemberRow
      • TeamMemberSource
      • TeamRole
      • MachineClient
      • TeamUpdateRequest
      • RedactedEventFields
      • Territory
      • ReembedRequest
      • TerritoryKind
      • ReembedSummary
      • TerritoryOverview
      • UnbindTeamOutcome
      • UnshareContextOutcome
      • VaultConfig
      • PlanRefusal
      • Scoring
      • WideHit
      • ReblockOutcome
      • OversizedArtifact
      • MetaExpect
      • MetaUpdatePayload
      • PathFacts
      • ResourceErasureExecuteRequest
      • ResourceErasureRefusalReason
      • ResourceErasureSurveyRequest
      • RemoteConnection
      • ViaEntry
      • PreconditionFailure
      • PreconditionTier
      • PublicWithinAudience
      • PublicWithinInRef
      • PublicWithinOpenKind
      • PublicWithinEffects
      • PublicWithinOutcome
      • PublicWithinPolicyOutcome
      • ReviewRequestBody
      • PublicWithinPolicyRequest
      • ReviewRequestWithProfile
      • PublicWithinRef
      • ResourceErasureExecuteResponse
      • PublicWithinRowRef
      • RevokePrincipalBody
      • PublicWithinReach
      • ResourceErasurePlan
      • ResourceErasureSurvey
      • RefusalTeaching
      • Reach
      • ReassignContextOutcome
      • ResourceFilter
      • ReachVia
      • RotateSecretRequest
      • ResourceHit
      • SearchParams
      • RenameTeamSlugOutcome
      • RenameTeamSlugRequest
      • SetToolManifestRequest
      • SetWebhookEventsRequest
      • ReparentRequest
      • RetentionCategory
      • RetentionPolicies
      • RetentionPolicy
      • RefusalReason
      • RetentionPolicySet
      • ScrubFieldKind
      • ScrubbedField
      • RemoveSamlGroupMappingOutcome
      • ReparentOutcome
      • ResourceSortField
      • UpdateSettingsRequest
      • SubscriptionSelector
      • TeamSpec
      • SlackRevocationTally
      • ResourceSection
      • ShapeHome
      • ResourceView
      • ShapeSuccessor
      • RestoreTeamOutcome
      • ResourceUpdateRequest
      • ShapeDeclareRequest
      • ShapeView
      • SetAutoJoinRequest
      • SamlGroupMapping
      • StageTrace
      • ScoreKind
      • TeachingElision
      • SegmentInfo
      • SetAutoJoinOutcome
      • TeamInvitation
      • StandingShape
      • WideArm
      • WideDraw
      • TeamChildRef
      • TeamCreateRequest
      • Vocabulary
      • TeamRef
      • TeamDetail
      • StageResult
      • SystemSettings
      • TeamRow
  • Temper Cloud API
    • Reference
      • API Reference
        • Access
          • Request to join the gating team
          • Check your join request status
          • Withdraw your pending join request
          • Ask an admin to reconsider a revocation
          • Read public system settings
        • Slack Link
          • Disconnect any principal's Slack link
          • Disconnect all your own Slack links
        • Auditor
          • Claim a batch of auditor jobs
          • Survey audit coverage across findings
          • Complete a claimed auditor job
        • Blobs
          • List the blobs the caller can read (optionally scoped to one home)
          • Commit bytes as a blob — one multipart request at or under the D7 threshold
          • Begin a segmented upload — declare the home and media type, get the session id
          • Read a staged upload's progress — the resume read
          • Finalize a staged upload — assemble, hash, commit
          • Append one segment to a staged upload — raw bytes as the request body
          • Read a blob's bytes back, whole, streamed (D6)
          • Delete one blob — the ordinary delete act's ruled door
          • List the edges incident to a blob — "what relates to this blob" (D3)
          • Assert one relation between a blob and another anchor
        • Graph
          • Slice a neighborhood within a cognitive map
          • Read a cognitive map's interior
          • Read a container's composition
          • Read goal-container territories and residuals
          • Read what your work is built around
          • Read your teams and cognitive maps
          • Read the resources composing a region
          • Traverse from where you are
        • Cognitive Maps
          • List cognitive maps you can see
          • Create a cognitive map and its telos charter
          • Get one cognitive map
          • Reconcile a cognitive map's contents
          • Read cognitive-map analytics
          • Grant access to a cognitive map
          • Revoke access to a cognitive map
          • Materialize a cognitive map's regions
          • Read formation drift since last materialize
          • Read per-region metrics for a map
          • Read a cognitive map's shape
          • Bind a team to a cognitive map
          • Unbind a team from a cognitive map
        • Contexts
          • List contexts you can see
          • Create a context
          • Get one context
          • Retire a context
          • Read a context's analytics
          • Materialize a context's regions
          • Read formation drift since a context's last materialize
          • Reassign a context to another owner
          • Read per-region metrics for a context
          • Rename a context
          • Restore a retired context
          • Read a context's shape
          • Share a context with a team
          • Stop sharing a context with a team
        • Data Artifact Shapes
          • List live shapes declared for a context home.
          • Declare a shape for a data-artifact family within a context home.
          • Get a single shape by ID.
        • Events
          • Read the event cursor for a context
          • Read a node or edge's event trail
        • Facets
          • Set a facet on a resource
          • Read the live facets of one edge
          • Set a facet on a relationship
          • Retract one facet of a relationship
          • Read the live facets of one resource
        • Health
          • Check service health
        • Ingest
          • Begin a segmented ingest
          • Update an in-progress ingest
          • List the blocks landed so far
          • Append a block to an in-progress ingest
          • Finalize a segmented ingest
        • Invitations
          • Accept a team invitation
          • Decline a team invitation
          • List invitations addressed to you
          • Count the invitations addressed to you
          • List a team's open invitations
          • Revoke a team invitation
          • Invite someone to a team
        • Invocations
          • List agent invocations
          • Open an invocation
          • Get one invocation
          • Close an invocation
        • Profile
          • Read your profile
          • Update your profile
          • List your linked identity providers
        • Query
          • Run a composition of situated acts
        • Relationships
          • Assert a relationship between resources
          • Fold a relationship
          • Change a relationship's type
          • Change a relationship's weight
        • Resources
          • List resources you can see
          • Create a resource
          • Get one resource
          • Soft-delete a resource
          • Update a resource
          • Read one content block by address (the three-state resolution)
          • List a finding's citation-audit trail
          • Record a citation-audit verdict
          • Read a resource's reconstituted content
          • List a resource's relationships
          • Read a resource's evidential standing
          • Grant access to a resource
          • Revoke access to a resource
          • Trace a resource's derivation lineage
          • Read a resource's block provenance
          • Attach provenance sources to a resource
          • Reassign a resource to another owner
        • Reblocking
          • Run one bounded, resumable re-blocking step
        • Data Artifacts
          • List artifacts for a resource, or counts with counts=true
          • Commit one data artifact to a resource
          • Get a single artifact by ID under its owning resource
        • Meta
          • Read a resource's frontmatter
          • Replace a resource's frontmatter
        • Schema
          • List every document type this instance knows, with a schema summary for each.
          • Describe one document type: its JSON Schema, required fields, closed vocabularies, and a filled-in example of the managed tier.
          • Describe the recognized conventions of the open (caller-defined) metadata tier.
        • Search
          • Search resources by text or embedding
        • Steward
          • List steward candidates
          • Claim steward jobs for a worker
          • Survey steward drift across maps
          • Read a map's ingest delta
          • Advance a map's steward watermark
        • Teams
          • List teams you belong to
          • Create a team
          • Get one team
          • Delete a team
          • Update a team
          • Add a member to a team
          • Remove a member from a team
          • Change a member's role
          • Bulk reassign a team's resources
    • Schemas
      • AcceptInvitationResponse
      • ActInput
      • ActInvocation
      • ActName
      • ActQuantity
      • ActRefusal
      • ActorAuthority
      • AddMemberRequest
      • AdvanceWatermarkAck
      • AdvanceWatermarkRequest
      • AgentAuthorship
      • AnchorAddressResolution
      • AnchorShape
      • AnchorVerdict
      • AppendBlockPayload
      • ArtifactCommitRequest
      • ArtifactCommitResponse
      • ArtifactView
      • AssertRelationshipRequest
      • AtlasEdge
      • AtlasEntry
      • AtlasHome
      • AtlasNode
      • AtlasSubgraph
      • AuditCitation
      • AuditSweepRow
      • AuditorDispatchTickRequest
      • AuditorDispatchTickResponse
      • AuditorJobCompleteAck
      • BindTeamOutcome
      • BindTeamRequest
      • BlobCommitResponse
      • BlobDeleteAck
      • BlobId
      • BlobRelationAck
      • BlobRelationAssertRequest
      • BlobRelationDirection
      • BlobRelationEdgeDirection
      • BlobRelationRow
      • BlobSummary
      • BlobUploadBeginRequest
      • BlobUploadBeginResponse
      • BlobUploadFinalizeRequest
      • BlobUploadProgress
      • BlobUploadSegmentInfo
      • BlockChunkRef
      • BlockFoldDisposition
      • BlockId
      • BlockProvenanceRow
      • BlockRead
      • BlockSuccessor
      • BlocksResponse
      • BodyStorage
      • Bridge
      • BulkReassignAck
      • BulkReassignRequest
      • ChangeRoleRequest
      • CharterBlock
      • CharterDisposition
      • CitationAuditRequest
      • CitationAuditRow
      • ClaimedAuditJob
      • ClaimedJob
      • CloseInvocationRequest
      • CogmapAnalyticsRow
      • CogmapDetail
      • CogmapFoundationRow
      • CogmapGrantBody
      • CogmapId
      • CogmapRegionMetricsRow
      • CogmapRegionRow
      • CogmapRegulationRow
      • CogmapRevokeBody
      • CogmapRow
      • CogmapStaleness
      • CombineNode
      • CombineOp
      • Composition
      • CompositionTrace
      • ConfidenceBand
      • ContentResponse
      • ContextCreateRequest
      • ContextId
      • ContextOwnerRef
      • ContextPanorama
      • ContextRow
      • ContextRowWithCounts
      • CorrelationId
      • CreateCogmapOutcome
      • CreateCogmapRequest
      • CreateInvitationRequest
      • CreateRequestBody
      • CreateReviewBody
      • DataArtifactId
      • DeleteResponse
      • DeviceOverrides
      • DiscouragedOpenMetaKey
      • DispatchTickRequest
      • DispatchTickResponse
      • Disposition
      • DocTypeDescription
      • DocTypeSummary
      • DriftSweepRow
      • EdgeFacetRow
      • EdgeFacetSetRequest
      • EdgeFacetsResponse
      • EdgeFilter
      • EdgeId
      • EdgeKind
      • ElementEvent
      • ElementKind
      • EmbedDispatchSummary
      • EnforcementMode
      • Entitlements
      • EntryBounds
      • ErrorBody
      • ErrorDetail
      • ErrorDetails
      • EventCursorResponse
      • EventTrail
      • ExactArm
      • ExactHit
      • Extent
      • FacetAck
      • FacetPredicate
      • FacetRetractAck
      • FacetSetRequest
      • FinalizePayload
      • FoldRelationshipRequest
      • GrantOutcome
      • GraphEdgeRow
      • GroupKeyMeta
      • HealthResponse
      • HomeCogmap
      • HomeContext
      • IdKind
      • IdProvenance
      • IdSet
      • IdpRevocation
      • IngestCreateResponse
      • IngestDelta
      • IngestPayload
      • IngestState
      • InheritedReadGrant
      • InheritedShare
      • InputSource
      • Intention
      • InvitationStatus
      • InvitationTokenRequest
      • InviteeInvitation
      • InvocationAck
      • InvocationActRow
      • InvocationCloseAck
      • InvocationId
      • InvocationSummary
      • InvocationView
      • JoinRequest
      • JoinRequestStatus
      • KindOwnerInput
      • LensId
      • LineageNode
      • ManagedMeta
      • MatchLocation
      • MaterializeAck
      • MaterializeDelta
      • MaterializeRequest
      • MergePolicy
      • MetaUpdatePayload
      • NarrowedBy
      • NodeHome
      • OpenInvocationRequest
      • OpenMetaConvention
      • OrdOp
      • OrphanNode
      • OutcomeDeclaration
      • PendingInvitationCounts
      • PlanRefusal
      • PlanRefusalDetails
      • Polarity
      • Profile
      • ProfileAuthLink
      • ProfileId
      • ProfileUpdateRequest
      • ProfileWithEntitlements
      • PropertyOp
      • PropertyPredicate
      • ProvenanceSource
      • PublicSystemSettings
      • QuantityScale
      • QueryResponse
      • ReassignAck
      • ReassignContextOutcome
      • ReassignContextRequest
      • ReassignResourceRequest
      • ReblockCandidate
      • ReblockOutcome
      • ReblockReceipt
      • ReblockRequest
      • ReblockScope
      • ReblockSummary
      • ReconcileCogmapRequest
      • ReconcileEdge
      • ReconcileEdgeTombstone
      • ReconcileEntry
      • ReconcileOutcome
      • ReconcileTelos
      • ReconcileTelosBlock
      • ReconcileTombstone
      • Refusal
      • RefusalReason
      • RegionDisclosure
      • RegionHit
      • RegionId
      • RelationshipAck
      • RelationshipTarget
      • RemoveMemberOutcome
      • RenameContextOutcome
      • RenameContextRequest
      • ResidualBucket
      • ResidualContext
      • ResidualGroups
      • ResidualOwnedReach
      • ResourceAnnotateRequest
      • ResourceCreateRequest
      • ResourceFacetRow
      • ResourceFacets
      • ResourceFacetsResponse
      • ResourceFilter
      • ResourceGrantBody
      • ResourceHit
      • ResourceId
      • ResourceLineage
      • ResourceListResponse
      • ResourceRevokeBody
      • ResourceSection
      • ResourceSortField
      • ResourceUpdateRequest
      • ResourceView
      • RestoreContextOutcome
      • RetireContextOutcome
      • ReturnSpec
      • RetypeRelationshipRequest
      • RevokeOutcome
      • ReweightRelationshipRequest
      • ScoreKind
      • Scoring
      • SearchParams
      • SearchReason
      • SearchResponse
      • SearchResultRow
      • SearchScope
      • SearchScopeInfo
      • SegmentInfo
      • SegmentedBegin
      • SegmentedBeginResponse
      • ShapeDeclareRequest
      • ShapeEmptiness
      • ShapeId
      • ShapeView
      • ShareContextOutcome
      • ShareContextRequest
      • SlackDisconnectRequest
      • SlackDisconnectResponse
      • SlackDisconnectedPrincipal
      • SliceRequest
      • SortOrder
      • StageDisposition
      • StageInput
      • StageInputTrace
      • StageName
      • StageNode
      • StageOutput
      • StageRelation
      • StageResult
      • StageTrace
      • Standing
      • StandingShape
      • Subscription
      • SubscriptionOverride
      • SystemAccessDetails
      • TeamCreateRequest
      • TeamDetail
      • TeamInvitation
      • TeamMemberDetail
      • TeamMemberRow
      • TeamMemberSource
      • TeamRole
      • TeamRow
      • TeamUpdateRequest
      • Territory
      • TerritoryKind
      • TerritoryOverview
      • UnbindTeamOutcome
      • UnshareContextOutcome
      • VaultConfig
      • ViaEntry
      • WideArm
      • WideHit
  • Temper Cloud API
    • Reference
      • API Reference
        • Admin
          • Reconcile auto-join team rosters
          • Revoke a profile's system-admin grant
          • Approve a principal
          • Deactivate a principal
          • Reactivate a principal
          • Revoke a principal's admission
          • List profiles in the operator directory
          • Show a profile's state card
          • Promote a profile to system admin
          • List pending join requests
          • Count pending join requests
          • Approve or reject a join request
          • List open reconsideration requests
          • Count open reconsideration requests
          • Close a reconsideration request
          • Read full system settings
          • Update system settings
          • Erase a principal
          • Survey a principal erasure
          • Scrub the history of resource blocks
          • Survey a block history scrub
          • Erase a resource
          • Survey a resource erasure
          • Re-embed stale chunks
          • Rebind a machine client to a new client ID
        • Access
          • Request to join the gating team
          • Check your join request status
          • Withdraw your pending join request
          • Ask an admin to reconsider a revocation
          • Read public system settings
        • Admin Ledger
          • Read the admin ledger
        • Slack Link
          • Disconnect any principal's Slack link
          • Disconnect all your own Slack links
        • Auditor
          • Claim a batch of auditor jobs
          • Survey audit coverage across findings
          • Complete a claimed auditor job
        • Blobs
          • List the blobs the caller can read (optionally scoped to one home)
          • Commit bytes as a blob — one multipart request at or under the D7 threshold
          • Begin a segmented upload — declare the home and media type, get the session id
          • Read a staged upload's progress — the resume read
          • Finalize a staged upload — assemble, hash, commit
          • Append one segment to a staged upload — raw bytes as the request body
          • Read a blob's bytes back, whole, streamed (D6)
          • Delete one blob — the ordinary delete act's ruled door
          • List the edges incident to a blob — "what relates to this blob" (D3)
          • Assert one relation between a blob and another anchor
        • Resources
          • Record a citation-audit verdict against a block's citation
          • List resources you can see
          • Create a resource
          • Get one resource
          • Soft-delete a resource
          • Update a resource
          • Read one content block by address (the three-state resolution)
          • List a finding's citation-audit trail
          • Record a citation-audit verdict
          • List a resource's relationships, bounded, with the filtered total stated
          • Read a resource's reconstituted content
          • List a resource's relationships
          • Read a resource's evidential standing
          • Grant access to a resource
          • Revoke access to a resource
          • Trace a resource's derivation lineage
          • Read a resource's block provenance
          • Attach provenance sources to a resource
          • Reassign a resource to another owner
        • Graph
          • Slice a neighborhood within a cognitive map
          • Read a cognitive map's interior
          • Read a container's composition
          • Read goal-container territories and residuals
          • Read what your work is built around
          • Read your teams and cognitive maps
          • Read the resources composing a region
          • Traverse from where you are
        • Cognitive Maps
          • List cognitive maps you can see
          • Create a cognitive map and its telos charter
          • Get one cognitive map
          • Reconcile a cognitive map's contents
          • Read cognitive-map analytics
          • Grant access to a cognitive map
          • Revoke access to a cognitive map
          • Materialize a cognitive map's regions
          • Read formation drift since last materialize
          • Read per-region metrics for a map
          • Read a cognitive map's shape
          • Bind a team to a cognitive map
          • Unbind a team from a cognitive map
        • Data Artifact Shapes
          • List live shapes declared for a cognitive-map home.
          • Declare a shape for a data-artifact family within a cognitive-map home.
          • List live shapes declared for a context home.
          • Declare a shape for a data-artifact family within a context home.
          • Get a single shape by ID.
        • Connections
          • List connections
          • Provision a connection
          • Get a connection
          • Revoke a connection
          • Attach a connection credential
          • Grant a team read-reach on a connection
          • Revoke a team's read-reach on a connection
          • Set connection tool manifest
          • Set connection webhook events
        • Contexts
          • List contexts you can see
          • Create a context
          • Resolve a context ref to its id
          • Get one context
          • Retire a context
          • Read a context's analytics
          • Materialize a context's regions
          • Read formation drift since a context's last materialize
          • Reassign a context to another owner
          • Read per-region metrics for a context
          • Rename a context
          • Restore a retired context
          • Read a context's shape
          • Share a context with a team
          • Stop sharing a context with a team
        • Data Artifacts
          • Get a single artifact by ID — the flat read.
          • List artifacts for a resource, or counts with counts=true
          • Commit one data artifact to a resource
          • Get a single artifact by ID under its owning resource
        • Events
          • Read the event cursor for a context
          • Read a node or edge's event trail
        • Facets
          • Set a facet on a resource
          • Read the live facets of one edge
          • Set a facet on a relationship
          • Retract one facet of a relationship
          • Read the live facets of one resource
        • Health
          • Check service health
        • Ingest
          • Begin a segmented ingest
          • Update an in-progress ingest
          • List the blocks landed so far
          • Append a block to an in-progress ingest
          • Finalize a segmented ingest
        • Invitations
          • Accept a team invitation
          • Decline a team invitation
          • List invitations addressed to you
          • Count the invitations addressed to you
          • List a team's open invitations
          • Revoke a team invitation
          • Invite someone to a team
        • Invocations
          • List agent invocations
          • Open an invocation
          • Get one invocation
          • Close an invocation
        • Machine Clients
          • List machine clients
          • Register a machine client
          • Issue a machine credential
          • Get a machine client
          • Revoke a machine client
          • Rotate a machine client secret
        • Profile
          • Read your profile
          • Update your profile
          • List your linked identity providers
        • Query
          • Run a composition of situated acts
        • Relationships
          • Assert a relationship between resources
          • Fold a relationship
          • Change a relationship's type
          • Change a relationship's weight
        • Reblocking
          • Run one bounded, resumable re-blocking step
        • Meta
          • Read a resource's frontmatter
          • Replace a resource's frontmatter
        • Schema
          • List every document type this instance knows, with a schema summary for each.
          • Describe one document type: its JSON Schema, required fields, closed vocabularies, and a filled-in example of the managed tier.
          • Describe the recognized conventions of the open (caller-defined) metadata tier.
        • Search
          • Search resources by text or embedding
        • Steward
          • List steward candidates
          • Claim steward jobs for a worker
          • Survey steward drift across maps
          • Read a map's ingest delta
          • Advance a map's steward watermark
        • Subscriptions
          • List subscriptions
          • Create a subscription
          • Get a subscription
          • Revoke a subscription
        • Teams
          • List teams you belong to
          • Create a team
          • Get one team
          • Delete a team
          • Update a team
          • Add a member to a team
          • Remove a member from a team
          • Change a member's role
          • Bulk reassign a team's resources
    • Schemas
      • AcceptInvitationResponse
      • ActInput
      • ActInvocation
      • ActName
      • ActQuantity
      • ActRefusal
      • ActorAuthority
      • AddMemberRequest
      • AdminDirectoryEntry
      • AdminDirectoryListResponse
      • AdminLedgerEntry
      • AdminLedgerResponse
      • AdminOpenJoinRequest
      • AdminOpenReviewRequest
      • AdminProfileAuthLink
      • AdminProfileCard
      • AdminProfileInvitation
      • AdminProfileTeamMembership
      • AdminProfilesListAnswer
      • AdvanceWatermarkAck
      • AdvanceWatermarkRequest
      • AgentAuthorship
      • AnchorAddressResolution
      • AnchorShape
      • AnchorVerdict
      • AppendBlockPayload
      • ArtifactCommitRequest
      • ArtifactCommitResponse
      • ArtifactView
      • AssertRelationshipRequest
      • AtlasEdge
      • AtlasEntry
      • AtlasHome
      • AtlasNode
      • AtlasSubgraph
      • AttachCredentialResponse
      • AuditCitation
      • AuditSweepRow
      • AuditorDispatchTickRequest
      • AuditorDispatchTickResponse
      • AuditorJobCompleteAck
      • AutoJoinReconcileRow
      • BindTeamOutcome
      • BindTeamRequest
      • BlobCoLinks
      • BlobCommitResponse
      • BlobDeleteAck
      • BlobId
      • BlobRelationAck
      • BlobRelationAssertRequest
      • BlobRelationDirection
      • BlobRelationEdgeDirection
      • BlobRelationRow
      • BlobStrikeView
      • BlobSummary
      • BlobUploadBeginRequest
      • BlobUploadBeginResponse
      • BlobUploadFinalizeRequest
      • BlobUploadProgress
      • BlobUploadSegmentInfo
      • BlockChunkRef
      • BlockCitationAuditRequest
      • BlockFoldDisposition
      • BlockHistoryScrubExecuteResponse
      • BlockHistoryScrubPlan
      • BlockHistoryScrubRequestBody
      • BlockHistoryScrubSurvey
      • BlockId
      • BlockProvenanceRow
      • BlockRead
      • BlockScrubCount
      • BlockSuccessor
      • BlocksResponse
      • BodyStorage
      • Bridge
      • BulkReassignAck
      • BulkReassignRequest
      • ChangeRoleRequest
      • CharterBlock
      • CharterDisposition
      • CitationAuditRequest
      • CitationAuditRow
      • ClaimedAuditJob
      • ClaimedJob
      • CloseInvocationRequest
      • CloseReviewBody
      • CogmapAnalyticsRow
      • CogmapDetail
      • CogmapFoundationRow
      • CogmapGrantBody
      • CogmapId
      • CogmapRegionMetricsRow
      • CogmapRegionRow
      • CogmapRegulationRow
      • CogmapRevokeBody
      • CogmapRow
      • CogmapStaleness
      • CombineNode
      • CombineOp
      • Composition
      • CompositionTrace
      • ConfidenceBand
      • ConnectionCredential
      • ConnectionSubscription
      • ContentResponse
      • ContextCreateRequest
      • ContextId
      • ContextOwnerRef
      • ContextPanorama
      • ContextResolution
      • ContextRow
      • ContextRowWithCounts
      • CorrelationId
      • CreateCogmapOutcome
      • CreateCogmapRequest
      • CreateInvitationRequest
      • CreateRequestBody
      • CreateReviewBody
      • CreateSubscriptionRequest
      • CredentialVerification
      • DataArtifactId
      • DeleteResponse
      • DemoteAdminRequest
      • DeviceOverrides
      • DiscouragedOpenMetaKey
      • DispatchTickRequest
      • DispatchTickResponse
      • Disposition
      • DocTypeDescription
      • DocTypeSummary
      • DriftSweepRow
      • EdgeFacetRow
      • EdgeFacetSetRequest
      • EdgeFacetsResponse
      • EdgeFilter
      • EdgeId
      • EdgeKind
      • ElementEvent
      • ElementKind
      • EmbedDispatchSummary
      • EmbeddingStatus
      • EnforcementMode
      • Entitlements
      • EntryBounds
      • ErasureExecuteRequest
      • ErasureExecuteResponse
      • ErasureSurveyRequest
      • ErasureSurveyResponse
      • ErasureTargetOutcome
      • ErrorBody
      • ErrorDetail
      • ErrorDetails
      • EventCursorResponse
      • EventId
      • EventTrail
      • ExactArm
      • ExactHit
      • Extent
      • FacetAck
      • FacetPredicate
      • FacetRetractAck
      • FacetSetRequest
      • FinalizePayload
      • FoldRelationshipRequest
      • GrantConnectionReachRequest
      • GrantOutcome
      • GrantSpec
      • GraphEdgeRow
      • GroupKeyMeta
      • HealthResponse
      • HomeCogmap
      • HomeContext
      • IdKind
      • IdProvenance
      • IdSet
      • IdpRevocation
      • IngestCreateResponse
      • IngestDelta
      • IngestEnded
      • IngestPayload
      • IngestState
      • InheritedReadGrant
      • InheritedShare
      • InputSource
      • Intention
      • InvitationStatus
      • InvitationTokenRequest
      • InviteeInvitation
      • InvocationAck
      • InvocationActRow
      • InvocationCloseAck
      • InvocationId
      • InvocationSummary
      • InvocationView
      • IssueMachineRequest
      • IssuedMachineCredential
      • JoinRequest
      • JoinRequestStatus
      • JoinRequestWithProfile
      • KindOwnerInput
      • LedgerRef
      • LedgerRefKind
      • LedgerRefRel
      • LedgerRefTarget
      • LensId
      • LineageNode
      • MachineClient
      • ManagedMeta
      • MatchLocation
      • MaterializeAck
      • MaterializeDelta
      • MaterializeRequest
      • MergePolicy
      • MetaUpdatePayload
      • NarrowedBy
      • NodeHome
      • OpenInvocationRequest
      • OpenMetaConvention
      • OrdOp
      • OrphanNode
      • OtherAuthorEdge
      • OtherAuthorEdgeProperty
      • OutcomeDeclaration
      • PendingInvitationCounts
      • PlanRefusal
      • PlanRefusalDetails
      • Polarity
      • Profile
      • ProfileAuthLink
      • ProfileId
      • ProfileUpdateRequest
      • ProfileWithEntitlements
      • PromoteAdminRequest
      • PropertyId
      • PropertyOp
      • PropertyPredicate
      • ProvenanceSource
      • ProvisionConnectionRequest
      • ProvisionMachineRequest
      • PublicSystemSettings
      • QuantityScale
      • QueryResponse
      • QueueCount
      • ReassignAck
      • ReassignContextOutcome
      • ReassignContextRequest
      • ReassignResourceRequest
      • RebindMachineRequest
      • ReblockCandidate
      • ReblockOutcome
      • ReblockReceipt
      • ReblockRequest
      • ReblockScope
      • ReblockSummary
      • ReconcileAutoJoinOutcome
      • ReconcileCogmapRequest
      • ReconcileEdge
      • ReconcileEdgeTombstone
      • ReconcileEntry
      • ReconcileOutcome
      • ReconcileTelos
      • ReconcileTelosBlock
      • ReconcileTombstone
      • RedactedEventFields
      • ReembedRequest
      • ReembedSummary
      • Refusal
      • RefusalReason
      • RegionDisclosure
      • RegionHit
      • RegionId
      • RelationshipAck
      • RelationshipTarget
      • RemoteConnection
      • RemoveMemberOutcome
      • RenameContextOutcome
      • RenameContextRequest
      • ResidualBucket
      • ResidualContext
      • ResidualGroups
      • ResidualOwnedReach
      • ResourceAnnotateRequest
      • ResourceConnections
      • ResourceCreateRequest
      • ResourceErasureExecuteRequest
      • ResourceErasureExecuteResponse
      • ResourceErasurePlan
      • ResourceErasureRefusalReason
      • ResourceErasureSurvey
      • ResourceErasureSurveyRequest
      • ResourceFacetRow
      • ResourceFacets
      • ResourceFacetsResponse
      • ResourceFilter
      • ResourceGrantBody
      • ResourceHit
      • ResourceId
      • ResourceLineage
      • ResourceListResponse
      • ResourceRevokeBody
      • ResourceSection
      • ResourceSortField
      • ResourceUpdateRequest
      • ResourceView
      • RestoreContextOutcome
      • RetireContextOutcome
      • ReturnSpec
      • RetypeRelationshipRequest
      • ReviewRequestBody
      • ReviewRequestWithProfile
      • RevokeOutcome
      • RevokePrincipalBody
      • ReweightRelationshipRequest
      • RotateSecretRequest
      • ScoreKind
      • Scoring
      • SearchParams
      • SearchReason
      • SearchResponse
      • SearchResultRow
      • SearchScope
      • SearchScopeInfo
      • SegmentInfo
      • SegmentedBegin
      • SegmentedBeginResponse
      • SetToolManifestRequest
      • SetWebhookEventsRequest
      • ShapeDeclareRequest
      • ShapeEmptiness
      • ShapeId
      • ShapeView
      • ShareContextOutcome
      • ShareContextRequest
      • SlackDisconnectRequest
      • SlackDisconnectResponse
      • SlackDisconnectedPrincipal
      • SliceRequest
      • SortOrder
      • StageDisposition
      • StageInput
      • StageInputTrace
      • StageName
      • StageNode
      • StageOutput
      • StageRelation
      • StageResult
      • StageTrace
      • Standing
      • StandingShape
      • Subscription
      • SubscriptionOverride
      • SubscriptionSelector
      • SystemAccessDetails
      • SystemSettings
      • TeamCreateRequest
      • TeamDetail
      • TeamInvitation
      • TeamMemberDetail
      • TeamMemberRow
      • TeamMemberSource
      • TeamRole
      • TeamRow
      • TeamSpec
      • TeamUpdateRequest
      • Territory
      • TerritoryKind
      • TerritoryOverview
      • UnbindTeamOutcome
      • UnshareContextOutcome
      • UpdateSettingsRequest
      • VaultConfig
      • ViaEntry
      • WideArm
      • WideHit
  1. concepts

Query Cost and the Bounds That Shape It

For integrators — anyone composing queries against Temper, whether from the CLI, the HTTP
API, or an agent runtime driving MCP. Also relevant to operators, who own the layer the
database enforces.
Temper's read surface is compositional: you declare a plan of stages, each stage invokes an act,
and the server compiles the whole plan into one statement. That is the intended use — composing
programmatically is what the query door is for. It also means a caller can describe a great deal
of work in a small request, so it is worth understanding which layer bounds what.

The decision this reflects#

Temper bounds a composed read in three places, and the split is deliberate:
The contract bounds a plan's shape. Anything knowable from the request alone — how many
stages it declares, whether it is well-formed — is refused by the validator before the request
costs anything. These bounds are published in the wire contract, not merely enforced, so a
client checking the contract never refuses a plan the server would run.
Each act declares its own ceilings. A row ceiling belongs to the act that produces the rows,
because only the act knows whether truncating its answer would make that answer wrong. There is
no global row cap, and that is a choice rather than an omission.
The deployment owns the execution bound. How long a statement may run is a property of the
hardware, the workload mix and the duration budget of the surface it serves — none of which the
software knows. Temper does not bake in a number that would be wrong for most deployments; it
gives the operator the grain to set one. The last section is how to choose it.
The rest of this page is how to reason within that split. It is not a tuning guide, and the
numbers your deployment can afford are yours to measure.

Bounds answer different questions#

There are four distinct layers, and they are not interchangeable. Confusing one for another is
the most common way to believe a query is bounded when it is not.
LayerRefusesWhenCost of the refusal
ShapeA plan that is malformed or oversizedBefore any embedding or database contactFree
AdmissionA caller without standingBefore the plan runsOne database round-trip
DeliveryRows beyond an act's declared ceilingAs the statement produces themThe work was already done
ExecutionA statement that runs too longWhile it runsWhatever it consumed
The shape layer is the cheapest and the only one that can refuse before the request costs
anything. MAX_STAGES lives there: a composition may declare at most 64 stages, and one that
declares more is refused as TooManyStages. Because the check sits in validate, it covers the
HTTP API, MCP run_query, and temper query --check from a single site — all three route
through the same validator, so a plan the CLI refuses is a plan the server would have refused.
That cap is published as max_items on Composition.stages in the wire contract, and that
matters more than it looks. A bound a client enforces but the contract does not declare is a
client refusing plans a newer server would happily run. Publishing it is what makes local
--check trustworthy rather than a source of false refusals.
The same layer bounds the size of everything a plan carries, so that a plan the contract
calls legal always fits the request body limit — and the hosting platform's request cap in front
of it, which on Vercel is 4.5 MB, far below the door's own 25 MB. The two composition budgets are
sized for that cap:
BoundLimitRefused as
A narrowing string: label, tag, doc_type, facet or property key, stage, status, owner256 bytesfilter_string_too_long
title_contains4096 bytesfilter_string_too_long
A property-predicate value: contains value, compare bound, facet value16384 bytes, 256 nested elementsproperty_value_too_large
All predicate values in a composition512 KiBproperty_value_budget_exceeded
All caller text in a composition, counted at the most expansive JSON encoding768 KiBtext_budget_exceeded
returns, a combine stage's inputs64 entrieslist_too_long
An act's inputs2, one per relationlist_too_long
String sizes count JSON-escaped bytes, which the schema cannot express exactly: it publishes a
character count. So the guarantee runs one way. A client checking the schema never refuses a plan
the server would run, but the server can refuse a schema-valid string of multi-byte or control
characters, with the typed reason above.
The text budget counts every character an encoder could escape at its full six-byte \uXXXX
width (twelve outside the Basic Multilingual Plane), because clients differ: Python's json.dumps
escapes non-ASCII by default, Go's encoder escapes <>&, Gson and .NET escape more punctuation.
Only ASCII letters, digits and spaces count one byte. Numbers count at the widest a client could
have written them, and separators at Python's default ", " and ": ". A plan inside the budget
fits the platform's cap under any encoder that escapes per character.
/api/search holds the matching fields to the same numbers, and answers 400 BAD_REQUEST naming
each field that is over.

A bound on waiting is not a bound on work#

This is the distinction worth carrying past this page, because it generalizes to every guard you
will ever read.
A connection pool's acquire timeout bounds how long a caller waits for a connection. It does
nothing whatsoever to a statement that already holds one. Under load its effect is to make the
next caller fail faster while the expensive statement runs to completion — which is the
opposite of protective, and it reads like protection.
So for any guard, ask two questions and keep them separate:
1.
What does this stop?
2.
What does this merely reorder?
A timeout on acquisition, a queue depth, a concurrency limiter, a retry budget — several of these
change who waits and in what order without changing how much work happens. Only a bound the
executor itself honors can shorten the work.

Cost follows the acts you compose, not the stages you declare#

A composition's cost is not proportional to its size. Two plans with identical stage counts can
differ by more than an order of magnitude depending on which acts they invoke and how each act is
bound. A plan of many cheap, well-bound stages is ordinary; a plan of a few unbounded ones is not.
This is why the stage cap is a shape guard rather than a cost guard. It bounds what the
planner must build, what the wire must carry, and how large a refusal list can grow. It is not a
cost ceiling and should not be read as one — a plan well under the cap can still be expensive, and
the cap's job is to keep the plan itself tractable, not to price it.
The practical consequence for anyone composing queries: look at the acts, not the stage count.
If a plan is slower than you expect, the question is which act is doing the work and what it was
given to work on, not how many stages you wrote.

Read the ceilings the act declares#

Each act declares its own bound_ceilings — the maximum a caller may ask for on each bound term.
Most acts cap Limit at 50, so a stage that asks for more is clamped to the act's ceiling rather
than honored.
Ceilings are per-act, and some acts declare none. find-resources-with is deliberately one of
them: it is a filter-driven producer whose natural result is "every visible resource matching
these criteria", and giving it a row ceiling would silently truncate an answer whose whole purpose
is completeness. That is a considered design choice, not an oversight.
The corollary is on the caller. An act with no declared ceiling is bounded by what you give
it
, so:
Bind it with filters that actually narrow. An unfiltered producer returns the visible corpus.
When you feed one producer's output into another stage, remember you are handing the consumer
whatever the producer found — the consumer's own limit prunes its output, not its input.
Prefer expressing the narrowing in the act that can push it down, rather than producing wide and
filtering late.
Every stage in a plan executes, whether or not you read it. Naming a stage in returns selects
what comes back; it does not select what runs. So an unread stage is not a free stage — if you do
not need it, do not declare it.

Choosing a number requires measurement, not judgment#

Operators own the execution layer, and it is the one place a genuinely runaway statement can be
stopped. Postgres offers statement_timeout for this, and it can be attached at several grains:
per-transaction with SET LOCAL, per-role with ALTER ROLE … SET, or per-function with
ALTER FUNCTION … SET. Temper already uses the per-function grain to pin hnsw.ef_search
(migration 20260808000030), and it
is usually the right instrument here too, because it lets a read-heavy function carry a different
budget from a long-running maintenance write without splitting pools or paths.
Note that a session-level hook such as a pool's after_connect is the wrong instrument under a
transaction-mode pooler, where a session is not pinned to a client for the life of a connection.
Do not pick the number. A bound chosen without measurement is either theatre or an outage, and
which one you got is not knowable in advance. The methodology matters more than any value this
page could suggest — and the pg_stat_statements columns these bullets read are the
Postgres documentation's to define:
Install the instrument before you need it. pg_stat_statements collects into shared memory
from the moment the module is preloaded, and CREATE EXTENSION only makes it readable. A
deployment that adds the extension later may find it already has history.
Check dealloc before trusting a maximum. If entries have been evicted, your slowest
statement is the slowest of what survived — the top of a truncated list, not a maximum. Only
dealloc = 0 makes max_exec_time mean what it says.
Know your window. Compare stats_reset against pg_postmaster_start_time(). A window
shorter than your slowest periodic workload has not yet seen the thing most likely to be killed
by a new bound.
Ask for the slowest legitimate query, not the average. Sizing to a healthy hour's p99
guarantees you kill the nightly job. The number you need is the slowest thing that is supposed
to happen.
Separate the paths before you separate the numbers. Surfaces with different duration budgets
have different honest ceilings; a single global value has to survive the widest spread among
them, which is usually a bad trade made once for everything.
Group by shape, not by name. A normalized statement text can cover several plans with very
different costs. A mean across them describes none of them. Compare like shapes, and prefer
min/stddev alongside the mean — a slow statement with a high floor is a different problem
from one with a long tail.
Separate the time from the work. Read shared_blks_hit against shared_blks_read before
assuming a slow statement is I/O-bound. A statement that is almost entirely cache hits is
spending CPU, and the fix for CPU is not the fix for I/O. Note that the blk_read_time columns
read as zero when track_io_timing is off, which looks identical to "no time in I/O" — check
the setting before believing the number.
Watch temp_blks_written. It is the usual source of a cost that grows faster than the work
does. A plan that fits in work_mem and one that spills are not on the same curve, so two
statements with similar buffer counts can differ by orders of magnitude in time. Compositions
with many stages materialize many intermediate results, which makes them more likely to spill
than their size alone suggests.
Two properties of the execution environment matter more than they look, and both are worth
checking before concluding that a query shape is at fault: the CPU actually available to the
database, and whether the functions in the path are
PARALLEL SAFE. A parallel-unsafe function
anywhere in a plan forces the whole statement serial no matter how many workers are configured.

Verifying that a guard works#

A guard you have never seen refuse is a guard you have not verified — you have only failed to
observe it. The useful question is not "is this bound correct?" but:
What would this have to see in order to refuse?
Then construct that input and watch it get refused. And confirm the other direction too: a bound
witnessed only by the thing it blocks tells you nothing about whether it kills work that should
have survived. Both directions, or it is not a witness.
The same standard applies to a bound you have chosen from measurement. Show a query designed to
exceed it being cut off, and show a legitimate slow one surviving. One direction is half a test.

See also#

The Trust Boundary — the authentication and system-access gates every
call crosses before any of this applies.
Telemetry — the trace and log layers, and what a request looks like from
the outside.
Modified at 2026-11-15 01:09:09
Previous
The Trust Boundary
Next
Deleting a blob — custody, the ledger, and bytes
Built with