Im August 2016 legte der Bundesrat dem Parlament seine Botschaft zur Genehmigung des 2014 von der Internationalen Arbeitsorganisation (IAO) verabschiedeten Protokolls zum Übereinkommen Nr. 29 über die Zwangs- oder Pflichtarbeit vor. Das Protokoll bringt das 1930 in Kraft getretene und von der Schweiz ratifizierte Übereinkommen Nr. 29 auf den neusten Stand und fordert Regierungen auf, Massnahmen zur Prävention von Zwangsarbeit zu ergreifen, die Opfer zu schützen und ihnen Zugang zu Rechtsschutz- und Rechtsbehelfsmechanismen zu gewähren. Da das Übereinkommen Nr. 29 als IAO-Kernabkommen gilt und das Protokoll Bestandteil des Abkommens ist, gilt das Protokoll ebenfalls als Kernabkommen.
Der Nationalrat beriet in der Wintersession 2016 über die Genehmigung des Protokolls. Seine APK war zuvor zum Schluss gekommen, dass durch eine Ratifizierung keine Gesetzesanpassungen nötig würden und hatte der Vorlage danach mit 15 zu 8 Stimmen bei einer Enthaltung zugestimmt. Bei der Debatte im Rat argumentierte die Ratsminderheit um Nationalrätin Yvette Estermann (svp, LU), dass das Protokoll unnötig sei, da die Schweiz schon alle gesetzlichen Bestimmungen, welche im Protokoll gefordert werden, etabliert habe und eine Ratifizierung durch die Schweiz deshalb nicht dazu beitrage, Menschen vor Zwangsarbeit zu schützen. Zudem werde die Definition des Begriffs Zwangsarbeit zu stark ausgeweitet, was z.B. Auswirkungen auf den Militär- und Zivildienst oder die Beschäftigung von Asylsuchenden haben könne. Die Kommissionsmehrheit und Bundesrat Johann Schneider-Ammann hielten hingegen fest, dass die Definition von Zwangsarbeit schon im Abkommen von 1930 festgelegt worden sei, durch das Protokoll nicht ausgeweitet werde und keine der von der SVP erwähnten Beispiele wie Militär- oder Zivildienst betreffe. Ausserdem sei die Ratifizierung des Protokolls ein Akt internationaler Solidarität mit den weltweit immer noch fast 21 Millionen Opfern von Zwangsarbeit. In der Gesamtabstimmung gesellte sich einzig FDP-Nationalrat Hans-Ulrich Bigler (fdp, ZH) zu der geschlossen Nein stimmenden SVP-Fraktion. So wurde der Bundesbeschluss mit 125 zu 67 Stimmen klar angenommen.
Deutlich weniger Widerstand erfuhr die Vorlage im Ständerat, der dem Bundesbeschluss in der Frühlingssession 2017 mit 33 zu 4 Stimmen bei 2 Enthaltungen zustimmte. Bei den Schlussabstimmungen kam es zu keinen Überraschungen mehr, womit das Protokoll mit 125 zu 70 Stimmen bei 2 Enthaltungen im Nationalrat und 38 zu 7 Stimmen im Ständerat genehmigt wurde. Als die Referendumsfrist ungenutzt verstrichen war, ratifizierte der Bundesrat das Protokoll am 28. September 2017.

Internationale Arbeitsorganisation. Protokoll zum Übereinkommen Nr. 29 über Zwangsarbeit (BRG 16.058)