workos 0.0.2 → 0.1.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 +4 -4
- data/.rubocop.yml +5 -2
- data/Gemfile.lock +6 -2
- data/README.md +179 -8
- data/bin/docs +2 -2
- data/codecov.yml +1 -0
- data/docs/WorkOS.html +22 -26
- data/docs/WorkOS/APIError.html +160 -0
- data/docs/WorkOS/AuditLog.html +235 -0
- data/docs/WorkOS/AuthenticationError.html +160 -0
- data/docs/WorkOS/Base.html +27 -32
- data/docs/WorkOS/Client.html +493 -0
- data/docs/WorkOS/InvalidRequestError.html +160 -0
- data/docs/WorkOS/Profile.html +80 -17
- data/docs/WorkOS/RequestError.html +6 -6
- data/docs/WorkOS/SSO.html +118 -74
- data/docs/WorkOS/Types.html +9 -10
- data/docs/WorkOS/Types/ProfileStruct.html +6 -6
- data/docs/WorkOS/Types/Provider.html +135 -0
- data/docs/WorkOS/WorkOSError.html +447 -0
- data/docs/class_list.html +3 -3
- data/docs/css/style.css +2 -2
- data/docs/file.README.html +173 -13
- data/docs/file_list.html +2 -2
- data/docs/frames.html +2 -2
- data/docs/index.html +77 -16
- data/docs/js/app.js +14 -3
- data/docs/method_list.html +96 -8
- data/docs/top-level-namespace.html +6 -6
- data/lib/workos.rb +7 -2
- data/lib/workos/audit_log.rb +78 -0
- data/lib/workos/base.rb +5 -6
- data/lib/workos/client.rb +86 -0
- data/lib/workos/errors.rb +48 -0
- data/lib/workos/sso.rb +49 -27
- data/lib/workos/types.rb +2 -1
- data/lib/workos/types/provider_enum.rb +14 -0
- data/lib/workos/version.rb +2 -2
- data/sorbet/rbi/hidden-definitions/errors.txt +22108 -4368
- data/sorbet/rbi/hidden-definitions/hidden.rbi +32490 -6059
- data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +1 -1
- data/sorbet/rbi/todo.rbi +5 -0
- data/spec/lib/workos/audit_log_spec.rb +140 -0
- data/spec/lib/workos/base_spec.rb +30 -0
- data/spec/lib/workos/sso_spec.rb +131 -36
- data/spec/spec_helper.rb +21 -1
- data/spec/support/fixtures/vcr_cassettes/audit_log/create_event.yml +65 -0
- data/spec/support/fixtures/vcr_cassettes/audit_log/create_event_custom_idempotency_key.yml +67 -0
- data/spec/support/fixtures/vcr_cassettes/audit_log/create_event_invalid.yml +68 -0
- data/spec/support/fixtures/vcr_cassettes/audit_log/create_events_duplicate_idempotency_key_and_payload.yml +131 -0
- data/spec/support/fixtures/vcr_cassettes/audit_log/create_events_duplicate_idempotency_key_different_payload.yml +134 -0
- data/spec/support/fixtures/vcr_cassettes/base/execute_request_unauthenticated.yml +66 -0
- data/workos.gemspec +2 -0
- metadata +57 -27
- data/lib/workos/request_error.rb +0 -5
- data/sorbet/rbi/gems/addressable.rbi +0 -198
- data/sorbet/rbi/gems/ast.rbi +0 -47
- data/sorbet/rbi/gems/codecov.rbi +0 -19
- data/sorbet/rbi/gems/crack.rbi +0 -47
- data/sorbet/rbi/gems/docile.rbi +0 -31
- data/sorbet/rbi/gems/hashdiff.rbi +0 -65
- data/sorbet/rbi/gems/jaro_winkler.rbi +0 -14
- data/sorbet/rbi/gems/parallel.rbi +0 -81
- data/sorbet/rbi/gems/parser.rbi +0 -856
- data/sorbet/rbi/gems/public_suffix.rbi +0 -102
- data/sorbet/rbi/gems/rack.rbi +0 -103
- data/sorbet/rbi/gems/rainbow.rbi +0 -117
- data/sorbet/rbi/gems/rake.rbi +0 -632
- data/sorbet/rbi/gems/rspec-core.rbi +0 -1661
- data/sorbet/rbi/gems/rspec-expectations.rbi +0 -388
- data/sorbet/rbi/gems/rspec-mocks.rbi +0 -823
- data/sorbet/rbi/gems/rspec-support.rbi +0 -266
- data/sorbet/rbi/gems/rspec.rbi +0 -14
- data/sorbet/rbi/gems/rubocop.rbi +0 -7083
- data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -304
- data/sorbet/rbi/gems/simplecov-html.rbi +0 -30
- data/sorbet/rbi/gems/simplecov.rbi +0 -225
- data/sorbet/rbi/gems/unicode-display_width.rbi +0 -16
- data/sorbet/rbi/gems/webmock.rbi +0 -526
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 70741b6fe93402cbd090a16e41cf7ea2cb6df08073f1bdb95c0fc8ab06f7e5b5
|
4
|
+
data.tar.gz: 0a2726acf7ca96b490c4c66585dd3cf9ad0f70f89ec00991d69460ec8ec4907d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2d3d401843a2d5a19adf7a1ebb9e6c8cdf49228702cd93bf82fe5c2cb368ad9770bffe0a567d9e2e94772df4dad4ecbb2f594a37de9ddba3f8334648a270ec9e
|
7
|
+
data.tar.gz: a0a7f900ad0d0a60ccfb3aa8f5ac20e2f19dd0577cd27d9ecde782b4740ad50ef4bc2fbc326bca03fa7b7a55950bdfc73ef91db59c05904097ee753b79e09f59
|
data/.rubocop.yml
CHANGED
@@ -3,11 +3,14 @@ Layout/DotPosition:
|
|
3
3
|
Layout/EmptyLineAfterMagicComment:
|
4
4
|
Enabled: false
|
5
5
|
Layout/EmptyLines:
|
6
|
-
Enabled: false
|
6
|
+
Enabled: false
|
7
|
+
Layout/LineLength:
|
8
|
+
IgnoredPatterns:
|
9
|
+
- 'VCR\.use_cassette'
|
10
|
+
- '(\A|\s)/.*?/'
|
7
11
|
Metrics/BlockLength:
|
8
12
|
ExcludedMethods: ['describe', 'context']
|
9
13
|
Style/TrailingCommaInArguments:
|
10
14
|
EnforcedStyleForMultiline: 'consistent_comma'
|
11
15
|
Style/TrailingCommaInHashLiteral:
|
12
16
|
EnforcedStyleForMultiline: 'consistent_comma'
|
13
|
-
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
workos (0.0
|
4
|
+
workos (0.1.0)
|
5
5
|
sorbet-runtime (~> 0.5)
|
6
6
|
|
7
7
|
GEM
|
@@ -56,14 +56,16 @@ GEM
|
|
56
56
|
simplecov-html (0.10.2)
|
57
57
|
sorbet (0.5.5181)
|
58
58
|
sorbet-static (= 0.5.5181)
|
59
|
-
sorbet-runtime (0.5.
|
59
|
+
sorbet-runtime (0.5.5182)
|
60
60
|
sorbet-static (0.5.5181-universal-darwin-14)
|
61
61
|
unicode-display_width (1.6.0)
|
62
62
|
url (0.3.2)
|
63
|
+
vcr (5.0.0)
|
63
64
|
webmock (3.7.6)
|
64
65
|
addressable (>= 2.3.6)
|
65
66
|
crack (>= 0.3.2)
|
66
67
|
hashdiff (>= 0.4.0, < 2.0.0)
|
68
|
+
yard (0.9.22)
|
67
69
|
|
68
70
|
PLATFORMS
|
69
71
|
ruby
|
@@ -75,8 +77,10 @@ DEPENDENCIES
|
|
75
77
|
rspec (~> 3.9.0)
|
76
78
|
rubocop (~> 0.77)
|
77
79
|
sorbet (~> 0.5)
|
80
|
+
vcr (~> 5.0.0)
|
78
81
|
webmock
|
79
82
|
workos!
|
83
|
+
yard
|
80
84
|
|
81
85
|
BUNDLED WITH
|
82
86
|
2.1.2
|
data/README.md
CHANGED
@@ -1,21 +1,192 @@
|
|
1
|
-
# workos-
|
1
|
+
# workos-ruby [](https://codecov.io/gh/workos-inc/workos-ruby)
|
2
|
+
|
2
3
|
WorkOS official Ruby gem for interacting with WorkOS APIs
|
3
4
|
|
5
|
+
## Documentation
|
6
|
+
|
7
|
+
Complete documentation for the latest version of WorkOS Ruby Gem can be found [here](https://workos-inc.github.io/workos-ruby/).
|
8
|
+
|
4
9
|
## Installation
|
5
10
|
|
6
|
-
|
7
|
-
want to use the package, just run:
|
11
|
+
To get started, you can install the WorkOS gem via RubyGems with:
|
8
12
|
|
9
|
-
```
|
13
|
+
```ruby
|
10
14
|
gem install workos
|
11
15
|
```
|
12
16
|
|
13
|
-
If you
|
17
|
+
If you're using Bundler to manage your application's gems, add the WorkOS gem to your Gemfile:
|
18
|
+
|
19
|
+
```ruby
|
20
|
+
source 'https://rubygems.org'
|
21
|
+
|
22
|
+
gem 'workos'
|
23
|
+
```
|
24
|
+
|
25
|
+
## Configuration
|
26
|
+
|
27
|
+
To use the SDK you must first provide your API key from the [WorkOS Developer Dashboard](https://dashboard.workos.com/api-keys).
|
28
|
+
|
29
|
+
You can do this through the `WORKOS_KEY` environment variable or by calling `WorkOS.key = [your API key]`.
|
30
|
+
|
31
|
+
The WorkOS Gem will read the environment variable `WORKOS_KEY`:
|
14
32
|
|
15
33
|
```sh
|
16
|
-
|
34
|
+
$ WORKOS_KEY=[your api key] ruby app.rb
|
35
|
+
```
|
36
|
+
|
37
|
+
Alternatively, you may set the key yourself, such as in an initializer in your application load path:
|
38
|
+
|
39
|
+
```ruby
|
40
|
+
# /config/initializers/workos.rb
|
41
|
+
|
42
|
+
WorkOS.key = '[your api key]'
|
43
|
+
```
|
44
|
+
|
45
|
+
## The Audit Log Module
|
46
|
+
|
47
|
+
The Audit Log Module provides methods for creating Audit Log events on
|
48
|
+
WorkOS.
|
49
|
+
|
50
|
+
See our [Audit Log
|
51
|
+
Quickstart](https://dashboard.workos.com/docs/audit-log/quickstart) for
|
52
|
+
more information.
|
53
|
+
|
54
|
+
```ruby
|
55
|
+
payload = {
|
56
|
+
group: 'Foo Corp',
|
57
|
+
location: '127.0.0.1',
|
58
|
+
action: 'user.created',
|
59
|
+
action_type: 'C',
|
60
|
+
actor_name: 'Foo',
|
61
|
+
actor_id: 'user_12345',
|
62
|
+
target_name: 'Bar',
|
63
|
+
target_id: 'user_67890',
|
64
|
+
occurred_at: '2020-01-10T15:30:00-05:00',
|
65
|
+
metadata: {
|
66
|
+
source: 'Email',
|
67
|
+
}
|
68
|
+
}
|
69
|
+
|
70
|
+
WorkOS::AuditLog.create_event(event: payload)
|
71
|
+
```
|
72
|
+
|
73
|
+
### Idempotency
|
74
|
+
|
75
|
+
To perform an idempotent request, provide an additional idempotency_key
|
76
|
+
parameter to the `create_event` options.
|
77
|
+
|
78
|
+
```ruby
|
79
|
+
WorkOS::AuditLog.create_event(event: payload, idempotency_key: 'key123456')
|
80
|
+
```
|
81
|
+
|
82
|
+
See our [API
|
83
|
+
Reference](https://dashboard.workos.com/docs/api-reference#idempotency)
|
84
|
+
for more information on idempotency keys.
|
85
|
+
|
86
|
+
## The SSO Module
|
87
|
+
|
88
|
+
The SSO Module provides convenience methods for authenticating a Single Sign On (SSO) user via WorkOS. WorkOS SSO follows the Oauth 2.0 specification.
|
89
|
+
|
90
|
+
First, you'll direct your SSO users to an `authorization_url`. They will sign in to their SSO account with their Identity Provider, and be redirected to a
|
91
|
+
callback URL that you set in your WorkOS Dashboard. The user will be redirected with a `code` URL parameter, which you can then exchange for a WorkOS::Profile
|
92
|
+
using the `WorkOS::SSO.get_profile` method.
|
93
|
+
|
94
|
+
See our Ruby SSO example app for a [complete example](https://github.com/workos-inc/ruby-sso-example).
|
95
|
+
|
96
|
+
```ruby
|
97
|
+
WorkOS::SSO.authorization_url(domain:, project_id:, redirect_uri:, state: {})
|
98
|
+
```
|
99
|
+
|
100
|
+
> Generate an authorization URL to intitiate the WorkOS OAuth2 workflow.
|
101
|
+
|
102
|
+
`WorkOS::SSO.authorization_url` accepts four arguments:
|
103
|
+
|
104
|
+
- `domain` (string) — the authenticating user's company domain, without protocol (ex. `example.com`)
|
105
|
+
- `project_id` (string) — your application's WorkOS [Project ID](https://dashboard.workos.com/sso/configuration) (ex. `project_01JG3BCPTRTSTTWQR4VSHXGWCQ`)
|
106
|
+
- `state` (optional, hash) — an optional hash used to manage state across authorization transactions (ex. `{ next_page: '/docs'}`)
|
107
|
+
- `redirect_uri` (string) — a callback URL where your application redirects the user-agent after an authorization code is granted (ex. `workos.dev/callback`). This must match one of your configured callback URLs for the associated project on your WorkOS dashboard.
|
108
|
+
|
109
|
+
This method will return an OAuth2 query string of the form:
|
110
|
+
|
111
|
+
`https://${domain}/sso/authorize?response_type=code&client_id=${projectID}&redirect_uri=${redirectURI}&state=${state}`
|
112
|
+
|
113
|
+
For example, when used in a [Sinatra app](http://sinatrarb.com/):
|
114
|
+
|
115
|
+
```ruby
|
116
|
+
DOMAIN = 'example.com'
|
117
|
+
PROJECT_ID = '{projectId}'
|
118
|
+
REDIRECT_URI = 'http://localhost:4567/callback'
|
119
|
+
|
120
|
+
get '/auth' do
|
121
|
+
authorization_url = WorkOS::SSO.authorization_url(
|
122
|
+
domain: DOMAIN,
|
123
|
+
project_id: PROJECT_ID,
|
124
|
+
redirect_uri: REDIRECT_URI,
|
125
|
+
)
|
126
|
+
|
127
|
+
redirect authorization_url
|
128
|
+
end
|
129
|
+
```
|
130
|
+
|
131
|
+
The user would be redirected to:
|
132
|
+
|
133
|
+
`https://api.workos.com/sso/authorize?response_type=code&client_id={projectID}&redirect_uri=http://localhost:4567/callback`
|
134
|
+
|
135
|
+
WorkOS takes over from here, sending the user to authenticate with their IDP, and on successful login, returns
|
136
|
+
the user to your callback URL with a `code` parameter. You'll use `WorkOS::SSO.profile` to exchange the
|
137
|
+
code for a `WorkOS::Profile`.
|
138
|
+
|
139
|
+
```ruby
|
140
|
+
WorkOS::SSO.profile(code:, project_id:)</h4>
|
141
|
+
```
|
142
|
+
|
143
|
+
> Fetch a WorkOS::Profile for an authorized user.
|
144
|
+
|
145
|
+
`WorkOS::SSO.profile` accepts two arguments:
|
146
|
+
|
147
|
+
- `code` (string) — an opaque string provided by the authorization server; will be exchanged for an Access Token when the user's profile is sent
|
148
|
+
- `project_id` (string) — your application's WorkOS [Project ID](https://dashboard.workos.com/sso/configuration) (ex. `project_01JG3BCPTRTSTTWQR4VSHXGWCQ`)
|
149
|
+
|
150
|
+
This method will return an instance of a `WorkOS::Profile` with the following attributes:
|
151
|
+
|
152
|
+
```ruby
|
153
|
+
<WorkOS::Profile:0x00007fb6e4193d20
|
154
|
+
@id="prof_01DRA1XNSJDZ19A31F183ECQW5",
|
155
|
+
@email="demo@workos-okta.com",
|
156
|
+
@first_name="WorkOS",
|
157
|
+
@connection_type="OktaSAML",
|
158
|
+
@last_name="Demo",
|
159
|
+
@idp_id="00u1klkowm8EGah2H357",
|
160
|
+
>
|
17
161
|
```
|
18
162
|
|
19
|
-
|
163
|
+
Our Sintatra app can be extended to use this method:
|
164
|
+
|
165
|
+
```ruby
|
166
|
+
DOMAIN = 'example.com'
|
167
|
+
PROJECT_ID = '{projectId}'
|
168
|
+
REDIRECT_URI = 'http://localhost:4567/callback'
|
169
|
+
|
170
|
+
get '/auth' do
|
171
|
+
authorization_url = WorkOS::SSO.authorization_url(
|
172
|
+
domain: DOMAIN,
|
173
|
+
project_id: PROJECT_ID,
|
174
|
+
redirect_uri: REDIRECT_URI,
|
175
|
+
)
|
176
|
+
|
177
|
+
redirect authorization_url
|
178
|
+
end
|
179
|
+
|
180
|
+
get '/callback' do
|
181
|
+
profile = WorkOS::SSO.profile(
|
182
|
+
code: params['code'],
|
183
|
+
project_id: PROJECT_ID,
|
184
|
+
)
|
185
|
+
|
186
|
+
session[:user] = profile.to_json
|
187
|
+
|
188
|
+
redirect '/'
|
189
|
+
end
|
190
|
+
```
|
20
191
|
|
21
|
-
|
192
|
+
Given the `WorkOS::Profile`, you can now sign the user in according to your own authentication setup.
|
data/bin/docs
CHANGED
data/codecov.yml
CHANGED
data/docs/WorkOS.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
Module: WorkOS
|
8
8
|
|
9
|
-
— Documentation by YARD 0.9.
|
9
|
+
— Documentation by YARD 0.9.22
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "WorkOS";
|
19
19
|
relpath = '';
|
20
20
|
</script>
|
@@ -79,7 +79,7 @@
|
|
79
79
|
<dl>
|
80
80
|
<dt>Defined in:</dt>
|
81
81
|
<dd>lib/workos.rb<span class="defines">,<br />
|
82
|
-
lib/workos/sso.rb,<br /> lib/workos/base.rb,<br /> lib/workos/types.rb,<br /> lib/workos/profile.rb,<br /> lib/workos/version.rb,<br /> lib/workos/
|
82
|
+
lib/workos/sso.rb,<br /> lib/workos/base.rb,<br /> lib/workos/types.rb,<br /> lib/workos/client.rb,<br /> lib/workos/errors.rb,<br /> lib/workos/profile.rb,<br /> lib/workos/version.rb,<br /> lib/workos/audit_log.rb,<br /> lib/workos/types/provider_enum.rb,<br /> lib/workos/types/profile_struct.rb</span>
|
83
83
|
</dd>
|
84
84
|
</dl>
|
85
85
|
|
@@ -88,11 +88,7 @@
|
|
88
88
|
<h2>Overview</h2><div class="docstring">
|
89
89
|
<div class="discussion">
|
90
90
|
|
91
|
-
<p>
|
92
|
-
gem will read your API key automatically from the ENV var `WORKOS_KEY`.
|
93
|
-
Alternatively, you can set the key yourself with `WorkOS.key = [your api
|
94
|
-
key]` somewhere in the load path of your application, such as an
|
95
|
-
initializer.</p>
|
91
|
+
<p>typed: strict</p>
|
96
92
|
|
97
93
|
|
98
94
|
</div>
|
@@ -104,11 +100,11 @@ initializer.</p>
|
|
104
100
|
<p class="children">
|
105
101
|
|
106
102
|
|
107
|
-
<strong class="modules">Modules:</strong> <span class='object_link'><a href="WorkOS/SSO.html" title="WorkOS::SSO (module)">SSO</a></span>, <span class='object_link'><a href="WorkOS/Types.html" title="WorkOS::Types (module)">Types</a></span>
|
103
|
+
<strong class="modules">Modules:</strong> <span class='object_link'><a href="WorkOS/AuditLog.html" title="WorkOS::AuditLog (module)">AuditLog</a></span>, <span class='object_link'><a href="WorkOS/Base.html" title="WorkOS::Base (module)">Base</a></span>, <span class='object_link'><a href="WorkOS/Client.html" title="WorkOS::Client (module)">Client</a></span>, <span class='object_link'><a href="WorkOS/SSO.html" title="WorkOS::SSO (module)">SSO</a></span>, <span class='object_link'><a href="WorkOS/Types.html" title="WorkOS::Types (module)">Types</a></span>
|
108
104
|
|
109
105
|
|
110
106
|
|
111
|
-
<strong class="classes">Classes:</strong> <span class='object_link'><a href="WorkOS/
|
107
|
+
<strong class="classes">Classes:</strong> <span class='object_link'><a href="WorkOS/APIError.html" title="WorkOS::APIError (class)">APIError</a></span>, <span class='object_link'><a href="WorkOS/AuthenticationError.html" title="WorkOS::AuthenticationError (class)">AuthenticationError</a></span>, <span class='object_link'><a href="WorkOS/InvalidRequestError.html" title="WorkOS::InvalidRequestError (class)">InvalidRequestError</a></span>, <span class='object_link'><a href="WorkOS/Profile.html" title="WorkOS::Profile (class)">Profile</a></span>, <span class='object_link'><a href="WorkOS/WorkOSError.html" title="WorkOS::WorkOSError (class)">WorkOSError</a></span>
|
112
108
|
|
113
109
|
|
114
110
|
</p>
|
@@ -129,7 +125,7 @@ initializer.</p>
|
|
129
125
|
<dt id="VERSION-constant" class="">VERSION =
|
130
126
|
|
131
127
|
</dt>
|
132
|
-
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>0.0
|
128
|
+
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>0.1.0</span><span class='tstring_end'>'</span></span></pre></dd>
|
133
129
|
|
134
130
|
</dl>
|
135
131
|
|
@@ -238,15 +234,15 @@ initializer.</p>
|
|
238
234
|
<pre class="lines">
|
239
235
|
|
240
236
|
|
237
|
+
20
|
241
238
|
21
|
242
|
-
22
|
243
|
-
23</pre>
|
239
|
+
22</pre>
|
244
240
|
</td>
|
245
241
|
<td>
|
246
|
-
<pre class="code"><span class="info file"># File 'lib/workos.rb', line
|
242
|
+
<pre class="code"><span class="info file"># File 'lib/workos.rb', line 20</span>
|
247
243
|
|
248
244
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span>
|
249
|
-
<span class='const'><span class='object_link'><a href="WorkOS/Base.html" title="WorkOS::Base (
|
245
|
+
<span class='const'><span class='object_link'><a href="WorkOS/Base.html" title="WorkOS::Base (module)">Base</a></span></span><span class='period'>.</span><span class='id identifier rubyid_key'><span class='object_link'><a href="WorkOS/Base.html#key-class_method" title="WorkOS::Base.key (method)">key</a></span></span>
|
250
246
|
<span class='kw'>end</span></pre>
|
251
247
|
</td>
|
252
248
|
</tr>
|
@@ -268,12 +264,12 @@ initializer.</p>
|
|
268
264
|
<pre class="lines">
|
269
265
|
|
270
266
|
|
267
|
+
24
|
271
268
|
25
|
272
|
-
26
|
273
|
-
27</pre>
|
269
|
+
26</pre>
|
274
270
|
</td>
|
275
271
|
<td>
|
276
|
-
<pre class="code"><span class="info file"># File 'lib/workos.rb', line
|
272
|
+
<pre class="code"><span class="info file"># File 'lib/workos.rb', line 24</span>
|
277
273
|
|
278
274
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_key!'>key!</span>
|
279
275
|
<span class='id identifier rubyid_key'>key</span> <span class='op'>||</span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>WorkOS.key not set</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
|
@@ -298,15 +294,15 @@ initializer.</p>
|
|
298
294
|
<pre class="lines">
|
299
295
|
|
300
296
|
|
297
|
+
16
|
301
298
|
17
|
302
|
-
18
|
303
|
-
19</pre>
|
299
|
+
18</pre>
|
304
300
|
</td>
|
305
301
|
<td>
|
306
|
-
<pre class="code"><span class="info file"># File 'lib/workos.rb', line
|
302
|
+
<pre class="code"><span class="info file"># File 'lib/workos.rb', line 16</span>
|
307
303
|
|
308
304
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_key='>key=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
|
309
|
-
<span class='const'><span class='object_link'><a href="WorkOS/Base.html" title="WorkOS::Base (
|
305
|
+
<span class='const'><span class='object_link'><a href="WorkOS/Base.html" title="WorkOS::Base (module)">Base</a></span></span><span class='period'>.</span><span class='id identifier rubyid_key'><span class='object_link'><a href="WorkOS/Base.html#key-class_method" title="WorkOS::Base.key (method)">key</a></span></span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span>
|
310
306
|
<span class='kw'>end</span></pre>
|
311
307
|
</td>
|
312
308
|
</tr>
|
@@ -318,9 +314,9 @@ initializer.</p>
|
|
318
314
|
</div>
|
319
315
|
|
320
316
|
<div id="footer">
|
321
|
-
Generated on
|
317
|
+
Generated on Thu Jan 30 09:12:47 2020 by
|
322
318
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
323
|
-
0.9.
|
319
|
+
0.9.22 (ruby-2.6.5).
|
324
320
|
</div>
|
325
321
|
|
326
322
|
</div>
|
@@ -0,0 +1,160 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
+
<title>
|
7
|
+
Exception: WorkOS::APIError
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.22
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
16
|
+
|
17
|
+
<script type="text/javascript">
|
18
|
+
pathId = "WorkOS::APIError";
|
19
|
+
relpath = '../';
|
20
|
+
</script>
|
21
|
+
|
22
|
+
|
23
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
24
|
+
|
25
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
26
|
+
|
27
|
+
|
28
|
+
</head>
|
29
|
+
<body>
|
30
|
+
<div class="nav_wrap">
|
31
|
+
<iframe id="nav" src="../class_list.html?1"></iframe>
|
32
|
+
<div id="resizer"></div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="main" tabindex="-1">
|
36
|
+
<div id="header">
|
37
|
+
<div id="menu">
|
38
|
+
|
39
|
+
<a href="../_index.html">Index (A)</a> »
|
40
|
+
<span class='title'><span class='object_link'><a href="../WorkOS.html" title="WorkOS (module)">WorkOS</a></span></span>
|
41
|
+
»
|
42
|
+
<span class="title">APIError</span>
|
43
|
+
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="search">
|
47
|
+
|
48
|
+
<a class="full_list_link" id="class_list_link"
|
49
|
+
href="../class_list.html">
|
50
|
+
|
51
|
+
<svg width="24" height="24">
|
52
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
53
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
54
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
55
|
+
</svg>
|
56
|
+
</a>
|
57
|
+
|
58
|
+
</div>
|
59
|
+
<div class="clear"></div>
|
60
|
+
</div>
|
61
|
+
|
62
|
+
<div id="content"><h1>Exception: WorkOS::APIError
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
</h1>
|
67
|
+
<div class="box_info">
|
68
|
+
|
69
|
+
<dl>
|
70
|
+
<dt>Inherits:</dt>
|
71
|
+
<dd>
|
72
|
+
<span class="inheritName"><span class='object_link'><a href="WorkOSError.html" title="WorkOS::WorkOSError (class)">WorkOSError</a></span></span>
|
73
|
+
|
74
|
+
<ul class="fullTree">
|
75
|
+
<li>Object</li>
|
76
|
+
|
77
|
+
<li class="next">StandardError</li>
|
78
|
+
|
79
|
+
<li class="next"><span class='object_link'><a href="WorkOSError.html" title="WorkOS::WorkOSError (class)">WorkOSError</a></span></li>
|
80
|
+
|
81
|
+
<li class="next">WorkOS::APIError</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
</dl>
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
<dl>
|
100
|
+
<dt>Defined in:</dt>
|
101
|
+
<dd>lib/workos/errors.rb</dd>
|
102
|
+
</dl>
|
103
|
+
|
104
|
+
</div>
|
105
|
+
|
106
|
+
<h2>Overview</h2><div class="docstring">
|
107
|
+
<div class="discussion">
|
108
|
+
|
109
|
+
<p>APIError is a generic error that may be raised in cases where none of the other named errors cover the problem. It could also be raised in the case that a new error has been introduced in the API, but this version of the Ruby SDK doesn't know how to handle it.</p>
|
110
|
+
|
111
|
+
|
112
|
+
</div>
|
113
|
+
</div>
|
114
|
+
<div class="tags">
|
115
|
+
|
116
|
+
|
117
|
+
</div>
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
<h2>Instance Attribute Summary</h2>
|
124
|
+
|
125
|
+
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="WorkOSError.html" title="WorkOS::WorkOSError (class)">WorkOSError</a></span></h3>
|
126
|
+
<p class="inherited"><span class='object_link'><a href="WorkOSError.html#http_status-instance_method" title="WorkOS::WorkOSError#http_status (method)">#http_status</a></span>, <span class='object_link'><a href="WorkOSError.html#request_id-instance_method" title="WorkOS::WorkOSError#request_id (method)">#request_id</a></span></p>
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
<h2>Method Summary</h2>
|
137
|
+
|
138
|
+
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="WorkOSError.html" title="WorkOS::WorkOSError (class)">WorkOSError</a></span></h3>
|
139
|
+
<p class="inherited"><span class='object_link'><a href="WorkOSError.html#initialize-instance_method" title="WorkOS::WorkOSError#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="WorkOSError.html#to_s-instance_method" title="WorkOS::WorkOSError#to_s (method)">#to_s</a></span></p>
|
140
|
+
|
141
|
+
|
142
|
+
<div id="constructor_details" class="method_details_list">
|
143
|
+
<h2>Constructor Details</h2>
|
144
|
+
|
145
|
+
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="WorkOSError.html#initialize-instance_method" title="WorkOS::WorkOSError#initialize (method)">WorkOS::WorkOSError</a></span></p>
|
146
|
+
|
147
|
+
</div>
|
148
|
+
|
149
|
+
|
150
|
+
</div>
|
151
|
+
|
152
|
+
<div id="footer">
|
153
|
+
Generated on Thu Jan 30 09:12:47 2020 by
|
154
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
155
|
+
0.9.22 (ruby-2.6.5).
|
156
|
+
</div>
|
157
|
+
|
158
|
+
</div>
|
159
|
+
</body>
|
160
|
+
</html>
|