code42 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/code42.rb +1 -0
  3. data/lib/code42/api/role.rb +30 -0
  4. data/lib/code42/api/user.rb +7 -0
  5. data/lib/code42/attribute_serializer.rb +1 -1
  6. data/lib/code42/client.rb +1 -1
  7. data/lib/code42/permission.rb +13 -0
  8. data/lib/code42/resource.rb +3 -2
  9. data/lib/code42/role.rb +8 -1
  10. data/lib/code42/role_collection.rb +4 -0
  11. data/lib/code42/user.rb +10 -0
  12. data/lib/code42/version.rb +1 -1
  13. data/spec/cassettes/Code42_Client/_create_org/returns_created_org.yml +7 -41
  14. data/spec/cassettes/Code42_Client/_create_role/creates_a_role.yml +42 -0
  15. data/spec/cassettes/Code42_Client/_create_user/returns_created_user.yml +8 -32
  16. data/spec/cassettes/Code42_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml +8 -7
  17. data/spec/cassettes/Code42_Client/_deactivate_org/puts_to_the_correct_route.yml +6 -8
  18. data/spec/cassettes/Code42_Client/_delete_role/deletes_a_role.yml +67 -0
  19. data/spec/cassettes/Code42_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml +9 -44
  20. data/spec/cassettes/Code42_Client/_get_token/returns_valid_tokens.yml +9 -17
  21. data/spec/cassettes/Code42_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml +6 -5
  22. data/spec/cassettes/Code42_Client/_org/when_ID_is_not_passed/returns_my_org.yml +7 -41
  23. data/spec/cassettes/Code42_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml +7 -41
  24. data/spec/cassettes/Code42_Client/_permissions/returns_an_enumerable_of_permissions.yml +120 -0
  25. data/spec/cassettes/Code42_Client/_ping/returns_a_ping.yml +9 -14
  26. data/spec/cassettes/Code42_Client/_reset_password/when_sending_a_user_id/as_a_string/behaves_like_reset_password/is_successful.yml +41 -3
  27. data/spec/cassettes/Code42_Client/_reset_password/when_sending_a_user_id/as_an_integer/behaves_like_reset_password/is_successful.yml +41 -3
  28. data/spec/cassettes/Code42_Client/_reset_password/when_sending_a_username/behaves_like_reset_password/is_successful.yml +41 -3
  29. data/spec/cassettes/Code42_Client/_reset_password/when_sending_a_view_url/behaves_like_reset_password/is_successful.yml +41 -3
  30. data/spec/cassettes/Code42_Client/_roles/returns_an_enumerable.yml +243 -0
  31. data/spec/cassettes/Code42_Client/_unassign_role/removes_the_role.yml +107 -0
  32. data/spec/cassettes/Code42_Client/_update_role/updates_a_role.yml +155 -0
  33. data/spec/cassettes/Code42_Client/_update_user/returns_the_updated_user.yml +14 -12
  34. data/spec/cassettes/Code42_Client/_update_user/when_sending_an_invalid_email/raises_an_exception.yml +11 -10
  35. data/spec/cassettes/Code42_Client/_user/when_ID_is_not_passed/returns_my_user.yml +7 -32
  36. data/spec/cassettes/Code42_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml +8 -32
  37. data/spec/cassettes/Code42_Client/_user/when_blocked/returns_the_blocked_status.yml +15 -39
  38. data/spec/cassettes/Code42_Client/_user/when_unblocked/returns_the_blocked_status.yml +17 -38
  39. data/spec/cassettes/Code42_Client/_user_roles/returns_an_enumerable.yml +7 -19
  40. data/spec/cassettes/Code42_Client/_validate_token/returns_a_valid_response.yml +18 -34
  41. data/spec/code42/client_spec.rb +57 -2
  42. metadata +15 -2
@@ -2,13 +2,13 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: http://admin:admin@localhost:7280/api/ping
5
+ uri: http://admin:admin@localhost:4280/api/ping
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v0.8.7
11
+ - Faraday v0.9.0
12
12
  Accept-Encoding:
13
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
14
  Accept:
@@ -22,22 +22,17 @@ http_interactions:
22
22
  - no-store
23
23
  Pragma:
24
24
  - no-cache
25
+ Content-Location:
26
+ - http://localhost:4280/api/v1/ping
25
27
  Content-Type:
26
- - application/json; charset=utf-8
27
- Transfer-Encoding:
28
- - chunked
28
+ - application/json;charset=UTF-8
29
+ Content-Length:
30
+ - '94'
29
31
  Server:
30
32
  - Jetty(7.6.3.v20120416)
31
33
  body:
32
34
  encoding: UTF-8
33
- string: |-
34
- {
35
- "metadata": {
36
- "timestamp": "2013-06-13T15:16:29.837-05:00",
37
- "params": {}
38
- },
39
- "data": {"success": true}
40
- }
35
+ string: '{"metadata":{"timestamp":"2014-07-09T10:34:43.906-05:00","params":{}},"data":{"success":true}}'
41
36
  http_version:
42
- recorded_at: Thu, 13 Jun 2013 20:16:29 GMT
37
+ recorded_at: Wed, 09 Jul 2014 15:34:43 GMT
43
38
  recorded_with: VCR 2.5.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://admin:admin@localhost:7280/api/UserPasswordReset
5
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"userId":"42"}'
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Pragma:
26
26
  - no-cache
27
27
  Content-Location:
28
- - http://localhost:7280/api/v1/UserPasswordReset
28
+ - http://localhost:4280/api/v1/UserPasswordReset
29
29
  Content-Type:
30
30
  - application/json; charset=utf-8
31
31
  Transfer-Encoding:
@@ -35,5 +35,43 @@ http_interactions:
35
35
  body:
36
36
  encoding: UTF-8
37
37
  string: '{"metadata":{"timestamp":"2014-04-02T12:33:37.965-05:00","params":{}},"data":{"success":true}}'
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Wed, 02 Apr 2014 17:33:37 GMT
40
+ - request:
41
+ method: post
42
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"userId":"42"}'
46
+ headers:
47
+ User-Agent:
48
+ - Faraday v0.9.0
49
+ Content-Type:
50
+ - application/json
51
+ Accept-Encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ Accept:
54
+ - '*/*'
55
+ response:
56
+ status:
57
+ code: 500
58
+ message: '[{"name":"USER_NOT_FOUND","description":"com.code42.core.CommandException","objects":[]}]'
59
+ headers:
60
+ Pragma:
61
+ - no-cache
62
+ Content-Location:
63
+ - http://localhost:4280/api/v1/UserPasswordReset
64
+ Content-Type:
65
+ - text/html;charset=ISO-8859-1
66
+ Cache-Control:
67
+ - must-revalidate,no-cache,no-store
68
+ Content-Length:
69
+ - '89'
70
+ Server:
71
+ - Jetty(7.6.3.v20120416)
72
+ body:
73
+ encoding: UTF-8
74
+ string: '[{"name":"USER_NOT_FOUND","description":"com.code42.core.CommandException","objects":[]}]'
75
+ http_version:
76
+ recorded_at: Wed, 09 Jul 2014 15:59:48 GMT
77
+ recorded_with: VCR 2.5.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://admin:admin@localhost:7280/api/UserPasswordReset
5
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"userId":42}'
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Pragma:
26
26
  - no-cache
27
27
  Content-Location:
28
- - http://localhost:7280/api/v1/UserPasswordReset
28
+ - http://localhost:4280/api/v1/UserPasswordReset
29
29
  Content-Type:
30
30
  - application/json; charset=utf-8
31
31
  Transfer-Encoding:
@@ -35,5 +35,43 @@ http_interactions:
35
35
  body:
36
36
  encoding: UTF-8
37
37
  string: '{"metadata":{"timestamp":"2014-04-02T12:33:37.925-05:00","params":{}},"data":{"success":true}}'
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Wed, 02 Apr 2014 17:33:37 GMT
40
+ - request:
41
+ method: post
42
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"userId":42}'
46
+ headers:
47
+ User-Agent:
48
+ - Faraday v0.9.0
49
+ Content-Type:
50
+ - application/json
51
+ Accept-Encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ Accept:
54
+ - '*/*'
55
+ response:
56
+ status:
57
+ code: 500
58
+ message: '[{"name":"USER_NOT_FOUND","description":"com.code42.core.CommandException","objects":[]}]'
59
+ headers:
60
+ Pragma:
61
+ - no-cache
62
+ Content-Location:
63
+ - http://localhost:4280/api/v1/UserPasswordReset
64
+ Content-Type:
65
+ - text/html;charset=ISO-8859-1
66
+ Cache-Control:
67
+ - must-revalidate,no-cache,no-store
68
+ Content-Length:
69
+ - '89'
70
+ Server:
71
+ - Jetty(7.6.3.v20120416)
72
+ body:
73
+ encoding: UTF-8
74
+ string: '[{"name":"USER_NOT_FOUND","description":"com.code42.core.CommandException","objects":[]}]'
75
+ http_version:
76
+ recorded_at: Wed, 09 Jul 2014 15:59:48 GMT
77
+ recorded_with: VCR 2.5.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://admin:admin@localhost:7280/api/UserPasswordReset
5
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"username":"admin"}'
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Pragma:
26
26
  - no-cache
27
27
  Content-Location:
28
- - http://localhost:7280/api/v1/UserPasswordReset
28
+ - http://localhost:4280/api/v1/UserPasswordReset
29
29
  Content-Type:
30
30
  - application/json; charset=utf-8
31
31
  Transfer-Encoding:
@@ -35,5 +35,43 @@ http_interactions:
35
35
  body:
36
36
  encoding: UTF-8
37
37
  string: '{"metadata":{"timestamp":"2014-04-02T12:33:37.888-05:00","params":{}},"data":{"success":true}}'
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Wed, 02 Apr 2014 17:33:37 GMT
40
+ - request:
41
+ method: post
42
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"username":"admin"}'
46
+ headers:
47
+ User-Agent:
48
+ - Faraday v0.9.0
49
+ Content-Type:
50
+ - application/json
51
+ Accept-Encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ Accept:
54
+ - '*/*'
55
+ response:
56
+ status:
57
+ code: 200
58
+ message: OK
59
+ headers:
60
+ Cache-Control:
61
+ - no-store
62
+ Pragma:
63
+ - no-cache
64
+ Content-Location:
65
+ - http://localhost:4280/api/v1/UserPasswordReset
66
+ Content-Type:
67
+ - application/json;charset=UTF-8
68
+ Content-Length:
69
+ - '94'
70
+ Server:
71
+ - Jetty(7.6.3.v20120416)
72
+ body:
73
+ encoding: UTF-8
74
+ string: '{"metadata":{"timestamp":"2014-07-09T10:59:48.141-05:00","params":{}},"data":{"success":true}}'
75
+ http_version:
76
+ recorded_at: Wed, 09 Jul 2014 15:59:48 GMT
77
+ recorded_with: VCR 2.5.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://admin:admin@localhost:7280/api/UserPasswordReset
5
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"username":"admin"}'
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Pragma:
26
26
  - no-cache
27
27
  Content-Location:
28
- - http://localhost:7280/api/v1/UserPasswordReset
28
+ - http://localhost:4280/api/v1/UserPasswordReset
29
29
  Content-Type:
30
30
  - application/json; charset=utf-8
31
31
  Transfer-Encoding:
@@ -35,5 +35,43 @@ http_interactions:
35
35
  body:
36
36
  encoding: UTF-8
37
37
  string: '{"metadata":{"timestamp":"2014-04-02T12:33:37.844-05:00","params":{}},"data":{"success":true}}'
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Wed, 02 Apr 2014 17:33:37 GMT
40
+ - request:
41
+ method: post
42
+ uri: http://admin:admin@localhost:4280/api/UserPasswordReset
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"username":"admin","viewUrl":"/new-pw-reset.html"}'
46
+ headers:
47
+ User-Agent:
48
+ - Faraday v0.9.0
49
+ Content-Type:
50
+ - application/json
51
+ Accept-Encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ Accept:
54
+ - '*/*'
55
+ response:
56
+ status:
57
+ code: 200
58
+ message: OK
59
+ headers:
60
+ Cache-Control:
61
+ - no-store
62
+ Pragma:
63
+ - no-cache
64
+ Content-Location:
65
+ - http://localhost:4280/api/v1/UserPasswordReset
66
+ Content-Type:
67
+ - application/json;charset=UTF-8
68
+ Content-Length:
69
+ - '94'
70
+ Server:
71
+ - Jetty(7.6.3.v20120416)
72
+ body:
73
+ encoding: UTF-8
74
+ string: '{"metadata":{"timestamp":"2014-07-09T10:59:48.222-05:00","params":{}},"data":{"success":true}}'
75
+ http_version:
76
+ recorded_at: Wed, 09 Jul 2014 15:59:48 GMT
77
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,243 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://admin:admin@localhost:4280/api/role
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - no-store
23
+ Pragma:
24
+ - no-cache
25
+ Content-Location:
26
+ - http://localhost:4280/api/v1/role
27
+ Content-Type:
28
+ - application/json;charset=UTF-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Server:
32
+ - Jetty(7.6.3.v20120416)
33
+ body:
34
+ encoding: UTF-8
35
+ string: '{"metadata":{"timestamp":"2014-07-09T10:34:44.494-05:00","params":{}},"data":[{"roleId":3,"roleName":"Org
36
+ Manager","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.395-05:00","modificationDate":"2014-07-09T10:22:30.892-05:00","permissions":[{"permission":"admin.pushrestore.personal","description":"Permission
37
+ to perform a personal push restore"},{"permission":"admin.cpd.login","description":"Required
38
+ to Login to Client Desktop"},{"permission":"admin.user.read","description":"Permission
39
+ to view user information"},{"permission":"admin.plan.read","description":"User
40
+ is allowed to read information about plans within his org hierarchy"},{"permission":"admin.console.login","description":"Login:
41
+ CrashPlan Console"},{"permission":"admin.computer.read","description":"Permission
42
+ to view computer information"},{"permission":"admin.restore.limited","description":"Permission
43
+ to perform a limited size web restore for all devices user has authority to
44
+ manage"},{"permission":"admin.cps.login","description":"Required to Login
45
+ to Client Desktop"},{"permission":"admin.cpw.login","description":"Login:
46
+ CrashPlan Consumer Website"},{"permission":"admin.org.read","description":"Permission
47
+ to view org information within user\u0027s org"},{"permission":"admin.restore.personal","description":"Permission
48
+ to perform a personal web restore"},{"permission":"admin.cpp.login","description":"Login:
49
+ PROe Server Mgmt Console"},{"permission":"admin.select.personal","description":"Permission
50
+ to remotely browse file and directory names for personal devices. Used for
51
+ remotely selecting push-restore destination and backup sources"}]},{"roleId":4,"roleName":"PROe
52
+ User","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.418-05:00","modificationDate":"2014-07-08T10:58:40.418-05:00","permissions":[{"permission":"admin.cpp.login","description":"Login:
53
+ PROe Server Mgmt Console"},{"permission":"admin.console.login","description":"Login:
54
+ CrashPlan Console"}]},{"roleId":1,"roleName":"SYSADMIN","locked":true,"numberOfUsers":1,"creationDate":"2006-04-17T12:30:00.987-05:00","modificationDate":"2014-07-08T10:58:40.634-05:00","permissions":[{"permission":"admin","description":"Super
55
+ User Permission; grant with caution!"}]},{"roleId":2,"roleName":"O42 Sales
56
+ DGR","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:10.798-05:00","modificationDate":"2014-07-08T10:58:40.555-05:00","permissions":[{"permission":"admin.allorg","description":"Permission
57
+ to create, alter or delete information in any org"},{"permission":"admin.security.sales_dgr","description":"Sales
58
+ DGR"}]},{"roleId":8,"roleName":"Server Administrator","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.434-05:00","modificationDate":"2014-07-09T10:22:30.875-05:00","permissions":[{"permission":"admin.pushrestore","description":"Permission
59
+ to perform a push restore from and to any device the user has authority to
60
+ manage"},{"permission":"admin.allplan","description":"User is allowed to create,
61
+ read, update and delete plans in any org hierarchy"},{"permission":"admin.cpd.login","description":"Required
62
+ to Login to Client Desktop"},{"permission":"admin.alluser","description":"Permission
63
+ to access, alter or remove any user information in any org"},{"permission":"admin.allorg","description":"Permission
64
+ to create, alter or delete information in any org"},{"permission":"admin.console.login","description":"Login:
65
+ CrashPlan Console"},{"permission":"admin.select","description":"Permission
66
+ to remotely browse file and directory names for all devices user has authority
67
+ to manage. Used for remotely selecting push-restore destination and backup
68
+ sources"},{"permission":"admin.restore","description":"Permission to perform
69
+ a full web restore for all devices user has authority to manage"},{"permission":"admin.cps.login","description":"Required
70
+ to Login to Client Desktop"},{"permission":"admin.cpw.login","description":"Login:
71
+ CrashPlan Consumer Website"},{"permission":"admin.system","description":"Permission
72
+ to edit all system information not reserved for the System Administrator"},{"permission":"admin.cpp.login","description":"Login:
73
+ PROe Server Mgmt Console"},{"permission":"admin.allcomputer","description":"Permission
74
+ to access, alter or remove any computer information in any org"}]},{"roleId":5,"roleName":"All
75
+ Org Manager","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.421-05:00","modificationDate":"2014-07-09T10:22:30.885-05:00","permissions":[{"permission":"admin.pushrestore.personal","description":"Permission
76
+ to perform a personal push restore"},{"permission":"admin.allorg.read","description":"Permission
77
+ to view org information for all orgs"},{"permission":"admin.cpd.login","description":"Required
78
+ to Login to Client Desktop"},{"permission":"admin.plan.read","description":"User
79
+ is allowed to read information about plans within his org hierarchy"},{"permission":"admin.console.login","description":"Login:
80
+ CrashPlan Console"},{"permission":"admin.system.command_restricted","description":"View
81
+ the CLI and run any command which the user has permission for"},{"permission":"admin.restore.limited","description":"Permission
82
+ to perform a limited size web restore for all devices user has authority to
83
+ manage"},{"permission":"admin.cps.login","description":"Required to Login
84
+ to Client Desktop"},{"permission":"admin.cpw.login","description":"Login:
85
+ CrashPlan Consumer Website"},{"permission":"admin.restore.personal","description":"Permission
86
+ to perform a personal web restore"},{"permission":"admin.cpp.login","description":"Login:
87
+ PROe Server Mgmt Console"},{"permission":"admin.allcomputer.read","description":"Permission
88
+ to view computer information for all orgs"},{"permission":"admin.alluser.read","description":"Permission
89
+ to view user information for all orgs"},{"permission":"admin.select.personal","description":"Permission
90
+ to remotely browse file and directory names for personal devices. Used for
91
+ remotely selecting push-restore destination and backup sources"}]},{"roleId":6,"roleName":"Admin
92
+ Restore Limited","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.425-05:00","modificationDate":"2014-07-08T10:58:40.425-05:00","permissions":[{"permission":"admin.restore.limited","description":"Permission
93
+ to perform a limited size web restore for all devices user has authority to
94
+ manage"}]},{"roleId":11,"roleName":"Admin Partner Owner","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.445-05:00","modificationDate":"2014-07-08T10:58:40.445-05:00","permissions":[{"permission":"admin.partner.own","description":null}]},{"roleId":12,"roleName":"Admin
95
+ Restore","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.448-05:00","modificationDate":"2014-07-08T10:58:40.448-05:00","permissions":[{"permission":"admin.restore","description":"Permission
96
+ to perform a full web restore for all devices user has authority to manage"}]},{"roleId":9,"roleName":"Org
97
+ Help Desk","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.438-05:00","modificationDate":"2014-07-09T10:22:30.866-05:00","permissions":[{"permission":"admin.cpw.login","description":"Login:
98
+ CrashPlan Consumer Website"},{"permission":"admin.cps.login","description":"Required
99
+ to Login to Client Desktop"},{"permission":"admin.org.read","description":"Permission
100
+ to view org information within user\u0027s org"},{"permission":"admin.pushrestore.limited","description":"Permission
101
+ to perform a push restore only to the source user\u0027s devices. There is
102
+ no size limit"},{"permission":"admin.cpd.login","description":"Required to
103
+ Login to Client Desktop"},{"permission":"admin.plan.read","description":"User
104
+ is allowed to read information about plans within his org hierarchy"},{"permission":"admin.cpp.login","description":"Login:
105
+ PROe Server Mgmt Console"},{"permission":"admin.user.read","description":"Permission
106
+ to view user information"},{"permission":"admin.console.login","description":"Login:
107
+ CrashPlan Console"},{"permission":"admin.select","description":"Permission
108
+ to remotely browse file and directory names for all devices user has authority
109
+ to manage. Used for remotely selecting push-restore destination and backup
110
+ sources"},{"permission":"admin.computer.read","description":"Permission to
111
+ view computer information"}]},{"roleId":15,"roleName":"User Destination Move","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.459-05:00","modificationDate":"2014-07-08T10:58:40.459-05:00","permissions":[{"permission":"admin.functional","description":null},{"permission":"admin.allcomputer","description":"Permission
112
+ to access, alter or remove any computer information in any org"},{"permission":"admin.alluser","description":"Permission
113
+ to access, alter or remove any user information in any org"},{"permission":"admin.allorg","description":"Permission
114
+ to create, alter or delete information in any org"}]},{"roleId":16,"roleName":"Push
115
+ Restore","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.463-05:00","modificationDate":"2014-07-08T10:58:40.463-05:00","permissions":[{"permission":"admin.pushrestore","description":"Permission
116
+ to perform a push restore from and to any device the user has authority to
117
+ manage"},{"permission":"admin.select","description":"Permission to remotely
118
+ browse file and directory names for all devices user has authority to manage. Used
119
+ for remotely selecting push-restore destination and backup sources"}]},{"roleId":14,"roleName":"Help
120
+ Desk","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.455-05:00","modificationDate":"2014-07-08T10:58:40.455-05:00","permissions":[{"permission":"admin.pushrestore","description":"Permission
121
+ to perform a push restore from and to any device the user has authority to
122
+ manage"},{"permission":"admin.system.archive_maintenance","description":"View
123
+ and cancel jobs in the archive maintenance queue"},{"permission":"admin.cpd.login","description":"Required
124
+ to Login to Client Desktop"},{"permission":"admin.account.update","description":"Subject
125
+ is allowed to update information on this account"},{"permission":"admin.viewlogs","description":"Permission
126
+ to view system logs"},{"permission":"admin.allorg","description":"Permission
127
+ to create, alter or delete information in any org"},{"permission":"admin.console.login","description":"Login:
128
+ CrashPlan Console"},{"permission":"admin.alluser","description":"Permission
129
+ to access, alter or remove any user information in any org"},{"permission":"admin.system.command_restricted","description":"View
130
+ the CLI and run any command which the user has permission for"},{"permission":"admin.select","description":"Permission
131
+ to remotely browse file and directory names for all devices user has authority
132
+ to manage. Used for remotely selecting push-restore destination and backup
133
+ sources"},{"permission":"admin.restore","description":"Permission to perform
134
+ a full web restore for all devices user has authority to manage"},{"permission":"admin.cpw.login","description":"Login:
135
+ CrashPlan Consumer Website"},{"permission":"admin.cps.login","description":"Required
136
+ to Login to Client Desktop"},{"permission":"admin.cpp.login","description":"Login:
137
+ PROe Server Mgmt Console"},{"permission":"admin.allcomputer","description":"Permission
138
+ to access, alter or remove any computer information in any org"}]},{"roleId":20,"roleName":"PRO-Online
139
+ Admin","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.477-05:00","modificationDate":"2014-07-08T10:58:40.477-05:00","permissions":[{"permission":"admin.org.read","description":"Permission
140
+ to view org information within user\u0027s org"},{"permission":"admin.user","description":"Permission
141
+ to access, alter or remove any user information"},{"permission":"admin.org.update_basic","description":"Permission
142
+ to update basic information within user\u0027s org"},{"permission":"admin.console.login","description":"Login:
143
+ CrashPlan Console"},{"permission":"admin.computer","description":"Permission
144
+ to access, alter or remove any computer information"},{"permission":"admin.restore","description":"Permission
145
+ to perform a full web restore for all devices user has authority to manage"}]},{"roleId":17,"roleName":"Org
146
+ Admin","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.466-05:00","modificationDate":"2014-07-09T10:22:30.897-05:00","permissions":[{"permission":"admin.pushrestore","description":"Permission
147
+ to perform a push restore from and to any device the user has authority to
148
+ manage"},{"permission":"admin.account.update","description":"Subject is allowed
149
+ to update information on this account"},{"permission":"admin.cpd.login","description":"Required
150
+ to Login to Client Desktop"},{"permission":"admin.org.update_basic","description":"Permission
151
+ to update basic information within user\u0027s org"},{"permission":"admin.plan","description":"User
152
+ is allowed to create, read, update and delete plans within his org hierarchy"},{"permission":"admin.console.login","description":"Login:
153
+ CrashPlan Console"},{"permission":"admin.computer","description":"Permission
154
+ to access, alter or remove any computer information"},{"permission":"admin.select","description":"Permission
155
+ to remotely browse file and directory names for all devices user has authority
156
+ to manage. Used for remotely selecting push-restore destination and backup
157
+ sources"},{"permission":"admin.restore","description":"Permission to perform
158
+ a full web restore for all devices user has authority to manage"},{"permission":"admin.cps.login","description":"Required
159
+ to Login to Client Desktop"},{"permission":"admin.cpw.login","description":"Login:
160
+ CrashPlan Consumer Website"},{"permission":"admin.org.read","description":"Permission
161
+ to view org information within user\u0027s org"},{"permission":"admin.user","description":"Permission
162
+ to access, alter or remove any user information"},{"permission":"admin.cpp.login","description":"Login:
163
+ PROe Server Mgmt Console"},{"permission":"admin.org.delete","description":"Permission
164
+ to delete information within user\u0027s org"},{"permission":"admin.org.create","description":"Permission
165
+ to create child orgs within user\u0027s org"}]},{"roleId":24,"roleName":"Desktop
166
+ User","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.491-05:00","modificationDate":"2014-07-09T10:22:30.904-05:00","permissions":[{"permission":"admin.cps.login","description":"Required
167
+ to Login to Client Desktop"},{"permission":"admin.restore.personal","description":"Permission
168
+ to perform a personal web restore"},{"permission":"admin.cpd.login","description":"Required
169
+ to Login to Client Desktop"},{"permission":"admin.plan.create","description":"User
170
+ is allowed to create plans within his org hierarchy"},{"permission":"admin.spd.login","description":"Required
171
+ to Login to the SharePlan client desktop application"},{"permission":"admin.select.personal","description":"Permission
172
+ to remotely browse file and directory names for personal devices. Used for
173
+ remotely selecting push-restore destination and backup sources"}]},{"roleId":23,"roleName":"All
174
+ Org Admin","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.487-05:00","modificationDate":"2014-07-09T10:22:30.911-05:00","permissions":[{"permission":"admin.pushrestore","description":"Permission
175
+ to perform a push restore from and to any device the user has authority to
176
+ manage"},{"permission":"admin.allplan","description":"User is allowed to create,
177
+ read, update and delete plans in any org hierarchy"},{"permission":"admin.system.archive_maintenance","description":"View
178
+ and cancel jobs in the archive maintenance queue"},{"permission":"admin.account.update","description":"Subject
179
+ is allowed to update information on this account"},{"permission":"admin.cpd.login","description":"Required
180
+ to Login to Client Desktop"},{"permission":"admin.viewlogs","description":"Permission
181
+ to view system logs"},{"permission":"admin.alluser","description":"Permission
182
+ to access, alter or remove any user information in any org"},{"permission":"admin.allorg","description":"Permission
183
+ to create, alter or delete information in any org"},{"permission":"admin.console.login","description":"Login:
184
+ CrashPlan Console"},{"permission":"admin.system.command_restricted","description":"View
185
+ the CLI and run any command which the user has permission for"},{"permission":"admin.select","description":"Permission
186
+ to remotely browse file and directory names for all devices user has authority
187
+ to manage. Used for remotely selecting push-restore destination and backup
188
+ sources"},{"permission":"admin.restore","description":"Permission to perform
189
+ a full web restore for all devices user has authority to manage"},{"permission":"admin.cps.login","description":"Required
190
+ to Login to Client Desktop"},{"permission":"admin.cpw.login","description":"Login:
191
+ CrashPlan Consumer Website"},{"permission":"admin.cpp.login","description":"Login:
192
+ PROe Server Mgmt Console"},{"permission":"admin.allcomputer","description":"Permission
193
+ to access, alter or remove any computer information in any org"}]},{"roleId":22,"roleName":"Remote
194
+ File Selection","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.483-05:00","modificationDate":"2014-07-08T10:58:40.483-05:00","permissions":[{"permission":"admin.select","description":"Permission
195
+ to remotely browse file and directory names for all devices user has authority
196
+ to manage. Used for remotely selecting push-restore destination and backup
197
+ sources"}]},{"roleId":28,"roleName":"O42 Channel Manager","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.560-05:00","modificationDate":"2014-07-08T10:58:40.560-05:00","permissions":[{"permission":"admin.security.channel_manager","description":"Channel
198
+ Manager"}]},{"roleId":27,"roleName":"O42 Partner Manager","locked":true,"numberOfUsers":3,"creationDate":"2014-07-08T10:58:40.547-05:00","modificationDate":"2014-07-08T10:58:40.547-05:00","permissions":[{"permission":"admin.security.partner_manager","description":"Partner
199
+ Manager"}]},{"roleId":26,"roleName":"PRO-Online User","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.499-05:00","modificationDate":"2014-07-08T10:58:40.499-05:00","permissions":[{"permission":"admin.cpo.login","description":"Login:
200
+ PRO-Online Mgmt Console"},{"permission":"admin.console.login","description":"Login:
201
+ CrashPlan Console"}]},{"roleId":25,"roleName":"Consumer User","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.495-05:00","modificationDate":"2014-07-08T10:58:40.495-05:00","permissions":[{"permission":"admin.cpw.login","description":"Login:
202
+ CrashPlan Consumer Website"}]},{"roleId":32,"roleName":"O42 Inventory Manager","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.575-05:00","modificationDate":"2014-07-08T10:58:40.575-05:00","permissions":[{"permission":"admin.security.inv_manager","description":"Inventory
203
+ Manager"}]},{"roleId":31,"roleName":"COMMERCE_DISCOUNT_052","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.572-05:00","modificationDate":"2014-07-08T10:58:40.572-05:00","permissions":[{"permission":"admin.commerce.discount_52","description":"52%
204
+ Seat License Discount"}]},{"roleId":30,"roleName":"O42 Sales Manager","locked":true,"numberOfUsers":3,"creationDate":"2014-07-08T10:58:40.567-05:00","modificationDate":"2014-07-08T10:58:40.567-05:00","permissions":[{"permission":"admin.security.sales_person","description":"Sales
205
+ Person"},{"permission":"admin.security.sales_manager","description":"Sales
206
+ Manager"},{"permission":"admin.allorg","description":"Permission to create,
207
+ alter or delete information in any org"}]},{"roleId":29,"roleName":"COMMERCE_DISCOUNT_095","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.563-05:00","modificationDate":"2014-07-08T10:58:40.563-05:00","permissions":[{"permission":"admin.commerce.discount_95","description":"95%
208
+ Seat License Discount"}]},{"roleId":37,"roleName":"COMMERCE_DISCOUNT_090","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.596-05:00","modificationDate":"2014-07-08T10:58:40.596-05:00","permissions":[{"permission":"admin.commerce.discount_90","description":"90%
209
+ Seat License Discount"}]},{"roleId":38,"roleName":"ADMIN_COMMERCE_ACCOUNT","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.600-05:00","modificationDate":"2014-07-08T10:58:40.600-05:00","permissions":[{"permission":"admin.commerce.account","description":"User
210
+ can make purchases on account"}]},{"roleId":39,"roleName":"O42 Custom Invoice","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.603-05:00","modificationDate":"2014-07-08T10:58:40.603-05:00","permissions":[{"permission":"admin.commerce.custom_invoice","description":"Ability
211
+ to pass price overrides for invoices"},{"permission":"admin.security.custom_invoice","description":"Custom
212
+ Invoice"}]},{"roleId":40,"roleName":"COMMERCE_DISCOUNT_050","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.607-05:00","modificationDate":"2014-07-08T10:58:40.607-05:00","permissions":[{"permission":"admin.commerce.discount_50","description":"50%
213
+ Seat License Discount"}]},{"roleId":33,"roleName":"O42 Pricing Manager","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.578-05:00","modificationDate":"2014-07-08T10:58:40.578-05:00","permissions":[{"permission":"admin.security.pricing_manager","description":"Prcing
214
+ Manager"}]},{"roleId":34,"roleName":"O42 Sales Admin","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.582-05:00","modificationDate":"2014-07-08T10:58:40.582-05:00","permissions":[{"permission":"admin.security.sales_admin","description":"Sales
215
+ Admin"},{"permission":"admin.security","description":"Access to all security
216
+ permissions"}]},{"roleId":35,"roleName":"COMMERCE_DISCOUNT_040","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.588-05:00","modificationDate":"2014-07-08T10:58:40.588-05:00","permissions":[{"permission":"admin.commerce.discount_40","description":"40%
217
+ Seat License Discount"}]},{"roleId":36,"roleName":"COMMERCE_DISCOUNT_010","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.592-05:00","modificationDate":"2014-07-08T10:58:40.592-05:00","permissions":[{"permission":"admin.commerce.discount_10","description":"10%
218
+ Seat License Discount"}]},{"roleId":45,"roleName":"COMMERCE_DISCOUNT_100","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.629-05:00","modificationDate":"2014-07-08T10:58:40.629-05:00","permissions":[{"permission":"admin.commerce.discount_100","description":"100%
219
+ Seat License Discount"}]},{"roleId":46,"roleName":"O42 Channel","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.637-05:00","modificationDate":"2014-07-08T10:58:40.637-05:00","permissions":[{"permission":"admin.system.send_email","description":"Ability
220
+ to send email through EmailResource"},{"permission":"admin.commerce.channel","description":"Ability
221
+ to make channel purchases"},{"permission":"admin.security.chanel","description":"Channel"}]},{"roleId":47,"roleName":"COMMERCE_DISCOUNT_005","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.641-05:00","modificationDate":"2014-07-08T10:58:40.641-05:00","permissions":[{"permission":"admin.commerce.discount_05","description":"5%
222
+ Seat License Discount"}]},{"roleId":48,"roleName":"O42 Partner Rep","locked":true,"numberOfUsers":7,"creationDate":"2014-07-08T10:58:40.645-05:00","modificationDate":"2014-07-08T10:58:40.645-05:00","permissions":[{"permission":"admin.security.partner_rep","description":"Partner
223
+ Rep"}]},{"roleId":41,"roleName":"COMMERCE_DISCOUNT_080","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.611-05:00","modificationDate":"2014-07-08T10:58:40.611-05:00","permissions":[{"permission":"admin.commerce.discount_80","description":"80%
224
+ Seat License Discount"}]},{"roleId":42,"roleName":"COMMERCE_DISCOUNT_025","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.617-05:00","modificationDate":"2014-07-08T10:58:40.617-05:00","permissions":[{"permission":"admin.commerce.discount_25","description":"25%
225
+ Seat License Discount"}]},{"roleId":43,"roleName":"COMMERCE_DISCOUNT_075","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.622-05:00","modificationDate":"2014-07-08T10:58:40.622-05:00","permissions":[{"permission":"admin.commerce.discount_75","description":"75%
226
+ Seat License Discount"}]},{"roleId":44,"roleName":"COMMERCE_DISCOUNT_030","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.626-05:00","modificationDate":"2014-07-08T10:58:40.626-05:00","permissions":[{"permission":"admin.commerce.discount_30","description":"30%
227
+ Seat License Discount"}]},{"roleId":54,"roleName":"COMMERCE_DISCOUNT_060","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.671-05:00","modificationDate":"2014-07-08T10:58:40.671-05:00","permissions":[{"permission":"admin.commerce.discount_60","description":"60%
228
+ Seat License Discount"}]},{"roleId":53,"roleName":"COMMERCE_DISCOUNT_085","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.667-05:00","modificationDate":"2014-07-08T10:58:40.667-05:00","permissions":[{"permission":"admin.commerce.discount_85","description":"85%
229
+ Seat License Discount"}]},{"roleId":56,"roleName":"COMMERCE_DISCOUNT_065","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.679-05:00","modificationDate":"2014-07-08T10:58:40.679-05:00","permissions":[{"permission":"admin.commerce.discount_65","description":"65%
230
+ Seat License Discount"}]},{"roleId":55,"roleName":"O42 Customer Champion","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.675-05:00","modificationDate":"2014-07-08T10:58:40.675-05:00","permissions":[{"permission":"admin.allorg","description":"Permission
231
+ to create, alter or delete information in any org"},{"permission":"admin.security.customer_champion","description":"Customer
232
+ Champion"}]},{"roleId":50,"roleName":"COMMERCE_DISCOUNT_070","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.655-05:00","modificationDate":"2014-07-08T10:58:40.655-05:00","permissions":[{"permission":"admin.commerce.discount_70","description":"70%
233
+ Seat License Discount"}]},{"roleId":49,"roleName":"COMMERCE_DISCOUNT_020","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.650-05:00","modificationDate":"2014-07-08T10:58:40.650-05:00","permissions":[{"permission":"admin.commerce.discount_20","description":"20%
234
+ Seat License Discount"}]},{"roleId":52,"roleName":"O42 Order Processor","locked":true,"numberOfUsers":1,"creationDate":"2014-07-08T10:58:40.663-05:00","modificationDate":"2014-07-08T10:58:40.663-05:00","permissions":[{"permission":"admin.security.order_processor","description":"Order
235
+ Processor"},{"permission":"admin.allorg","description":"Permission to create,
236
+ alter or delete information in any org"}]},{"roleId":51,"roleName":"O42 Sales
237
+ Person","locked":true,"numberOfUsers":113,"creationDate":"2014-07-08T10:58:40.659-05:00","modificationDate":"2014-07-08T10:58:40.659-05:00","permissions":[{"permission":"admin.security.sales_person","description":"Sales
238
+ Person"},{"permission":"admin.allorg","description":"Permission to create,
239
+ alter or delete information in any org"}]},{"roleId":57,"roleName":"COMMERCE_DISCOUNT_015","locked":true,"numberOfUsers":0,"creationDate":"2014-07-08T10:58:40.682-05:00","modificationDate":"2014-07-08T10:58:40.682-05:00","permissions":[{"permission":"admin.commerce.discount_15","description":"15%
240
+ Seat License Discount"}]}]}'
241
+ http_version:
242
+ recorded_at: Wed, 09 Jul 2014 15:34:44 GMT
243
+ recorded_with: VCR 2.5.0