Skip to main content

Reinstate course completions if the course is already in a learning plan

  • May 30, 2026
  • 3 replies
  • 70 views

Hey community. 

I’ve been passed a lovely big job and I’m currently in a huge pickle. Someone at my company was told to archive a bunch of completions for a client but then the client changed their mind and now want to reinstate the completion against the course. These courses are however located in learning plans (yay - my favourite) so using the enrollment_learn_v1_enrollment_batch_0 in the api browser can’t work because the users are enrolled in the learning plan. The learning plan also has completions attached (yay). I’m seriously at a loss at what to do. I explained the situation to docebo support and they told me to use the api endpoint which does not work because the courses are located in learning plans.  
Does anyone have any suggestions as to what to do? Its the weekend here, I’m sitting at my computer crying because nothing is working and i have 3800+ completions to reinstate before Monday. 

I’m so upset by this, can someone please help me on what i can do 😢

I also posted this in product Q&A so sorry for the double up - i just want to reach as many people as i can 

3 replies

caycocho
Influencer II
Forum|alt.badge.img
  • Influencer II
  • May 30, 2026

Hello AA,

Archived course enrollments cannot be restored, as the data structure of archived enrollments is different from that of active enrollments. For more details, please refer to the Archiving course enrollments article.

Archived learning plan enrollments cannot be restored, as the data structure of archived enrollments is different from that of active enrollments. Once an enrollment is archived, it remains in a frozen state, and the original enrollment cannot be reactivated. For more details, please refer to the article on Archiving learning plan enrollments.

Can you share with the community the reason for restoring the archived course enrollment? 

I hope the links provided will be of some help to you.

Caesar


ccallaway
  • Newcomer
  • May 30, 2026

@aa.ag 

YIKES! I can’t even imagine your stress level.

Before going any further, can you tell us:

  1. Were the Learning Plan enrollments archive using “Archive and Re-enroll” or “Archive and Unenroll?”
  2. Was “Reset Tracking” selected during the archive process?
  3. Can you still see the records under Archived enrollments?
  4. Do you have a completion export from before the archive?

If the administrator selected Archive and re-enroll and did not reset tracking, the historical training material tracking is retained. In this scenario, the completions may already exist and the issue may simply be that the Learning Plan progress is not displaying as expected.

Archived records remain in the platform.

Go to:

Course Management → Course → Enrollments  → Enrollment Type  → Archived Enrollments

Look for one of the affected users.

If the completion report is still sitting there with the certificate of completion date intact, then the data itself is not lost.

The question then becomes “Is there a way to move it back into an active enrollment state?” Since Docebo does not provide a true “unarchive” button, Support may be able to perform a backend restoration.

The API Endpoint that you shared works on course enrollments. If the users are managed through a Learning Plan, you may need to work with the Learning Plan endpoints instead of Course Enrollment endpoints. If the Learning Plan is still controlling the enrollment relationship, you cannot restore them from the course enrollment.

If the users were archived and then unenrolled from the Learning Plan, the sequence matters.

Potential Order

  1. Re-enroll users into the Learning Plan
  2. Verify course enrollments were recreated
  3. Then restore completion status

Note: Some LMSs will reject completion updates when the enrollment hierarchy is broken.

If the completion records were exported before archiving, you may be able to rebuild the records through bulk import/API instead of trying to “restore” them. You will need the following:

  • User ID
  • Course ID
  • Completion date
  • Completion status

I hope some of this helps.


JZenker
Guide II
Forum|alt.badge.img+2
  • Guide II
  • June 1, 2026

1st. If you don’t get a decent response from chat, always go the ticket route.

2nd. That’s rough, I’m sorry - I hope you’ve found an answer to this by now. If not, put the LP as Inactive. Remove the courses affected/that need enrollments. Your learners are tied to the LP, temporarily removing the affected courses won’t permanently affect the entire LP. You’ll add the courses back in step 4, and the LP progress will automatically update based on the status of each course.

3rd. Handle the enrollments via CSV. There is an API doc created by ​@Bfarkas - it is here: https://docs.google.com/spreadsheets/d/1ROFSEqKcc9Tcm1Umg6Oo5Mla7owrAPmA_h4WXGpVloM/edit?gid=676810685#gid=676810685 Gather all your completion data/User ID’s and get ready to run the batch(es).

4th. Once all your records are back, add the courses back to the LP. It won’t re-enroll users into the affected courses, it’ll just update their LP completion progress automatically.

5th. Delete the archived records for cleanup. 

 

Make sure to turn off email notifications before starting this process.