Skip to content

mxrguspxrt/ammado

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AMMADO API FOR RUBY (AND RAILS)

Contribution

Please help to make this GEM better

  • by creating a Issue and then Pull Request with a fix to this Issue.
  • support its improvement with a donation.

Ammado API reference

https://api.ammado.com/

Configuration

First define API link:

require 'ammado'

Ammado::Api.default_api_link = Ammado::Api.new(
  key: "AMMADO_API_KEY_HERE",
  secret: "AMMADO_API_KEY_HERE",
  host: 'https://api.ammado.com/',
  default_images_folder: '/folder/for/files/'
)

Note:

This configuration might have issues in threaded environments. Simple fix would be defining only parameters, and when needed, creating a instance in ApiResource based on this configuration.

If issue exists see Contribution.

Implemented Endpoints and their usage

Note: you acn use parameter names both "model.beneficiary_id" and "model.beneficiaryId", but for better readibility and following Ruby standards, I recommend under_scored, not camelCase.

All the existing params can be set with "model.some_param=value" and "model.someParam=value".

To read all the params use "model.params" containing all the resource params.

ammado_fundraiser = Ammado::Fundraiser.create(
  beneficiary_id: '123',
  fundraiser_title: 'Title',
  fundraiser_description: 'Description',
  target_amount: '10.00',
  target_currency_code: 'EUR',
  thank_you_message: 'Thank you for the donation.'
)

if ammado_fundraiser.created?
  puts "Created a fundraiser, with permalink: #{ ammado_fundraiser.permalink }"
else
  puts "Failed to create fundraiser and got errors"
  puts ammando_fundraiser.errors.map(&:message).join(', ')
end

puts "All params for fundraiser are: #{ ammado_fundraiser.params.inspect }"
ammado_beneficiary = Ammado::Beneficiary.find(123)

if ammado_beneficiary
  puts "Found a beneficiary, with type: "
  puts ammado_beneficiary.beneficiary_type
  puts "With raised amount: "
  puts ammado_beneficiary.raised_amount
else
  puts "Beneficiary not found"
end

puts "All params for ammado_beneficiary are: #{ ammado_beneficiary.params.inspect }"
fundraiser_id = ammado_fundraiser.permalink.split('/').last

ammado_fundraiser_moderator = Ammado::FundraiserModerator.create(
  fundraiser_id: fundraiser_id,
  first_name: name,
  last_name: lastname,
  email: email
)

if ammado_fundraiser_moderator.created?
  puts "Created a moderator, with params: #{ ammado_fundraiser_moderator.params.inspect }"
else
  puts "Failed to create fundraiser and got errors"
  puts ammando_fundraiser.errors.map(&:message).join(', ')
end
fundraiser_id = ammado_fundraiser.permalink.split('/').last

ammado_fundraiser_moderator = Ammado::FundraiserModerator.create(
  fundraiser_id: fundraiser_id,
  first_name: name,
  last_name: lastname,
  email: email
)

if ammado_fundraiser_moderator.created?
  puts "Created a moderator, with params: #{ ammado_fundraiser_moderator.params.inspect }"
else
  puts "Failed to create fundraiser and got errors"
  puts ammando_fundraiser.errors.map(&:message).join(', ')
end
fundraiser_id = ammado_fundraiser.permalink.split('/').last

ammado_fundraiser_avatar = Ammado::FundraiserAvatar.create(
  fundraiser_id: fundraiser_id,
  file_name: 'fundraiser_avatar.png'
)

if ammado_fundraiser_avatar.created?
  puts "Created a moderator, with params: #{ ammado_fundraiser_avatar.params.inspect }"
else
  puts "Failed to create ammado_fundraiser_avatar and got errors"
  puts ammado_fundraiser_avatar.errors.map(&:message).join(', ')
end
fundraiser_id = ammado_fundraiser.permalink.split('/').last

ammado_fundraiser_cover = Ammado::FundraiserCover.create(
  fundraiser_id: fundraiser_id,
  file_name: 'fundraiser_cover.png'
)

if ammado_fundraiser_cover.created?
  puts "Created a moderator, with params: #{ ammado_fundraiser_cover.params.inspect }"
else
  puts "Failed to create ammado_fundraiser_cover and got errors: "
  puts ammado_fundraiser_cover.errors.map(&:message).join(', ')
end
  categories = Ammado::Categories.all
  found = Ammado::Search.where(search_params)

Author

Margus Pärt (http://wave.ee)

About

Using Ammado API with Ruby (and Rails). https://api.ammado.com/

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages