workos 1.3.0 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/Gemfile.lock +3 -3
  4. data/lib/workos/client.rb +3 -6
  5. data/lib/workos/connection.rb +9 -1
  6. data/lib/workos/directory.rb +9 -1
  7. data/lib/workos/directory_user.rb +4 -1
  8. data/lib/workos/errors.rb +4 -0
  9. data/lib/workos/organization.rb +10 -1
  10. data/lib/workos/organizations.rb +18 -4
  11. data/lib/workos/profile.rb +7 -2
  12. data/lib/workos/types/connection_struct.rb +2 -0
  13. data/lib/workos/types/directory_struct.rb +2 -0
  14. data/lib/workos/types/directory_user_struct.rb +1 -0
  15. data/lib/workos/types/organization_struct.rb +3 -0
  16. data/lib/workos/types/profile_struct.rb +1 -0
  17. data/lib/workos/types/provider_enum.rb +1 -0
  18. data/lib/workos/types/webhook_struct.rb +14 -0
  19. data/lib/workos/types.rb +1 -0
  20. data/lib/workos/version.rb +1 -1
  21. data/lib/workos/webhook.rb +47 -0
  22. data/lib/workos/webhooks.rb +168 -0
  23. data/lib/workos.rb +3 -0
  24. data/spec/lib/workos/audit_trail_spec.rb +2 -0
  25. data/spec/lib/workos/directory_sync_spec.rb +21 -19
  26. data/spec/lib/workos/organizations_spec.rb +13 -11
  27. data/spec/lib/workos/passwordless_spec.rb +2 -0
  28. data/spec/lib/workos/portal_spec.rb +2 -0
  29. data/spec/lib/workos/sso_spec.rb +17 -13
  30. data/spec/lib/workos/webhooks_spec.rb +190 -0
  31. data/spec/spec_helper.rb +3 -0
  32. data/spec/support/fixtures/vcr_cassettes/directory_sync/get_user.yml +40 -16
  33. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_after.yml +3 -3
  34. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_before.yml +3 -3
  35. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_domain.yml +1 -1
  36. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_limit.yml +2 -2
  37. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_no_options.yml +3 -3
  38. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_search.yml +1 -1
  39. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_after.yml +128 -28
  40. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_before.yml +31 -18
  41. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_directory.yml +136 -35
  42. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_group.yml +128 -18
  43. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_limit.yml +131 -17
  44. data/spec/support/fixtures/vcr_cassettes/organization/create.yml +28 -16
  45. data/spec/support/fixtures/vcr_cassettes/organization/get.yml +27 -16
  46. data/spec/support/fixtures/vcr_cassettes/organization/list.yml +29 -14
  47. data/spec/support/fixtures/vcr_cassettes/organization/update.yml +27 -16
  48. data/spec/support/fixtures/vcr_cassettes/sso/get_connection_with_valid_id.yml +28 -16
  49. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_after.yml +25 -15
  50. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_before.yml +28 -15
  51. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_connection_type.yml +31 -14
  52. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_domain.yml +27 -13
  53. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_limit.yml +24 -15
  54. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_no_options.yml +30 -14
  55. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_organization_id.yml +28 -14
  56. data/spec/support/fixtures/vcr_cassettes/sso/profile.yml +1 -1
  57. data/spec/support/profile.txt +1 -1
  58. data/spec/support/shared_examples/client_spec.rb +16 -0
  59. data/spec/support/webhook_payload.txt +1 -0
  60. metadata +12 -5
  61. data/spec/support/fixtures/vcr_cassettes/organization/update_invalid.yml +0 -73
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: https://api.workos.com/directory_users?directory=directory_01EK2YEMVTWGX27STRDR0N3MP9
5
+ uri: https://api.workos.com/directory_users?directory=directory_01FAZYMST676QMTFN1DDJZZX87
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
@@ -14,7 +14,7 @@ http_interactions:
14
14
  Accept:
15
15
  - "*/*"
16
16
  User-Agent:
17
- - WorkOS; ruby/2.7.1; x86_64-darwin19; v0.10.3
17
+ - WorkOS; ruby/3.0.1; x86_64-darwin19; v1.4.0
18
18
  Authorization:
19
19
  - Bearer <API_KEY>
20
20
  response:
@@ -22,8 +22,12 @@ http_interactions:
22
22
  code: 200
23
23
  message: OK
24
24
  headers:
25
- Server:
26
- - Cowboy
25
+ Date:
26
+ - Mon, 09 Aug 2021 17:36:11 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
27
31
  Connection:
28
32
  - keep-alive
29
33
  Vary:
@@ -53,41 +57,138 @@ http_interactions:
53
57
  X-Xss-Protection:
54
58
  - '0'
55
59
  X-Request-Id:
56
- - bab6f6eb-acae-4477-8ec4-03b336dbd6c4
57
- Content-Type:
58
- - application/json; charset=utf-8
60
+ - 7bec1c90-22f4-482d-81c2-484bdd0c7d33
59
61
  Etag:
60
- - W/"485d-Q39TmdUI4ev07yJnP0PZqqImfXA"
61
- Date:
62
- - Thu, 22 Apr 2021 22:11:10 GMT
63
- Transfer-Encoding:
64
- - chunked
62
+ - W/"32ac-tppjb9CvAhoQDyAQeujCJrrMZLQ"
65
63
  Via:
66
64
  - 1.1 vegur
65
+ Cf-Cache-Status:
66
+ - DYNAMIC
67
+ Report-To:
68
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=6PJUMNnvc7Ear%2FtCtz8uML%2F6roM0a5DvAYUo9VOlOZebpMPWW3rffAM2scIUyh%2Bnvo7PUXUK3eVx34Z6HMi%2Bwd8Y5BuMj7LF23oJaAtTjFY4V9xIza3avCksCayUGk%2BG2TXIR4sqYqSOP0pb3w%3D%3D"}],"group":"cf-nel","max_age":604800}'
69
+ Nel:
70
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
71
+ Server:
72
+ - cloudflare
73
+ Cf-Ray:
74
+ - 67c2bec519580e6a-DFW
75
+ Alt-Svc:
76
+ - h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400, h3=":443";
77
+ ma=86400
67
78
  body:
68
79
  encoding: ASCII-8BIT
69
- string: '{"object":"list","listMetadata":{"before":"directory_user_01EK2YFBC3R10MPB4W49G5QDXG","after":null},"data":[{"id":"directory_user_01EYY894KT7BFG7BGFP6311QVN","raw_attributes":{"id":"100377956302085585753","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/3uAtgLaCgHQwGYnPvAOsMmX3kuQ\"","kind":"admin#directory#user","name":{"fullName":"Marshall
70
- Bowers","givenName":"Marshall","familyName":"Bowers"},"emails":[{"address":"marshall@foo-corp.com","primary":true},{"address":"marshall@foo-corp.com.test-google-a.com"}],"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2021-02-19T22:58:59.000Z","primaryEmail":"marshall@foo-corp.com","lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"nonEditableAliases":["marshall@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"100377956302085585753","first_name":"Marshall","emails":[{"value":"marshall@foo-corp.com","primary":true}],"username":"marshall@foo-corp.com","last_name":"Bowers","state":"active","groups":[]},{"id":"directory_user_01EY6MWQEGS28JZZW8F9YSPHTN","raw_attributes":{"id":"109773955160115643540","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/SrCThhD5mhnV6EIkf2v0x2HSBJQ\"","kind":"admin#directory#user","name":{"fullName":"Blair
71
- Lunchford","givenName":"Blair","familyName":"Lunchford"},"emails":[{"address":"blair@foo-corp.com","primary":true},{"address":"blair@foo-corp.com.test-google-a.com"}],"phones":[{"type":"home","value":"777-777-7777"}],"relations":[{"type":"manager","value":"mg@foo-corp.com"}],"customerId":"C02mw6qrc","externalIds":[{"type":"organization","value":"1234"}],"orgUnitPath":"/","creationTime":"2021-02-10T18:57:37.000Z","primaryEmail":"blair@foo-corp.com","agreedToTerms":true,"lastLoginTime":"2021-03-03T21:06:43.000Z","organizations":[{"title":"Developer
72
- Success Engineer","primary":true,"customType":"","department":"Customer Success"}],"isMailboxSetup":true,"thumbnailPhotoUrl":"https://www.google.com/s2/photos/private/AIbEiAIAAABECJSJqMrvjYTShwEiC3ZjYXJkX3Bob3RvKig4ZGQxM2I4YzE0NWJmYzFhZTM4ZmI4OTQ3YmVhZWVlODFlNjRkZTE0MAFxHDWu1JMrkUf8mcS2gI-VsRQz-w","nonEditableAliases":["blair@foo-corp.com.test-google-a.com"],"thumbnailPhotoEtag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/dpIRoYVHhjaCzW6FemaoQoWb5V0\"","changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"109773955160115643540","first_name":"Blair","emails":[{"value":"blair@foo-corp.com","primary":true}],"username":"blair@foo-corp.com","last_name":"Lunchford","state":"active","groups":[]},{"id":"directory_user_01ERN5QC6ZSS40R3P2GVFN195D","raw_attributes":{"id":"103497481226604346148","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/cvJPqvfTjChcdvDK1iTOaHfxKZA\"","kind":"admin#directory#user","name":{"fullName":"Mark
73
- Tran","givenName":"Mark","familyName":"Tran"},"emails":[{"address":"mark@foo-corp.com","primary":true},{"address":"mark@foo-corp.com.test-google-a.com"}],"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-12-03T20:46:59.000Z","primaryEmail":"mark@foo-corp.com","agreedToTerms":true,"lastLoginTime":"2020-12-11T22:56:12.000Z","isMailboxSetup":true,"nonEditableAliases":["mark@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"103497481226604346148","first_name":"Mark","emails":[{"value":"mark@foo-corp.com","primary":true}],"username":"mark@foo-corp.com","last_name":"Tran","state":"active","groups":[{"id":"directory_group_01EQ7V7C5SQ82F5NNMKRA3B899","name":"Account
74
- Management","raw_attributes":{"id":"02grqrue4294w24","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/19PzKtmXLlC1UyVC2k6NA7ye9mk\"","kind":"admin#directory#group","name":"Account
75
- Management","email":"account-managers@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["account-managers@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6200HRGPS7R63DMQSF","name":"Solutions
76
- Engineering","raw_attributes":{"id":"02u6wntf1dyjihd","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/oLFNnHZPgXTE6zt2vA9UCBE9UOs\"","kind":"admin#directory#group","name":"Solutions
77
- Engineering","email":"solutions@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["solutions@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC4XX11HT1AT72YR26G","raw_attributes":{"id":"113226752885572771242","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/71aE84CzZeCiyvc1C0Jzz0lSgPg\"","kind":"admin#directory#user","name":{"fullName":"Sean
78
- Rabaut","givenName":"Sean","familyName":"Rabaut"},"emails":[{"address":"sean@foo-corp.com","primary":true},{"address":"sean@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T05:28:59.000Z","primaryEmail":"sean@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["sean@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"113226752885572771242","first_name":"Sean","emails":[{"value":"sean@foo-corp.com","primary":true}],"username":"sean@foo-corp.com","last_name":"Rabaut","state":"active","groups":[{"id":"directory_group_01EK2YFBPZ8SWMQ01NWN3TNZK4","name":"Engineering","raw_attributes":{"id":"030j0zll1b5a1gf","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/eSnflkB5fzBxa6QfGsXjaftif2A\"","kind":"admin#directory#group","name":"Engineering","email":"engineering@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"8","nonEditableAliases":["engineering@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6Y4RPMCH3KNB9853FF","name":"Finance","raw_attributes":{"id":"02xcytpi45aqkmr","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/4zBJXlVVTFZ06sWa5MUTv1TykS8\"","kind":"admin#directory#group","name":"Finance","email":"finance@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["finance@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C74DTH00CYB72T50ABG","name":"Risk
79
- Management","raw_attributes":{"id":"028h4qwu0uyrb9k","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/kbW-E1aXnJl6pxP1nnwTfMnja4Q\"","kind":"admin#directory#group","name":"Risk
80
- Management","email":"risk@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"1","nonEditableAliases":["risk@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC4QQXCGQ4HB9P3TKGN","raw_attributes":{"id":"109526245125100154480","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/XMmBv5pyVplcAuTREmYpCSX4ZVI\"","kind":"admin#directory#user","name":{"fullName":"Willman
81
- Duffy","givenName":"Willman","familyName":"Duffy"},"emails":[{"address":"willman@foo-corp.com","primary":true},{"address":"willman@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T05:29:44.000Z","primaryEmail":"willman@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["willman@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"109526245125100154480","first_name":"Willman","emails":[{"value":"willman@foo-corp.com","primary":true}],"username":"willman@foo-corp.com","last_name":"Duffy","state":"active","groups":[{"id":"directory_group_01EK2YFBPZ8SWMQ01NWN3TNZK4","name":"Engineering","raw_attributes":{"id":"030j0zll1b5a1gf","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/eSnflkB5fzBxa6QfGsXjaftif2A\"","kind":"admin#directory#group","name":"Engineering","email":"engineering@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"8","nonEditableAliases":["engineering@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC3Z5CV5SAB67X5X5KJ","raw_attributes":{"id":"107975119783943707941","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/WxSpMEFYyJahoACX5Dopgx4GKBg\"","kind":"admin#directory#user","name":{"fullName":"Michael
82
- Young","givenName":"Michael","familyName":"Young"},"emails":[{"address":"michael.young@foo-corp.com","primary":true},{"address":"michael.young@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T07:18:43.000Z","primaryEmail":"michael.young@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["michael.young@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"107975119783943707941","first_name":"Michael","emails":[{"value":"michael.young@foo-corp.com","primary":true}],"username":"michael.young@foo-corp.com","last_name":"Young","state":"active","groups":[{"id":"directory_group_01EK2YFBPZ8SWMQ01NWN3TNZK4","name":"Engineering","raw_attributes":{"id":"030j0zll1b5a1gf","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/eSnflkB5fzBxa6QfGsXjaftif2A\"","kind":"admin#directory#group","name":"Engineering","email":"engineering@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"8","nonEditableAliases":["engineering@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC3YQ30C8N4ZV5X7D3E","raw_attributes":{"id":"109603890832726158896","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/a-1GEuNVvgZ501iUWrW7qJKghFc\"","kind":"admin#directory#user","name":{"fullName":"WorkOS
83
- Demo","givenName":"WorkOS","familyName":"Demo"},"emails":[{"address":"demo@foo-corp.com","primary":true},{"address":"demo@foo-corp.com.test-google-a.com"}],"isAdmin":true,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2019-08-16T22:04:53.000Z","primaryEmail":"demo@foo-corp.com","agreedToTerms":true,"ipWhitelisted":false,"lastLoginTime":"2021-04-21T00:41:55.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":true,"isDelegatedAdmin":false,"nonEditableAliases":["demo@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":false,"includeInGlobalAddressList":true},"idp_id":"109603890832726158896","first_name":"WorkOS","emails":[{"value":"demo@foo-corp.com","primary":true}],"username":"demo@foo-corp.com","last_name":"Demo","state":"active","groups":[]},{"id":"directory_user_01EK2YFBC3XG31TG9MBP1QP3Z9","raw_attributes":{"id":"109233415591316614930","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/RXsBa2dcsfstUDWUdwGloMHeKMI\"","kind":"admin#directory#user","name":{"fullName":"Michael
84
- Grinich","givenName":"Michael","familyName":"Grinich"},"emails":[{"address":"mg@foo-corp.com","primary":true},{"address":"mg@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T07:18:18.000Z","primaryEmail":"mg@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["mg@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"109233415591316614930","first_name":"Michael","emails":[{"value":"mg@foo-corp.com","primary":true}],"username":"mg@foo-corp.com","last_name":"Grinich","state":"active","groups":[{"id":"directory_group_01EK2YFBQ3F19AD96V9FFMDS1X","name":"Sales","raw_attributes":{"id":"01jlao4614two3d","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/q7KEwEs-K95FIjfrPVol15Ku3YU\"","kind":"admin#directory#group","name":"Sales","email":"sales@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"1","nonEditableAliases":["sales@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6AKS8D12WX2CMC2HWR","name":"Admins","raw_attributes":{"id":"00gjdgxs2s95kg4","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/8_DFveza530aqHjNIY138qbXpkw\"","kind":"admin#directory#group","name":"Admins","email":"admins@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["admins@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6FBGG55PKG7YB03EFB","name":"Design","raw_attributes":{"id":"03dy6vkm1y2alqi","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/FOmENMweP80vOL_QS7AgEhmMJW0\"","kind":"admin#directory#group","name":"Design","email":"design@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"3","nonEditableAliases":["design@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC3SNPZSXPD7D9TWBH9","raw_attributes":{"id":"115669666685548603461","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/AlTGEZnqtXc3FzAOzH-uqKg2XWU\"","kind":"admin#directory#user","name":{"fullName":"Max
85
- Chehab","givenName":"Max","familyName":"Chehab"},"emails":[{"type":"work","address":"max@workos.com"},{"address":"max@foo-corp.com","primary":true},{"address":"max@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2019-08-09T23:07:38.000Z","primaryEmail":"max@foo-corp.com","agreedToTerms":true,"ipWhitelisted":false,"lastLoginTime":"2020-06-22T23:16:51.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["max@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":false,"includeInGlobalAddressList":true},"idp_id":"115669666685548603461","first_name":"Max","emails":[{"value":"max@foo-corp.com","primary":true}],"username":"max@foo-corp.com","last_name":"Chehab","state":"active","groups":[{"id":"directory_group_01EK2YFBPZ8SWMQ01NWN3TNZK4","name":"Engineering","raw_attributes":{"id":"030j0zll1b5a1gf","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/eSnflkB5fzBxa6QfGsXjaftif2A\"","kind":"admin#directory#group","name":"Engineering","email":"engineering@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"8","nonEditableAliases":["engineering@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C5SQ82F5NNMKRA3B899","name":"Account
86
- Management","raw_attributes":{"id":"02grqrue4294w24","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/19PzKtmXLlC1UyVC2k6NA7ye9mk\"","kind":"admin#directory#group","name":"Account
87
- Management","email":"account-managers@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["account-managers@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C5Y9K2Z4MK9A7YY3QF4","name":"Security","raw_attributes":{"id":"01fob9te1lgjaw4","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/-pzmhVkdxBet5lTdVfY9yKrRslE\"","kind":"admin#directory#group","name":"Security","email":"security@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"3","nonEditableAliases":["security@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6200HRGPS7R63DMQSF","name":"Solutions
88
- Engineering","raw_attributes":{"id":"02u6wntf1dyjihd","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/oLFNnHZPgXTE6zt2vA9UCBE9UOs\"","kind":"admin#directory#group","name":"Solutions
89
- Engineering","email":"solutions@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["solutions@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ823D94EF0AH5QMDRB91YWR","name":"Contractors","raw_attributes":{"id":"02iq8gzs1b2i1ae","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/rF1OEdXlr3FwClDxryrS1Qi22xQ\"","kind":"admin#directory#group","name":"Contractors","email":"contractors@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["contractors@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC3R10MPB4W49G5QDXG","raw_attributes":{"id":"112134735573343800911","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/b7PQmzDW_ndQwKNA2tba8PLHJdk\"","kind":"admin#directory#user","name":{"fullName":"Paige
90
- Doherty","givenName":"Paige","familyName":"Doherty"},"emails":[{"address":"paige@foo-corp.com","primary":true},{"address":"paige@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T05:30:28.000Z","primaryEmail":"paige@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["paige@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"112134735573343800911","first_name":"Paige","emails":[{"value":"paige@foo-corp.com","primary":true}],"username":"paige@foo-corp.com","last_name":"Doherty","state":"active","groups":[{"id":"directory_group_01EQ7V7C6SVJ56RR4J9R5QX20Y","name":"Product","raw_attributes":{"id":"03hv69ve1ssgpby","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/f9gbroAH87EH3wU418b4bq6sXv8\"","kind":"admin#directory#group","name":"Product","email":"product@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["product@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ823D94EF0AH5QMDRB91YWR","name":"Contractors","raw_attributes":{"id":"02iq8gzs1b2i1ae","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/rF1OEdXlr3FwClDxryrS1Qi22xQ\"","kind":"admin#directory#group","name":"Contractors","email":"contractors@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["contractors@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6FBGG55PKG7YB03EFB","name":"Design","raw_attributes":{"id":"03dy6vkm1y2alqi","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/FOmENMweP80vOL_QS7AgEhmMJW0\"","kind":"admin#directory#group","name":"Design","email":"design@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"3","nonEditableAliases":["design@foo-corp.com.test-google-a.com"]}}]}]}'
80
+ string: '{"object":"list","listMetadata":{"before":null,"after":null},"data":[{"object":"directory_user","id":"directory_user_01FC73296N43TB1NW9J9CQ8AHT","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","idp_id":"6104db3b6246f63d0df47ac5","username":"dave.liu@workos.com","emails":[{"primary":true,"value":"dave.liu@workos.com"}],"first_name":"Dave","last_name":"Liu","state":"active","raw_attributes":{"id":"6104db3b6246f63d0df47ac5","name":"Dave
81
+ Liu","teams":["5f696c8e9a63a60e965aaca8","6101bf5fa9e1adf3c668a1ad","6104da936b1079a2e20debb5","6104daab1a8ff9a9f023a689","6104dae33d1730d92ca27c51"],"spokeId":null,"lastName":"Liu","createdAt":"2021-07-31T05:10:19+0000","firstName":"Dave","updatedAt":"2021-07-31T08:02:36+0000","workEmail":"dave.liu@workos.com","department":"Engineering","departmentId":"5f27ada9a5e9bc0001a0ae48"},"custom_attributes":{"department":"Engineering"},"groups":[{"object":"directory_group","id":"directory_group_01FBXGP7AM2ZTG9C2NT96E0T8B","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
82
+ - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
83
+ tempor incididunt ut labore et dolore magna aliqua. Neque viverra justo nec
84
+ ultrices dui sapien. Eu scelerisque felis imperdiet proin fermentum leo. Tincidunt
85
+ vitae semper quis lectus. Aliquet enim tortor at auctor urna nunc id cursus
86
+ metus. Sapien et ligula ullamcorper malesuada proin. Tellus pellentesque eu
87
+ tincidunt tortor aliquam nulla facilisi cras. Id aliquet risus feugiat in
88
+ ante. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet.
89
+ Eleifend mi in nulla posuere. Nec dui nunc mattis enim ut. Volutpat commodo
90
+ sed egestas egestas fringilla. Quis eleifend quam adipiscing vitae proin sagittis.
91
+ Amet facilisis magna etiam tempor orci. Quam nulla porttitor massa id neque.
92
+ Laoreet sit amet cursus sit amet dictum sit amet. Scelerisque eleifend donec
93
+ pretium vulputate sapien. Faucibus turpis in eu mi bibendum. Magna sit amet
94
+ purus gravida quis. Placerat vestibulum lectus mauris ultrices eros. Volutpat
95
+ est velit egestas dui id ornare. Aliquet eget sit amet tellus cras adipiscing
96
+ enim eu. Velit scelerisque in dictum non consectetur. Egestas fringilla phasellus
97
+ faucibus scelerisque eleifend donec pretium vulputate sapien. Malesuada nunc
98
+ vel risus commodo viverra maecenas accumsan lacus vel. Senectus et netus et
99
+ malesuada fames ac turpis. In mollis nunc sed id semper risus in hendrerit.
100
+ Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec.
101
+ Purus semper eget duis at tellus. Et ligula ullamcorper malesuada proin libero
102
+ nunc consequat interdum varius. Odio aenean sed adipiscing diam donec adipiscing.
103
+ Pretium quam vulputate dignissim suspendisse in est ante. Orci nulla pellentesque
104
+ dignissim enim sit amet venenatis urna. Viverra aliquet eget sit amet tellus
105
+ cras adipiscing enim. Lacus viverra vitae congue eu consequat ac felis donec.
106
+ Quis ipsum suspendisse ultrices gravida dictum fusce ut. Faucibus turpis
107
+ in eu mi bibendum. Lorem sed risus ultricies tristique nulla. Habitant morbi
108
+ tristique senectus et. Vitae suscipit tellus mauris a. Id leo in vitae turpis
109
+ massa sed. In hac habitasse platea dictumst vestibulum rhoncus est pellentesque.
110
+ Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Ut aliquam purus
111
+ sit amet luctus venenatis lectus magna. Mollis aliquam ut porttitor leo a
112
+ diam. Pulvinar pellentesque habitant morbi tristique senectus et netus et.
113
+ Eget felis eget nunc lobortis. Viverra adipiscing at in tellus. Morbi tempus
114
+ iaculis urna id volutpat lacus laoreet non curabitur. Nam aliquam sem et tortor.
115
+ Maecenas sed enim ut sem viverra aliquet eget sit. Nec dui nunc mattis enim.
116
+ Donec ac odio tempor orci dapibus ultrices in iaculis. Tristique risus nec
117
+ feugiat in fermentum posuere urna nec. Suscipit adipiscing bibendum est ultricies.
118
+ Magna fringilla urna porttitor rhoncus. Cum sociis natoque penatibus et magnis
119
+ dis parturient montes nascetur. Amet nulla facilisi morbi tempus iaculis.
120
+ Mattis vulputate enim nulla aliquet porttitor lacus. Adipiscing elit duis
121
+ tristique sollicitudin nibh sit. Placerat duis ultricies lacus sed turpis
122
+ tincidunt id aliquet. Ut sem viverra aliquet eget sit amet tellus. Sagittis
123
+ id consectetur purus ut faucibus pulvinar. Id faucibus nisl tincidunt eget
124
+ nullam. Sed augue lacus viverra vitae congue eu consequat ac felis. Interdum
125
+ varius sit amet mattis vulputate enim. Ut venenatis tellus in metus vulputate
126
+ eu scelerisque. Lacus sed viverra tellus in hac habitasse. Nulla facilisi
127
+ etiam dignissim diam quis. Id porta nibh venenatis cras sed felis eget velit.
128
+ Orci porta non pulvinar neque laoreet suspendisse interdum consectetur.","raw_attributes":{"id":"6104dae33d1730d92ca27c51","name":"Lorem
129
+ ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
130
+ ut labore et dolore magna aliqua. Neque viverra justo nec ultrices dui sapien.
131
+ Eu scelerisque felis imperdiet proin fermentum leo. Tincidunt vitae semper
132
+ quis lectus. Aliquet enim tortor at auctor urna nunc id cursus metus. Sapien
133
+ et ligula ullamcorper malesuada proin. Tellus pellentesque eu tincidunt tortor
134
+ aliquam nulla facilisi cras. Id aliquet risus feugiat in ante. Consectetur
135
+ adipiscing elit duis tristique sollicitudin nibh sit amet. Eleifend mi in
136
+ nulla posuere. Nec dui nunc mattis enim ut. Volutpat commodo sed egestas egestas
137
+ fringilla. Quis eleifend quam adipiscing vitae proin sagittis. Amet facilisis
138
+ magna etiam tempor orci. Quam nulla porttitor massa id neque. Laoreet sit
139
+ amet cursus sit amet dictum sit amet. Scelerisque eleifend donec pretium
140
+ vulputate sapien. Faucibus turpis in eu mi bibendum. Magna sit amet purus
141
+ gravida quis. Placerat vestibulum lectus mauris ultrices eros. Volutpat est
142
+ velit egestas dui id ornare. Aliquet eget sit amet tellus cras adipiscing
143
+ enim eu. Velit scelerisque in dictum non consectetur. Egestas fringilla phasellus
144
+ faucibus scelerisque eleifend donec pretium vulputate sapien. Malesuada nunc
145
+ vel risus commodo viverra maecenas accumsan lacus vel. Senectus et netus et
146
+ malesuada fames ac turpis. In mollis nunc sed id semper risus in hendrerit.
147
+ Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec.
148
+ Purus semper eget duis at tellus. Et ligula ullamcorper malesuada proin libero
149
+ nunc consequat interdum varius. Odio aenean sed adipiscing diam donec adipiscing.
150
+ Pretium quam vulputate dignissim suspendisse in est ante. Orci nulla pellentesque
151
+ dignissim enim sit amet venenatis urna. Viverra aliquet eget sit amet tellus
152
+ cras adipiscing enim. Lacus viverra vitae congue eu consequat ac felis donec.
153
+ Quis ipsum suspendisse ultrices gravida dictum fusce ut. Faucibus turpis
154
+ in eu mi bibendum. Lorem sed risus ultricies tristique nulla. Habitant morbi
155
+ tristique senectus et. Vitae suscipit tellus mauris a. Id leo in vitae turpis
156
+ massa sed. In hac habitasse platea dictumst vestibulum rhoncus est pellentesque.
157
+ Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Ut aliquam purus
158
+ sit amet luctus venenatis lectus magna. Mollis aliquam ut porttitor leo a
159
+ diam. Pulvinar pellentesque habitant morbi tristique senectus et netus et.
160
+ Eget felis eget nunc lobortis. Viverra adipiscing at in tellus. Morbi tempus
161
+ iaculis urna id volutpat lacus laoreet non curabitur. Nam aliquam sem et tortor.
162
+ Maecenas sed enim ut sem viverra aliquet eget sit. Nec dui nunc mattis enim.
163
+ Donec ac odio tempor orci dapibus ultrices in iaculis. Tristique risus nec
164
+ feugiat in fermentum posuere urna nec. Suscipit adipiscing bibendum est ultricies.
165
+ Magna fringilla urna porttitor rhoncus. Cum sociis natoque penatibus et magnis
166
+ dis parturient montes nascetur. Amet nulla facilisi morbi tempus iaculis.
167
+ Mattis vulputate enim nulla aliquet porttitor lacus. Adipiscing elit duis
168
+ tristique sollicitudin nibh sit. Placerat duis ultricies lacus sed turpis
169
+ tincidunt id aliquet. Ut sem viverra aliquet eget sit amet tellus. Sagittis
170
+ id consectetur purus ut faucibus pulvinar. Id faucibus nisl tincidunt eget
171
+ nullam. Sed augue lacus viverra vitae congue eu consequat ac felis. Interdum
172
+ varius sit amet mattis vulputate enim. Ut venenatis tellus in metus vulputate
173
+ eu scelerisque. Lacus sed viverra tellus in hac habitasse. Nulla facilisi
174
+ etiam dignissim diam quis. Id porta nibh venenatis cras sed felis eget velit.
175
+ Orci porta non pulvinar neque laoreet suspendisse interdum consectetur.","parent":null}},{"object":"directory_group","id":"directory_group_01FBXGP79EJAYKW0WS9JCK1V6E","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
176
+ - Fight Club","raw_attributes":{"id":"6104daab1a8ff9a9f023a689","name":"Fight
177
+ Club","parent":null}},{"object":"directory_group","id":"directory_group_01FBXGP743J13S0CNRM84M8RZT","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
178
+ - Party Planners","raw_attributes":{"id":"6104da936b1079a2e20debb5","name":"Party
179
+ Planners","parent":null}},{"object":"directory_group","id":"directory_group_01FBQDKP34JY5AWYYMZT3ME8VX","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
180
+ - The Best Team","raw_attributes":{"id":"6101bf5fa9e1adf3c668a1ad","name":"The
181
+ Best Team","parent":null}},{"object":"directory_group","id":"directory_group_01FAZYNNQ4HQ6EBF29MPTH7VKB","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
182
+ - Platform","raw_attributes":{"id":"5f696c8e9a63a60e965aaca8","name":"Platform","parent":null}},{"object":"directory_group","id":"directory_group_01FAZYNMV2TDE78FEAH724YGMP","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Department
183
+ - Engineering","raw_attributes":{"id":"5f27ada9a5e9bc0001a0ae48","name":"Engineering","parent":null}}]},{"object":"directory_user","id":"directory_user_01FAZYNPC8TJBP7Y2ERT51MGDF","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","idp_id":"5f6e1d0d67a73900a6c29e15","username":"henry@workos.com","emails":[{"primary":true,"value":"henry@workos.com"}],"first_name":"Henry","last_name":"Chan","state":"active","raw_attributes":{"id":"5f6e1d0d67a73900a6c29e15","name":"Henry
184
+ Chan","teams":["5f696c8e9a63a60e965aaca8"],"spokeId":null,"lastName":"Chan","createdAt":"2020-09-25T16:38:37+0000","firstName":"Henry","updatedAt":"2021-07-07T08:46:02+0000","workEmail":"henry@workos.com","department":"Engineering","departmentId":"5f27ada9a5e9bc0001a0ae48"},"custom_attributes":{"department":"Engineering"},"groups":[{"object":"directory_group","id":"directory_group_01FAZYNNQ4HQ6EBF29MPTH7VKB","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
185
+ - Platform","raw_attributes":{"id":"5f696c8e9a63a60e965aaca8","name":"Platform","parent":null}},{"object":"directory_group","id":"directory_group_01FAZYNMV2TDE78FEAH724YGMP","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Department
186
+ - Engineering","raw_attributes":{"id":"5f27ada9a5e9bc0001a0ae48","name":"Engineering","parent":null}}]},{"object":"directory_user","id":"directory_user_01FAZYNPC8M0HRYTKFP2GNX852","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","idp_id":"6092c280a3f1e19ef6d8cef8","username":"logan@workos.com","emails":[{"primary":true,"value":"logan@workos.com"}],"first_name":"Logan","last_name":"Gingerich","state":"active","raw_attributes":{"id":"6092c280a3f1e19ef6d8cef8","name":"Logan
187
+ Paul Gingerich","teams":["5f696c8e9a63a60e965aaca8"],"spokeId":null,"lastName":"Gingerich","createdAt":"2021-05-05T16:06:24+0000","firstName":"Logan","updatedAt":"2021-07-19T19:17:52+0000","workEmail":"logan@workos.com","department":"Infra","departmentId":"5f27ada9a5e9bc0001a0ae4a"},"custom_attributes":{"department":"Infra"},"groups":[{"object":"directory_group","id":"directory_group_01FAZYNN1NZWMBRAXXDSTB5NFH","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Department
188
+ - Infra","raw_attributes":{"id":"5f27ada9a5e9bc0001a0ae4a","name":"Infra","parent":"5f27ada9a5e9bc0001a0ae48"}},{"object":"directory_group","id":"directory_group_01FAZYNNQ4HQ6EBF29MPTH7VKB","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
189
+ - Platform","raw_attributes":{"id":"5f696c8e9a63a60e965aaca8","name":"Platform","parent":null}}]},{"object":"directory_user","id":"directory_user_01FAZYNPC8DYPEWZ0BSHBA21RM","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","idp_id":"5f27ada8a5e9bc0001a0adcf","username":"workos@test.com","emails":[{"primary":true,"value":"workos@test.com"}],"first_name":"Michael","last_name":"Grinich","state":"active","raw_attributes":{"id":"5f27ada8a5e9bc0001a0adcf","name":"Michael
190
+ Grinich","teams":[],"spokeId":null,"lastName":"Grinich","createdAt":"2020-08-03T06:24:40+0000","firstName":"Michael","updatedAt":"2021-07-07T08:50:53+0000","workEmail":"workos@test.com","department":"Marketing","departmentId":"5f27ada9a5e9bc0001a0ae4e"},"custom_attributes":{"department":"Marketing"},"groups":[{"object":"directory_group","id":"directory_group_01FAZYNMWS67E66CD01E7A1PC4","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Department
191
+ - Marketing","raw_attributes":{"id":"5f27ada9a5e9bc0001a0ae4e","name":"Marketing","parent":null}}]}]}'
91
192
  http_version:
92
- recorded_at: Thu, 22 Apr 2021 22:11:11 GMT
193
+ recorded_at: Mon, 09 Aug 2021 17:36:11 GMT
93
194
  recorded_with: VCR 5.0.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: https://api.workos.com/directory_users?group=directory_group_01EQ7V7C6Y4RPMCH3KNB9853FF
5
+ uri: https://api.workos.com/directory_users?group=directory_group_01FBXGP79EJAYKW0WS9JCK1V6E
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
@@ -14,7 +14,7 @@ http_interactions:
14
14
  Accept:
15
15
  - "*/*"
16
16
  User-Agent:
17
- - WorkOS; ruby/2.7.1; x86_64-darwin19; v0.10.3
17
+ - WorkOS; ruby/3.0.1; x86_64-darwin19; v1.4.0
18
18
  Authorization:
19
19
  - Bearer <API_KEY>
20
20
  response:
@@ -22,8 +22,12 @@ http_interactions:
22
22
  code: 200
23
23
  message: OK
24
24
  headers:
25
- Server:
26
- - Cowboy
25
+ Date:
26
+ - Mon, 09 Aug 2021 17:43:06 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
27
31
  Connection:
28
32
  - keep-alive
29
33
  Vary:
@@ -53,24 +57,130 @@ http_interactions:
53
57
  X-Xss-Protection:
54
58
  - '0'
55
59
  X-Request-Id:
56
- - 2343a349-ad8c-4527-8549-3b639ecfc7cd
57
- Content-Type:
58
- - application/json; charset=utf-8
60
+ - b28d9d07-dc0d-4177-90b8-1ca2e6ad16e3
59
61
  Etag:
60
- - W/"1223-1qYCWp17+a70FhK5aC+Yn3lS78I"
61
- Date:
62
- - Fri, 23 Apr 2021 14:23:37 GMT
63
- Transfer-Encoding:
64
- - chunked
62
+ - W/"258b-TDvtW7zDvbYuZdWKeuyMG81fF4M"
65
63
  Via:
66
64
  - 1.1 vegur
65
+ Cf-Cache-Status:
66
+ - DYNAMIC
67
+ Report-To:
68
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=NyMWn6qw%2F8J517ZNHJhdMcl0UcJUbuX7WkWKCMjp6ftJ8fpIkqWSwVPWVog50K6RGzaS07i9JmdyOqlXTYgjWo%2Bix4ZS0WxYhLjMMiWPsvvcBQkaOAKpB9r0vL8pNA5F%2BH%2BeKzhdgx%2F3u47t1Q%3D%3D"}],"group":"cf-nel","max_age":604800}'
69
+ Nel:
70
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
71
+ Server:
72
+ - cloudflare
73
+ Cf-Ray:
74
+ - 67c2c8e75b50ec7a-DFW
75
+ Alt-Svc:
76
+ - h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400, h3=":443";
77
+ ma=86400
67
78
  body:
68
79
  encoding: ASCII-8BIT
69
- string: '{"object":"list","listMetadata":{"before":null,"after":null},"data":[{"id":"directory_user_01EK2YFBC4XX11HT1AT72YR26G","raw_attributes":{"id":"113226752885572771242","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/71aE84CzZeCiyvc1C0Jzz0lSgPg\"","kind":"admin#directory#user","name":{"fullName":"Sean
70
- Rabaut","givenName":"Sean","familyName":"Rabaut"},"emails":[{"address":"sean@foo-corp.com","primary":true},{"address":"sean@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T05:28:59.000Z","primaryEmail":"sean@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["sean@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"113226752885572771242","first_name":"Sean","emails":[{"value":"sean@foo-corp.com","primary":true}],"username":"sean@foo-corp.com","last_name":"Rabaut","state":"active","groups":[{"id":"directory_group_01EK2YFBPZ8SWMQ01NWN3TNZK4","name":"Engineering","raw_attributes":{"id":"030j0zll1b5a1gf","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/eSnflkB5fzBxa6QfGsXjaftif2A\"","kind":"admin#directory#group","name":"Engineering","email":"engineering@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"8","nonEditableAliases":["engineering@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6Y4RPMCH3KNB9853FF","name":"Finance","raw_attributes":{"id":"02xcytpi45aqkmr","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/4zBJXlVVTFZ06sWa5MUTv1TykS8\"","kind":"admin#directory#group","name":"Finance","email":"finance@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["finance@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C74DTH00CYB72T50ABG","name":"Risk
71
- Management","raw_attributes":{"id":"028h4qwu0uyrb9k","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/kbW-E1aXnJl6pxP1nnwTfMnja4Q\"","kind":"admin#directory#group","name":"Risk
72
- Management","email":"risk@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"1","nonEditableAliases":["risk@foo-corp.com.test-google-a.com"]}}]},{"id":"directory_user_01EK2YFBC30D6NGJ4VNJJVPB3R","raw_attributes":{"id":"108170400221930206404","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/qz-2ot8Sjn83ShjZTqUfMLFtR_I\"","kind":"admin#directory#user","name":{"fullName":"Sandy
73
- Kwon","givenName":"Sandy","familyName":"Kwon"},"emails":[{"address":"sandy@foo-corp.com","primary":true},{"address":"sandy@foo-corp.com.test-google-a.com"}],"isAdmin":false,"archived":false,"suspended":false,"customerId":"C02mw6qrc","orgUnitPath":"/","creationTime":"2020-08-16T05:29:30.000Z","primaryEmail":"sandy@foo-corp.com","agreedToTerms":false,"ipWhitelisted":false,"lastLoginTime":"1970-01-01T00:00:00.000Z","isMailboxSetup":true,"isEnforcedIn2Sv":false,"isEnrolledIn2Sv":false,"isDelegatedAdmin":false,"nonEditableAliases":["sandy@foo-corp.com.test-google-a.com"],"changePasswordAtNextLogin":true,"includeInGlobalAddressList":true},"idp_id":"108170400221930206404","first_name":"Sandy","emails":[{"value":"sandy@foo-corp.com","primary":true}],"username":"sandy@foo-corp.com","last_name":"Kwon","state":"active","groups":[{"id":"directory_group_01EQ7V7C5NGE4MWHP3FSX3KK47","name":"Marketing","raw_attributes":{"id":"01y810tw1ti9q8c","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/8Bp1ATnSYZXUB84_9v_K0i54jgc\"","kind":"admin#directory#group","name":"Marketing","email":"marketing@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["marketing@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6AKS8D12WX2CMC2HWR","name":"Admins","raw_attributes":{"id":"00gjdgxs2s95kg4","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/8_DFveza530aqHjNIY138qbXpkw\"","kind":"admin#directory#group","name":"Admins","email":"admins@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["admins@foo-corp.com.test-google-a.com"]}},{"id":"directory_group_01EQ7V7C6Y4RPMCH3KNB9853FF","name":"Finance","raw_attributes":{"id":"02xcytpi45aqkmr","etag":"\"eqhz5i5wiQgvARWPEnQdniNQ_SjQV5znfZGv9dAkRwc/4zBJXlVVTFZ06sWa5MUTv1TykS8\"","kind":"admin#directory#group","name":"Finance","email":"finance@foo-corp.com","description":"","adminCreated":true,"directMembersCount":"2","nonEditableAliases":["finance@foo-corp.com.test-google-a.com"]}}]}]}'
80
+ string: '{"object":"list","listMetadata":{"before":null,"after":null},"data":[{"object":"directory_user","id":"directory_user_01FC73296N43TB1NW9J9CQ8AHT","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","idp_id":"6104db3b6246f63d0df47ac5","username":"dave.liu@workos.com","emails":[{"primary":true,"value":"dave.liu@workos.com"}],"first_name":"Dave","last_name":"Liu","state":"active","raw_attributes":{"id":"6104db3b6246f63d0df47ac5","name":"Dave
81
+ Liu","teams":["5f696c8e9a63a60e965aaca8","6101bf5fa9e1adf3c668a1ad","6104da936b1079a2e20debb5","6104daab1a8ff9a9f023a689","6104dae33d1730d92ca27c51"],"spokeId":null,"lastName":"Liu","createdAt":"2021-07-31T05:10:19+0000","firstName":"Dave","updatedAt":"2021-07-31T08:02:36+0000","workEmail":"dave.liu@workos.com","department":"Engineering","departmentId":"5f27ada9a5e9bc0001a0ae48"},"custom_attributes":{"department":"Engineering"},"groups":[{"object":"directory_group","id":"directory_group_01FBXGP7AM2ZTG9C2NT96E0T8B","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
82
+ - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
83
+ tempor incididunt ut labore et dolore magna aliqua. Neque viverra justo nec
84
+ ultrices dui sapien. Eu scelerisque felis imperdiet proin fermentum leo. Tincidunt
85
+ vitae semper quis lectus. Aliquet enim tortor at auctor urna nunc id cursus
86
+ metus. Sapien et ligula ullamcorper malesuada proin. Tellus pellentesque eu
87
+ tincidunt tortor aliquam nulla facilisi cras. Id aliquet risus feugiat in
88
+ ante. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet.
89
+ Eleifend mi in nulla posuere. Nec dui nunc mattis enim ut. Volutpat commodo
90
+ sed egestas egestas fringilla. Quis eleifend quam adipiscing vitae proin sagittis.
91
+ Amet facilisis magna etiam tempor orci. Quam nulla porttitor massa id neque.
92
+ Laoreet sit amet cursus sit amet dictum sit amet. Scelerisque eleifend donec
93
+ pretium vulputate sapien. Faucibus turpis in eu mi bibendum. Magna sit amet
94
+ purus gravida quis. Placerat vestibulum lectus mauris ultrices eros. Volutpat
95
+ est velit egestas dui id ornare. Aliquet eget sit amet tellus cras adipiscing
96
+ enim eu. Velit scelerisque in dictum non consectetur. Egestas fringilla phasellus
97
+ faucibus scelerisque eleifend donec pretium vulputate sapien. Malesuada nunc
98
+ vel risus commodo viverra maecenas accumsan lacus vel. Senectus et netus et
99
+ malesuada fames ac turpis. In mollis nunc sed id semper risus in hendrerit.
100
+ Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec.
101
+ Purus semper eget duis at tellus. Et ligula ullamcorper malesuada proin libero
102
+ nunc consequat interdum varius. Odio aenean sed adipiscing diam donec adipiscing.
103
+ Pretium quam vulputate dignissim suspendisse in est ante. Orci nulla pellentesque
104
+ dignissim enim sit amet venenatis urna. Viverra aliquet eget sit amet tellus
105
+ cras adipiscing enim. Lacus viverra vitae congue eu consequat ac felis donec.
106
+ Quis ipsum suspendisse ultrices gravida dictum fusce ut. Faucibus turpis
107
+ in eu mi bibendum. Lorem sed risus ultricies tristique nulla. Habitant morbi
108
+ tristique senectus et. Vitae suscipit tellus mauris a. Id leo in vitae turpis
109
+ massa sed. In hac habitasse platea dictumst vestibulum rhoncus est pellentesque.
110
+ Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Ut aliquam purus
111
+ sit amet luctus venenatis lectus magna. Mollis aliquam ut porttitor leo a
112
+ diam. Pulvinar pellentesque habitant morbi tristique senectus et netus et.
113
+ Eget felis eget nunc lobortis. Viverra adipiscing at in tellus. Morbi tempus
114
+ iaculis urna id volutpat lacus laoreet non curabitur. Nam aliquam sem et tortor.
115
+ Maecenas sed enim ut sem viverra aliquet eget sit. Nec dui nunc mattis enim.
116
+ Donec ac odio tempor orci dapibus ultrices in iaculis. Tristique risus nec
117
+ feugiat in fermentum posuere urna nec. Suscipit adipiscing bibendum est ultricies.
118
+ Magna fringilla urna porttitor rhoncus. Cum sociis natoque penatibus et magnis
119
+ dis parturient montes nascetur. Amet nulla facilisi morbi tempus iaculis.
120
+ Mattis vulputate enim nulla aliquet porttitor lacus. Adipiscing elit duis
121
+ tristique sollicitudin nibh sit. Placerat duis ultricies lacus sed turpis
122
+ tincidunt id aliquet. Ut sem viverra aliquet eget sit amet tellus. Sagittis
123
+ id consectetur purus ut faucibus pulvinar. Id faucibus nisl tincidunt eget
124
+ nullam. Sed augue lacus viverra vitae congue eu consequat ac felis. Interdum
125
+ varius sit amet mattis vulputate enim. Ut venenatis tellus in metus vulputate
126
+ eu scelerisque. Lacus sed viverra tellus in hac habitasse. Nulla facilisi
127
+ etiam dignissim diam quis. Id porta nibh venenatis cras sed felis eget velit.
128
+ Orci porta non pulvinar neque laoreet suspendisse interdum consectetur.","raw_attributes":{"id":"6104dae33d1730d92ca27c51","name":"Lorem
129
+ ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
130
+ ut labore et dolore magna aliqua. Neque viverra justo nec ultrices dui sapien.
131
+ Eu scelerisque felis imperdiet proin fermentum leo. Tincidunt vitae semper
132
+ quis lectus. Aliquet enim tortor at auctor urna nunc id cursus metus. Sapien
133
+ et ligula ullamcorper malesuada proin. Tellus pellentesque eu tincidunt tortor
134
+ aliquam nulla facilisi cras. Id aliquet risus feugiat in ante. Consectetur
135
+ adipiscing elit duis tristique sollicitudin nibh sit amet. Eleifend mi in
136
+ nulla posuere. Nec dui nunc mattis enim ut. Volutpat commodo sed egestas egestas
137
+ fringilla. Quis eleifend quam adipiscing vitae proin sagittis. Amet facilisis
138
+ magna etiam tempor orci. Quam nulla porttitor massa id neque. Laoreet sit
139
+ amet cursus sit amet dictum sit amet. Scelerisque eleifend donec pretium
140
+ vulputate sapien. Faucibus turpis in eu mi bibendum. Magna sit amet purus
141
+ gravida quis. Placerat vestibulum lectus mauris ultrices eros. Volutpat est
142
+ velit egestas dui id ornare. Aliquet eget sit amet tellus cras adipiscing
143
+ enim eu. Velit scelerisque in dictum non consectetur. Egestas fringilla phasellus
144
+ faucibus scelerisque eleifend donec pretium vulputate sapien. Malesuada nunc
145
+ vel risus commodo viverra maecenas accumsan lacus vel. Senectus et netus et
146
+ malesuada fames ac turpis. In mollis nunc sed id semper risus in hendrerit.
147
+ Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec.
148
+ Purus semper eget duis at tellus. Et ligula ullamcorper malesuada proin libero
149
+ nunc consequat interdum varius. Odio aenean sed adipiscing diam donec adipiscing.
150
+ Pretium quam vulputate dignissim suspendisse in est ante. Orci nulla pellentesque
151
+ dignissim enim sit amet venenatis urna. Viverra aliquet eget sit amet tellus
152
+ cras adipiscing enim. Lacus viverra vitae congue eu consequat ac felis donec.
153
+ Quis ipsum suspendisse ultrices gravida dictum fusce ut. Faucibus turpis
154
+ in eu mi bibendum. Lorem sed risus ultricies tristique nulla. Habitant morbi
155
+ tristique senectus et. Vitae suscipit tellus mauris a. Id leo in vitae turpis
156
+ massa sed. In hac habitasse platea dictumst vestibulum rhoncus est pellentesque.
157
+ Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Ut aliquam purus
158
+ sit amet luctus venenatis lectus magna. Mollis aliquam ut porttitor leo a
159
+ diam. Pulvinar pellentesque habitant morbi tristique senectus et netus et.
160
+ Eget felis eget nunc lobortis. Viverra adipiscing at in tellus. Morbi tempus
161
+ iaculis urna id volutpat lacus laoreet non curabitur. Nam aliquam sem et tortor.
162
+ Maecenas sed enim ut sem viverra aliquet eget sit. Nec dui nunc mattis enim.
163
+ Donec ac odio tempor orci dapibus ultrices in iaculis. Tristique risus nec
164
+ feugiat in fermentum posuere urna nec. Suscipit adipiscing bibendum est ultricies.
165
+ Magna fringilla urna porttitor rhoncus. Cum sociis natoque penatibus et magnis
166
+ dis parturient montes nascetur. Amet nulla facilisi morbi tempus iaculis.
167
+ Mattis vulputate enim nulla aliquet porttitor lacus. Adipiscing elit duis
168
+ tristique sollicitudin nibh sit. Placerat duis ultricies lacus sed turpis
169
+ tincidunt id aliquet. Ut sem viverra aliquet eget sit amet tellus. Sagittis
170
+ id consectetur purus ut faucibus pulvinar. Id faucibus nisl tincidunt eget
171
+ nullam. Sed augue lacus viverra vitae congue eu consequat ac felis. Interdum
172
+ varius sit amet mattis vulputate enim. Ut venenatis tellus in metus vulputate
173
+ eu scelerisque. Lacus sed viverra tellus in hac habitasse. Nulla facilisi
174
+ etiam dignissim diam quis. Id porta nibh venenatis cras sed felis eget velit.
175
+ Orci porta non pulvinar neque laoreet suspendisse interdum consectetur.","parent":null}},{"object":"directory_group","id":"directory_group_01FBXGP79EJAYKW0WS9JCK1V6E","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
176
+ - Fight Club","raw_attributes":{"id":"6104daab1a8ff9a9f023a689","name":"Fight
177
+ Club","parent":null}},{"object":"directory_group","id":"directory_group_01FBXGP743J13S0CNRM84M8RZT","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
178
+ - Party Planners","raw_attributes":{"id":"6104da936b1079a2e20debb5","name":"Party
179
+ Planners","parent":null}},{"object":"directory_group","id":"directory_group_01FBQDKP34JY5AWYYMZT3ME8VX","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
180
+ - The Best Team","raw_attributes":{"id":"6101bf5fa9e1adf3c668a1ad","name":"The
181
+ Best Team","parent":null}},{"object":"directory_group","id":"directory_group_01FAZYNNQ4HQ6EBF29MPTH7VKB","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Team
182
+ - Platform","raw_attributes":{"id":"5f696c8e9a63a60e965aaca8","name":"Platform","parent":null}},{"object":"directory_group","id":"directory_group_01FAZYNMV2TDE78FEAH724YGMP","directory_id":"directory_01FAZYMST676QMTFN1DDJZZX87","name":"Department
183
+ - Engineering","raw_attributes":{"id":"5f27ada9a5e9bc0001a0ae48","name":"Engineering","parent":null}}]}]}'
74
184
  http_version:
75
- recorded_at: Fri, 23 Apr 2021 14:23:37 GMT
185
+ recorded_at: Mon, 09 Aug 2021 17:43:06 GMT
76
186
  recorded_with: VCR 5.0.0