diff --git a/app/controllers/v1/learning_objects_controller.rb b/app/controllers/v1/learning_objects_controller.rb
index acf088664b49696e47b3e05c1f5ee64d72dec512..47809f9a5a0563862feb38b197cd386aed59d2bf 100644
--- a/app/controllers/v1/learning_objects_controller.rb
+++ b/app/controllers/v1/learning_objects_controller.rb
@@ -13,7 +13,7 @@ class V1::LearningObjectsController < ApplicationController
   before_action :authenticate_user!, only: [:create, :update, :destroy, :tagging, :untagging]
   before_action :set_learning_object, only: [:show, :update, :destroy, :subjecting, :unsubjecting, :add_stages, :remove_stages]
   before_action :set_new_learning_object, only: :index
-  before_action :authorize!, except: [:create, :tagging, :untagging, :download]
+  before_action :authorize!, except: [:create, :tagging, :untagging, :download, :magnetlink]
   before_action :set_paper_trail_whodunnit, except: [:index, :show]
 
   def index
@@ -67,6 +67,12 @@ class V1::LearningObjectsController < ApplicationController
     render status: :ok
   end
 
+  # GET /v1/learning_objects/magnetlink/:magnetlink
+  def magnetlink
+    render json: LearningObject.where(magnetlink: params[:magnetlink])
+  end
+
+
   private
 
   def deleted_resource; LearningObject; end
@@ -94,7 +100,7 @@ class V1::LearningObjectsController < ApplicationController
   # Never trust parameters from the scary internet, only allow the white list through.
   def learning_object_params
     return nil if params[:learning_object].nil?
-    params[:learning_object].permit(:author, :name, :curator, :object_type_id, :description, :license_id, :thumbnail, :software, :language_id, :link)
+    params[:learning_object].permit(:author, :name, :curator, :object_type_id, :description, :license_id, :thumbnail, :software, :language_id, :link,  :magnetlink)
   end
 
   def extra_params
diff --git a/app/serializers/learning_object_serializer.rb b/app/serializers/learning_object_serializer.rb
index 18f5577953dd0a713308f0dd5880aaa595f249cc..dbf2316da5ffef31800398cd2389208f4475a2bb 100644
--- a/app/serializers/learning_object_serializer.rb
+++ b/app/serializers/learning_object_serializer.rb
@@ -53,7 +53,8 @@ class LearningObjectSerializer < ActiveModel::Serializer
     :complained,
     :shares_count,
     :created_at,
-    :updated_at
+    :updated_at,
+    :magnetlink
 
   belongs_to :publisher
   has_many :tags
diff --git a/config/routes.rb b/config/routes.rb
index c314a4533c81a8bfed191612d32c3f98c73169e8..df4dbc69e123122d8a2d473e6402c455aeb2d470 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -154,5 +154,6 @@ Rails.application.routes.draw do
     get '/subjects', to: 'subjects#index'
     get '/educational_stages', to: 'educational_stages#index'
     get '/activities/me', to: 'activities#me'
+    get 'learning_objects/magnetlink/:magnetlink', to: 'learning_objects#magnetlink', as: 'magnetlink_learning_objects'
   end
 end
diff --git a/db/migrate/20170512092359_add_magnetlink_to_learning_object.rb b/db/migrate/20170512092359_add_magnetlink_to_learning_object.rb
new file mode 100644
index 0000000000000000000000000000000000000000..6ee102f5debee49368eaa5e8f2f9e0094393be85
--- /dev/null
+++ b/db/migrate/20170512092359_add_magnetlink_to_learning_object.rb
@@ -0,0 +1,5 @@
+class AddMagnetlinkToLearningObject < ActiveRecord::Migration[5.0]
+  	def change
+    	add_column :learning_objects, :magnetlink, :string
+	end
+end
\ No newline at end of file