diff --git a/app/services/landable/screenshot_service.rb b/app/services/landable/screenshot_service.rb
index <HASH>..<HASH> 100644
--- a/app/services/landable/screenshot_service.rb
+++ b/app/services/landable/screenshot_service.rb
@@ -1,8 +1,8 @@
 require 'tempfile'
-require 'restclient'
 
 module Landable
   class ScreenshotService
+    class Error < StandardError; end
 
     class << self
       def generate url, options = {}
@@ -12,14 +12,17 @@ module Landable
           screenshots_uri = URI(Landable.configuration.publicist_url)
           screenshots_uri.path = '/api/services/screenshots'
 
-          response = RestClient.post screenshots_uri.to_s, screenshot: options.merge(url: url)
+          response = Net::HTTP.post_form screenshots_uri, 'screenshot[url]' => url
 
-          if response.code == 200
-            file = Tempfile.new ['screenshot', (response.content_type.split(';').first.split('/').last rescue 'png')]
-            file.write response.to_str
+          if response.code == '200'
+            file = Tempfile.new ['screenshot-', '.png']
+            file.binmode
+            file.write response.body
             file.rewind
 
             file
+          else
+            raise Error, "Received #{response.code} back from #{screenshots_uri.to_s}"
           end
         end
       end
stick with Net::HTTP for requesting screenshots