bcx 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. data/.rspec +1 -0
  2. data/Gemfile +1 -1
  3. data/README.md +64 -15
  4. data/Rakefile +5 -1
  5. data/bcx.gemspec +5 -0
  6. data/lib/bcx.rb +7 -2
  7. data/lib/bcx/client.rb +11 -4
  8. data/lib/bcx/configuration.rb +9 -0
  9. data/lib/bcx/resources/person.rb +13 -0
  10. data/lib/bcx/resources/project.rb +40 -2
  11. data/lib/bcx/resources/todo.rb +37 -0
  12. data/lib/bcx/resources/todolist.rb +40 -1
  13. data/lib/bcx/response_error.rb +17 -0
  14. data/lib/bcx/version.rb +1 -1
  15. data/spec/bcx/client_spec.rb +40 -0
  16. data/spec/bcx/project_spec.rb +65 -0
  17. data/spec/bcx/todolist_spec.rb +75 -0
  18. data/spec/cassettes/Bcx_Resources_Project/DELETE_/projects/2937644/should_delete_a_project.yml +105 -0
  19. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/2937644/should_have_the_correct_id.yml +60 -0
  20. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/2937644/should_return_a_hash.yml +60 -0
  21. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/archived/should_be_an_array.yml +58 -0
  22. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/archived/should_be_empty.yml +58 -0
  23. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/first_project_should_have_the_correct_id.yml +59 -0
  24. data/spec/cassettes/Bcx_Resources_Project/GET_/projects/should_be_an_array.yml +59 -0
  25. data/spec/cassettes/Bcx_Resources_Project/POST_/projects/should_create_a_new_project.yml +63 -0
  26. data/spec/cassettes/Bcx_Resources_Project/PUT_/projects/2937644/should_update_an_existing_project.yml +58 -0
  27. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/1/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +59 -0
  28. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/1/todolists/completed_json/should_be_an_array.yml +59 -0
  29. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/123/todolists/456_json/should_have_the_correct_id.yml +67 -0
  30. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/123/todolists/456_json/should_return_a_hash.yml +67 -0
  31. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2937644/todolists_json/first_todolist_should_have_the_correct_id.yml +114 -0
  32. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2937644/todolists_json/should_be_an_array.yml +114 -0
  33. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2956584/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +59 -0
  34. data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2956584/todolists/completed_json/should_be_an_array.yml +59 -0
  35. data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +60 -0
  36. data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists/completed_json/should_be_an_array.yml +60 -0
  37. data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists_json/first_todolist_should_have_the_correct_id.yml +60 -0
  38. data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists_json/should_be_an_array.yml +60 -0
  39. data/spec/cassettes/Bcx_Resources_Todolist/projects/123/todolists_json/should_create_a_new_todolist.yml +62 -0
  40. data/spec/spec_helper.rb +21 -0
  41. metadata +103 -8
@@ -0,0 +1,114 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/projects/2937644/todolists.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:38:54 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/projects/2937644/todolists.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Thu, 17 May 2012 19:52:13 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - b0534ded-e552-4418-87eb-5773782ddcf7
51
+ x-runtime:
52
+ - '0.321041'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[]'
56
+ http_version:
57
+ recorded_at: Tue, 28 May 2013 20:38:54 GMT
58
+ - request:
59
+ method: get
60
+ uri: https://basecamp.com/2274488/api/v1/projects/2956584/todolists.json
61
+ body:
62
+ encoding: US-ASCII
63
+ string: ''
64
+ headers:
65
+ User-Agent:
66
+ - Faraday v0.8.7
67
+ Content-Type:
68
+ - application/json
69
+ Authorization:
70
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
71
+ response:
72
+ status:
73
+ code: 200
74
+ message:
75
+ headers:
76
+ server:
77
+ - nginx
78
+ date:
79
+ - Tue, 28 May 2013 20:42:24 GMT
80
+ content-type:
81
+ - application/json; charset=utf-8
82
+ transfer-encoding:
83
+ - chunked
84
+ connection:
85
+ - close
86
+ status:
87
+ - 200 OK
88
+ x-frame-options:
89
+ - SAMEORIGIN
90
+ x-xss-protection:
91
+ - 1; mode=block
92
+ x-content-type-options:
93
+ - nosniff
94
+ x-ua-compatible:
95
+ - chrome=1
96
+ x-xhr-current-location:
97
+ - /2274488/api/v1/projects/2956584/todolists.json
98
+ x-asset-paths:
99
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
100
+ last-modified:
101
+ - Tue, 28 May 2013 20:41:46 GMT
102
+ cache-control:
103
+ - max-age=0, private, must-revalidate
104
+ x-request-id:
105
+ - 1d398a3b-003d-4453-ab7d-f5d1bb486f8c
106
+ x-runtime:
107
+ - '0.299948'
108
+ body:
109
+ encoding: US-ASCII
110
+ string: ! '[{"id":7701209,"name":"First todolist","description":null,"created_at":"2013-05-28T20:41:46.000Z","updated_at":"2013-05-28T20:41:46.000Z","completed":false,"position":1,"remaining_count":0,"completed_count":0,"creator":{"id":4666033,"name":"Paul
111
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701209-first-todolist.json"}]'
112
+ http_version:
113
+ recorded_at: Tue, 28 May 2013 20:42:24 GMT
114
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,59 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/projects/2956584/todolists/completed.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:20 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/projects/2956584/todolists/completed.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - b680210a-a4ed-486d-aab8-00a287cb19d0
51
+ x-runtime:
52
+ - '0.572896'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701289,"name":"Second todolist","description":null,"created_at":"2013-05-28T20:45:08.000Z","updated_at":"2013-05-28T20:45:19.000Z","completed":true,"position":1,"remaining_count":0,"completed_count":2,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701289-second-todolist.json"}]'
57
+ http_version:
58
+ recorded_at: Tue, 28 May 2013 20:50:20 GMT
59
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,59 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/projects/2956584/todolists/completed.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:19 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/projects/2956584/todolists/completed.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - 2624fee2-4ab8-4ae6-b9a9-42db7cf13df5
51
+ x-runtime:
52
+ - '0.423042'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701289,"name":"Second todolist","description":null,"created_at":"2013-05-28T20:45:08.000Z","updated_at":"2013-05-28T20:45:19.000Z","completed":true,"position":1,"remaining_count":0,"completed_count":2,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701289-second-todolist.json"}]'
57
+ http_version:
58
+ recorded_at: Tue, 28 May 2013 20:50:19 GMT
59
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,60 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/todolists/completed.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:24 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/todolists/completed.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - 38d96f5c-9d79-4066-afb3-8d278b9bf116
51
+ x-runtime:
52
+ - '0.332818'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701289,"name":"Second todolist","description":null,"created_at":"2013-05-28T20:45:08.000Z","updated_at":"2013-05-28T20:45:19.000Z","completed":true,"position":1,"remaining_count":0,"completed_count":2,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"bucket":{"type":"Project","id":2956584,"name":"New
57
+ project","url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project.json"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701289-second-todolist.json"}]'
58
+ http_version:
59
+ recorded_at: Tue, 28 May 2013 20:50:24 GMT
60
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,60 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/todolists/completed.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:23 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/todolists/completed.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - 713d6772-c0c1-40a9-a55b-9fcd6c135cec
51
+ x-runtime:
52
+ - '0.387766'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701289,"name":"Second todolist","description":null,"created_at":"2013-05-28T20:45:08.000Z","updated_at":"2013-05-28T20:45:19.000Z","completed":true,"position":1,"remaining_count":0,"completed_count":2,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"bucket":{"type":"Project","id":2956584,"name":"New
57
+ project","url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project.json"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701289-second-todolist.json"}]'
58
+ http_version:
59
+ recorded_at: Tue, 28 May 2013 20:50:23 GMT
60
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,60 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/todolists.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:22 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/todolists.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - aef4c91e-d656-4a41-82ac-d1d1270651ef
51
+ x-runtime:
52
+ - '0.335556'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701209,"name":"First todolist","description":null,"created_at":"2013-05-28T20:41:46.000Z","updated_at":"2013-05-28T20:45:40.000Z","completed":false,"position":1,"remaining_count":1,"completed_count":0,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"bucket":{"type":"Project","id":2956584,"name":"New
57
+ project","url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project.json"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701209-first-todolist.json"}]'
58
+ http_version:
59
+ recorded_at: Tue, 28 May 2013 20:50:22 GMT
60
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,60 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://basecamp.com/2274488/api/v1/todolists.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.7
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx
23
+ date:
24
+ - Tue, 28 May 2013 20:50:21 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ x-frame-options:
34
+ - SAMEORIGIN
35
+ x-xss-protection:
36
+ - 1; mode=block
37
+ x-content-type-options:
38
+ - nosniff
39
+ x-ua-compatible:
40
+ - chrome=1
41
+ x-xhr-current-location:
42
+ - /2274488/api/v1/todolists.json
43
+ x-asset-paths:
44
+ - ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
45
+ last-modified:
46
+ - Tue, 28 May 2013 20:45:40 GMT
47
+ cache-control:
48
+ - max-age=0, private, must-revalidate
49
+ x-request-id:
50
+ - d3f4f765-e948-4dda-b2ff-51d4c7f40182
51
+ x-runtime:
52
+ - '0.375199'
53
+ body:
54
+ encoding: US-ASCII
55
+ string: ! '[{"id":7701209,"name":"First todolist","description":null,"created_at":"2013-05-28T20:41:46.000Z","updated_at":"2013-05-28T20:45:40.000Z","completed":false,"position":1,"remaining_count":1,"completed_count":0,"creator":{"id":4666033,"name":"Paul
56
+ Springett","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/default_avatar_v1_3/avatar.gif?r=3"},"bucket":{"type":"Project","id":2956584,"name":"New
57
+ project","url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project.json"},"url":"https://basecamp.com/2274488/api/v1/projects/2956584-new-project/todolists/7701209-first-todolist.json"}]'
58
+ http_version:
59
+ recorded_at: Tue, 28 May 2013 20:50:21 GMT
60
+ recorded_with: VCR 2.5.0