workos 0.4.2 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
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