> ## Documentation Index
> Fetch the complete documentation index at: https://www.studyfetch.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Track updates and changes across StudyFetch SDKs

## Latest Updates

<Tabs>
  <Tab title="JavaScript">
    ## v1.44.1

    *Released: October 21, 2025*

    ### Features

    * **Chat Feedback Context API**
      * Added `client.v1.chat.retrieveFeedbackContext()` method to retrieve specific message and full conversation for a feedback item
      * Retrieves complete conversation context for analyzing user feedback
      * Accepts `feedbackId` parameter to identify the specific feedback item
      * See [documentation](/api-docs/components/chat#retrieving-feedback-context)
      * Related: [v1.44.0](#v1440) includes Chat Feedback Analytics and Embed Context features

    ***

    ## v1.44.0

    *Released: October 21, 2025*

    ### Features

    * **Chat Embed Context Management**
      * Added context API for pushing dynamic context to embedded chat components
      * New `client.v1.embed.context.push()` method to add context strings to specific embed instances
      * New `client.v1.embed.context.retrieve()` method to get current context for an embed
      * New `client.v1.embed.context.clear()` method to clear context from an embed
      * Enables dynamic content updates (e.g., question changes in practice tests) without losing chat history
      * See [documentation](/api-docs/components/chat#managing-chat-embed-context)
    * **Chat Feedback Analytics**
      * Added `client.v1.chat.retrieveFeedback()` method to retrieve user feedback data
      * Support for filtering feedback by component ID, user ID, date range, and feedback type
      * Feedback type options: `thumbsUp` and `thumbsDown`
      * See [documentation](/api-docs/components/chat#retrieving-chat-feedback)
    * **Chat Component Configuration**
      * Added `enableFeedback` option (default: true) to enable/disable thumbs up/down feedback with reason
    * **API Updates**
      * Enhanced embed service with context management capabilities
      * Updated type definitions and method signatures

    ***

    ## v1.43.0

    *Released: October 8, 2025*

    ### Features

    * **API Updates**
      * Added PDF Generator service for creating presentations
      * Added `studentName` parameter to component embedding
      * Updated API contracts and type definitions
    * **Chat Component Enhancements**
      * Added `hideTitle` configuration option to hide chat component headings (icon and title)
      * Added `hideEmptyState` option to hide default empty state UI
      * Added support for custom HTML to replace the default icon and message when chat is empty via `emptyStateHTML`
      * Removed user avatar from chat interface for cleaner UI
      * Removed Spark.E references from prompt guidance system

    ***

    ## v1.42.0

    *Released: September 24, 2025*

    ### Features

    * **API Updates**
      * Updated endpoint definitions and API contracts
      * Improved request/response handling
      * Enhanced type definitions and method signatures

    ***

    ## v1.41.0

    *Released: September 23, 2025*

    ### New Features

    * **References Support**
      * Added `References` property to material creation and response objects
      * Support for adding source citations with title and URL
      * Enhanced material metadata with reference tracking

    ***

    ## v1.40.0

    *Released: September 23, 2025*

    ### Features

    * Added `enableReferenceMode` option for chat components and embedding
    * Added message grading analytics (prompting and responsibility scores)
    * Added `update` method for materials to update reference information (title and URL)
    * API updates with latest endpoint definitions

    ### Bug Fixes

    * Coerce nullable values to undefined for better TypeScript compatibility
    * Updated singularization rules

    ***

    ## v1.38.0

    *Released: August 21, 2025*

    ### Bug Fixes

    * Fixed response structure inconsistencies in API methods
    * Corrected property naming conventions across response objects
    * Updated method signatures to match actual implementation
    * Improved response type definitions for better type safety

    ***

    ## v1.37.0

    *Released: August 21, 2025*

    ### Documentation Fixes

    * Fixed JavaScript code examples across all documentation
    * Updated `parentFolderId` handling in folder operations (use `undefined` instead of `null`)
    * Added proper null checks for optional fields before accessing properties
    * Fixed pagination checks to handle potentially undefined `totalPages`

    ***

    ## v1.36.0

    *Released: August 19, 2025*

    ### New Features

    * **Pagination Support**
      * Added pagination parameters (`limit` and `page`) to `materials.list()`
      * Added pagination parameters to `folders.listMaterials()`
      * Materials list response now returns paginated object with `data`, `limit`, `page`, `total`, and `totalPages`

    ### Breaking Changes

    * **Materials List Response**
      * Changed from array to paginated object structure
      * Access materials via `response.data` instead of direct array
      * Added pagination metadata: `total`, `totalPages`, `page`, `limit`

    * **Folder Retrieve Response**
      * Removed `materials` field from folder retrieve response
      * Removed `totalSize` field from folder retrieve response
      * Use `folders.listMaterials()` or `materials.list()` with `folderId` to get folder contents

    ### Documentation

    * Updated all code examples to use new paginated response structure
    * Added examples for iterating through multiple pages
    * Added documentation for new `folders.listMaterials()` method

    ***

    ## v1.35.0

    *Released: August 18, 2025*

    ### Improvements

    * Refactored folders API

    ***

    ## v1.34.0

    *Released: August 7, 2025*

    ### Breaking Changes

    * **Assignment Grader API**
      * Changed `rubricTemplates()` to be a property instead of callable
      * Now use `rubricTemplates.create()`, `rubricTemplates.list()`, etc.
      * Affects all rubric template operations

    ### Documentation

    * Updated all code examples to use new rubricTemplates property syntax
    * Added migration guide for rubric template changes
    * Improved TypeScript type definitions for template operations

    ***

    ## v1.33.0

    *Released: July 26, 2025*

    ### New Features

    * **AI-Powered Material Generation**
      * Added `generate()` method to create study materials from topics
      * Added `generateAndProcess()` method for synchronous generation
      * Support for multiple material types: outlines, overviews, notes, summaries
      * Customizable length, education level, and target folder
    * **Chat Streaming API**
      * Support for both AI SDK format (messages array) and custom format
      * Image attachment support in chat messages
      * Stream processing with proper error handling

    ### Improvements

    * Enhanced material management with generation capabilities
    * Better TypeScript type definitions for generated materials
    * Improved streaming performance with chunked responses

    ### Documentation

    * Added comprehensive material generation guide
    * New streaming chat implementation examples
    * Updated API reference with all generation parameters

    ***

    ## v1.27.0

    *Released: July 24, 2025*

    ### New Features

    * **Guardrails for Chat Component**
      * Added `enableGuardrails` and `guardrailRules` configuration options
      * Support for BLOCK, WARN, and MODIFY actions on AI responses
      * Server-side content policy enforcement for safety and compliance
    * **Enhanced Chat Component**
      * Added thinking/reasoning capabilities to chat responses
    * **Keyboard Navigation for Flashcards**
      * Arrow keys for card navigation
      * Enhanced accessibility support

    ### Improvements

    * **Component Embed Generation Flexibility**
      * Both `componentId` and `_id` are now accepted in generateEmbed methods
      * Better backwards compatibility with existing integrations

    ### Bug Fixes

    * Fixed citation placement in chat responses to correctly scope content within provided materials
    * Fixed minor bugs in flashcard component animations and state management
    * Fixed test component scoring edge cases

    ***

    ## v1.26.0

    *Released: July 22, 2025*

    ### New Features

    * Added `createAndProcess` method for materials API
      * Automatically waits for material processing to complete
      * Returns fully processed material ready for immediate use
      * Eliminates need for manual polling of processing status
    * Added Data Analyst component API
      * New component type for data analysis and visualization
      * Supports streaming analysis, sessions, and image uploads
      * Includes methods for statistical analysis and chart generation

    ### Bug Fixes

    * Fixed assignment grader response format
      * Removed inaccessible `rubric` field from response examples
      * Updated documentation to reflect actual API response structure

    ### Documentation

    * Added comprehensive rubric creation examples
    * Improved material processing documentation
    * Added best practices for assignment grading

    ***

    ## v1.25.0

    *Released: July 20, 2025*

    ### Features

    * Initial assignment grader API implementation
    * Support for custom rubrics with multiple criteria
    * Material-based grading support
  </Tab>

  <Tab title="Python">
    ## v0.1.0-alpha.33

    *Released: October 21, 2025*

    ### Features

    * **Chat Feedback Context API**
      * Added `client.v1.chat.retrieve_feedback_context()` method to retrieve specific message and full conversation for a feedback item
      * Retrieves complete conversation context for analyzing user feedback
      * Accepts `feedback_id` parameter to identify the specific feedback item
      * See [documentation](/api-docs/components/chat#retrieving-feedback-context)
      * Related: [v0.1.0-alpha.32](#v010-alpha32) includes Chat Feedback Analytics and Embed Context features

    ***

    ## v0.1.0-alpha.32

    *Released: October 21, 2025*

    ### Features

    * **Chat Embed Context Management**
      * Added context API for pushing dynamic context to embedded chat components
      * New `client.v1.embed.context.push()` method to add context strings to specific embed instances
      * New `client.v1.embed.context.retrieve()` method to get current context for an embed
      * New `client.v1.embed.context.clear()` method to clear context from an embed
      * Enables dynamic content updates (e.g., question changes in practice tests) without losing chat history
      * See [documentation](/api-docs/components/chat#managing-chat-embed-context)
    * **Chat Feedback Analytics**
      * Added `client.v1.chat.retrieve_feedback()` method to retrieve user feedback data
      * Support for filtering feedback by component ID, user ID, date range, and feedback type
      * Feedback type options: `"thumbsUp"` and `"thumbsDown"`
      * See [documentation](/api-docs/components/chat#retrieving-chat-feedback)
    * **Chat Component Configuration**
      * Added `enable_feedback` option (default: true) to enable/disable thumbs up/down feedback with reason
    * **API Updates**
      * Enhanced embed service with context management capabilities
      * Updated type definitions and method signatures

    ***

    ## v0.1.0-alpha.31

    *Released: October 8, 2025*

    ### Features

    * **API Updates**
      * Added PDF Generator service for creating presentations
      * Added `student_name` parameter to component embedding
      * Updated API contracts and type definitions
    * **Chat Component Enhancements**
      * Added `hide_title` configuration option to hide chat component headings (icon and title)
      * Added `hide_empty_state` option to hide default empty state UI
      * Added support for custom HTML to replace the default icon and message when chat is empty via `empty_state_html`
      * Removed user avatar from chat interface for cleaner UI
      * Removed Spark.E references from prompt guidance system

    ***

    ## v0.1.0-alpha.30

    *Released: September 24, 2025*

    ### Features

    * **Chat Feedback Context API**
      * Added `client.v1.chat.retrieve_feedback_context()` method to retrieve specific message and full conversation for a feedback item
      * Retrieves complete conversation context for analyzing user feedback
      * Accepts `feedback_id` parameter to identify the specific feedback item
      * See [documentation](/api-docs/components/chat#retrieving-feedback-context)
      * Related: [v0.1.0-alpha.32](#v010-alpha32) includes Chat Feedback Analytics and Embed Context features
    * **API Updates**
      * Updated endpoint definitions and API contracts
      * Improved request/response handling
      * Enhanced type definitions and method signatures

    ***

    ## v0.1.0-alpha.29

    *Released: September 23, 2025*

    ### New Features

    * **References Support**
      * Added `references` parameter to material creation methods
      * Support for adding source citations with title and URL
      * Enhanced material metadata with reference tracking

    ***

    ## v0.1.0-alpha.28

    *Released: September 23, 2025*

    ### New Features

    * Added `enable_reference_mode` option for chat components and embedding
    * Added message grading analytics (prompting and responsibility scores)
    * Added `update` method for materials to update reference information (title and URL)
    * API updates with latest endpoint definitions

    ***

    ## v0.1.0-alpha.26

    *Released: August 21, 2025*

    ### Bug Fixes

    * Fixed response structure inconsistencies in API methods
    * Corrected property naming conventions across response objects
    * Updated method signatures to match actual implementation
    * Improved response type definitions for better type safety

    ***

    ## v0.1.0-alpha.24

    *Released: August 19, 2025*

    ### New Features

    * **Pagination Support**
      * Added pagination parameters (`limit` and `page`) to `materials.list()`
      * Added pagination parameters to `folders.list_materials()`
      * Materials list response now returns paginated object with `data`, `limit`, `page`, `total`, and `total_pages`

    ### Breaking Changes

    * **Materials List Response**
      * Changed from `List[MaterialListResponseItem]` to single `MaterialListResponse` object
      * Access materials via `response.data` instead of direct list
      * Added pagination metadata: `total`, `total_pages`, `page`, `limit`

    * **Folder Retrieve Response**
      * Removed `materials` field from folder retrieve response
      * Removed `total_size` field from folder retrieve response
      * Use `folders.list_materials()` or `materials.list()` with `folder_id` to get folder contents

    ### Documentation

    * Updated all code examples to use new paginated response structure
    * Added examples for iterating through multiple pages
    * Added documentation for new `folders.list_materials()` method

    ***

    ## v0.1.0-alpha.23

    *Released: August 18, 2025*

    ### Improvements

    * Refactored folders API

    ***

    ## v0.1.0-alpha.22

    *Released: August 7, 2025*

    ### New Features

    * **Assignment Grader API**
      * Added support for rubric templates
      * Added assignment grouping functionality
      * Improved grading response structure

    ### Documentation

    * Added comprehensive rubric template examples
    * Updated assignment grader documentation
    * Added new code samples for template management

    ***

    ## v0.1.0-alpha.21

    *Released: July 26, 2025*

    ### New Features

    * **AI-Powered Material Generation**
      * Added `generate()` method to create study materials from topics
      * Added `generate_and_process()` method for synchronous generation
      * Support for multiple material types: outlines, overviews, notes, summaries
      * Customizable length, education level, and target folder
    * **Chat Streaming API**
      * Support for both AI SDK format (messages array) and custom format
      * Async streaming with proper chunk handling
      * Image attachment support in chat messages

    ### Improvements

    * Enhanced material management with generation capabilities
    * Better async/await support for streaming operations
    * Improved error handling for generation timeouts

    ### Documentation

    * Added comprehensive material generation guide
    * New async streaming implementation examples
    * Updated API reference with all generation parameters

    ***

    ## v0.1.0-alpha.20

    *Released: July 24, 2025*

    ### New Features

    * **Guardrails for Chat Component**
      * Added `enableGuardrails` and `guardrailRules` configuration options
      * Support for BLOCK, WARN, and MODIFY actions on AI responses
      * Server-side content policy enforcement for safety and compliance
    * **Enhanced Chat Component**
      * Added thinking/reasoning capabilities to chat responses
      * Improved multi-step problem solving with visible thought process
    * **Keyboard Navigation for Flashcards**
      * Arrow keys for card navigation
      * Spacebar to flip cards
      * Enhanced accessibility support

    ### Improvements

    * **Component Embed Generation Flexibility**
      * Both `componentId` and `_id` are now accepted in generateEmbed methods
      * Better backwards compatibility with existing integrations

    ### Bug Fixes

    * Fixed citation placement in chat responses to correctly scope content within provided materials
    * Fixed minor bugs in flashcard component animations and state management
    * Fixed test component scoring edge cases

    ***

    ## v0.1.0-alpha.19

    *Released: July 22, 2025*

    ### New Features

    * Added `create_and_process` method for materials API
      * Synchronous material creation and processing
      * Ideal for immediate material usage scenarios
      * Consistent with JavaScript SDK functionality
    * Added Data Analyst component API
      * Full support for data analysis operations
      * Methods for send\_message, stream, retrieve\_session, get\_history
      * Image upload capabilities for data visualization

    ### Bug Fixes

    * Fixed assignment grader response format documentation
      * Aligned response examples with actual API behavior
      * Removed references to private fields

    ### Documentation

    * Enhanced material management examples
    * Added rubric definition guide
    * Improved code consistency across SDKs

    ***

    ## v0.1.0-alpha.18

    *Released: July 20, 2025*

    ### Features

    * Assignment grader API support
    * Material upload and processing
    * Folder management capabilities
  </Tab>

  <Tab title="Java">
    ## v0.1.0-alpha.33

    *Released: October 21, 2025*

    ### Features

    * **Chat Feedback Context API**
      * Added `client.v1().chat().retrieveFeedbackContext()` method to retrieve specific message and full conversation for a feedback item
      * Retrieves complete conversation context for analyzing user feedback
      * Accepts `feedbackId` parameter to identify the specific feedback item
      * See [documentation](/api-docs/components/chat#retrieving-feedback-context)
      * Related: [v0.1.0-alpha.29](#v010-alpha29) includes Chat Feedback Analytics and Embed Context features

    ***

    ## v0.1.0-alpha.29

    *Released: October 21, 2025*

    ### Features

    * **Chat Embed Context Management**
      * Added context API for pushing dynamic context to embedded chat components
      * New `client.v1().embed().context().push()` method to add context strings to specific embed instances
      * New `client.v1().embed().context().retrieve()` method to get current context for an embed
      * New `client.v1().embed().context().clear()` method to clear context from an embed
      * Enables dynamic content updates (e.g., question changes in practice tests) without losing chat history
      * See [documentation](/api-docs/components/chat#managing-chat-embed-context)
    * **Chat Feedback Analytics**
      * Added `client.v1().chat().retrieveFeedback()` method to retrieve user feedback data
      * Support for filtering feedback by component ID, user ID, date range, and feedback type
      * Feedback type enum: `ChatRetrieveFeedbackParams.FeedbackType.THUMBS_UP` and `THUMBS_DOWN`
      * See [documentation](/api-docs/components/chat#retrieving-chat-feedback)
    * **Chat Component Configuration**
      * Added `enableFeedback` option (default: true) to enable/disable thumbs up/down feedback with reason
    * **API Updates**
      * Enhanced embed service with context management capabilities
      * Updated type definitions and method signatures

    ***

    ## v0.1.0-alpha.28

    *Released: October 8, 2025*

    ### Features

    * **API Updates**
      * Added PDF Generator service for creating presentations
      * Added `studentName` parameter to component embedding
      * Updated API contracts and type definitions
    * **Chat Component Enhancements**
      * Added `hideTitle` configuration option to hide chat component headings (icon and title)
      * Added `hideEmptyState` option to hide default empty state UI
      * Added support for custom HTML to replace the default icon and message when chat is empty via `emptyStateHTML`
      * Removed user avatar from chat interface for cleaner UI
      * Removed Spark.E references from prompt guidance system

    ***

    ## v0.1.0-alpha.27

    *Released: September 24, 2025*

    ### Features

    * **API Updates**
      * Updated endpoint definitions and API contracts
      * Improved request/response handling
      * Enhanced type definitions and method signatures

    ***

    ## v0.1.0-alpha.26

    *Released: September 23, 2025*

    ### New Features

    * **References Support**
      * Added `references` parameter to material creation methods
      * Support for adding source citations with title and URL
      * Enhanced material metadata with reference tracking

    ***

    ## v0.1.0-alpha.25

    *Released: September 23, 2025*

    ### New Features

    * Added `enableReferenceMode` option for chat components and embedding
    * Added message grading analytics (prompting and responsibility scores)
    * Added `update` method for materials to update reference information (title and URL)
    * API updates with latest endpoint definitions

    ***

    ## v0.1.0-alpha.23

    *Released: August 21, 2025*

    ### Bug Fixes

    * Fixed response structure inconsistencies in API methods
    * Corrected property accessor methods across response objects
    * Updated method signatures to match actual implementation
    * Improved response type definitions for better type safety

    ***

    ## v0.1.0-alpha.22

    *Released: August 21, 2025*

    ### Documentation Fixes

    * **Comprehensive Documentation Update**
      * Fixed all Java code examples to use correct SDK patterns
      * Updated all API calls to use parameter objects with builder pattern
      * Fixed response types: `MaterialResponse`, `ComponentResponse`, `FolderCreateResponse`, etc.
      * Corrected `FolderListResponse` usage - it returns `List<FolderListResponse>` not a single object
      * Fixed Optional field handling - omit fields instead of passing `null`
      * Updated `Content` imports to use standalone class instead of inner class
      * Fixed enum usage for fields like `difficulty`, `recapType` in components
      * Corrected assignment grader to use `RubricCriterion` from `rubrictemplates` package
      * Fixed `AssignmentGraderCreateResponse` with `gradedAssignment().get().grade()` pattern
      * Updated chat analytics to use `ChatAnalyticsResponse` and `OffsetDateTime` for dates
      * Fixed material search to use `MaterialSearchResponse` and handle Optional fields
      * Added proper imports for all examples including `List`, `Collections`, `OffsetDateTime`

    ***

    ## v0.1.0-alpha.21

    *Released: August 19, 2025*

    ### New Features

    * **Pagination Support**
      * Added pagination parameters (`limit` and `page`) to `materials.list()`
      * Added pagination parameters to `folders.listMaterials()`
      * Materials list response now returns paginated object with `data`, `limit`, `page`, `total`, and `totalPages`

    ### Breaking Changes

    * **Materials List Response**
      * Changed from `List<MaterialListResponse>` to single `MaterialListResponse` object
      * Access materials via `response.data()` instead of direct list
      * Added pagination metadata: `total()`, `totalPages()`, `page()`, `limit()`

    * **Folder Retrieve Response**
      * Removed `materials()` method from folder retrieve response
      * Removed `totalSize()` method from folder retrieve response
      * Use `folders.listMaterials()` or `materials.list()` with `folderId()` to get folder contents

    ### Documentation

    * Updated all code examples to use new paginated response structure
    * Added examples for iterating through multiple pages
    * Added documentation for new `folders.listMaterials()` method

    ***

    ## v0.1.0-alpha.20

    *Released: August 18, 2025*

    ### Improvements

    * Refactored folders API

    ***

    ## v0.1.0-alpha.19

    *Released: August 7, 2025*

    ### New Features

    * **Assignment Grader API**
      * Added RubricTemplateService for template management
      * Added support for assignment grouping via AssignmentId
      * Enhanced grading response structure with proper typing

    ### Improvements

    * Better builder patterns for template operations
    * Improved type safety for assignment grouping
    * Enhanced error handling for template operations

    ### Documentation

    * Added detailed rubric template examples
    * Updated assignment grader documentation
    * Added missing imports for template operations

    ***

    ## v0.1.0-alpha.18

    *Released: July 26, 2025*

    ### New Features

    * **AI-Powered Material Generation**
      * Added `generate()` method to create study materials from topics
      * Added `generateAndProcess()` method for synchronous generation
      * Support for MaterialGenerateParams.Type enum: OUTLINE, OVERVIEW, NOTES, SUMMARY
      * Support for MaterialGenerateParams.Level enum: HIGH\_SCHOOL, COLLEGE, PROFESSIONAL
      * Support for MaterialGenerateParams.Length enum: SHORT, MEDIUM, LONG
    * **Chat Streaming API**
      * ChatStreamParams builder with full type safety
      * Support for both AI SDK format and custom message format
      * Image attachment support with ChatStreamParams.Message.Image

    ### Improvements

    * Enhanced builder patterns for all material generation operations
    * Better enum support for type-safe configurations
    * Improved Optional handling for nullable parameters

    ### Documentation

    * Added comprehensive material generation guide with Java examples
    * New streaming implementation patterns
    * Updated API reference with proper enum usage

    ***

    ## v0.1.0-alpha.17

    *Released: July 24, 2025*

    ### New Features

    * **Guardrails for Chat Component**
      * Added `enableGuardrails` and `guardrailRules` configuration options
      * Support for GuardrailRule.Action enum: BLOCK, WARN, and MODIFY
      * Server-side content policy enforcement for safety and compliance
      * Full builder pattern support for GuardrailRule configuration
    * **Enhanced Chat Component**
      * Added thinking/reasoning capabilities to chat responses
      * Improved multi-step problem solving with visible thought process
    * **Keyboard Navigation for Flashcards**
      * Arrow keys for card navigation
      * Spacebar to flip cards
      * Enhanced accessibility support

    ### Improvements

    * **Component Embed Generation Flexibility**
      * Both `componentId` and `_id` are now accepted in generateEmbed methods
      * Better backwards compatibility with existing integrations

    ### Bug Fixes

    * Fixed citation placement in chat responses to correctly scope content within provided materials
    * Fixed minor bugs in flashcard component animations and state management
    * Fixed test component scoring edge cases

    ***

    ## v0.1.0-alpha.16

    *Released: July 22, 2025*

    ### New Features

    * Added `createAndProcess` method for materials API
      * Uses `MaterialCreateAndProcessParams` for configuration
      * Blocks until material processing completes
      * Returns `Material` object with active status
    * Added Data Analyst component API
      * New `DataAnalystService` with full API support

    ### Bug Fixes

    * Fixed assignment grader response format
      * Corrected Java examples to not access private `rubric` field
      * Updated material creation examples to use proper imports
      * Fixed `Content` class references to use correct package structure

    ### Breaking Changes

    * Material creation now uses `com.studyfetch.javasdk.models.v1.materials.Content` instead of nested classes
    * Upload functionality requires `UploadUploadFileParams` from the upload subpackage

    ### Documentation

    * Added detailed rubric builder examples
    * Improved type safety in code examples
    * Added missing imports for File operations

    ***

    ## v0.1.0-alpha.15

    *Released: July 20, 2025*

    ### Features

    * Initial Java SDK release
    * Core API functionality for materials and grading
    * Builder pattern implementation for all request types
  </Tab>

  <Tab title="C#">
    ## v0.8.4

    *Released: March 5, 2026*

    ### Features

    * **Assignment Grader**
      * Added optional `AssignmentContent` property to `AssignmentGraderCreateParams` for providing reading passages or source material as grading context
      * Added `AssignmentContent` to `Rubric` nested model for rubric-level context
      * Added `AssignmentContent` to `AssignmentGraderResponse` for response data
      * Added `AssignmentContent` to `RubricTemplateCreateParams` and `RubricTemplateResponse`
    * **Usage Stats**
      * Added `ComponentType` query parameter to `UsageGetStatsParams` for filtering by component type
      * Added `ResourceID` query parameter to `UsageGetStatsParams` for filtering by component ID

    ### Changes

    * **Components**
      * Disabled `ScenariosConfigDto` as a config variant in the `Config` union type
      * Scenario files and `Type.Scenarios` enum values preserved for backward compatibility

    ***

    ## v0.8.1

    *Released: October 21, 2025*

    ### Features

    * **Chat Feedback Context API**
      * Added `RetrieveFeedbackContext()` method to retrieve specific message and full conversation for a feedback item
      * Retrieves complete conversation context for analyzing user feedback
      * See [documentation](/api-docs/components/chat#retrieving-feedback-context)
      * Related: [v0.8.0](#v080) includes Chat Feedback Analytics and Embed Context features

    ***

    ## v0.8.0

    *Released: October 21, 2025*

    ### Features

    * **Chat Embed Context Management**
      * Added context API for pushing dynamic context to embedded chat components
      * New `Embed.Context.Push()` method to add context strings to specific embed instances
      * New `Embed.Context.Retrieve()` method to get current context for an embed
      * New `Embed.Context.Clear()` method to clear context from an embed
      * Enables dynamic content updates (e.g., question changes in practice tests) without losing chat history
      * See [documentation](/api-docs/components/chat#managing-chat-embed-context)
    * **Chat Feedback Analytics**
      * Added `Chat.RetrieveFeedback()` method to retrieve user feedback data
      * Support for filtering feedback by component ID, user ID, date range, and feedback type
      * Feedback type enum with `ThumbsUp` and `ThumbsDown` values
      * See [documentation](/api-docs/components/chat#retrieving-chat-feedback)
    * **Chat Component Configuration**
      * Added `EnableFeedback` property (default: true) to enable/disable thumbs up/down feedback with reason
    * **API Updates**
      * Enhanced embed service with context management capabilities
      * Updated type definitions and method signatures

    ***

    ## v0.7.0

    *Released: October 8, 2025*

    ### Features

    * **API Updates**
      * Added PDF Generator service for creating presentations
      * Added `StudentName` parameter to component embedding
      * Refactored exception handling
      * Refactored union types
    * **Chat Component Enhancements**
      * Added `HideTitle` configuration option to hide chat component headings (icon and title)
      * Added `HideEmptyState` option to hide default empty state UI
      * Added support for custom HTML to replace the default icon and message when chat is empty via `EmptyStateHTML`
      * Removed user avatar from chat interface for cleaner UI
      * Removed Spark.E references from prompt guidance system

    ***

    ## v0.6.1

    *Released: September 24, 2025*

    ### Features

    * **API Updates**
      * Updated endpoint definitions and API contracts
      * Improved request/response handling
      * Enhanced type definitions and method signatures

    ***

    ## v0.6.0

    *Released: September 23, 2025*

    ### New Features

    * **References Support**
      * Added `References` property to material creation and response objects
      * Support for adding source citations with title and URL
      * Enhanced material metadata with reference tracking

    ***

    ## v0.5.0

    *Released: September 23, 2025*

    ### New Features

    * Added `EnableReferenceMode` option for chat components and embedding
    * Added message grading analytics (prompting and responsibility scores)
    * Added `Update` method for materials to update reference information (title and URL)
    * API updates with latest endpoint definitions

    ### Improvements

    * Better type naming conventions
    * Improved authentication handling
    * Updated singularization rules

    ### Bug Fixes

    * Removed unused null class
    * Cleaned up example project references

    ***

    ## v0.3.1

    *Released: August 21, 2025*

    ### Bug Fixes

    * Fixed response structure inconsistencies in API methods
    * Corrected property naming conventions across response objects
    * Updated method signatures to match actual implementation
    * Improved response type definitions for better type safety

    ***

    ## v0.3.0

    *Released: August 21, 2025*

    ### Documentation Fixes

    * **Major Documentation Overhaul**
      * Fixed all C# code examples across the entire documentation
      * Standardized client initialization patterns using `var client = new StudyfetchSDKClient()`
      * Fixed parameter instantiation to use `new()` syntax consistently
      * Corrected response property access (e.g., `Materials` instead of `Data`, `TotalCount` instead of `Total`)
      * Fixed enum usage for status values using `.Raw()` method
      * Corrected guardrails implementation in chat components
      * Fixed file upload examples to use `File.ReadAllBytesAsync()` with `FileName` parameter
      * Updated assignment grader to use `RubricCriterion` from correct namespace
      * Fixed direct ID passing to use parameter objects with builders

    ***

    ## v0.2.0

    *Released: August 19, 2025*

    ### New Features

    * **Pagination Support**
      * Added pagination parameters (`Limit` and `Page`) to `Materials.List()`
      * Added pagination parameters to `Folders.ListMaterials()`
      * Materials list response now returns paginated object with `Data`, `Limit`, `Page`, `Total`, and `TotalPages`
    * **Union Type Helpers**
      * Added `Switch` and `Match` helper methods for union types
      * Added `TryPick*` methods for type-safe union handling

    ### Breaking Changes

    * **Materials List Response**
      * Changed from `List<MaterialListResponse>` to single `MaterialListResponse` object
      * Access materials via `response.Data` instead of direct list
      * Added pagination metadata: `Total`, `TotalPages`, `Page`, `Limit`

    * **Folder Retrieve Response**
      * Removed `Materials` property from folder retrieve response
      * Removed `TotalSize` property from folder retrieve response
      * Use `Folders.ListMaterials()` or `Materials.List()` with `FolderID` to get folder contents

    ### Documentation

    * Updated all code examples to use new paginated response structure
    * Added examples for iterating through multiple pages
    * Added documentation for new `Folders.ListMaterials()` method

    ***

    ## v0.1.0

    *Released: August 19, 2025*

    ### Features

    * Initial beta release of C# SDK

    ***

    ## v0.0.3

    *Released: August 18, 2025*

    ### Improvements

    * Refactored folders API
  </Tab>
</Tabs>

## Version Support

| SDK        | Current Version | Minimum Supported |
| ---------- | --------------- | ----------------- |
| JavaScript | 1.44.1          | 1.20.0            |
| Python     | 0.1.0-alpha.33  | 0.1.0-alpha.15    |
| Java       | 0.1.0-alpha.33  | 0.1.0-alpha.15    |
| C#         | 0.8.4           | 0.0.1             |

<Note>
  Alpha versions may contain breaking changes between releases. We recommend staying on the latest version for the best experience and bug fixes.
</Note>
