Sha256: 945911ff19cdacdc8c3cd27086f4a1de74c9dab94f34be8ebb897223b2a53b1a
Contents?: true
Size: 1.95 KB
Versions: 1
Compression:
Stored size: 1.95 KB
Contents
module Octobat class Invoice < APIResource extend Octobat::APIOperations::List include Octobat::APIOperations::Create include Octobat::APIOperations::Update def self.pdf_export(params = {}, opts={}) api_key, headers = Util.parse_opts(opts) api_key ||= @api_key opts[:api_key] = api_key instance = self.new(nil, opts) response, api_key = Octobat.request(:post, url + '/pdf_export', api_key, params) return true end def self.csv_export(params = {}, opts={}) api_key, headers = Util.parse_opts(opts) api_key ||= @api_key opts[:api_key] = api_key instance = self.new(nil, opts) response, api_key = Octobat.request(:post, url + '/csv_export', api_key, params) return true end def send_by_email(email_data = {}) response, api_key = Octobat.request(:post, send_url, @api_key, email_data) refresh_from(response, api_key) end def confirm response, api_key = Octobat.request(:patch, confirm_url, @api_key) refresh_from(response, api_key) end def cancel response, api_key = Octobat.request(:patch, cancel_url, @api_key) refresh_from(response, api_key) end def cancel_and_replace response, api_key = Octobat.request(:patch, cancel_and_replace_url, @api_key) refresh_from(response, api_key) end def delete response, api_key = Octobat.request(:delete, url, @api_key) refresh_from(response, api_key) end def items(params = {}) Item.list(params.merge({ :invoice => id }), @api_key) end def transactions(params = {}) Transaction.list(params.merge(invoice: id), @api_key) end private def send_url url + '/send' end def confirm_url url + '/confirm' end def cancel_url url + '/cancel' end def cancel_and_replace_url url + '/cancel_and_replace' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
octobat-2.0.0 | lib/octobat/invoice.rb |