> ## Documentation Index
> Fetch the complete documentation index at: https://developer.kodexa.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get AppliedKnowledge by ID

> Retrieves a single AppliedKnowledge by its unique identifier. Applied knowledge represents knowledge used during document processing.



## OpenAPI

````yaml /api-reference/api-docs.yaml get /api/applied-knowledges/{id}
openapi: 3.0.1
info:
  title: Kodexa AI
  description: >-
    The Kodexa platform API provides programmatic access to document processing,
    intelligent automation, and data extraction capabilities. Use this API to
    manage organizations, projects, document stores, taxonomies, assistants, and
    processing pipelines. All endpoints require authentication via API key,
    Bearer token, or Basic auth.
  version: 8.0.0
  license:
    name: Commercial
    url: https://kodexa.ai
servers:
  - url: https://platform.kodexa.ai
    description: Production
  - url: http://localhost:8080
    description: Local development
security:
  - x-api-key: []
  - bearerAuth: []
tags:
  - name: AI Gateway
  - name: AccessTokens
    description: Manage API access tokens for programmatic authentication.
  - name: Account
    description: Account management endpoints for the authenticated user.
  - name: Activities
  - name: ActivityDocumentFamilies
  - name: ActivityPlans
  - name: Agent Runtimes
    description: Manage agent runtime definitions backed by AWS Bedrock AgentCore.
  - name: Agent Sessions
    description: View and manage stateful conversation sessions within agent runtimes.
  - name: Agents
    description: Manage agents — instantiated agent runtimes within an org+project.
  - name: Analytics
  - name: Applied Knowledge
    description: Manage applied knowledge instances used during document processing.
  - name: Applied Knowledge Sets
    description: Manage applied knowledge set configurations.
  - name: Assistants
    description: Manage AI assistants that process and analyze documents within a project.
  - name: Batch Updates
    description: Batch document update operations for efficient bulk processing.
  - name: Channel
    description: Manage messaging channels for real-time communication within the platform.
  - name: Channel Types
  - name: Content Exception
    description: View and manage content exceptions that occur during document processing.
  - name: Content Object
    description: >-
      Manage content objects — individual files or processing results within a
      document family.
  - name: Credit Transactions
    description: View and manage credit transactions for organization billing.
  - name: Data Definitions
    description: >-
      Manage data definitions (taxonomies) that define document structure and
      extraction rules.
  - name: Data Forms
    description: Manage data form definitions for structured data capture from documents.
  - name: Data Stores
    description: Manage data stores for structured data storage.
  - name: Document Assignments
    description: Manage document assignments linking document families to users for review.
  - name: Document Family Statistics
    description: View statistics about document families including processing metrics.
  - name: Document Statuses
    description: >-
      Manage document status definitions for tracking document processing
      states.
  - name: Document Stores
    description: >-
      Manage document stores — containers for organizing and processing
      documents within a project.
  - name: Document Transitions
    description: Track state transitions of documents through processing stages.
  - name: DocumentFamilies
    description: >-
      Manage document families — groups of related content objects representing
      a single logical document.
  - name: Events
    description: >-
      Manage and publish platform events for real-time notifications and
      integrations.
  - name: Execution Slices
    description: View execution slice details within pipeline executions.
  - name: Executions
    description: View and manage processing execution records.
  - name: Intakes
    description: >-
      Manage intake configurations for ingesting documents from external
      sources.
  - name: Knowledge Clause Features
    description: Manage features within knowledge clauses.
  - name: Knowledge Clauses
    description: Manage knowledge clauses within knowledge items.
  - name: Knowledge Feature Types
    description: Manage knowledge feature type definitions.
  - name: Knowledge Features
    description: >-
      Manage knowledge features representing specific data points within
      knowledge items.
  - name: Knowledge Item Types
    description: Manage knowledge item type definitions.
  - name: Knowledge Items
    description: Manage individual knowledge items within knowledge sets.
  - name: Knowledge Set Snapshots
    description: Manage snapshots of knowledge sets for versioning and comparison.
  - name: Knowledge Set Sources
    description: Manage source references for knowledge sets.
  - name: Knowledge Sets
    description: >-
      Manage knowledge sets — collections of extracted knowledge used for
      AI-assisted processing.
  - name: Labels
    description: >-
      Manage labels used for categorizing and tagging resources within an
      organization.
  - name: Linked Deltas
    description: Manage linked deltas representing changes between document versions.
  - name: Messages
    description: Manage messages within channels.
  - name: Model Costs
  - name: Module Runtimes
    description: Manage module runtime definitions within the orchestrator.
  - name: Modules
  - name: Orchestrator Modules
    description: Manage processing modules for orchestrator pipelines.
  - name: Organizations
    description: >-
      Manage organizations — the top-level tenant in Kodexa. All projects,
      stores, and resources belong to an organization.
  - name: Permissions
  - name: Platform Configuration
    description: Manage platform-wide configuration settings.
  - name: Platform Overview
    description: Platform configuration and overview endpoints.
  - name: Product Groups
    description: Manage product groups that bundle related products together.
  - name: Product Overview
    description: Browse and manage products available on the Kodexa platform.
  - name: Product Subscriptions
    description: Manage product subscriptions linking organizations to products.
  - name: ProductProjectTemplates
    description: >-
      Manage product project templates that define default project
      configurations.
  - name: Project Resources
  - name: Project Status
    description: Manage project status definitions for tracking project lifecycle.
  - name: Project Templates
    description: Manage project templates that define reusable project configurations.
  - name: Projects
    description: >-
      Manage projects within an organization. Projects group related document
      stores, assistants, tasks, and processing pipelines.
  - name: Prompts
    description: Manage prompt templates used by AI assistants for document processing.
  - name: Purge Items
    description: Manage purge items for scheduled content cleanup.
  - name: Recent Executions
    description: View recent execution history for document processing.
  - name: Resource Resolution
  - name: Role Permissions
  - name: Roles
  - name: Service Bridges
  - name: Sessions
    description: Manage processing sessions for document operations.
  - name: Step Executions
    description: View step-level execution details within pipeline executions.
  - name: Tag Metadata
    description: Manage tag metadata definitions for document labeling and categorization.
  - name: Task Groups
  - name: Task Statuses
    description: Manage task status definitions for tracking task workflow states.
  - name: TaskActivity
    description: Track activity history on tasks, including status changes and comments.
  - name: TaskDocumentFamilies
    description: Manage the association between tasks and document families.
  - name: TaskGroupHistory
  - name: TaskTemplates
    description: Manage task templates that define reusable task configurations.
  - name: Tasks
    description: >-
      Manage tasks for document review workflows. Tasks have assignees,
      statuses, due dates, and can contain document families.
  - name: Team Members
    description: Manage team membership assignments.
  - name: Team Org Assignments
  - name: Team Project Assignments
  - name: Teams
    description: Manage teams for collaborative access control within projects.
  - name: Triggers
  - name: Users
    description: Manage platform user accounts.
  - name: Workspaces
    description: Manage workspaces for organizing project resources.
externalDocs:
  description: Kodexa Developer Documentation
  url: https://developer.kodexa.ai
paths:
  /api/applied-knowledges/{id}:
    get:
      tags:
        - Applied Knowledge
      summary: Get AppliedKnowledge by ID
      description: >-
        Retrieves a single AppliedKnowledge by its unique identifier. Applied
        knowledge represents knowledge used during document processing.
      operationId: getAppliedKnowledge
      parameters:
        - name: id
          in: path
          description: Unique identifier (UUID) of the resource.
          required: true
          schema:
            type: string
            format: uuid
          example: 550e8400-e29b-41d4-a716-446655440000
      responses:
        '200':
          description: The AppliedKnowledge
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppliedKnowledge'
        '400':
          description: Bad Request — the request body or parameters are invalid.
        '401':
          description: Unauthorized — authentication is required.
        '403':
          description: Forbidden — the authenticated user does not have permission.
        '404':
          description: Not Found — no resource exists with the given ID.
components:
  schemas:
    AppliedKnowledge:
      type: object
      properties:
        applicationContext:
          nullable: true
        applicationType:
          type: string
        appliedAt:
          type: string
          format: date-time
        changeSequence:
          type: integer
          format: int32
        confidenceScore:
          type: number
          format: double
        createdOn:
          type: string
          format: date-time
        documentFamily:
          allOf:
            - $ref: '#/components/schemas/DocumentFamily'
          nullable: true
        documentFamilyId:
          type: string
          nullable: true
        effectivenessScore:
          type: number
          format: double
        id:
          type: string
        knowledgeItem:
          allOf:
            - $ref: '#/components/schemas/KnowledgeItem'
          nullable: true
        knowledgeItemId:
          type: string
          nullable: true
        metadata:
          nullable: true
        task:
          allOf:
            - $ref: '#/components/schemas/Task'
          nullable: true
        taskId:
          type: string
          nullable: true
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - knowledgeItemId
        - knowledgeItem
        - documentFamilyId
        - documentFamily
        - taskId
        - task
        - applicationType
        - applicationContext
        - confidenceScore
        - effectivenessScore
        - appliedAt
        - metadata
      description: Applied knowledge represents knowledge used during document processing.
    DocumentFamily:
      type: object
      properties:
        appliedKnowledgeSets:
          type: array
          items:
            type: object
            additionalProperties: {}
          nullable: true
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        contentObjects:
          type: array
          items:
            $ref: '#/components/schemas/ContentObject'
          nullable: true
          description: Content objects belonging to this document family, ordered by index.
        created:
          type: string
          format: date-time
          nullable: true
          description: Original file creation date.
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the document family was created.
        deleteUserEmail:
          type: string
          nullable: true
          description: Email of the user who deleted the document family.
        deleted:
          type: boolean
          description: Whether the document family has been soft-deleted.
        deletedDate:
          type: string
          format: date-time
          nullable: true
          description: Timestamp when the document family was soft-deleted.
        documentStatus:
          allOf:
            - $ref: '#/components/schemas/DocumentStatus'
          nullable: true
          description: Current processing status of the document.
        documentTaxonValidations:
          type: array
          items:
            $ref: '#/components/schemas/DocumentTaxonValidation'
          nullable: true
          description: Validation results against the document taxonomy.
        executionTargets:
          $ref: '#/components/schemas/ExecutionTargets'
          description: Processing execution targets for this document.
        features:
          type: array
          items:
            type: object
            additionalProperties: {}
          nullable: true
        id:
          type: string
          description: Unique identifier (UUID) for the document family.
          example: b1234567-89ab-cdef-0123-456789abcdef
        labels:
          type: array
          items:
            type: object
            additionalProperties: {}
          nullable: true
        locked:
          type: boolean
          description: Whether the document family is locked for processing.
        lockedAt:
          type: string
          format: date-time
          nullable: true
        lockedById:
          type: string
          nullable: true
        metadata:
          type: object
          additionalProperties: {}
          nullable: true
          description: Document metadata extracted during processing.
        metadataSource:
          type: object
          additionalProperties: {}
          nullable: true
          description: Maps metadata keys to their source content object IDs.
        mixins:
          type: array
          items:
            type: string
          nullable: true
        modified:
          type: string
          format: date-time
          nullable: true
          description: Original file modification date.
        originalPath:
          type: string
          nullable: true
          description: Original path before soft-deletion or rename.
        path:
          type: string
          description: File path or name of the document.
          example: invoices/2025/q4/invoice-001.pdf
        pendingProcessing:
          type: boolean
          description: Whether the document family is queued for processing.
        size:
          type: integer
          format: int64
          description: File size in bytes.
          example: 245760
        statistics:
          allOf:
            - $ref: '#/components/schemas/DocumentFamilyStatistics'
          nullable: true
        storeRef:
          type: string
          description: Reference to the document store containing this document family.
        summary:
          type: string
          description: AI-generated summary of the document content.
        tasks:
          type: array
          items:
            type: object
            additionalProperties: {}
          nullable: true
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the document family was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - documentStatus
        - deleted
        - storeRef
        - path
        - locked
        - created
        - modified
        - size
        - metadata
        - pendingProcessing
        - metadataSource
        - statistics
        - executionTargets
        - summary
        - documentTaxonValidations
        - mixins
        - features
        - appliedKnowledgeSets
        - labels
        - contentObjects
        - tasks
      description: >-
        A document family groups related content objects representing a single
        logical document, tracking its processing lifecycle.
    KnowledgeItem:
      type: object
      properties:
        active:
          type: boolean
        attachmentContentHash:
          type: string
          nullable: true
        attachmentContentType:
          type: string
          nullable: true
        attachmentFileName:
          type: string
          nullable: true
        attachmentId:
          type: string
          nullable: true
        attachmentSize:
          type: integer
          format: int64
          nullable: true
        attachmentUploadedAt:
          type: string
          format: date-time
          nullable: true
        attachmentUploadedBy:
          type: string
          nullable: true
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        description:
          type: string
        id:
          type: string
        knowledgeItemType:
          allOf:
            - $ref: '#/components/schemas/KnowledgeItemType'
          nullable: true
        knowledgeItemTypeId:
          type: string
          nullable: true
        knowledgeItemTypeRef:
          type: string
        knowledgeSetId:
          type: string
          nullable: true
        knowledgeSetSlug:
          type: string
        orgSlug:
          type: string
        properties:
          nullable: true
        searchText:
          type: string
        sequenceOrder:
          type: integer
          format: int32
          nullable: true
        slug:
          type: string
        title:
          type: string
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - knowledgeSetId
        - knowledgeSetSlug
        - sequenceOrder
        - description
        - slug
        - title
        - knowledgeItemTypeId
        - knowledgeItemType
        - properties
        - active
        - searchText
        - attachmentContentHash
        - attachmentFileName
        - attachmentSize
        - attachmentContentType
        - attachmentUploadedAt
        - attachmentUploadedBy
        - attachmentId
      description: >-
        A knowledge item is an individual piece of knowledge within a knowledge
        set.
    Task:
      type: object
      properties:
        assignee:
          allOf:
            - $ref: '#/components/schemas/PlatformUser'
          nullable: true
        assigneeId:
          type: string
          nullable: true
          description: ID of the user assigned to this task.
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        completedDate:
          type: string
          format: date-time
          nullable: true
          description: Date when the task was completed.
        createdByActivityId:
          type: string
          nullable: true
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the task was created.
        deleteUserEmail:
          type: string
          description: Email of the user who deleted the task.
        deleteUserId:
          type: string
          description: ID of the user who deleted the task.
        deleted:
          type: boolean
          description: Whether the task has been soft-deleted.
        deletedDate:
          type: string
          format: date-time
          nullable: true
          description: Timestamp when the task was soft-deleted.
        description:
          type: string
          description: Detailed description of the task.
          example: Review and validate all Q4 2025 invoices.
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: Due date for the task.
        effectiveCreatedOn:
          type: string
          format: date-time
          nullable: true
          description: >-
            Document-arrival timestamp used for FIFO take-next ordering: the
            earliest created_on across the task's non-deleted document families,
            falling back to the task's own created_on when it has none.
            Maintained by the database; read-only.
        id:
          type: string
          description: Unique identifier (UUID) for the task.
          example: a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11
        locked:
          type: boolean
          description: Whether the task is locked for editing.
        lockedAt:
          type: string
          format: date-time
          nullable: true
        lockedById:
          type: string
          nullable: true
        metadata:
          $ref: '#/components/schemas/TaskMetadata'
          description: Task metadata including custom fields.
        parentTask:
          allOf:
            - $ref: '#/components/schemas/Task'
          nullable: true
        parentTaskId:
          type: string
          nullable: true
          description: ID of the parent task (for sub-tasks).
        plan:
          allOf:
            - $ref: '#/components/schemas/Activity'
          nullable: true
        priority:
          type: integer
          format: int32
          nullable: true
          description: Priority level of the task (lower number = higher priority).
          example: 1
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
          description: ID of the project this task belongs to.
        properties:
          type: object
          additionalProperties: {}
          nullable: true
          description: Task properties for UI state and configuration.
        searchText:
          type: string
          description: Full-text searchable representation of the task.
        signal:
          $ref: '#/components/schemas/TaskSignal'
          description: Signal from human reviewer for plan-aware task completion.
        statusSlug:
          type: string
          nullable: true
        taskActivities:
          type: array
          items:
            $ref: '#/components/schemas/TaskActivity'
          nullable: true
        taskGroup:
          allOf:
            - $ref: '#/components/schemas/TaskGroup'
          nullable: true
        taskGroupId:
          type: string
          nullable: true
        team:
          allOf:
            - $ref: '#/components/schemas/Team'
          nullable: true
        teamId:
          type: string
          nullable: true
        template:
          allOf:
            - $ref: '#/components/schemas/TaskTemplate'
          nullable: true
        templateId:
          type: string
          nullable: true
          description: ID of the task template used.
        title:
          type: string
          description: Title of the task.
          example: Review Q4 invoices
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the task was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - projectId
        - project
        - title
        - description
        - metadata
        - properties
        - templateId
        - template
        - dueDate
        - completedDate
        - assigneeId
        - assignee
        - teamId
        - team
        - parentTaskId
        - parentTask
        - taskActivities
        - plan
        - searchText
        - priority
        - locked
        - signal
        - deleted
        - deletedDate
        - deleteUserEmail
        - deleteUserId
      description: >-
        A task represents a unit of work in a document review workflow, with an
        assignee, status, and due date.
    ContentObject:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        contentMetadata:
          type: object
          additionalProperties: {}
          nullable: true
          description: Content-level metadata extracted during processing.
        contentType:
          type: integer
          format: int32
          description: 'Type of content: DOCUMENT or NATIVE.'
        created:
          type: string
          format: date-time
          nullable: true
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the content object was created.
        deleteUserEmail:
          type: string
        deleteUserId:
          type: string
        deleted:
          type: boolean
          nullable: true
        deletedDate:
          type: string
          format: date-time
          nullable: true
        docTransitionType:
          type: string
        documentFamilyId:
          type: string
          nullable: true
          description: ID of the parent document family.
        documentTaxonValidations:
          type: array
          items:
            $ref: '#/components/schemas/DocumentTaxonValidation'
          nullable: true
        documentVersion:
          type: string
          description: Document version identifier.
        id:
          type: string
          description: Unique identifier (UUID) for the content object.
        index:
          type: integer
          format: int32
          description: Ordering index within the document family.
        metadata:
          type: object
          additionalProperties: {}
          nullable: true
          description: Metadata extracted from the content.
        mixins:
          type: array
          items:
            type: string
          nullable: true
          description: >-
            List of mixin names applied to this content object (e.g., spatial,
            workbook, text).
        modified:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
        size:
          type: integer
          format: int64
          description: File size in bytes.
        source:
          $ref: '#/components/schemas/SourceMetadata'
          description: Source/origin metadata for the content object.
        sourceContentObjectId:
          type: string
          nullable: true
        storeRef:
          type: string
          description: Reference to the storage location.
        summary:
          type: string
          description: AI-generated summary of the content.
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the content object was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - contentType
        - name
        - documentVersion
        - sourceContentObjectId
        - docTransitionType
        - index
        - documentFamilyId
        - metadata
        - source
        - mixins
        - contentMetadata
        - created
        - modified
        - size
        - storeRef
        - documentTaxonValidations
        - summary
      description: >-
        A content object represents an individual file or processing result
        within a document family.
    DocumentStatus:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        color:
          type: string
        createdOn:
          type: string
          format: date-time
        icon:
          type: string
        id:
          type: string
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
        slug:
          type: string
        status:
          type: string
        statusType:
          $ref: '#/components/schemas/StatusType'
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - projectId
        - color
        - icon
        - status
        - slug
        - statusType
      description: >-
        A document status defines a named state for tracking document processing
        progress.
    DocumentTaxonValidation:
      type: object
      properties:
        taxonPath:
          type: string
        taxonomyRef:
          type: string
        validation:
          allOf:
            - $ref: '#/components/schemas/TaxonValidation'
          nullable: true
    ExecutionTargets:
      type: object
      properties:
        instances:
          type: array
          items:
            $ref: '#/components/schemas/ExecutionTarget'
          nullable: true
    DocumentFamilyStatistics:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        id:
          type: string
        recentExecutions:
          type: array
          items:
            $ref: '#/components/schemas/RecentExecution'
          nullable: true
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - recentExecutions
      description: >-
        Document family statistics contain processing metrics for a document
        family.
    KnowledgeItemType:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        description:
          type: string
        id:
          type: string
        impact:
          type: string
        name:
          type: string
        options:
          nullable: true
        orgSlug:
          type: string
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
        slug:
          type: string
        supportsAttachment:
          type: boolean
          nullable: true
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - organization
        - slug
        - name
        - description
        - options
        - supportsAttachment
      description: A knowledge item type defines the kind of knowledge item.
    PlatformUser:
      type: object
      properties:
        active:
          type: boolean
        bio:
          type: string
        businessGroup:
          type: string
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the user was created.
        email:
          type: string
        firstName:
          type: string
        groupsJson:
          type: string
        id:
          type: string
          description: Unique identifier (UUID) for the user.
        image:
          type: string
        invited:
          type: boolean
        isExternallyManaged:
          type: boolean
        lastName:
          type: string
        preferences:
          $ref: '#/components/schemas/UserPreferences'
        rolesJson:
          type: string
        searchText:
          type: string
        security:
          $ref: '#/components/schemas/UserRoles'
        showDeveloperTools:
          type: boolean
        title:
          type: string
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the user was last updated.
        userHash:
          type: string
        userStorage:
          $ref: '#/components/schemas/UserStorage'
        userType:
          type: string
        uuid:
          type: string
          description: Secondary UUID identifier.
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - email
        - searchText
        - firstName
        - lastName
        - bio
        - userStorage
        - showDeveloperTools
        - image
        - userHash
        - isExternallyManaged
        - security
        - userType
        - active
        - title
        - businessGroup
        - preferences
        - rolesJson
        - groupsJson
        - invited
      description: A platform user represents a user account in the Kodexa platform.
    TaskMetadata:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/TaskTemplateAction'
          nullable: true
        dataProperties:
          type: object
          additionalProperties: {}
          nullable: true
    Activity:
      type: object
      properties:
        activityPlanId:
          type: string
          nullable: true
        activityPlanSlug:
          type: string
          nullable: true
        badges:
          nullable: true
        candidateKnowledgeSets:
          type: array
          items:
            $ref: '#/components/schemas/ActivityCandidateKnowledgeSetSummary'
          nullable: true
        changeSequence:
          type: integer
          format: int32
        completedOn:
          type: string
          format: date-time
          nullable: true
        completedWorkUnits:
          type: integer
          format: int32
          nullable: true
        createdOn:
          type: string
          format: date-time
        currentSequence:
          type: integer
          format: int32
          nullable: true
        deleteUserEmail:
          type: string
        deleteUserId:
          type: string
        deleted:
          type: boolean
        deletedDate:
          type: string
          format: date-time
          nullable: true
        description:
          type: string
          nullable: true
        documentFamilies:
          type: array
          items:
            $ref: '#/components/schemas/ActivityDocumentFamilySummary'
          nullable: true
        errorDetails:
          type: string
          nullable: true
        failedWorkUnits:
          type: integer
          format: int32
          nullable: true
        id:
          type: string
        inputs:
          nullable: true
        knowledgeAgent:
          type: boolean
          nullable: true
        knowledgeFeatures:
          type: array
          items:
            $ref: '#/components/schemas/ActivityKnowledgeFeatureSummary'
          nullable: true
        lifecycleState:
          type: string
        metadata:
          nullable: true
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
        parentActivityId:
          type: string
          nullable: true
        priority:
          type: integer
          format: int32
        projectId:
          type: string
          nullable: true
        replacedByActivityId:
          type: string
          nullable: true
        runningWorkUnits:
          type: integer
          format: int32
          nullable: true
        startedByIntakeId:
          type: string
          nullable: true
        startedByTriggerId:
          type: string
          nullable: true
        startedOn:
          type: string
          format: date-time
          nullable: true
        steps:
          type: array
          items:
            $ref: '#/components/schemas/Step'
          nullable: true
        title:
          type: string
          nullable: true
        totalWorkUnits:
          type: integer
          format: int32
          nullable: true
        triggerKind:
          type: string
        triggerMetadata:
          nullable: true
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
        version:
          type: integer
          format: int32
          nullable: true
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - organization
        - projectId
        - activityPlanId
        - title
        - triggerKind
        - priority
        - lifecycleState
        - currentSequence
        - metadata
        - startedOn
        - completedOn
        - version
        - deleted
        - deletedDate
        - deleteUserEmail
        - deleteUserId
    Project:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        color:
          type: string
          description: Display color for the project (max 25 characters).
          example: '#4A90D9'
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the project was created.
        dataFlow:
          $ref: '#/components/schemas/ProjectDataFlow'
          description: Project data flow configuration.
        description:
          type: string
          description: Human-readable description of the project.
          example: Automated invoice processing pipeline.
        documentStatuses:
          type: array
          items:
            $ref: '#/components/schemas/DocumentStatus'
          nullable: true
        id:
          type: string
          description: Unique identifier (UUID) for the project.
          example: 7c9e6679-7425-40de-944b-e07fc1f90ae7
        memory:
          $ref: '#/components/schemas/ProjectMemory'
          description: Project-level memory and configuration.
        name:
          type: string
          description: Display name of the project.
          example: Invoice Processing
        notes:
          type: string
          description: Free-form notes about the project.
        options:
          $ref: '#/components/schemas/ProjectOptions'
          description: Project options and settings.
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
          description: ID of the organization this project belongs to.
        owner:
          allOf:
            - $ref: '#/components/schemas/PlatformUser'
          nullable: true
        ownerId:
          type: string
          nullable: true
          description: ID of the user who owns this project.
        projectTemplateRef:
          type: string
          description: Reference to the project template used to create this project.
        searchText:
          type: string
        slug:
          type: string
          description: >-
            URL-friendly identifier. Automatically lowercased. Pattern:
            ^[a-z0-9-]+$
          example: invoice-processing
        status:
          allOf:
            - $ref: '#/components/schemas/ProjectStatus'
          nullable: true
        statusId:
          type: string
          nullable: true
          description: ID of the current project status.
        statusType:
          type: string
          description: 'Project lifecycle state: ACTIVE, ARCHIVED, or PENDING_DELETE.'
          example: ACTIVE
        templateArticleId:
          type: string
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the project was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
          example: 7c9e667974254de944be07fc1f90ae7
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - organization
        - name
        - description
        - slug
        - ownerId
        - owner
        - statusId
        - status
        - templateArticleId
        - projectTemplateRef
        - searchText
        - notes
        - color
        - memory
        - dataFlow
        - options
        - statusType
        - documentStatuses
      description: >-
        A project groups related document stores, assistants, tasks, and
        processing pipelines within an organization.
    TaskSignal:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties: {}
          nullable: true
        notes:
          type: string
        outcome:
          $ref: '#/components/schemas/TaskSignalOutcome'
        requestedItems:
          type: array
          items:
            type: object
            additionalProperties: {}
          nullable: true
    TaskActivity:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        content:
          type: string
        createdOn:
          type: string
          format: date-time
        detail:
          $ref: '#/components/schemas/TaskActivityDetail'
        id:
          type: string
        searchText:
          type: string
        task:
          allOf:
            - $ref: '#/components/schemas/Task'
          nullable: true
        taskId:
          type: string
          nullable: true
        updatedOn:
          type: string
          format: date-time
        user:
          nullable: true
        userId:
          type: string
          nullable: true
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - taskId
        - task
        - content
        - detail
        - userId
        - user
        - searchText
      description: >-
        A task activity records an event in the task's history, such as status
        changes or comments.
    TaskGroup:
      type: object
      properties:
        assignee:
          allOf:
            - $ref: '#/components/schemas/PlatformUser'
          nullable: true
        assigneeId:
          type: string
          nullable: true
        assignmentType:
          type: string
          nullable: true
        changeSequence:
          type: integer
          format: int32
        completedTaskCount:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        deleteUserEmail:
          type: string
        deleteUserId:
          type: string
        deleted:
          type: boolean
          nullable: true
        deletedDate:
          type: string
          format: date-time
          nullable: true
        description:
          type: string
        doneStatusSlug:
          type: string
          nullable: true
        effectiveCreatedOn:
          type: string
          format: date-time
          nullable: true
        history:
          type: array
          items:
            $ref: '#/components/schemas/TaskGroupHistory'
          nullable: true
        id:
          type: string
        locked:
          type: boolean
          nullable: true
        metadata:
          type: object
          additionalProperties: {}
          nullable: true
        name:
          type: string
        priority:
          type: integer
          format: int32
          nullable: true
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        status:
          allOf:
            - $ref: '#/components/schemas/TaskStatus'
          nullable: true
        statusSlug:
          type: string
          nullable: true
        taskCount:
          type: integer
          format: int32
        team:
          allOf:
            - $ref: '#/components/schemas/Team'
          nullable: true
        teamId:
          type: string
          nullable: true
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - projectId
        - name
        - taskCount
        - completedTaskCount
    Team:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        description:
          type: string
        id:
          type: string
        name:
          type: string
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
        searchText:
          type: string
        slug:
          type: string
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - name
        - description
        - slug
        - organizationId
        - organization
        - searchText
      description: >-
        A team groups users together for collaborative access control within
        projects.
    TaskTemplate:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        deleteUserEmail:
          type: string
          nullable: true
        deleteUserId:
          type: string
          nullable: true
        deleted:
          type: boolean
        deletedDate:
          type: string
          format: date-time
          nullable: true
        deprecated:
          type: boolean
        description:
          type: string
        extensionPackRef:
          type: string
        id:
          type: string
        initialStatusSlug:
          type: string
          nullable: true
        metadata:
          $ref: '#/components/schemas/TaskTemplateMetadata'
        name:
          type: string
        orgSlug:
          type: string
        organization:
          allOf:
            - $ref: '#/components/schemas/OrgRef'
          nullable: true
        organizationId:
          type: string
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
        publicAccess:
          type: boolean
        ref:
          type: string
        slug:
          type: string
        template:
          type: boolean
        title:
          type: string
        type:
          type: string
        updatedOn:
          type: string
          format: date-time
        uri:
          type: string
          description: >-
            Computed resource URI (scheme://orgSlug/slug), present on serialized
            responses.
        uuid:
          type: string
        yamlSource:
          type: string
          nullable: true
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - slug
        - name
        - publicAccess
        - template
        - deprecated
        - deleted
        - description
        - metadata
      description: >-
        A task template defines a reusable task configuration with default
        values.
    SourceMetadata:
      type: object
      properties:
        checksum:
          type: string
        cid:
          type: string
        connector:
          type: string
        created:
          type: string
        document_family_id:
          type: string
        headers:
          type: object
          additionalProperties: {}
          nullable: true
        last_modified:
          type: string
        lineage_document_uuid:
          type: string
        mime_type:
          type: string
        original_filename:
          type: string
        original_path:
          type: string
        source_document_uuid:
          type: string
    StatusType:
      type: string
      enum:
        - UNRESOLVED
        - RESOLVED
    TaxonValidation:
      type: object
      properties:
        conditional:
          type: boolean
          nullable: true
        conditionalFormula:
          type: string
        description:
          type: string
        detailFormula:
          type: string
        disabled:
          type: boolean
          nullable: true
        exceptionId:
          type: string
        messageFormula:
          type: string
        name:
          type: string
        overridable:
          type: boolean
          nullable: true
        ruleFormula:
          type: string
        supportArticleId:
          type: string
    ExecutionTarget:
      type: object
      properties:
        actor:
          allOf:
            - $ref: '#/components/schemas/DocumentActor'
          nullable: true
        contentObjectId:
          type: string
        documentFamilyId:
          type: string
        labelsToApply:
          type: array
          items:
            type: string
          nullable: true
        ref:
          type: string
        taxonomyRefs:
          type: array
          items:
            type: string
          nullable: true
        type:
          $ref: '#/components/schemas/TargetType'
    RecentExecution:
      type: object
      properties:
        assistant:
          allOf:
            - $ref: '#/components/schemas/Assistant'
          nullable: true
        changeSequence:
          type: integer
          format: int32
        createdOn:
          type: string
          format: date-time
        execution:
          allOf:
            - $ref: '#/components/schemas/Execution'
          nullable: true
        id:
          type: string
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - assistant
        - execution
      description: >-
        A recent execution records a document processing execution for quick
        access.
    Organization:
      type: object
      properties:
        archived:
          type: boolean
          nullable: true
        authGroupLink:
          $ref: '#/components/schemas/AuthGroupLink'
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number, incremented on each update.
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the organization was created.
        defaultToPrivateTemplates:
          type: boolean
          description: Whether new templates default to private access.
        description:
          type: string
          description: Human-readable description of the organization.
          example: Document processing organization for Acme Corp.
        enterpriseOrganization:
          type: boolean
          nullable: true
          description: Whether this is an enterprise-tier organization.
        features:
          type: object
          additionalProperties: {}
          nullable: true
          description: Feature flags enabled for the organization.
        hasImage:
          type: boolean
          description: Whether the organization has a profile image.
        id:
          type: string
          description: Unique identifier (UUID) for the organization.
          example: 550e8400-e29b-41d4-a716-446655440000
        memory:
          $ref: '#/components/schemas/OrganizationMemory'
          description: Organization-level memory and configuration.
        name:
          type: string
          description: Display name of the organization.
          example: Acme Corp
        organizationStatus:
          type: string
          description: Current status of the organization (e.g., ACTIVE, SUSPENDED).
          example: ACTIVE
        properties:
          type: object
          additionalProperties: {}
          nullable: true
          description: Arbitrary key-value properties for the organization.
        publicAccess:
          type: boolean
          description: Whether the organization is publicly visible.
        searchText:
          type: string
          description: Full-text searchable representation of the organization.
        slug:
          type: string
          description: >-
            URL-friendly identifier, 3-100 characters. Automatically lowercased.
            Pattern: ^[a-z0-9-]+$
          example: acme-corp
        stripeCustomerId:
          type: string
        supportAccess:
          type: boolean
          description: Whether Kodexa support has been granted access.
        supportAccessExpiresAt:
          type: string
          format: date-time
          nullable: true
          description: When support access expires.
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the organization was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
          example: 550e8400e29b41d4a716446655440000
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - name
        - searchText
        - slug
        - publicAccess
        - description
        - organizationStatus
        - authGroupLink
        - hasImage
        - defaultToPrivateTemplates
        - memory
        - supportAccess
        - supportAccessExpiresAt
        - stripeCustomerId
        - enterpriseOrganization
        - properties
        - features
      description: >-
        An organization is the top-level tenant in Kodexa. All projects, stores,
        and resources belong to an organization.
    UserPreferences:
      type: object
      properties:
        showOnboarding:
          type: boolean
          nullable: true
        showScrollbars:
          type: boolean
          nullable: true
        showWelcomeMessage:
          type: boolean
          nullable: true
    UserRoles:
      type: object
      properties:
        roles:
          type: array
          items:
            type: string
          nullable: true
    UserStorage:
      type: object
      properties:
        favoriteLinks:
          type: array
          items:
            $ref: '#/components/schemas/FavoriteLink'
          nullable: true
    TaskTemplateAction:
      type: object
      properties:
        label:
          type: string
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        slug:
          type: string
          description: >-
            The action's identity: the dependsOn qualifier other plan steps
            reference and the correlation token recorded on task completion.
        type:
          type: string
        uuid:
          type: string
          description: >-
            DEPRECATED — legacy spelling of slug. Readers alias it; writers must
            set slug. Will be removed once stored metadata has converged (watch
            the materializer's legacy-uuid warnings).
          deprecated: true
    ActivityCandidateKnowledgeSetSummary:
      type: object
      properties:
        currentSnapshotId:
          type: string
          nullable: true
        id:
          type: string
        name:
          type: string
        openQuestions:
          nullable: true
        projectId:
          type: string
          nullable: true
        slug:
          type: string
        status:
          type: string
        updatedOn:
          type: string
          format: date-time
          nullable: true
      required:
        - id
        - slug
        - name
        - status
    ActivityDocumentFamilySummary:
      type: object
      properties:
        id:
          type: string
        path:
          type: string
          nullable: true
      required:
        - id
    ActivityKnowledgeFeatureSummary:
      type: object
      properties:
        featureTypeColor:
          type: string
          nullable: true
        featureTypeIcon:
          type: string
          nullable: true
        featureTypeId:
          type: string
          nullable: true
        featureTypeName:
          type: string
          nullable: true
        featureTypeSlug:
          type: string
          nullable: true
        id:
          type: string
        slug:
          type: string
      required:
        - id
        - slug
    Step:
      type: object
      properties:
        activityId:
          type: string
          nullable: true
        agentId:
          type: string
          nullable: true
        agentRuntimeId:
          type: string
          nullable: true
        agentSessionId:
          type: string
          nullable: true
        approvalCriteria:
          nullable: true
        approvalOutcome:
          type: string
          nullable: true
        approverRole:
          type: string
          nullable: true
        bridgeActions:
          nullable: true
        bridgeResult:
          nullable: true
        bypass:
          type: boolean
        changeSequence:
          type: integer
          format: int32
        childTaskId:
          type: string
          nullable: true
        completedActionUuid:
          type: string
          nullable: true
        completedDocFamilyIds:
          nullable: true
        completedOn:
          type: string
          format: date-time
          nullable: true
        conditionExpression:
          nullable: true
        createdOn:
          type: string
          format: date-time
        currentDocFamilyId:
          type: string
          nullable: true
        dependsOn:
          type: array
          items:
            $ref: '#/components/schemas/StepRef'
          nullable: true
        description:
          type: string
          nullable: true
        disableCache:
          type: boolean
          nullable: true
        endpointName:
          type: string
          nullable: true
        enrichment:
          nullable: true
        errorDetails:
          nullable: true
        executionId:
          type: string
          nullable: true
        id:
          type: string
        includeDocument:
          nullable: true
        insertedAt:
          type: string
          format: date-time
          nullable: true
        insertedById:
          type: string
          nullable: true
        joinPolicy:
          type: string
          nullable: true
        llmModelName:
          type: string
          nullable: true
        logGroup:
          type: string
          nullable: true
        logStream:
          type: string
          nullable: true
        mappedOutput:
          nullable: true
        maxParallel:
          type: integer
          format: int32
          nullable: true
        maxStepsToInsert:
          type: integer
          format: int32
          nullable: true
        metadata:
          nullable: true
        moduleRef:
          type: string
          nullable: true
        moduleRefs:
          nullable: true
        name:
          type: string
          nullable: true
        options:
          nullable: true
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
        outputMapping:
          nullable: true
        perDocument:
          type: boolean
          nullable: true
        plannerContext:
          nullable: true
        prompt:
          type: string
          nullable: true
        promptActions:
          nullable: true
        promptBody:
          type: string
          nullable: true
        promptRendered:
          type: string
          nullable: true
        promptResult:
          nullable: true
        promptTemplateRef:
          type: string
          nullable: true
        promptVariables:
          nullable: true
        requestBody:
          nullable: true
        requestHeaders:
          nullable: true
        requestPath:
          nullable: true
        requestQuery:
          nullable: true
        requestScript:
          type: string
          nullable: true
        result:
          nullable: true
        scriptActions:
          nullable: true
        scriptBody:
          type: string
          nullable: true
        scriptResult:
          nullable: true
        scriptSidecars:
          nullable: true
        sequence:
          type: integer
          format: int32
          nullable: true
        serviceBridgeRef:
          type: string
          nullable: true
        setDocumentStatus:
          type: string
          nullable: true
        skipReason:
          type: string
          nullable: true
        slug:
          type: string
          nullable: true
        startedOn:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
        taskData:
          nullable: true
        taskStatusSlug:
          type: string
          nullable: true
        taskTemplateRef:
          type: string
          nullable: true
        timeoutSeconds:
          type: integer
          format: int32
          nullable: true
        treatAsError:
          type: string
          nullable: true
        type:
          type: string
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
        waitForCompletion:
          type: boolean
          nullable: true
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - organization
        - activityId
        - sequence
        - name
        - status
        - type
        - startedOn
        - completedOn
        - errorDetails
        - conditionExpression
        - insertedById
        - insertedAt
    ProjectDataFlow:
      type: object
      properties:
        edges:
          type: array
          items:
            $ref: '#/components/schemas/DataFlowEdge'
          nullable: true
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/DataFlowNode'
          nullable: true
        viewPort:
          allOf:
            - $ref: '#/components/schemas/FlowViewPort'
          nullable: true
    ProjectMemory:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
          nullable: true
        orderedDashboards:
          type: array
          items:
            type: string
          nullable: true
        recentFilters:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          nullable: true
        recentQueries:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          nullable: true
    ProjectOptions:
      type: object
      properties:
        companion:
          allOf:
            - $ref: '#/components/schemas/CompanionConfig'
          nullable: true
        dataOptions:
          type: array
          items:
            $ref: '#/components/schemas/Option'
          nullable: true
        dataProperties:
          type: object
          additionalProperties: {}
          nullable: true
        executionPolicy:
          allOf:
            - $ref: '#/components/schemas/ExecutionPolicy'
          nullable: true
        groupTaxonTypeFeatures:
          type: object
          additionalProperties: {}
          nullable: true
        options:
          type: array
          items:
            $ref: '#/components/schemas/Option'
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        taskOptions:
          allOf:
            - $ref: '#/components/schemas/ProjectTaskOptions'
          nullable: true
        taxonTypeFeatures:
          type: object
          additionalProperties: {}
          nullable: true
    ProjectStatus:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        color:
          type: string
        createdOn:
          type: string
          format: date-time
        icon:
          type: string
        id:
          type: string
        organization:
          allOf:
            - $ref: '#/components/schemas/Organization'
          nullable: true
        organizationId:
          type: string
          nullable: true
        production:
          type: boolean
        status:
          type: string
        updatedOn:
          type: string
          format: date-time
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - organization
        - color
        - icon
        - status
        - production
      description: A project status defines a named state for tracking project lifecycle.
    TaskSignalOutcome:
      type: string
      enum:
        - APPROVED
        - REJECTED
        - NEEDS_REWORK
        - ESCALATED
    TaskActivityDetail:
      type: object
      properties:
        interpolatedValues:
          type: object
          additionalProperties: {}
          nullable: true
        type:
          $ref: '#/components/schemas/TaskActivityType'
    TaskGroupHistory:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        content:
          type: string
        createdOn:
          type: string
          format: date-time
        detail:
          nullable: true
        id:
          type: string
        taskGroup:
          allOf:
            - $ref: '#/components/schemas/TaskGroup'
          nullable: true
        taskGroupId:
          type: string
          nullable: true
        updatedOn:
          type: string
          format: date-time
        user:
          nullable: true
        userId:
          type: string
          nullable: true
        uuid:
          type: string
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - taskGroupId
    TaskStatus:
      type: object
      properties:
        changeSequence:
          type: integer
          format: int32
        color:
          type: string
        createdOn:
          type: string
          format: date-time
        deleteUserEmail:
          type: string
          nullable: true
        deleteUserId:
          type: string
          nullable: true
        deleted:
          type: boolean
        deletedDate:
          type: string
          format: date-time
          nullable: true
        deprecated:
          type: boolean
        extensionPackRef:
          type: string
        icon:
          type: string
        id:
          type: string
        label:
          type: string
        lockDocumentFamily:
          type: boolean
          nullable: true
        locked:
          type: boolean
          nullable: true
        metadata:
          nullable: true
        name:
          type: string
        orgSlug:
          type: string
        organization:
          allOf:
            - $ref: '#/components/schemas/OrgRef'
          nullable: true
        organizationId:
          type: string
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
        publicAccess:
          type: boolean
        ref:
          type: string
        sequence:
          type: integer
          format: int32
        slug:
          type: string
        statusType:
          $ref: '#/components/schemas/TaskStatusType'
        template:
          type: boolean
        type:
          type: string
        updatedOn:
          type: string
          format: date-time
        uri:
          type: string
          description: >-
            Computed resource URI (scheme://orgSlug/slug), present on serialized
            responses.
        uuid:
          type: string
        yamlSource:
          type: string
          nullable: true
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - organizationId
        - slug
        - name
        - publicAccess
        - template
        - deprecated
        - deleted
      description: A task status defines a named state for tracking task workflow progress.
    TaskTemplateMetadata:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/TaskTemplateAction'
          nullable: true
        agentShortcuts:
          type: array
          items:
            $ref: '#/components/schemas/AgentShortcut'
          nullable: true
        aiNaming:
          allOf:
            - $ref: '#/components/schemas/AINamingConfig'
          nullable: true
        chatPrompt:
          allOf:
            - $ref: '#/components/schemas/ChatPromptConfig'
          nullable: true
        companion:
          allOf:
            - $ref: '#/components/schemas/TaskCompanionConfig'
          nullable: true
        documentFamilyGroups:
          type: array
          items:
            $ref: '#/components/schemas/DocumentFamilyGroup'
          nullable: true
        executionPolicy:
          allOf:
            - $ref: '#/components/schemas/ExecutionPolicy'
          nullable: true
        forms:
          type: array
          items:
            $ref: '#/components/schemas/TemplateDataForm'
          nullable: true
        options:
          type: array
          items:
            $ref: '#/components/schemas/TaskTemplateOption'
          nullable: true
        priority:
          type: integer
          format: int32
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        teamSlug:
          type: string
        workspaceId:
          type: string
    OrgRef:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    DocumentActor:
      type: object
      properties:
        actorId:
          type: string
        actorType:
          $ref: '#/components/schemas/DocumentActorType'
    TargetType:
      type: string
      enum:
        - DOCUMENT_STORE
        - TAXONOMY_STORE
        - DATA_STORE
    Assistant:
      type: object
      properties:
        active:
          type: boolean
          nullable: true
        assistantRole:
          type: string
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        chatEnabled:
          type: boolean
          nullable: true
        color:
          type: string
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the assistant was created.
        deleted:
          type: boolean
        description:
          type: string
        id:
          type: string
          description: Unique identifier (UUID) for the assistant.
          example: e4567890-12ab-cdef-3456-789012abcdef
        name:
          type: string
          description: Display name of the assistant.
          example: Invoice Extractor
        options:
          $ref: '#/components/schemas/AssistantOptions'
        priorityHint:
          type: integer
          format: int32
          nullable: true
        project:
          allOf:
            - $ref: '#/components/schemas/Project'
          nullable: true
        projectId:
          type: string
          nullable: true
        runOnExistingContent:
          type: boolean
          nullable: true
        showInTraining:
          type: boolean
          nullable: true
        slug:
          type: string
          description: URL-friendly identifier for the assistant.
          example: invoice-extractor
        subscription:
          type: string
        testOptions:
          type: object
          additionalProperties: {}
          nullable: true
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the assistant was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
        validationErrors:
          $ref: '#/components/schemas/ValidationResults'
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - subscription
        - slug
        - projectId
        - project
        - name
        - description
        - deleted
        - assistantRole
        - priorityHint
        - options
        - color
        - testOptions
        - validationErrors
      description: >-
        An assistant is an AI-powered processor that analyzes and extracts data
        from documents within a project.
    Execution:
      type: object
      properties:
        assistantId:
          type: string
          nullable: true
        changeSequence:
          type: integer
          format: int32
          description: Optimistic locking version number.
        context:
          type: object
          additionalProperties: {}
          nullable: true
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the execution was created.
        description:
          type: string
        documentFamilyId:
          type: string
          nullable: true
        documentFamilyPath:
          type: string
        endDate:
          type: string
          format: date-time
          nullable: true
        exceptionDetails:
          allOf:
            - $ref: '#/components/schemas/ExceptionDetails'
          nullable: true
        id:
          type: string
          description: Unique identifier (UUID) for the execution.
        idempotencyKey:
          type: string
          nullable: true
        organizationId:
          type: string
        parentExecutionId:
          type: string
          nullable: true
        pipeline:
          allOf:
            - $ref: '#/components/schemas/ExecutionPipeline'
          nullable: true
        priority:
          type: integer
          format: int32
        processingTime:
          type: integer
          format: int64
        sessionId:
          type: string
          nullable: true
        startDate:
          type: string
          format: date-time
          nullable: true
        status:
          $ref: '#/components/schemas/ExecutionStatus'
        statusDetails:
          allOf:
            - $ref: '#/components/schemas/StatusDetails'
          nullable: true
        targets:
          allOf:
            - $ref: '#/components/schemas/SessionExecutionTargets'
          nullable: true
        updatedOn:
          type: string
          format: date-time
          description: Timestamp when the execution was last updated.
        uuid:
          type: string
          description: Secondary UUID identifier.
      required:
        - id
        - uuid
        - createdOn
        - updatedOn
        - changeSequence
        - priority
        - processingTime
        - status
      description: An execution records the details and results of a processing session.
    AuthGroupLink:
      type: object
      properties:
        authGroup:
          type: string
    OrganizationMemory:
      type: object
      properties:
        orderedDashboards:
          type: array
          items:
            type: string
          nullable: true
    FavoriteLink:
      type: object
      properties:
        link:
          type: string
    StepRef:
      type: object
      properties:
        actionUuid:
          type: string
          nullable: true
        awaitOnly:
          type: boolean
        id:
          type: string
      required:
        - id
    DataFlowEdge:
      type: object
      properties:
        id:
          type: string
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        source:
          type: string
        target:
          type: string
    DataFlowNode:
      type: object
      properties:
        dimensions:
          allOf:
            - $ref: '#/components/schemas/NodeDimensions'
          nullable: true
        id:
          type: string
        parentId:
          type: string
        position:
          allOf:
            - $ref: '#/components/schemas/NodePosition'
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        type:
          type: string
    FlowViewPort:
      type: object
      properties:
        x:
          type: number
          format: double
        'y':
          type: number
          format: double
        zoom:
          type: number
          format: double
      required:
        - x
        - 'y'
        - zoom
    CompanionConfig:
      type: object
      properties:
        agentRuntimeRef:
          type: string
          nullable: true
        moduleRefs:
          type: array
          items:
            type: string
          nullable: true
        prompt:
          type: string
          nullable: true
    Option:
      type: object
      properties:
        aliases:
          type: array
          items:
            type: string
          nullable: true
        default: {}
        description:
          type: string
        developerOnly:
          type: boolean
          nullable: true
        displayProperties:
          type: object
          additionalProperties: {}
          nullable: true
        falseLabel:
          type: string
        featureFlag:
          type: string
        groupOptions:
          type: array
          items:
            $ref: '#/components/schemas/Option'
          nullable: true
        hint:
          type: string
        label:
          type: string
        listDescription:
          type: string
        listLabel:
          type: string
        listType:
          type: string
        name:
          type: string
        overviewMarkdown:
          type: string
        possibleValues:
          type: array
          items:
            $ref: '#/components/schemas/PossibleValue'
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        required:
          type: boolean
          nullable: true
        showIf:
          type: string
        showOnPopup:
          type: boolean
          nullable: true
        subType:
          type: string
        supportArticle:
          type: string
        tabName:
          type: string
        type:
          type: string
    ExecutionPolicy:
      type: object
      properties:
        backoffBaseSeconds:
          type: integer
          format: int32
          nullable: true
        backoffStrategy:
          type: string
          nullable: true
        maxAttempts:
          type: integer
          format: int32
          nullable: true
        onExhausted:
          type: string
          nullable: true
        timeoutSeconds:
          type: integer
          format: int32
          nullable: true
    ProjectTaskOptions:
      type: object
      properties:
        showNewTask:
          type: boolean
      required:
        - showNewTask
    TaskActivityType:
      type: string
      enum:
        - TASK_CREATED
        - TITLE_CHANGED
        - DESCRIPTION_UPDATED
        - STATUS_CHANGED
        - ASSIGNEE_CHANGED
        - DUE_DATE_CHANGED
        - PROJECT_CHANGED
        - COMMENT
        - TASK_LOCKED
        - TASK_UNLOCKED
        - TASK_SAVED
    TaskStatusType:
      type: string
      enum:
        - OPEN
        - IN_PROGRESS
        - DONE
        - BLOCKED
        - PENDING
    AgentShortcut:
      type: object
      properties:
        icon:
          type: string
        id:
          type: string
        label:
          type: string
        prompt:
          type: string
      required:
        - id
        - label
        - prompt
    AINamingConfig:
      type: object
      properties:
        enabled:
          type: boolean
        prompt:
          type: string
      required:
        - enabled
    ChatPromptConfig:
      type: object
      properties:
        enabled:
          type: boolean
        prompt:
          type: string
      required:
        - enabled
    TaskCompanionConfig:
      type: object
      properties:
        agentRuntimeRef:
          type: string
          nullable: true
        moduleRefs:
          type: array
          items:
            type: string
          nullable: true
        prompt:
          type: string
          nullable: true
    DocumentFamilyGroup:
      type: object
      properties:
        automaticallyAdd:
          type: boolean
          nullable: true
        documentFamilyFilter:
          type: string
        editable:
          type: boolean
          nullable: true
        hardMaxPages:
          type: integer
          format: int32
          nullable: true
        knowledgeFeatures:
          type: array
          items:
            $ref: '#/components/schemas/DocumentFamilyGroupFeature'
          nullable: true
        maxHits:
          type: integer
          format: int32
          nullable: true
        maxPages:
          type: integer
          format: int32
          nullable: true
        maxSize:
          type: integer
          format: int32
          nullable: true
        name:
          type: string
        notes:
          type: string
        required:
          type: boolean
          nullable: true
        sort:
          type: string
        titlePrompt:
          type: string
        uniqueFilenames:
          type: boolean
          nullable: true
        uploadOnly:
          type: boolean
          nullable: true
    TemplateDataForm:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/TaskTemplateAction'
          nullable: true
        availablePanels:
          type: object
          additionalProperties:
            type: boolean
          nullable: true
        dataFormRef:
          type: string
        properties:
          type: object
          additionalProperties: {}
          nullable: true
    TaskTemplateOption:
      type: object
      properties:
        aliases:
          type: array
          items:
            type: string
          nullable: true
        default: {}
        description:
          type: string
        developerOnly:
          type: boolean
          nullable: true
        displayProperties:
          type: object
          additionalProperties: {}
          nullable: true
        falseLabel:
          type: string
        featureFlag:
          type: string
        groupOptions:
          type: array
          items:
            $ref: '#/components/schemas/TaskTemplateOption'
          nullable: true
        hint:
          type: string
        label:
          type: string
        listDescription:
          type: string
        listLabel:
          type: string
        listType:
          type: string
        name:
          type: string
        overviewMarkdown:
          type: string
        possibleValues:
          type: array
          items:
            $ref: '#/components/schemas/TaskPossibleValue'
          nullable: true
        properties:
          type: object
          additionalProperties: {}
          nullable: true
        required:
          type: boolean
          nullable: true
        showIf:
          type: string
        showOnPopup:
          type: boolean
          nullable: true
        subType:
          type: string
        supportArticle:
          type: string
        tabName:
          type: string
        type:
          type: string
    DocumentActorType:
      type: string
      enum:
        - USER
        - ASSISTANT
        - ACCESS_TOKEN
        - API
    AssistantOptions:
      type: object
      properties:
        agentRuntimeId:
          type: string
          nullable: true
          description: Agent runtime ID for agentic assistants.
        complete_label:
          type: string
          nullable: true
        moduleRefs:
          type: array
          items:
            type: string
          nullable: true
          description: Module references available to agentic assistants.
        pipeline:
          allOf:
            - $ref: '#/components/schemas/PipelineConfig'
          nullable: true
          description: Pipeline configuration for robotic assistants.
        prompt:
          type: string
          nullable: true
          description: System prompt for agentic assistants.
        taxonomies:
          type: array
          items:
            type: string
          nullable: true
          description: Taxonomy references used by this assistant.
    ValidationResults:
      type: object
      properties:
        instances:
          type: array
          items:
            $ref: '#/components/schemas/ProjectsValidationError'
          nullable: true
    ExceptionDetails:
      type: object
      properties:
        advice:
          type: string
        cause: {}
        description:
          type: string
        documentationUrl:
          type: string
        errorMessage:
          type: string
        errorType:
          type: string
        executedVersion:
          type: string
        help:
          type: string
        message:
          type: string
        optionErrors:
          type: object
          additionalProperties: {}
          nullable: true
        stackTrace:
          type: array
          items: {}
          nullable: true
        statusCode:
          type: integer
          format: int32
        validationErrors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
          nullable: true
    ExecutionPipeline:
      type: object
      properties:
        exceptions:
          type: array
          items:
            $ref: '#/components/schemas/ExceptionDetails'
          nullable: true
        id:
          type: string
        ref:
          type: string
        steps:
          type: array
          items:
            $ref: '#/components/schemas/ExecutionStep'
          nullable: true
        valid:
          type: boolean
      required:
        - valid
    ExecutionStatus:
      type: string
      enum:
        - PENDING
        - RUNNING
        - SUCCEEDED
        - FAILED
        - REQUESTED
        - SKIPPED
        - CANCELLING
        - CANCELLED
        - PENDING_REPROCESSING
        - REPROCESSED
    StatusDetails:
      type: object
      properties:
        detail:
          type: string
        message:
          type: string
        progress:
          type: integer
          format: int32
        progressMax:
          type: integer
          format: int32
        stepStatus:
          type: string
    SessionExecutionTargets:
      type: object
      properties:
        instances:
          type: array
          items:
            $ref: '#/components/schemas/SessionExecutionTarget'
          nullable: true
    NodeDimensions:
      type: object
      properties:
        height:
          type: number
          format: double
        width:
          type: number
          format: double
      required:
        - width
        - height
    NodePosition:
      type: object
      properties:
        x:
          type: number
          format: double
        'y':
          type: number
          format: double
      required:
        - x
        - 'y'
    PossibleValue:
      type: object
      properties:
        description:
          type: string
        label:
          type: string
        value: {}
    DocumentFamilyGroupFeature:
      type: object
      properties:
        featureTypeRef:
          type: string
        required:
          type: boolean
          nullable: true
      required:
        - featureTypeRef
    TaskPossibleValue:
      type: object
      properties:
        description:
          type: string
        label:
          type: string
        value: {}
    PipelineConfig:
      type: object
      properties:
        steps:
          type: array
          items:
            $ref: '#/components/schemas/PipelineStepConfig'
          nullable: true
    ProjectsValidationError:
      type: object
      properties:
        description:
          type: string
        message:
          type: string
        option:
          type: string
    ValidationError:
      type: object
      properties:
        description:
          type: string
        message:
          type: string
        option:
          type: string
    ExecutionStep:
      type: object
      properties:
        conditional:
          type: string
        context:
          type: object
          additionalProperties: {}
          nullable: true
        end:
          type: string
          nullable: true
        exceptionDetails:
          allOf:
            - $ref: '#/components/schemas/ExceptionDetails'
          nullable: true
        executionPolicy:
          allOf:
            - $ref: '#/components/schemas/ExecutionPolicy'
          nullable: true
        extensionPackRef:
          type: string
        id:
          type: string
        inputId:
          type: string
        name:
          type: string
        optionTypes:
          type: object
          additionalProperties:
            type: string
          nullable: true
        options:
          type: object
          additionalProperties: {}
          nullable: true
        outputId:
          type: string
        outputIds:
          type: string
        processingTime:
          type: integer
          format: int64
          nullable: true
        progress:
          type: integer
          format: int32
          nullable: true
        progressMax:
          type: integer
          format: int32
          nullable: true
        ref:
          type: string
        start:
          type: string
          nullable: true
        status:
          $ref: '#/components/schemas/ExecutionStatus'
        statusMessage:
          type: string
        stepType:
          $ref: '#/components/schemas/PipelineStepType'
    SessionExecutionTarget:
      type: object
      properties:
        contentObjectId:
          type: string
        documentFamilyId:
          type: string
        labelsToApply:
          type: array
          items:
            type: string
          nullable: true
        ref:
          type: string
        taxonomyRefs:
          type: array
          items:
            type: string
          nullable: true
        type:
          type: string
    PipelineStepConfig:
      type: object
      properties:
        conditional:
          type: string
        executionPolicy:
          allOf:
            - $ref: '#/components/schemas/ExecutionPolicy'
          nullable: true
        name:
          type: string
        options:
          type: object
          additionalProperties: {}
          nullable: true
        ref:
          type: string
        stepType:
          type: string
      required:
        - ref
    PipelineStepType:
      type: string
      enum:
        - MODULE
  securitySchemes:
    x-api-key:
      type: apiKey
      name: x-api-key
      in: header
      description: >-
        API key for authentication. Create one from the Kodexa platform UI under
        Settings > Access Tokens.
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT Bearer token obtained from the authentication provider.

````