Skip to content

Preserve integration_ids during course clone#2588

Open
elenabaurkot wants to merge 1 commit intoinstructure:masterfrom
elenabaurkot:clone-integration-data
Open

Preserve integration_ids during course clone#2588
elenabaurkot wants to merge 1 commit intoinstructure:masterfrom
elenabaurkot:clone-integration-data

Conversation

@elenabaurkot
Copy link

@elenabaurkot elenabaurkot commented Feb 23, 2026

Add opt-in settings to copy integration_id and integration_data on assignments during course copy. External systems rely on these fields to correlate Canvas assignments with third-party records and assignments across courses can share the same IDs.

We reuse intergration_ids and integration_data across courses to be able to track assignment data between courses and semesters. I opened a support ticket and was told integration_data should copy over and that integration_ids were meant to be unique, but since these link to third parties was hopeful people could opt into maintaining over course clone in case the same courses need to link to the same third party data for our case.

Our data team uses DAP (data access platform) to access Canvas data and it only contains integration_id for assignments not integration_data. If we are able to clone only integration_data on course clone, could this potentially be added to DAP?

Test Plan:

  • Create a course with assignments that have integration_id and integration_data set
  • Copy the course with both options enabled
  • Verify cloned assignments retain the values
  • Copy again with options disabled
  • Verify fields are cleared (default behavior)
  • Test via API: POST course copy with settings[copy_integration_ids]=true
  • Verify same behavior as UI

Add opt-in settings to copy integration_id and
integration_data on assignments during course copy.
External systems rely on these fields to correlate
Canvas assignments with third-party records, and
assignments across courses can share the same IDs.

Test Plan:
  - Create a course with assignments that have
    integration_id and integration_data set
  - Copy the course with both options enabled
  - Verify cloned assignments retain the values
  - Copy again with options disabled
  - Verify fields are cleared (default behavior)
  - Test via API: POST course copy with
    settings[copy_integration_ids]=true
  - Verify same behavior as UI
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants