Stack Internal logo
v1 APIs

ActiveUsersPeriodResponse

period
​string · required
isPartialPeriod
​boolean · required
activeUserCount
​integer | null · int64

ActiveUsersRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

ActiveUsersResponse

​ActiveUsersRangeResponse · required
​ActiveUsersPeriodResponse[] · required
generatedAt
​string · date-time · required
totalActiveUsers
​integer | null · int64

AnswerEngagementPeriodResponse

period
​string · required
responseCount
​integer · int64 · required
responseCopies
​integer · int64 · required
totalResponseCopies
​integer · int64 · required
responseSourceClicked
​integer · int64 · required
totalSourcesClicked
​integer · int64 · required
copyRate
​number · double · required
sourceClickedRate
​number · double · required
isPartialPeriod
​boolean · required
tenantName
​string | null

AnswerEngagementRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

AnswerEngagementResponse

​AnswerEngagementRangeResponse · required
​AnswerEngagementPeriodResponse[] · required

DateRangeInterval

string · enum
Enum values:
day
week
month

HelpfulAnswerRatePeriodResponse

period
​string · required
totalResponses
​integer · int64 · required
feedback
​integer · int64 · required
positiveFeedback
​integer · int64 · required
negativeFeedback
​integer · int64 · required
isPartialPeriod
​boolean · required
feedbackRate
​number | null · double
helpfulAnswerRate
​number | null · double
unhelpfulAnswerRate
​number | null · double

HelpfulAnswerRateRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

HelpfulAnswerRateResponse

​HelpfulAnswerRateRangeResponse · required
​HelpfulAnswerRatePeriodResponse[] · required
generatedAt
​string · date-time · required

KnowledgeCreditsUsagePeriodResponse

period
​string · required
chatResponses
​number · double · required
mcpCredits
​number · double · required
apiCredits
​number · double · required
isPartialPeriod
​boolean · required
totalCredits
​number · double · readOnly · required

KnowledgeCreditsUsageRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

KnowledgeCreditsUsageResponse

totalCredits
​number · double · readOnly · required

MostActiveUserResponse

rank
​integer · int32 · required
userId
​string · uuid · required
displayName
​string · required
questionCount
​integer · int64 · required
sourceOpenCount
​integer · int64 · required

MostActiveUsersLeaderboardResponse

​MostActiveUserResponse[] · required

MostActiveUsersLeaderboardsResponse

MostActiveUsersRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

MostActiveUsersResponse

​MostActiveUsersRangeResponse · required
​MostActiveUsersLeaderboardsResponse · required
generatedAt
​string · date-time · required

ProblemDetails

type
​string | null
title
​string | null
status
​integer | null · int32
detail
​string | null
instance
​string | null
No data returned

QuestionsSubmittedPeriodResponse

period
​string · required
isPartialPeriod
​boolean · required
totalQueryCount
​integer · int64 · required
​QuestionsSubmittedQueryCountByChannelResponse · required

QuestionsSubmittedQueryCountByChannelResponse

webUi
​integer · int64 · required
mcp
​integer · int64 · required
api
​integer · int64 · required

QuestionsSubmittedRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

QuestionsSubmittedResponse

​QuestionsSubmittedRangeResponse · required
​QuestionsSubmittedPeriodResponse[] · required
generatedAt
​string · date-time · required

ReportError

code
​string · required
description
​string · required

ReportValidationProblemDetails

​ReportError[] · required
type
​string | null
title
​string | null
status
​integer | null · int32
detail
​string | null
instance
​string | null
No data returned

SearchableKnowledgePeriodResponse

period
​string · required
nodesCreated
​integer · int64 · required
isPartialPeriod
​boolean · required

SearchableKnowledgeRangeResponse

start
​string · required
end
​string · required
interval
​DateRangeInterval · enum · required
Enum values:
day
week
month

SearchableKnowledgeResponse

​SearchableKnowledgeRangeResponse · required
​SearchableKnowledgePeriodResponse[] · required

AccessControlListGrant

Identifies an ACL grant for a subject that may read the content. Membership resolution is performed by the provider named in StackInternal.ContentIngestion.Connectors.Models.AccessControlListGrant.Provider.
kind
​AccessControlListKind · enum · required
Enum values:
domain
group
user
anyone
provider
​string · minLength: 0 · maxLength: 128 · pattern: ^[a-z0-9]+(?:-[a-z0-… · required

The lowercase identity-provider namespace.

identifier
​string · minLength: 0 · maxLength: 256 · required

A provider-owned identifier up to 256 characters long.

AccessControlListKind

string · enum
Enum values:
domain
group
user
anyone

AclGrantMembershipAclRequest

One ACL grant reference from the request body.
kind
​string | null

The ACL grant kind. Supported values are 'domain', 'group', 'user', and 'anyone'.

provider
​string | null

The lowercase provider namespace for this ACL grant, such as 'slack'.

identifier
​string | null

The provider-owned opaque identifier for this ACL grant.

AclGrantMembershipMemberRequest

One provider-owned member identity for an ACL grant.
provider
​string · required

The lowercase provider namespace for this member, such as 'slack'.

identifier
​string · required

The provider-owned opaque identifier for this member.

AclGrantMembershipSyncGrantRequest

One ACL grant and the complete member set currently observed for it.

One ACL grant reference from the request body.

​array | null

The complete set of current members for this ACL grant. Use an empty array when the grant currently has no members. Grants with kind 'anyone' are always normalized to an empty member set.

AclGrantMembershipSyncGrantResultResponse

Per-grant grant and revoke counts returned after synchronization.
​AccessControlListGrant · required

Identifies an ACL grant for a subject that may read the content. Membership resolution is performed by the provider named in StackInternal.ContentIngestion.Connectors.Models.AccessControlListGrant.Provider.

observedAt
​string · date-time · required

The observedAt timestamp applied to this ACL grant.

grantedCount
​integer · int32 · required

The number of members granted by this request.

revokedCount
​integer · int32 · required

The number of members revoked by this request.

grantedChangeSetId
​string | null · uuid

The change-set id for granted members, or null when no grants were recorded.

revokedChangeSetId
​string | null · uuid

The change-set id for revoked members, or null when no revokes were recorded.

ArchetypeContentEnvelope

Standardized archetype envelope used for transport and storage.
representation
​string · required

The payload representation family.

representationVersion
​integer · int32 · required

The representation version used for this payload.

archetype
​string · required

The archetype name for the payload.

dataSchema
​string · required

The Dimension Registry schema identifier used to validate StackInternal.ContentIngestion.Connectors.Models.ArchetypeContentEnvelope.Data.

Example: com.stackoverflow.stackinternal.content.archetype.document.v1
​required

Archetype payload matching the supplied dataSchema.

ChangeArtifactArchetype

Versioned change unit whose primary meaning is the proposed or completed change itself.
title
​string | null · required

Commit subject, pull request title, release name, or other primary label for the change artifact.

changeType
​string | null · required

High-level change classification such as commit, pull request, release, patch, or version bump.

createdAt
​string | null · date-time · required

Timestamp describing when the change artifact was created.

authoredByPersonaRef
​string | null · required

Observed external identifier in the source system for the persona that authored, created, or published the change artifact. Resolution to a persona is based on the source value together with this persona reference and happens in the extraction domain.

state
​string | null · required

Current state such as open, merged, closed, published, draft, or prerelease.

sourceUri
​string | null · uri · required

Deep link to the change artifact in the source system.

descriptionText
​string | null

Commit body, pull request description, release notes, or other long-form explanation of the change.

updatedAt
​string | null · date-time

Timestamp describing the latest metadata update for the change artifact.

baseRef
​string | null

Reference to the target branch, previous version, or prior state of the change.

headRef
​string | null

Reference to the source branch, head SHA, or new state introduced by the change.

mergedOrPublishedAt
​string | null · date-time

Timestamp describing when the change was merged, landed, or published.

linkedWorkItemRefsJson
​string | null

JSON-serialized collection of related issues, tickets, milestones, or other work-tracking links.

reviewMessageRefsJson
​string | null

JSON-serialized collection of review entries and review comments associated with the change.

metadataJson
​string | null

JSON-serialized source-specific metadata such as SHA, tag, file stats, merge queue state, or target commitish.

ContainerArchetype

Stable place or boundary that groups related artifacts, discussions, or work.
displayName
​string | null · required

Display name for the container, such as a repository, channel, project, team, or space name.

containerType
​string | null · required

High-level container classification such as space, repository, board, team, channel, project, room, or service.

ownerRefs
​array | null · required

Observed external identifiers in the source system for the owners, leads, maintainers, or administrators for the container. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Deep link to the container in the source system.

descriptionText
​string | null

Purpose, charter, topic, or description that explains what the container is for.

createdAt
​string | null · date-time

Timestamp describing when the container was created.

updatedAt
​string | null · date-time

Timestamp describing the most recent metadata change to the container.

visibility
​string | null

Visibility or access state such as public, private, internal, shared, or archived.

parentContainerRef
​string | null

Reference to a parent organization, team, portfolio, or space when one exists.

metadataJson
​string | null

JSON-serialized source-specific container metadata such as default branch, topic, moderation settings, or billing linkage.

ContentHierarchySegment

id
​string · required
displayName
​string · required

ConversationArchetype

Ordered exchange context that groups related messages, participants, and activity over time.
conversationType
​string | null · required

High-level conversation classification such as direct message, group chat, channel thread, comment thread, or Q&A thread.

startedAt
​string | null · date-time · required

Timestamp describing when the conversation began.

lastActivityAt
​string | null · date-time · required

Timestamp of the most recent message or activity associated with the conversation.

participantRefs
​array | null · required

Observed external identifiers in the source system for the participants involved in the conversation. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Deep link to the chat, thread, or channel in the source system.

title
​string | null

Channel name, thread subject, topic, or another human-readable label for the conversation.

summary
​string | null

Optional synopsis of the discussion to help consumers understand the exchange quickly.

​array | null

Ordered collection of normalized message archetype instances materialized for the conversation when callers need the usable thread shape.

messageCount
​integer | null · int32

Number of messages currently known for the conversation when the source exposes that count.

containerRef
​string | null

Reference to the workspace, team, channel, space, or project that contains the conversation.

status
​string | null

Conversation state such as active, closed, archived, resolved, or locked.

metadataJson
​string | null

JSON-serialized source-specific conversation metadata such as thread IDs, visibility, or reply counters.

DocumentArchetype

Durable authored content whose primary value is the document body and its stable descriptive metadata.
title
​string | null · required

Human-readable name of the document or document-like artifact.

textContent
​string | null · required

Extracted body text, OCR text, or the normalized textual representation of the document content.

documentType
​string | null · required

High-level document classification such as page, file, blog post, note, knowledge article, or attachment.

personaRefs
​array | null · required

Observed external identifiers in the source system for the people who created or most recently edited the document. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Canonical deep link back to the document in the source system.

summary
​string | null

Optional source-provided or generated synopsis that helps a reader understand the document quickly.

createdAt
​string | null · date-time

Timestamp describing when the source document was first created.

lastModifiedAt
​string | null · date-time

Timestamp describing the most recent source-side modification to the document.

containerRef
​string | null

Reference to the parent space, repository, drive, folder, channel, or project that contains the document.

mimeType
​string | null

MIME type for file-backed content when the source exposes one.

language
​string | null

Natural language code or label for the extracted content when it is known.

tagsJson
​string | null

JSON-serialized collection of labels, categories, or source taxonomies associated with the document.

status
​string | null

Lifecycle or publication state such as draft, published, archived, deleted, or current.

sourceVersion
​string | null

Source-specific version number, revision identifier, or current document revision label.

metadataJson
​string | null

JSON-serialized source-specific metadata that does not cleanly promote to a canonical document property.

HttpValidationProblemDetails

​object · required
type
​string | null
title
​string | null
status
​integer | null · int32
detail
​string | null
instance
​string | null

InsertContentV3Request

Request body for creating a new content record from a Dimension Registry archetype payload.
source
​string · required

The upstream system that produced the content, such as 'github' or 'slack'.

sourceId
​string · required

The stable identifier from the upstream system for this content item. The combination of source and sourceId must be unique within the tenant.

sourceUri
​string · uri · required

The absolute URI of the content item in the upstream system.

​AccessControlListGrant[] · required

The access control entries that define who can view the content.

entityType
​string · required

The source-specific entity type for this content item, such as 'markdown-file' or 'message'.

​ArchetypeContentEnvelope · required

Standardized archetype envelope used for transport and storage.

hierarchy
​string | null · uri

The optional absolute URI-shaped container hierarchy for this content item.

​array | null

Optional root-to-leaf containers with stable IDs and display names. Requires a matching hierarchy URI.

InsertContentV3Response

Response returned when a content version is created through the public v3 content endpoint.
contentId
​string · uuid · required

The unique identifier of the stored content version that was created.

LegacyJsonContentDataResponse

A legacy content payload that preserves the stored source-specific JSON object.
No data returned

MessageArchetype

Single authored utterance or note within a broader conversation, work item, review flow, or comment thread.
textContent
​string | null · required

The message body or normalized textual content of the utterance.

messageType
​string | null · required

High-level message classification such as chat, comment, review, reply, Q&A, note, or announcement.

createdAt
​string | null · date-time · required

Timestamp describing when the message was first created or submitted.

personaRef
​string | null · required

Observed external identifier in the source system for the persona that authored or sent the message. Resolution to a persona is based on the source value together with this persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Deep link to the exact message in the source system.

title
​string | null

Optional subject line, heading, or generated snippet for the message.

lastModifiedAt
​string | null · date-time

Timestamp of the latest source-tracked edit to the message.

conversationRef
​string | null

Reference to the parent conversation when the message belongs to one.

parentRef
​string | null

Reference to the immediate parent object such as a work item, document, message, or review object.

replyToRef
​string | null

Reference to the direct parent message or comment when the source models threaded replies.

mentions
​array | null

Observed external identifiers in the source system for mentioned personas or entities captured from the message. Resolution to a persona or other mentioned identity is based on the source value together with each mention reference and happens in the extraction domain.

attachmentsJson
​string | null

JSON-serialized collection of attachments or linked artifacts associated with the message.

reactionsJson
​string | null

JSON-serialized reaction counts or structured reaction metadata captured for the message.

metadataJson
​string | null

JSON-serialized source-specific message metadata such as subtype, importance, visibility, or line context.

MetricSnapshotArchetype

Aggregate measurement captured for a subject and a point-in-time or bounded reporting period.
metricFamily
​string | null · required

Broad measurement family such as usage, attendance, traffic, queue performance, or SLA.

subjectRef
​string | null · required

Reference to the user, team, organization, repository, session, queue, service, or other subject being measured.

capturedAt
​string | null · date-time · required

Timestamp of the snapshot capture or the representative timestamp for the measured period.

measurementsJson
​string | null · required

JSON-serialized map of numeric measurements keyed by metric name.

sourceUri
​string | null · uri · required

Deep link to the source report or metric record when the source provides one.

periodStartAt
​string | null · date-time

Start timestamp for the measured period when the snapshot covers a window of time.

periodEndAt
​string | null · date-time

End timestamp for the measured period when the snapshot covers a window of time.

dimensionsJson
​string | null

JSON-serialized dimension bag describing slice values such as language, IDE, model, queue, channel, or feature.

aggregationLevel
​string | null

Level at which the metrics were aggregated, such as user, team, org, repo, session, or queue.

metadataJson
​string | null

JSON-serialized source-specific rollup metadata such as sample counts, report IDs, or derived counters.

PutAclGrantMembershipsV3Request

Request body for synchronizing the current member set of one or more ACL grants.
source
​string · required

The registered API-managed source or authorized internal connector source that owns this ACL membership snapshot.

observedAt
​string · date-time · required

The time this snapshot was observed in the upstream system.

​array | null

The ACL grants to replace. Each grant is a full replacement of its current member set.

PutAclGrantMembershipsV3Response

Response body for an ACL grant membership synchronization request.
runId
​string · uuid · required

The synthetic ingestion run recorded for this request.

Per-grant grant and revoke counts derived from the applied membership changes.

SessionArchetype

Time-bounded live interaction whose timing, participation, and runtime outcome are core to the meaning.
title
​string | null · required

Human-readable session name, topic, or generated label.

sessionType
​string | null · required

High-level session classification such as meeting, webinar, call, event, or SMS session.

startAt
​string | null · date-time · required

Timestamp describing when the session started or is scheduled to start.

hostRefs
​array | null · required

Observed external identifiers in the source system for host, organizer, or owner personas. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

participantRefs
​array | null · required

Observed external identifiers in the source system for participants, attendees, panelists, or registrants. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

status
​string | null · required

Session state such as scheduled, live, completed, canceled, or no-show.

sourceUri
​string | null · uri · required

Deep link back to the session record in the source system.

descriptionText
​string | null

Agenda, description, or source-provided summary of what the session is about.

endAt
​string | null · date-time

Timestamp describing when the session ended or is scheduled to end.

durationSeconds
​integer | null · int32

Duration of the session in whole seconds when that value is known.

joinUrl
​string | null · uri

Join URL or entry point for the session when one is appropriate to retain.

containerRef
​string | null

Reference to the team, channel, account, hub, or other organizational boundary that contains the session.

transcriptText
​string | null

Normalized spoken transcript or transcript excerpt associated with the session.

recordingRefsJson
​string | null

JSON-serialized collection of linked recordings or related session artifacts.

metadataJson
​string | null

JSON-serialized source-specific session metadata such as timezone, attendance stats, poll linkage, or telephony fields.

SourceEventArchetype

Immutable source occurrence that answers what happened, when it happened, and what it happened to.
eventType
​string | null · required

Name or classification of the source occurrence being captured.

occurredAt
​string | null · date-time · required

Timestamp describing when the event happened.

actorRefs
​array | null · required

Observed external identifiers in the source system for the personas, systems, or services that caused the event. Resolution to a persona or other actor identity is based on the source value together with each actor reference and happens in the extraction domain.

subjectRef
​string | null · required

Reference to the primary thing the event happened to.

sourceUri
​string | null · uri · required

Deep link to the event in the source system when the source exposes one.

title
​string | null

Optional short label or generated summary for the event.

containerRef
​string | null

Reference to the repository, project, channel, service, or other grouping context around the event.

status
​string | null

Outcome or resulting state associated with the event when that meaning is useful.

payloadText
​string | null

Readable normalized event description or textual payload content.

payloadJson
​string | null

JSON-serialized raw or normalized event payload for cases where structured details matter.

metadataJson
​string | null

JSON-serialized source-specific event metadata such as environment, headers, batch IDs, or alert tags.

StructuredRecordArchetype

Field-driven business object whose primary value lies in its structured attributes rather than prose or event chronology.
recordType
​string | null · required

Broad business-object classification for the structured record.

fieldsJson
​string | null · required

JSON-serialized map of canonicalized key-value attributes that capture the record payload.

ownerRefs
​array | null · required

Observed external identifiers in the source system for owners, requesters, maintainers, or other linked people for the record. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Deep link to the structured record in the source system.

title
​string | null

Best human-readable label for the record when the source exposes one.

summary
​string | null

Optional generated or source-provided synopsis of the record.

textContent
​string | null

Flattened textual representation of the most important string fields for retrieval and summarization scenarios.

status
​string | null

Current state of the record when state is meaningful.

createdAt
​string | null · date-time

Timestamp describing when the record was created.

updatedAt
​string | null · date-time

Timestamp describing the most recent update to the record.

containerRef
​string | null

Reference to the project, service, event, repository, organization, or other grouping context for the record.

metadataJson
​string | null

JSON-serialized source-specific attributes that should remain outside the canonical structured surface.

UpdateContentV3Request

Request body for updating an existing content record from a Dimension Registry archetype payload.
sourceUri
​string · uri · required

The absolute URI of the content item in the upstream system.

​AccessControlListGrant[] · required

The access control entries that define who can view the content.

entityType
​string · required

The source-specific entity type for this content item, such as 'markdown-file' or 'message'.

​ArchetypeContentEnvelope · required

Standardized archetype envelope used for transport and storage.

hierarchy
​string | null · uri

The optional absolute URI-shaped container hierarchy for this content item.

​array | null

Optional root-to-leaf containers with stable IDs and display names. Requires a matching hierarchy URI. If omitted, stored segments are preserved only while the hierarchy path is unchanged.

WorkItemArchetype

Trackable unit of work whose lifecycle, ownership, and completion state are central to its meaning.
title
​string | null · required

Short summary or primary human-readable description of the work item.

workItemType
​string | null · required

High-level workflow classification such as issue, incident, request, task, change, approval, or problem.

status
​string | null · required

Current lifecycle state of the work item.

createdAt
​string | null · date-time · required

Timestamp describing when the work item was created.

openedByPersonaRef
​string | null · required

Observed external identifier in the source system for the persona that reported, requested, or created the work item. Resolution to a persona is based on the source value together with this persona reference and happens in the extraction domain.

assigneeRefs
​array | null · required

Observed external identifiers in the source system for current owners, assignees, or responders. Resolution to personas is based on the source value together with each persona reference and happens in the extraction domain.

sourceUri
​string | null · uri · required

Deep link to the work item in the source system.

descriptionText
​string | null

Long-form description, body text, or normalized rich-text content explaining the work item.

priority
​string | null

Urgency or importance value supplied by the source system.

updatedAt
​string | null · date-time

Timestamp describing the most recent source-side update to the work item.

dueAt
​string | null · date-time

Due date or target completion timestamp when the source tracks one.

resolution
​string | null

Resolution code, closure note, or final outcome for the work item.

labelsJson
​string | null

JSON-serialized collection of tags, components, or other categorization labels.

containerRef
​string | null

Reference to the project, board, service, repository, or space that owns the work item.

messageRefsJson
​string | null

JSON-serialized collection of related comments, reviews, or discussion entries.

metadataJson
​string | null

JSON-serialized source-specific workflow metadata such as severity, sprint, milestone, SLA, or custom fields.

DsrAccessRequest

The DSR access request.
email
​string · string · required

The email address associated with the data subject for the DSR access request.

DsrAccessResponse

The DSR access response.
exists
​boolean · required

Whether matching data exists.

messages
​array | null

Additional messages.

emails
​string | null

Email addresses.

ips
​string | null

IP addresses.

names
​string | null

Names.

locations
​string | null

Locations.

addresses
​string | null

Street addresses.

cities
​string | null

Cities.

states
​string | null

States or regions.

countries
​string | null

Countries.

postalCodes
​string | null

Postal codes.

companyNames
​string | null

Company names.

titles
​string | null

Job titles.

cookies
​string | null

Cookie values.

aboutMe
​string | null

About-me content.

urls
​string | null

URLs.

phones
​string | null

Phone numbers.

mobilePhones
​string | null

Mobile phone numbers.

userIds
​string | null

User IDs.

accountIds
​string | null

Account IDs.

anonymousAccount
​boolean | null

Whether the account is anonymous.

notes
​string | null

Additional notes.

DsrExportRequest

The DSR export request.
email
​string · string · required

The email address associated with the data subject for the DSR access request.

DsrExportResponse

The DSR export response.
exists
​boolean · required

Whether matching data exists.

messages
​array | null

Additional messages.

dataSchema
​string | null · uri

URI of the exported data schema.

​object | null

Exported data.

DsrEraseRequest

The DSR erase request.
email
​string · string · required

The email address associated with the data subject for the DSR access request.

DsrEraseResponse

The DSR erase response.
exists
​boolean · required

Whether matching data exists.

messages
​array | null

Additional messages.

GetNodesByIdsRequest

The request for retrieving persisted nodes by node ID.
nodeIds
​string[] · minItems: 1 · maxItems: 100 · required

Node IDs to retrieve. Duplicates are ignored.

Example: ["9588aca8-8995-4c14-a11f-fb442f2bc67c","bd1d2fa1-5169-42c3-bb42-3c020b56417f"]

GetNodesByIdsResponse

The response containing matching persisted nodes.
​object · required

The matching nodes keyed by node ID. Missing requested IDs are omitted.

SearchRequest

The request for searching indexed nodes.
query
​string · minLength: 1 · maxLength: 5000 · required

The search query, which must contain at least one non-whitespace character.

Example: SSO troubleshooting
limit
​integer · int32 · min: 1 · max: 100 · required

The number of results to return.

Default: 10
algorithm
​string | null · enum

The search algorithm to use.

Enum values:
lexical_v1
semantic_v1
hybrid_v1
Default: hybrid_v1
scopeIds
​array | null

The scope IDs to filter search results by.

SearchResponse

The response containing search results.
hasIndexedNodes
​boolean · required

Indicates whether the tenant search index is available for node search. This is false only when the tenant index does not exist. When this is true and results is empty, the index exists but either contains no indexed nodes or no nodes matched the query.

​SearchResult[] · minItems: 0 · required

The search results.

total
​integer · int32 · min: 0 · required

Total number of matching nodes.

userAclGrants
​string[] · required

The ACL grant tags resolved for the requesting user. Each string is a JSON array containing the subject provider, kind, and external ID.

SearchResult

A single search hit and its relevance score.
​Node · required

A persisted node.

score
​number · double · required

Relative relevance score (higher is better).

CreateNodeSnapshotRequest

An idempotent tenant node snapshot request.
requestId
​string · uuid · required

Caller-owned idempotency identifier, normally the Trust onboarding-cycle ID.

CreateNodeSnapshotResponse

The accepted snapshot request identity and current state.
requestId
​string · uuid · required
snapshotId
​string · uuid · required
status
​string · enum · required
Enum values:
queued
processing
published
failed

ReprocessResponse

The result of a reprocess request.
totalFetched
​integer · int32 · min: 0 · required

Total number of source content items fetched from ContentIngestion.

totalProcessed
​integer · int32 · min: 0 · required

Total number of source content items processed into nodes.

pages
​integer · int32 · min: 0 · required

Total number of ContentIngestion pages fetched.

nextCursor
​string | null · required

Opaque cursor to resume reprocessing from, or null when there are no more items.

ScopeBackfillRequest

The source and optional batch boundaries for a scope backfill.
source
​string · minLength: 1 · pattern: ^[A-Za-z0-9-]+$ · required

Content source identifier, such as googledrive or slack. Case-insensitive.

maxItems
​integer | null · int32 · min: 1

Maximum number of matching content items to examine, including stale or failed items. Omit or set to null to process all remaining items.

cursor
​string | null

Opaque NextCursor from a backfill with no failed or invalid items for the same tenant and source. Omit or set to null to start from the beginning.

ScopeBackfillResponse

The Hangfire job ID for the queued scope backfill. Inspect its ScopeBackfillResult job parameter for outcome counts and NextCursor.
jobId
​string · required

DeveloperRemoveTenantNodeDataRequest

The request for removing all node data for one or more tenants.
tenantIds
​string[] · minItems: 1 · required

Tenant IDs to remove. Duplicates are ignored.

Example: ["00000000-0000-4000-8000-000000000123","00000000-0000-4000-8000-000000000456"]

DeveloperRemoveTenantNodeDataResponse

The result of removing tenant node data.
​DeveloperRemoveTenantNodeDataTenantResponse[] · minItems: 0 · required

Per-tenant deletion results.

DeveloperRemoveTenantNodeDataTenantResponse

The deletion result for a single tenant.
tenantId
​string · uuid · required

Tenant ID.

deletedNodes
​integer · int32 · min: 0 · required

Number of deleted node rows.

indexNames
​string[] · minItems: 0 · required

Elasticsearch indices deleted for the tenant.

Node

A persisted node.
nodeId
​string · uuid · required

Node ID.

text
​string · required

The node text.

classificationSignals
​string[] · minItems: 0 · required

Signals used to classify the node.

​CreationMetadata · required

Creation metadata for the node.

​IngestionMetadata · required

Ingestion metadata for the node.

​TrustDimension · required

Trust evaluation data.

​NodeRelation[] · minItems: 0 · required

Relations with other nodes.

deleted
​boolean · required

Whether the node is deleted.

Example: false
tenantId
​string · uuid · required

Tenant ID

contentId
​string · required

Content ID.

externalSourceUrl
​string | null · uri

Human-resolvable URL of this node at its external source system. Distinct from ingestionMetadata.source (the system name, e.g. "stackinternalcommunity") and ingestionMetadata.sourceId (the source's internal identifier, e.g. "5") — this is the link a human would follow to read the original content. Null when the source does not expose a stable URL.

​object

Document-specific metadata.

​object

Explicit user engagement data from the source system.

Author

Author information.
userId
​string · required

The external user ID.

internalUserId
​string · required

The internal user ID.

CreationMetadata

Creation metadata for the node.
createdAt
​string · date-time · required

When the content was created.

​Author

Author information.

editedAt
​string | null · date-time

When the content was last edited.

DocumentDimension

Document-specific metadata.
title
​string | null

The document title.

ExplicitUserEngagementDimension

Explicit user engagement data from the source system.
score
​integer | null · int32

The source-system score.

views
​integer | null · int32

The source-system view count.

IngestionMetadata

Ingestion metadata for the node.
source
​ContentSource · pattern: ^[a-zA-Z0-9\-]+\z · required

The content source.

sourceId
​string · required

The source identifier.

ingestedAt
​string · date-time · required

When the node was ingested.

ingestedBy
​string · required

Who ingested the node.

archetypeType
​string | null

The content archetype type, when extracted from an archetype payload.

archetypeVersion
​string | null

The content archetype version, when extracted from an archetype payload.

​SourceContext

Context about the source.

NodeRelation

A relation between two nodes.
type
​NodeRelationType · enum · required

The Node relation type.

Enum values:
QuestionTo
AnswerTo
ReplyTo
HasReply
ParentTo
ChildOf
Contains
ContainedBy
sourceNodeId
​string · uuid · required

The source node ID.

targetNodeId
​string · uuid · required

The target node ID.

isAccepted
​boolean | null

For answer/question relations, the accepted state of the answer participating in the relation.

NodeRelationType

string · enum
Enum values:
QuestionTo
AnswerTo
ReplyTo
HasReply
ParentTo
ChildOf
Contains
ContainedBy

The Node relation type.

ContentSource

string · pattern: ^[a-zA-Z0-9\-]+\z

The content source.

SourceContext

Context about the source.
id
​string · required

The source context ID.

name
​string · required

The source context name.

TrustDimension

Trust evaluation data.
score
​number · double · min: 0 · max: 1 · required

The trust score from 0.00 to 1.00.

evaluatorVersion
​string · required

Version of the trust evaluator.

assignedAt
​string · date-time · required

When the trust score was assigned.

knowledge.ProblemDetails

Information about a request error.
type
​string · minLength: 4 · maxLength: 200 · required

A URI reference that identifies the problem type.

title
​string · minLength: 4 · maxLength: 100 · required

A short, human-readable summary of the problem type.

status
​integer · int32 · min: 100 · max: 600 · required

The HTTP status code generated by the origin server for this occurrence of the problem.

detail
​string | null · minLength: 4 · maxLength: 1000

A human-readable explanation specific to this occurrence of the problem.

instance
​string | null · minLength: 4 · maxLength: 2000

A URI reference that identifies the specific occurrence of the problem.

​object | null

Validation errors associated with the request.

ProblemDetailsValidationError

​string[]

Information about a request input validation error.

ChangeUserRoleRequest

Request to set a workspace member's role.
role
​string | null

OAuthApplicationRequest

The full definition of an OAuth application: sent on both create and replace.
name
​string | null
description
​string | null
redirectUris
​array | null
scopes
​array | null

OAuthApplicationResponse

A registered OAuth application, including its generated client ID.
id
​string | null
clientId
​string | null
name
​string | null
description
​string | null
redirectUris
​array | null
scopes
​array | null
createdAt
​string · date-time
updatedAt
​string · date-time

OAuthApplicationScopeOptionResponse

A scope an OAuth application may request, as offered in the workspace scope catalogue.
slug
​string | null
name
​string | null
description
​string | null
resourceTypeSlug
​string | null
system
​boolean

OAuthApplicationSortField

string · enum
Enum values:
clientId
name
redirectUris
scopes

Fields the OAuth application list can be sorted by.

OAuthApplicationsListResponse

A page of the workspace OAuth applications, with the total count across all pages.
​array | null
page
​integer · int32
pageSize
​integer · int32
totalCount
​integer · int64

SortDirection

string · enum
Enum values:
asc
desc

Sort order: ascending or descending.

UserListItemResponse

A user as it appears in a workspace user list, including their denormalized role slug.
userId
​string · uuid
email
​string | null
firstName
​string | null
lastName
​string | null
role
​string | null
isActive
​boolean

UserListItemResponsePagedResult

A single page of results plus the total count across all pages (for the given filters).
​array | null
page
​integer · int32
pageSize
​integer · int32
totalCount
​integer · int64

UserSearchRequest

Request to search workspace members with optional filters, sorting, and pagination.
page
​integer | null · int32

The one-based page number. Values below one are treated as one.

pageSize
​integer | null · int32

The number of results per page, from 1 through 100.

q
​string | null

Optional text filter, matched against name and email.

role
​string | null

Optional exact role filter.

status
​string | null

Optional active-state filter. Accepted values are active or deactivated.

userIds
​array | null

Optional user IDs to include.

sort
​UserSortField · enum

Fields the user list can be sorted by. "Name" sorts on first + last name.

Enum values:
name
email
role
direction
​SortDirection · enum

Sort order: ascending or descending.

Enum values:
asc
desc

UserSortField

string · enum
Enum values:
name
email
role

Fields the user list can be sorted by. "Name" sorts on first + last name.

ValidationConflictLifecycle

requestedAt
​string · date-time

Time the validation request was created, in UTC.

sentAt
​string · date-time

Time the validation attempt was sent, in UTC.

respondedAt
​string | null · date-time

Time the SME responded, in UTC, when recorded.

completedAt
​string | null · date-time

Time processing of the SME response completed, in UTC, when recorded.

expiresAt
​string | null · date-time

Time the validation attempt expires, in UTC, when recorded.

ValidationConflictResponse

eventId
​string | null

Stable external identifier for this validation attempt. Example: validation-attempt-317.

validationRequestId
​integer · int32

Persisted validation request identifier.

attemptId
​integer · int32

Persisted validation attempt identifier.

status
​string | null

Validation outcome: sme_verified when the SME approved the suggestion, or sme_updated when the SME edited it.

topicName
​string | null

Tenant topic name, when one is available.

question
​string | null

Question presented to the SME during validation.

suggestedAnswer
​string | null

Suggested answer captured when the validation request was created.

validatedAnswer
​string | null

SME-validated answer. For sme_updated results, this is the saved edited content when available; it may be null for older edited attempts without persisted content. For sme_verified results, it matches suggestedAnswer.

​array | null

External source references from the saved validation snapshot. When sourceType is supplied, only matching sources are included.

ValidationConflictRoutedTo

type
​string | null

Recipient type, such as Sme or Channel.

identifier
​string | null

Canonical recipient name when available; otherwise the stored recipient identifier.

status
​string | null

Current routing attempt status.

ValidationConflictSme

name
​string | null

Canonical SME name when available.

ValidationConflictSourceDocument

system
​string | null

Source system or type. Example: confluence.

title
​string | null

External document title, when available.

url
​string | null · uri

External source URL, when available.

author
​string | null

Source author, when available.

sourceDate
​string | null · date-time

Source creation or publication date, when available. Returned as a UTC timestamp.

ValidationConflictValidation

source
​string | null

Identifier of the message associated with the validation.

conversationId
​string | null

Conversation identifier associated with the validation.

​ValidationConflictSme
verifiedAt
​string · date-time

Time the validation was resolved, in UTC.

ValidationConflictsResponse

​array | null

The current page of SME validations with source context.

nextCursor
​string | null

Opaque cursor for the next page, or null when there are no more results. When another match establishes more results, it continues after the last returned validation; if the scan limit is reached before an additional match is found, it continues after the last examined attempt and may accompany an empty validations array.