zoho_books 0.0.0 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2ebe7ae43062dc3eb77cdc9ac6e23c8d1487cb73fd6bc5badd2dfa5a6e88a276
4
- data.tar.gz: 975970816e0b23e8e26c340d866aba4737bbb3bb74b8c303bb46c1850fcea688
3
+ metadata.gz: dd3b88e597aa413b526eaa39c177a76363b6b8ab1db56dcc75a6d01584990c73
4
+ data.tar.gz: 2197745702a2b55be3c2df53c22afd2925bb0e6109355986ea72c0805284cd98
5
5
  SHA512:
6
- metadata.gz: 1f1d07b784ad713c5ca28891aad846f7452b57a18203a46741b31ee0dfc0ea9a4f5a26654558985c080023cb65819df87a147664fabd89658e25cd6c9701208d
7
- data.tar.gz: 97dd1780599c5a878685268e2f54ca960b932f6551b98a1558a327f77f0ce223c0032fd2191599303a081ba06554a6bb3f1e9503dad05d48fb696b14757b9180
6
+ metadata.gz: 6c33ff3e16a6fd0c3b682f7893b47d168bb8c9b4ba498db79e281ceddf392f5eafd7c9914ee5c6241b53a6edf08c05d7fb188bc76267b39ac988fd4247752322
7
+ data.tar.gz: f94429205a0be708f1ecc204cc6f1f0b33eb28b1fb4899b1fe3ba7f3957824203f44ce77d9d37aa668eb7b840b7d74a729f1da36d6ccad2e4db0bf8687a553cb
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+ require 'httparty'
3
+
4
+ class ZohoBooks::Auth
5
+ def self.refresh_access_token
6
+ response = HTTParty.post("#{ENV['ZOHO_BASE_URL']}/oauth/v2/token?refresh_token="\
7
+ "#{ENV['ZOHO_REFRESH_TOKEN']}&client_id=#{ENV['ZOHO_CLIENT_ID']}&client_secret="\
8
+ "#{ENV['ZOHO_CLIENT_SECRET']}&redirect_urrefresh_access_tokeni=#{ENV['ZOHO_REDIRECT_URI']}"\
9
+ '&grant_type=refresh_token')
10
+
11
+ return ZohoBooks::Error.new(response.code, response["error"]) if response.code != 200
12
+
13
+ response.parsed_response['access_token']
14
+ end
15
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ class ZohoBooks::Error
4
+ attr_reader :code, :message
5
+
6
+ def initialize(code, message)
7
+ @code = code
8
+ @message = message
9
+ end
10
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ class ZohoBooks::Invoice
4
+ class << self
5
+ @id = id
6
+ end
7
+
8
+ def self.list(access_token:, **args)
9
+ response = HTTParty.get("#{ENV['ZOHO_BASE_URL']}/api/v3/invoices?#{query(args)}",headers: {
10
+ 'Authorization' => "Zoho-oauthtoken #{access_token}"
11
+ })
12
+
13
+ response.parsed_response['invoices'].presence || raise(Zoho::GetInvoicesError)
14
+ end
15
+
16
+ private
17
+
18
+ def query(query_params)
19
+ if query_params.present?
20
+ query_from_given_block = query_params.map { |k, v| "#{k}=#{v}" }.join('&')
21
+ "organization_id=#{ENV['ZOHO_ORGANISATION_ID']}&#{query_from_given_block}"
22
+ else
23
+ "organization_id=#{ENV['ZOHO_ORGANISATION_ID']}"
24
+ end
25
+ end
26
+ end
data/lib/zoho_books.rb CHANGED
@@ -1,3 +1,6 @@
1
1
  class ZohoBooks
2
2
 
3
3
  end
4
+
5
+ require_relative 'zoho_books/auth'
6
+ require_relative 'zoho_books/error'
metadata CHANGED
@@ -1,15 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zoho_books
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - PapaLoup
8
+ - Raphtml
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2023-09-06 00:00:00.000000000 Z
12
- dependencies: []
12
+ date: 2023-09-12 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: httparty
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: 0.18.0
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: 0.18.0
13
28
  description: A simple hello world gem
14
29
  email: nick@quaran.to
15
30
  executables: []
@@ -17,6 +32,9 @@ extensions: []
17
32
  extra_rdoc_files: []
18
33
  files:
19
34
  - lib/zoho_books.rb
35
+ - lib/zoho_books/auth.rb
36
+ - lib/zoho_books/error.rb
37
+ - lib/zoho_books/invoice.rb
20
38
  homepage: https://rubygems.org/gems/zoho_books
21
39
  licenses:
22
40
  - MIT
@@ -29,7 +47,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
29
47
  requirements:
30
48
  - - ">="
31
49
  - !ruby/object:Gem::Version
32
- version: '0'
50
+ version: 3.1.0
33
51
  required_rubygems_version: !ruby/object:Gem::Requirement
34
52
  requirements:
35
53
  - - ">="