workos 0.4.2 → 0.8.1

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.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +8 -11
  3. data/README.md +7 -0
  4. data/lib/workos.rb +3 -0
  5. data/lib/workos/audit_trail.rb +2 -2
  6. data/lib/workos/client.rb +13 -7
  7. data/lib/workos/organization.rb +49 -0
  8. data/lib/workos/passwordless.rb +81 -0
  9. data/lib/workos/portal.rb +149 -0
  10. data/lib/workos/profile.rb +6 -1
  11. data/lib/workos/types.rb +4 -0
  12. data/lib/workos/types/intent_enum.rb +14 -0
  13. data/lib/workos/types/list_struct.rb +13 -0
  14. data/lib/workos/types/organization_struct.rb +14 -0
  15. data/lib/workos/types/passwordless_session_struct.rb +15 -0
  16. data/lib/workos/types/profile_struct.rb +1 -0
  17. data/lib/workos/version.rb +1 -1
  18. data/spec/lib/workos/passwordless_spec.rb +82 -0
  19. data/spec/lib/workos/portal_spec.rb +176 -0
  20. data/spec/lib/workos/sso_spec.rb +18 -0
  21. data/spec/support/fixtures/vcr_cassettes/organization/create.yml +72 -0
  22. data/spec/support/fixtures/vcr_cassettes/organization/create_invalid.yml +72 -0
  23. data/spec/support/fixtures/vcr_cassettes/organization/list.yml +72 -0
  24. data/spec/support/fixtures/vcr_cassettes/passwordless/create_session.yml +72 -0
  25. data/spec/support/fixtures/vcr_cassettes/passwordless/create_session_invalid.yml +73 -0
  26. data/spec/support/fixtures/vcr_cassettes/passwordless/send_session.yml +72 -0
  27. data/spec/support/fixtures/vcr_cassettes/passwordless/send_session_invalid.yml +73 -0
  28. data/spec/support/fixtures/vcr_cassettes/portal/generate_link.yml +72 -0
  29. data/spec/support/fixtures/vcr_cassettes/portal/generate_link_invalid.yml +72 -0
  30. data/spec/support/profile.txt +1 -1
  31. data/workos.gemspec +1 -1
  32. metadata +33 -4
@@ -0,0 +1,72 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.workos.com/portal/generate_link
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"intent":"sso","organization":"bogus-id","return_url":null}'
9
+ headers:
10
+ Content-Type:
11
+ - application/json
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ User-Agent:
17
+ - WorkOS; ruby/2.7.1; x86_64-darwin19; v0.5.0
18
+ Authorization:
19
+ - Bearer <API_KEY>
20
+ response:
21
+ status:
22
+ code: 400
23
+ message: Bad Request
24
+ headers:
25
+ Server:
26
+ - Cowboy
27
+ Connection:
28
+ - keep-alive
29
+ Vary:
30
+ - Origin, Accept-Encoding
31
+ Access-Control-Allow-Credentials:
32
+ - 'true'
33
+ Content-Security-Policy:
34
+ - 'default-src ''self'';base-uri ''self'';block-all-mixed-content;font-src ''self''
35
+ https: data:;frame-ancestors ''self'';img-src ''self'' data:;object-src ''none'';script-src
36
+ ''self'';script-src-attr ''none'';style-src ''self'' https: ''unsafe-inline'';upgrade-insecure-requests'
37
+ X-Dns-Prefetch-Control:
38
+ - 'off'
39
+ Expect-Ct:
40
+ - max-age=0
41
+ X-Frame-Options:
42
+ - SAMEORIGIN
43
+ Strict-Transport-Security:
44
+ - max-age=15552000; includeSubDomains
45
+ X-Download-Options:
46
+ - noopen
47
+ X-Content-Type-Options:
48
+ - nosniff
49
+ X-Permitted-Cross-Domain-Policies:
50
+ - none
51
+ Referrer-Policy:
52
+ - no-referrer
53
+ X-Xss-Protection:
54
+ - '0'
55
+ X-Request-Id:
56
+ - f1c46aa5-0d87-4d9a-b2ce-dc0505eb8f75
57
+ Content-Type:
58
+ - application/json; charset=utf-8
59
+ Content-Length:
60
+ - '67'
61
+ Etag:
62
+ - W/"43-kRRkij6uWMfZoSUJpiGbSXw7SNc"
63
+ Date:
64
+ - Thu, 10 Sep 2020 16:14:41 GMT
65
+ Via:
66
+ - 1.1 vegur
67
+ body:
68
+ encoding: UTF-8
69
+ string: '{"message":"Could not find an organization with the id, bogus-id."}'
70
+ http_version:
71
+ recorded_at: Thu, 10 Sep 2020 16:14:41 GMT
72
+ recorded_with: VCR 5.0.0
@@ -1 +1 @@
1
- {"profile":{"object":"profile","id":"prof_01DRA1XNSJDZ19A31F183ECQW5","email":"demo@workos-okta.com","first_name":"WorkOS","connection_type":"OktaSAML","last_name":"Demo","idp_id":"00u1klkowm8EGah2H357"},"access_token":"01DVX6QBS3EG6FHY2ESAA5Q65X"}
1
+ {"profile":{"object":"profile","id":"prof_01DRA1XNSJDZ19A31F183ECQW5","email":"demo@workos-okta.com","first_name":"WorkOS","connection_type":"OktaSAML","last_name":"Demo","idp_id":"00u1klkowm8EGah2H357","raw_attributes":{"id":"prof_01DRA1XNSJDZ19A31F183ECQW5","email":"demo@workos-okta.com","first_name":"WorkOS","last_name":"Demo","idp_id":"00u1klkowm8EGah2H357"}},"access_token":"01DVX6QBS3EG6FHY2ESAA5Q65X"}
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  spec.add_dependency 'sorbet-runtime', '~> 0.5'
26
26
 
27
27
  spec.add_development_dependency 'bundler', '>= 2.0.1'
28
- spec.add_development_dependency 'codecov', '~> 0.1.16'
28
+ spec.add_development_dependency 'codecov', '~> 0.2.8'
29
29
  spec.add_development_dependency 'rake'
30
30
  spec.add_development_dependency 'rspec', '~> 3.9.0'
31
31
  spec.add_development_dependency 'rubocop', '~> 0.77'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workos
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - WorkOS
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-17 00:00:00.000000000 Z
11
+ date: 2020-09-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sorbet-runtime
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.1.16
47
+ version: 0.2.8
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.1.16
54
+ version: 0.2.8
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -213,10 +213,17 @@ files:
213
213
  - lib/workos/connection.rb
214
214
  - lib/workos/directory_sync.rb
215
215
  - lib/workos/errors.rb
216
+ - lib/workos/organization.rb
217
+ - lib/workos/passwordless.rb
218
+ - lib/workos/portal.rb
216
219
  - lib/workos/profile.rb
217
220
  - lib/workos/sso.rb
218
221
  - lib/workos/types.rb
219
222
  - lib/workos/types/connection_struct.rb
223
+ - lib/workos/types/intent_enum.rb
224
+ - lib/workos/types/list_struct.rb
225
+ - lib/workos/types/organization_struct.rb
226
+ - lib/workos/types/passwordless_session_struct.rb
220
227
  - lib/workos/types/profile_struct.rb
221
228
  - lib/workos/types/provider_enum.rb
222
229
  - lib/workos/version.rb
@@ -232,6 +239,8 @@ files:
232
239
  - spec/lib/workos/audit_trail_spec.rb
233
240
  - spec/lib/workos/base_spec.rb
234
241
  - spec/lib/workos/directory_sync_spec.rb
242
+ - spec/lib/workos/passwordless_spec.rb
243
+ - spec/lib/workos/portal_spec.rb
235
244
  - spec/lib/workos/sso_spec.rb
236
245
  - spec/spec_helper.rb
237
246
  - spec/support/fixtures/vcr_cassettes/audit_trail/create_event.yml
@@ -251,6 +260,15 @@ files:
251
260
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_groups_with_directory_param.yml
252
261
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_users.yml
253
262
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_users_with_directory_param.yml
263
+ - spec/support/fixtures/vcr_cassettes/organization/create.yml
264
+ - spec/support/fixtures/vcr_cassettes/organization/create_invalid.yml
265
+ - spec/support/fixtures/vcr_cassettes/organization/list.yml
266
+ - spec/support/fixtures/vcr_cassettes/passwordless/create_session.yml
267
+ - spec/support/fixtures/vcr_cassettes/passwordless/create_session_invalid.yml
268
+ - spec/support/fixtures/vcr_cassettes/passwordless/send_session.yml
269
+ - spec/support/fixtures/vcr_cassettes/passwordless/send_session_invalid.yml
270
+ - spec/support/fixtures/vcr_cassettes/portal/generate_link.yml
271
+ - spec/support/fixtures/vcr_cassettes/portal/generate_link_invalid.yml
254
272
  - spec/support/fixtures/vcr_cassettes/sso/create_connection_with_invalid_source.yml
255
273
  - spec/support/fixtures/vcr_cassettes/sso/create_connection_with_valid_source.yml
256
274
  - spec/support/profile.txt
@@ -283,6 +301,8 @@ test_files:
283
301
  - spec/lib/workos/audit_trail_spec.rb
284
302
  - spec/lib/workos/base_spec.rb
285
303
  - spec/lib/workos/directory_sync_spec.rb
304
+ - spec/lib/workos/passwordless_spec.rb
305
+ - spec/lib/workos/portal_spec.rb
286
306
  - spec/lib/workos/sso_spec.rb
287
307
  - spec/spec_helper.rb
288
308
  - spec/support/fixtures/vcr_cassettes/audit_trail/create_event.yml
@@ -302,6 +322,15 @@ test_files:
302
322
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_groups_with_directory_param.yml
303
323
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_users.yml
304
324
  - spec/support/fixtures/vcr_cassettes/directory_sync/list_users_with_directory_param.yml
325
+ - spec/support/fixtures/vcr_cassettes/organization/create.yml
326
+ - spec/support/fixtures/vcr_cassettes/organization/create_invalid.yml
327
+ - spec/support/fixtures/vcr_cassettes/organization/list.yml
328
+ - spec/support/fixtures/vcr_cassettes/passwordless/create_session.yml
329
+ - spec/support/fixtures/vcr_cassettes/passwordless/create_session_invalid.yml
330
+ - spec/support/fixtures/vcr_cassettes/passwordless/send_session.yml
331
+ - spec/support/fixtures/vcr_cassettes/passwordless/send_session_invalid.yml
332
+ - spec/support/fixtures/vcr_cassettes/portal/generate_link.yml
333
+ - spec/support/fixtures/vcr_cassettes/portal/generate_link_invalid.yml
305
334
  - spec/support/fixtures/vcr_cassettes/sso/create_connection_with_invalid_source.yml
306
335
  - spec/support/fixtures/vcr_cassettes/sso/create_connection_with_valid_source.yml
307
336
  - spec/support/profile.txt