2025 API and CLI Change Log
The Change Log Archive page displays previous API changes from 2025 noted in the API Change Log. The heading date indicates the date that the API code was made available in the production environment.
2025-04-19
Announcement Date: 2025-03-19
Addition
- Admins and instructors can use the API to set quiz-level and course-level accommodations for New Quizzes.
2025-03-31
Announcement Date: 2025-03-19
Addition
A new column, unified_tool_id, will be added to the context_external_tools table in the Canvas namespace.
Column Details:
- Name: unified_tool_id
- Type: Optional[Annotated[str, MaxLength(255)]]
- Purpose: Provides a unique identifier for commonly used LTI tools, enabling more accurate tracking and reporting across institutions.
Important Notes:
- Homegrown LTI tools and usage via Redirect tools will not be assigned a unified_tool_id.
- Tool IDs may change dynamically going forward, but historical data will not be retroactively updated.
2025-03-26
Announcement Date: 2025-03-14
Addition
- Added Context_external_tool_id
- The Canvas identifier for the LTI 1.3 External Tool that the LTI Resource Link was originally installed from. Caution! The resource link url must match the tool’s domain or url.
- Close notification for user. Destroy notification for admin.
- Added If the current user is an admin and they pass a remove parameter with a value of “true”, the account notification will be destroyed. This affects all users.
2025-03-12
Announcement Date: 2025-03-12
Addition
DAP CLI 1.4.0
DAP CLI 1.4.0 introduces multi-table and namespace-level operations, simplifying workflows and enabling users to execute commands across multiple tables in a single command. This release maintains full backward compatibility while significantly improving user experience.
New Features:
Namespace-Level Operations
Supports all relevant commands: snapshot, incremental, schema, and database management (initdb, syncdb, dropdb) for all or selected tables within a namespace. (list is an exception since it lists all tables in the selected namespace, no --table flags available for that command)
Option to specify individual tables within the namespace for more targeted operations.
Error Handling Enhancements
Detailed logs for partial successes and failures.
Retry mechanisms for incomplete operations.
Backward Compatibility
Single-table commands (--table <table_name>) remain unchanged.
Use Case Examples:
dap initdb --namespace canvas --table all – Create schemas for all tables in the canvas namespace.
dap incremental --namespace canvas_logs --table accounts,courses – Perform incremental updates for multiple tables.
2025-02-26
Announcement Date: 2025-02-14
Addition
- Added lock_comment- If is_announcement and lock_comment are true, ‘Allow Participants to Comment’ setting is disabled.
Changed
Index of active global notification for the user
- When include_all is set to true and the user has an admin account, all past and future announcements are included. Additionally, an author object with minimal author information is added.
2025-02-10
Announcement Date: 2025-01-28
Addition
New Table: collaborations in the canvas namespace through DAP Query API.
- Parameters:
- id (int64) – primary key The ID of the collaboration.
- collaboration_type (Annotated[str, MaxLength(255)] | None) – The type of the collaboration.
- document_id (Annotated[str, MaxLength(255)] | None) – The ID of the document.
- user_id (users| None) – The ID of the user.
- context_id (accounts | groups | courses | None) – The ID of the context.
- context_type (collaboration__context_type | None) – The type of the context.
- url (Annotated[str, MaxLength(255)] | None) – The URL of the collaboration.
- uuid (UUID | None) – The UUID of the collaboration.
- data (json | None) – The data of the collaboration.
- created_at (datetime) – The date this collaboration was created.
- updated_at (datetime) – The date this collaboration was updated.
- description (bounded_str | None) – The description of the collaboration.
- title (Annotated[str, MaxLength(255)]) – The title of the collaboration.
- workflow_state (Annotated[str, MaxLength(255)]) – The workflow state of the collaboration.
- deleted_at (datetime | None) – The date this collaboration was deleted.
- context_code (Annotated[str, MaxLength(255)] | None) – The context code of the collaboration.
- type (Annotated[str, MaxLength(255)] | None) – The type of the collaboration.
- resource_link_lookup_uuid (UUID | None) – The UUID of the resource
If you’re a DAP CLI user, no action is required.
2025-01-29
Announcement Date: 2025-01-17
Addition
Restore a deleted authentication provider
- Reinstate a previously deleted authentication provider to active status. This option is available exclusively to admins with permission to manage account settings for the specified root account.
2025-01-10
Announcement Date: 2024-12-16
Addition
Summary:
DAP CLI version 1.3.1 addresses a bug affecting PostgreSQL users when running the syncdb command after multiple new enums were added to the DAP Query API.
Details of the Issue
- Affected Command: dap syncdb
- Cause: The bug occurred because DAP CLI’s previous dependency (pysqlsync < 0.8.1) was not equipped to handle cases where multiple new enums were added to the API at once.
- Impact: PostgreSQL users encountered errors when attempting to sync their databases using the CLI.
Resolution
- Updated the DAP CLI dependency on pysqlsync to version 0.8.1, which correctly handles multiple new enums during synchronization.
- Added a new test case to our automated test suite to cover scenarios involving multiple enum additions, ensuring this issue is caught in future releases.
How to Update
To upgrade to the latest version of DAP CLI, run the following command:
pip install -U instructure-dap-client
Or download directly from pypi.org.
2025-01-09
Announcement Date: 2024-12-16
Addition
Updates to multiple tables and columns in the Canvas namespace with new enumerated values (enums) that will be available in your (CD2) DAP Query API dataset.
- Conversation_messages, submission_comments, submissions
- Column: media_comment_type
- New Values:
- audio/aac, audio/amr, audio/flac, audio/mp4, audio/mpeg, audio/ogg, audio/vnd.dlna.adts, audio/wav, audio/webm, audio/x-m4a, audio/x-ms-wma, audio/x-wav, video/3gpp, video/avi, video/mp4, video/mpeg, video/ogg, video/quicktime, video/webm, video/x-m4v, video/x-matroska, video/x-ms-asf, video/x-ms-wmv, video/x-msvideo
- New Values:
- Column: media_comment_type
- access_tokens
- Column: workflow_state
- New Value: pending
- Column: workflow_state
- assignment_overrides
- Column: set_type
- New Value: Course
- Column: set_type
- assignments
- Column: workflow_state
- New Values:
- outcome_alignment_cloning
- failed_to_clone_outcome_alignment
- New Values:
- Column: workflow_state
- attachments
- Column: file_state
- New Values:
- public
- New Values:
- Column: file_state
- developer_key_account_bindings
- Column: workflow_state
- New Value: deleted
- Column: workflow_state
- discussion_topics
- Column: discussion_type
- New Value: not_threaded
- Column: discussion_type
- grading_standards
- Column: workflow_state
- New Value: archived
- Column: workflow_state
- learning_outcomes
- Column: calculation_method
- New Values:
- weighted_average
- standard_decaying_average
- New Values:
- Column: calculation_method
- master_courses_master_content_tags
- Column: content_type
- New Value: MediaTrack
- Column: content_type
- rubrics
- Column: workflow_state
- New Values:
- archived
- draft
- New Values:
- Column: workflow_state
2025-01-18
Announcement Date: 2024-11-20
Beta Environment Availability: 2024-12-16
Addition
- An API endpoint is added to allow the export of Item Analysis or Student Analysis reports.
- POST: /quiz/v1/courses/:course_id/quizzes/:assignment_id/reports
Related Idea: [API] Student Responses to Questions in New Quizzes and Grades Received per Question