The Shutterstock Ruby API Wrapper
A Ruby API wrapper for Shutterstock API's
gem "shutterstock-ruby"
Missing
Current version only wraps the Image and Video search, purchase and download API's. Feel free to send a pull request with more API's wrapped!
Usage
You need a valid client_id/secret combo to use the Gem, you can get it by signing up here
Raises Exception on missing credentials
Configuration
You can use an initializer for example if you're on Rails.
# initializers/shutterstock.rb
ShutterstockRuby.configure do |config|
config.api_client = ENV['SHUTTERSTOCK_CLIENT']
config.api_secret = ENV['SHUTTERSTOCK_SECRET']
end
If you require multiple clients, you can create an instance:
@client ||= ShutterstockRuby::Client.new(access_token: access_token)
You must supply either an api_client
and an api_secret
, or an access_token
.
Search for images
result = ShutterstockRuby::Images.search('Cat') # Returns a hash of the parsed JSON result.
Source source
Search for videos
Using the singleton client:
result = ShutterstockRuby::Videos.search('Cat') # Returns a hash of the parsed JSON result.
Using an instance of the client:
result = @client.videos.search('Cat') # Returns a hash of the parsed JSON result.
Source source
Details for a video
result = @client.videos.details(video_id) # Returns a hash of the parsed JSON result.
Source source
Purchase a video
result = @client.videos.purchase(video_id, subscription_id, size) # Returns a hash of the parsed JSON result.
Source source
Retrieve an existing license for a video
result = @client.videos.licenses(video_id, license_name) # Returns a hash of the parsed JSON result.
Source source
Download a video that has already been purchased
result = @client.videos.download(license_id) # Returns a hash of the parsed JSON result.
Source source
Disclaimer
This is completely unofficial and is not related to Shutterstock in any way.
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request