bunny_app 1.24.0 → 1.26.0

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: ff90fdfad4c4f392712b064e24008969d06ccd094ab0ec08c7af632fae260c6d
4
- data.tar.gz: ad0a4ca25bf828a86aaedfa91eb2f56a4fbd7bedebaf71e250e623e37f98509a
3
+ metadata.gz: c4a0f74a46c3e5505608ea9389c134bd7e3a8a0fa6393fe897c3eda833bef8d3
4
+ data.tar.gz: a341f3d6e05c48d8bb56b153a3a15249203278dda2f9e21e32070129837d9b79
5
5
  SHA512:
6
- metadata.gz: 3ac116e866190940b1e6287ee30107420a04191c574f54e118995fa628f5e4eda64a1f76658053051ed96e7dda790657f3ba2d05c57240e11e7eb717532b3044
7
- data.tar.gz: da749c01c6f07a77f31a3d486353681f8226032dd36988f46f026c5e5995f46aa9f103a037170891d3d103f9dace6cd8990902e7d57cd09088192fdf083f7f82
6
+ metadata.gz: d2a1c374be36a3bc46afd029156b9cfcc037a3ce0bba6118649d5355427ea26704c90e1cc2df66221ec6dabde86bb059b2c0346897dead83da3954fe624c9c95
7
+ data.tar.gz: 59552af3c0b3b70e6be6f666f8ebf6ba2e80c854230ee5fcdfdfce3ff6cbaf3772443d5ac9b27947585d434e1d4b4fb9a1d39f044f58eb4967db492d9fc267e4
data/README.md CHANGED
@@ -75,6 +75,14 @@ response = BunnyApp::Subscription.create(
75
75
  )
76
76
  ```
77
77
 
78
+ ### Get a portal session token for use with Bunny.js
79
+
80
+ ```ruby
81
+ response = BunnyApp::PortalSession.create(
82
+ tenant_code: "123456"
83
+ )
84
+ ```
85
+
78
86
  ### Track feature usage
79
87
 
80
88
  If you have usage based billing or just want to track feature usage then use this method.
@@ -58,7 +58,11 @@ module BunnyApp
58
58
 
59
59
  case res.code.to_s
60
60
  when /2[0-9][0-9]/ # HTTP 2xx
61
- JSON.parse(res.body)
61
+ response_body = JSON.parse(res.body)
62
+ raise ResponseError, response_body['errors'] if response_body['errors']
63
+
64
+ response_body
65
+
62
66
  when /401/ # Access Token Expired
63
67
  raise AuthorizationError, 'Invalid access token' unless BunnyApp.retryable
64
68
  raise AuthorizationError, 'Invalid api credentials' if retries >= 1
@@ -0,0 +1,20 @@
1
+ module BunnyApp
2
+ class PortalSession
3
+ @portal_session_create_mutation = <<-'GRAPHQL'
4
+ mutation portalSessionCreate ($tenantCode: String!) {
5
+ portalSessionCreate (tenantCode: $tenantCode) {
6
+ token
7
+ errors
8
+ }
9
+ }
10
+ GRAPHQL
11
+
12
+ def self.create(tenant_code:)
13
+ variables = {
14
+ tenantCode: tenant_code
15
+ }
16
+
17
+ Client.new.query(@portal_session_create_mutation, variables)
18
+ end
19
+ end
20
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BunnyApp
4
- VERSION = '1.24.0'
4
+ VERSION = '1.26.0'
5
5
  end
data/lib/bunny_app.rb CHANGED
@@ -6,6 +6,7 @@ require 'bunny_app/platform'
6
6
  require 'bunny_app/tenant'
7
7
  require 'bunny_app/subscription'
8
8
  require 'bunny_app/webhook'
9
+ require 'bunny_app/portal_session'
9
10
 
10
11
  module BunnyApp
11
12
  class << self
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bunny_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.24.0
4
+ version: 1.26.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bunny
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-01-15 00:00:00.000000000 Z
12
+ date: 2023-01-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -140,6 +140,7 @@ files:
140
140
  - lib/bunny_app/client.rb
141
141
  - lib/bunny_app/errors.rb
142
142
  - lib/bunny_app/platform.rb
143
+ - lib/bunny_app/portal_session.rb
143
144
  - lib/bunny_app/subscription.rb
144
145
  - lib/bunny_app/tenant.rb
145
146
  - lib/bunny_app/usage.rb