desk_api 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +49 -34
  3. data/config.rb +1 -1
  4. data/desk_api.gemspec +3 -3
  5. data/lib/desk.rb +1 -35
  6. data/lib/desk_api.rb +35 -0
  7. data/lib/{desk → desk_api}/action/create.rb +1 -1
  8. data/lib/{desk → desk_api}/action/delete.rb +1 -1
  9. data/lib/{desk → desk_api}/action/embedded.rb +1 -1
  10. data/lib/{desk → desk_api}/action/field.rb +3 -3
  11. data/lib/{desk → desk_api}/action/link.rb +2 -2
  12. data/lib/desk_api/action/resource.rb +14 -0
  13. data/lib/{desk → desk_api}/action/search.rb +1 -1
  14. data/lib/{desk → desk_api}/action/update.rb +2 -2
  15. data/lib/{desk → desk_api}/client.rb +15 -15
  16. data/lib/{desk → desk_api}/configuration.rb +13 -13
  17. data/lib/{desk → desk_api}/default.rb +5 -5
  18. data/lib/{desk → desk_api}/error.rb +5 -5
  19. data/lib/{desk → desk_api}/error/bad_gateway.rb +3 -3
  20. data/lib/{desk → desk_api}/error/bad_request.rb +3 -3
  21. data/lib/{desk → desk_api}/error/client_error.rb +3 -3
  22. data/lib/{desk → desk_api}/error/configuration_error.rb +2 -2
  23. data/lib/{desk → desk_api}/error/conflict.rb +3 -3
  24. data/lib/{desk → desk_api}/error/forbidden.rb +3 -3
  25. data/lib/{desk → desk_api}/error/gateway_timeout.rb +3 -3
  26. data/lib/desk_api/error/internal_server_error.rb +10 -0
  27. data/lib/{desk → desk_api}/error/method_not_allowed.rb +3 -3
  28. data/lib/{desk → desk_api}/error/method_not_supported.rb +3 -3
  29. data/lib/{desk → desk_api}/error/not_acceptable.rb +3 -3
  30. data/lib/{desk → desk_api}/error/not_found.rb +3 -3
  31. data/lib/desk_api/error/parse_error.rb +9 -0
  32. data/lib/desk_api/error/parser_error.rb +9 -0
  33. data/lib/{desk → desk_api}/error/server_error.rb +3 -3
  34. data/lib/desk_api/error/service_unavailable.rb +10 -0
  35. data/lib/{desk → desk_api}/error/too_many_requests.rb +3 -3
  36. data/lib/{desk → desk_api}/error/unauthorized.rb +3 -3
  37. data/lib/{desk → desk_api}/error/unprocessable_entity.rb +3 -3
  38. data/lib/{desk → desk_api}/error/unsupported_media_type.rb +3 -3
  39. data/lib/{desk → desk_api}/rate_limit.rb +1 -1
  40. data/lib/{desk → desk_api}/request/retry.rb +2 -2
  41. data/lib/{desk → desk_api}/resource.rb +16 -16
  42. data/lib/desk_api/resource/article.rb +10 -0
  43. data/lib/desk_api/resource/article_translation.rb +8 -0
  44. data/lib/desk_api/resource/attachment.rb +8 -0
  45. data/lib/desk_api/resource/case.rb +9 -0
  46. data/lib/desk_api/resource/company.rb +8 -0
  47. data/lib/desk_api/resource/customer.rb +9 -0
  48. data/lib/desk_api/resource/integration_url.rb +9 -0
  49. data/lib/desk_api/resource/job.rb +7 -0
  50. data/lib/desk_api/resource/label.rb +9 -0
  51. data/lib/desk_api/resource/macro.rb +9 -0
  52. data/lib/desk_api/resource/macro_action.rb +7 -0
  53. data/lib/desk_api/resource/note.rb +7 -0
  54. data/lib/{desk → desk_api}/resource/page.rb +5 -5
  55. data/lib/desk_api/resource/reply.rb +8 -0
  56. data/lib/desk_api/resource/topic.rb +9 -0
  57. data/lib/desk_api/resource/topic_translation.rb +9 -0
  58. data/lib/desk_api/resource/user_preference.rb +7 -0
  59. data/lib/{desk → desk_api}/resources.json +0 -0
  60. data/lib/desk_api/response/raise_error.rb +34 -0
  61. data/lib/desk_api/version.rb +3 -0
  62. data/spec/cassettes/{Desk_Client → DeskApi_Client}/_delete/deletes_a_resource.yml +5 -5
  63. data/spec/cassettes/{Desk_Client → DeskApi_Client}/_get/fetches_resources.yml +5 -5
  64. data/spec/cassettes/{Desk_Client → DeskApi_Client}/_patch/updates_a_resource.yml +6 -6
  65. data/spec/cassettes/{Desk_Client → DeskApi_Client}/_post/creates_a_resource.yml +8 -8
  66. data/spec/cassettes/{Desk_Error → DeskApi_Error}/_from_response/can_be_created_from_a_faraday_response.yml +5 -5
  67. data/spec/cassettes/{Desk_Error → DeskApi_Error}/_from_response/uses_the_body_message_if_present.yml +5 -5
  68. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_by_url/finds_resources_by_url.yml +7 -7
  69. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_create/creates_a_new_topic.yml +8 -8
  70. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_delete/deletes_a_resource.yml +25 -26
  71. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_delete/throws_an_error_deleting_a_non_deletalbe_resource.yml +6 -6
  72. data/spec/cassettes/{Desk_Resource_Page/_page/returns_the_current_page_and_loads_if_page_not_defined.yml → DeskApi_Resource/_exec_/can_be_forced_to_reload.yml} +6 -6
  73. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_exec_/loads_the_current_resource.yml +7 -7
  74. data/spec/cassettes/{Desk_Resource/_exec_/can_be_forced_to_reload.yml → DeskApi_Resource/_method_missing/loads_the_resource_to_find_a_suitable_method.yml} +6 -6
  75. data/spec/cassettes/{Desk_Resource/_method_missing/loads_the_resource_to_find_a_suitable_method.yml → DeskApi_Resource/_method_missing/raises_an_error_if_method_does_not_exist.yml} +7 -7
  76. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_search/allows_searching_on_search_enabled_resources.yml +5 -5
  77. data/spec/cassettes/DeskApi_Resource/_update/can_update_without_a_hash.yml +116 -0
  78. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_update/throws_an_error_updating_a_user.yml +5 -5
  79. data/spec/cassettes/{Desk_Resource → DeskApi_Resource}/_update/updates_a_topic.yml +18 -20
  80. data/spec/cassettes/{Desk_Resource_Page → DeskApi_Resource_Page}/_by_id/loads_the_requested_resource.yml +5 -5
  81. data/spec/cassettes/{Desk_Resource_Page → DeskApi_Resource_Page}/_page/keeps_the_resource_as_loaded.yml +5 -5
  82. data/spec/cassettes/{Desk_Resource/_method_missing/raises_an_error_if_method_does_not_exist.yml → DeskApi_Resource_Page/_page/returns_the_current_page_and_loads_if_page_not_defined.yml} +6 -6
  83. data/spec/cassettes/{Desk_Resource_Page → DeskApi_Resource_Page}/_page/sets_the_resource_to_not_loaded.yml +5 -5
  84. data/spec/{desk → desk_api}/client_spec.rb +14 -14
  85. data/spec/{desk → desk_api}/configuration_spec.rb +23 -23
  86. data/spec/{desk → desk_api}/default_spec.rb +5 -5
  87. data/spec/{desk → desk_api}/error_spec.rb +4 -4
  88. data/spec/{desk → desk_api}/rate_limit_spec.rb +7 -7
  89. data/spec/{desk → desk_api}/request/retry_spec.rb +3 -3
  90. data/spec/{desk → desk_api}/resource_spec.rb +17 -10
  91. data/spec/{desk → desk_api}/resources/page_spec.rb +5 -5
  92. data/spec/{desk_spec.rb → desk_api_spec.rb} +10 -10
  93. data/spec/spec_helper.rb +1 -1
  94. metadata +121 -118
  95. data/lib/desk/action/resource.rb +0 -14
  96. data/lib/desk/error/internal_server_error.rb +0 -10
  97. data/lib/desk/error/parse_error.rb +0 -9
  98. data/lib/desk/error/parser_error.rb +0 -9
  99. data/lib/desk/error/service_unavailable.rb +0 -10
  100. data/lib/desk/resource/article.rb +0 -10
  101. data/lib/desk/resource/article_translation.rb +0 -8
  102. data/lib/desk/resource/attachment.rb +0 -8
  103. data/lib/desk/resource/case.rb +0 -9
  104. data/lib/desk/resource/company.rb +0 -8
  105. data/lib/desk/resource/customer.rb +0 -9
  106. data/lib/desk/resource/integration_url.rb +0 -9
  107. data/lib/desk/resource/job.rb +0 -7
  108. data/lib/desk/resource/label.rb +0 -9
  109. data/lib/desk/resource/macro.rb +0 -9
  110. data/lib/desk/resource/macro_action.rb +0 -7
  111. data/lib/desk/resource/note.rb +0 -7
  112. data/lib/desk/resource/reply.rb +0 -8
  113. data/lib/desk/resource/topic.rb +0 -9
  114. data/lib/desk/resource/topic_translation.rb +0 -9
  115. data/lib/desk/resource/user_preference.rb +0 -7
  116. data/lib/desk/response/raise_error.rb +0 -34
  117. data/lib/desk/version.rb +0 -3
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Customer < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Search
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class IntegrationUrl < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Delete
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Job < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Article < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Delete
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Macro < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Delete
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ module DeskApi
2
+ class Resource
3
+ class MacroAction < DeskApi::Resource
4
+ include DeskApi::Action::Update
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Note < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ end
6
+ end
7
+ end
@@ -1,8 +1,8 @@
1
- module Desk
1
+ module DeskApi
2
2
  class Resource
3
- class Page < Desk::Resource
3
+ class Page < DeskApi::Resource
4
4
  include Enumerable
5
- include Desk::Action::Embedded
5
+ include DeskApi::Action::Embedded
6
6
 
7
7
  [
8
8
  :all?, :any?,
@@ -17,14 +17,14 @@ module Desk
17
17
  end
18
18
 
19
19
  def search(params)
20
- raise Desk::Error::MethodNotSupported unless base_class.respond_to?(:search)
20
+ raise DeskApi::Error::MethodNotSupported unless base_class.respond_to?(:search)
21
21
  url = Addressable::URI.parse(clean_base_url + '/search')
22
22
  url.query_values = params
23
23
  base_class.search(client, url.to_s).exec!
24
24
  end
25
25
 
26
26
  def create(params)
27
- raise Desk::Error::MethodNotSupported unless base_class.respond_to?(:create)
27
+ raise DeskApi::Error::MethodNotSupported unless base_class.respond_to?(:create)
28
28
  base_class.create(client, clean_base_url, params)
29
29
  end
30
30
 
@@ -0,0 +1,8 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Reply < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class Topic < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Delete
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module DeskApi
2
+ class Resource
3
+ class TopicTranslation < DeskApi::Resource
4
+ include DeskApi::Action::Create
5
+ include DeskApi::Action::Update
6
+ include DeskApi::Action::Delete
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ module DeskApi
2
+ class Resource
3
+ class UserPreference < DeskApi::Resource
4
+ include DeskApi::Action::Update
5
+ end
6
+ end
7
+ end
File without changes
@@ -0,0 +1,34 @@
1
+ require 'faraday'
2
+ require 'desk_api/error/bad_gateway'
3
+ require 'desk_api/error/bad_request'
4
+ require 'desk_api/error/conflict'
5
+ require 'desk_api/error/forbidden'
6
+ require 'desk_api/error/gateway_timeout'
7
+ require 'desk_api/error/internal_server_error'
8
+ require 'desk_api/error/method_not_allowed'
9
+ require 'desk_api/error/not_acceptable'
10
+ require 'desk_api/error/not_found'
11
+ require 'desk_api/error/service_unavailable'
12
+ require 'desk_api/error/too_many_requests'
13
+ require 'desk_api/error/unauthorized'
14
+ require 'desk_api/error/unprocessable_entity'
15
+ require 'desk_api/error/unsupported_media_type'
16
+
17
+ module DeskApi
18
+ module Response
19
+ class RaiseError < Faraday::Response::Middleware
20
+ def on_complete(env)
21
+ status_code = env[:status].to_i
22
+ error_class = @klass.errors[status_code]
23
+ raise error_class.from_response(env) if error_class
24
+ end
25
+
26
+ def initialize(app, klass)
27
+ @klass = klass
28
+ super(app)
29
+ end
30
+ end
31
+
32
+ Faraday.register_middleware :response, raise_error: lambda { RaiseError}
33
+ end
34
+ end
@@ -0,0 +1,3 @@
1
+ module DeskApi
2
+ VERSION = '0.1.1'
3
+ end
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: delete
5
- uri: https://devel.desk.com/api/v2/topics/556401
5
+ uri: https://devel.desk.com/api/v2/topics/558245
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
@@ -21,7 +21,7 @@ http_interactions:
21
21
  Cache-Control:
22
22
  - no-cache
23
23
  Date:
24
- - Thu, 15 Aug 2013 21:25:38 GMT
24
+ - Mon, 19 Aug 2013 23:53:31 GMT
25
25
  Status:
26
26
  - 204 No Content
27
27
  Vary:
@@ -35,14 +35,14 @@ http_interactions:
35
35
  X-Rate-Limit-Remaining:
36
36
  - '59'
37
37
  X-Rate-Limit-Reset:
38
- - '22'
38
+ - '29'
39
39
  X-Request-Id:
40
- - 207b551751f30fa3c1f74de6c8439d47
40
+ - d699571cf1eeca0714f02b9ee61bcbd8
41
41
  Connection:
42
42
  - keep-alive
43
43
  body:
44
44
  encoding: UTF-8
45
45
  string: ''
46
46
  http_version:
47
- recorded_at: Thu, 15 Aug 2013 21:25:38 GMT
47
+ recorded_at: Mon, 19 Aug 2013 23:53:31 GMT
48
48
  recorded_with: VCR 2.5.0
@@ -23,7 +23,7 @@ http_interactions:
23
23
  Content-Type:
24
24
  - application/json; charset=utf-8
25
25
  Date:
26
- - Thu, 15 Aug 2013 21:20:31 GMT
26
+ - Mon, 19 Aug 2013 23:51:35 GMT
27
27
  ETag:
28
28
  - '"31cb249bf0be971be83b891b995e19f4"'
29
29
  Status:
@@ -37,11 +37,11 @@ http_interactions:
37
37
  X-Rate-Limit-Limit:
38
38
  - '60'
39
39
  X-Rate-Limit-Remaining:
40
- - '58'
40
+ - '36'
41
41
  X-Rate-Limit-Reset:
42
- - '29'
42
+ - '25'
43
43
  X-Request-Id:
44
- - 8b43d4f91183871f761bee73f9bca5a7
44
+ - c57375cb946f6c499ce01ecdc8e35527
45
45
  Content-Length:
46
46
  - '942'
47
47
  Connection:
@@ -51,5 +51,5 @@ http_interactions:
51
51
  string: '{"external_id":"","subject":"Testing Quick Case","priority":8,"locked_until":null,"description":"Some
52
52
  additional Description regarding this email.","status":"resolved","type":"email","labels":[],"language":"de","active_at":"2013-05-10T19:08:27Z","created_at":"2013-05-10T19:08:10Z","updated_at":"2013-05-10T19:08:10Z","received_at":null,"custom_fields":{"my_new_custom_field":null,"my_new_number_field":null,"my_new_date_field":null,"my_new_boolean_field":null,"my_new_list_field":null},"_links":{"self":{"href":"/api/v2/cases/3014","class":"case"},"message":{"href":"/api/v2/cases/3014/message","class":"email"},"customer":{"href":"/api/v2/customers/37823480","class":"customer"},"assigned_user":null,"assigned_group":null,"locked_by":null,"replies":{"href":"/api/v2/cases/3014/replies","class":"reply"},"notes":{"href":"/api/v2/cases/3014/notes","class":"note"},"attachments":{"href":"/api/v2/cases/3014/attachments","class":"attachment"}}}'
53
53
  http_version:
54
- recorded_at: Thu, 15 Aug 2013 21:20:31 GMT
54
+ recorded_at: Mon, 19 Aug 2013 23:51:35 GMT
55
55
  recorded_with: VCR 2.5.0
@@ -23,7 +23,7 @@ http_interactions:
23
23
  Content-Type:
24
24
  - application/json; charset=utf-8
25
25
  Date:
26
- - Thu, 15 Aug 2013 21:26:17 GMT
26
+ - Mon, 19 Aug 2013 23:51:35 GMT
27
27
  ETag:
28
28
  - '"02ad91e6c4bff038228c0649f84e02f2"'
29
29
  Server:
@@ -41,13 +41,13 @@ http_interactions:
41
41
  X-Rate-Limit-Limit:
42
42
  - '60'
43
43
  X-Rate-Limit-Remaining:
44
- - '59'
44
+ - '37'
45
45
  X-Rate-Limit-Reset:
46
- - '43'
46
+ - '25'
47
47
  X-Request-Id:
48
- - 7f096fa617be76a27a19e8681eb4ce1c
48
+ - 2cf01c7ab3a9ebb4c876b80ad417570f
49
49
  X-Runtime:
50
- - '0.109308'
50
+ - '0.120622'
51
51
  X-UA-Compatible:
52
52
  - IE=Edge,chrome=1
53
53
  Content-Length:
@@ -58,5 +58,5 @@ http_interactions:
58
58
  encoding: UTF-8
59
59
  string: '{"name":"Test Updated Topic","description":null,"position":2,"allow_questions":true,"in_support_center":null,"created_at":"2013-08-14T19:37:08Z","updated_at":"2013-08-15T21:26:17Z","_links":{"self":{"href":"/api/v2/topics/556402","class":"topic"},"articles":{"href":"/api/v2/topics/556402/articles","class":"article"},"translations":{"href":"/api/v2/topics/556402/translations","class":"topic_translation"}}}'
60
60
  http_version:
61
- recorded_at: Thu, 15 Aug 2013 21:26:17 GMT
61
+ recorded_at: Mon, 19 Aug 2013 23:51:35 GMT
62
62
  recorded_with: VCR 2.5.0
@@ -25,11 +25,11 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=utf-8
27
27
  Date:
28
- - Thu, 15 Aug 2013 21:20:31 GMT
28
+ - Mon, 19 Aug 2013 23:51:35 GMT
29
29
  ETag:
30
- - '"3c4f0bfe1c766352a73767947ef10d16"'
30
+ - '"d2a4b62bd50a12b48e02ab932b328c01"'
31
31
  Location:
32
- - https://devel.desk.com/api/v2/topics/556907
32
+ - https://devel.desk.com/api/v2/topics/558245
33
33
  Status:
34
34
  - 201 Created
35
35
  Vary:
@@ -41,18 +41,18 @@ http_interactions:
41
41
  X-Rate-Limit-Limit:
42
42
  - '60'
43
43
  X-Rate-Limit-Remaining:
44
- - '57'
44
+ - '38'
45
45
  X-Rate-Limit-Reset:
46
- - '29'
46
+ - '25'
47
47
  X-Request-Id:
48
- - 5674ba3810d8890b8a42aee61fd07310
48
+ - 54760404a640fbfe0a3bff1656fee0a0
49
49
  Content-Length:
50
50
  - '400'
51
51
  Connection:
52
52
  - keep-alive
53
53
  body:
54
54
  encoding: UTF-8
55
- string: '{"name":"Test Topic","description":null,"position":4,"allow_questions":true,"in_support_center":null,"created_at":"2013-08-15T21:20:31Z","updated_at":"2013-08-15T21:20:31Z","_links":{"self":{"href":"/api/v2/topics/556907","class":"topic"},"articles":{"href":"/api/v2/topics/556907/articles","class":"article"},"translations":{"href":"/api/v2/topics/556907/translations","class":"topic_translation"}}}'
55
+ string: '{"name":"Test Topic","description":null,"position":5,"allow_questions":true,"in_support_center":null,"created_at":"2013-08-19T23:51:35Z","updated_at":"2013-08-19T23:51:35Z","_links":{"self":{"href":"/api/v2/topics/558245","class":"topic"},"articles":{"href":"/api/v2/topics/558245/articles","class":"article"},"translations":{"href":"/api/v2/topics/558245/translations","class":"topic_translation"}}}'
56
56
  http_version:
57
- recorded_at: Thu, 15 Aug 2013 21:20:31 GMT
57
+ recorded_at: Mon, 19 Aug 2013 23:51:35 GMT
58
58
  recorded_with: VCR 2.5.0
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=utf-8
27
27
  Date:
28
- - Thu, 15 Aug 2013 21:20:33 GMT
28
+ - Mon, 19 Aug 2013 23:51:35 GMT
29
29
  Status:
30
30
  - 422 Unprocessable Entity
31
31
  Vary:
@@ -37,11 +37,11 @@ http_interactions:
37
37
  X-Rate-Limit-Limit:
38
38
  - '60'
39
39
  X-Rate-Limit-Remaining:
40
- - '41'
40
+ - '35'
41
41
  X-Rate-Limit-Reset:
42
- - '27'
42
+ - '25'
43
43
  X-Request-Id:
44
- - ea7ad37529e40967a818f50ff549a92f
44
+ - becf179db61ace2d1f037a1bfdd58c86
45
45
  Content-Length:
46
46
  - '71'
47
47
  Connection:
@@ -50,5 +50,5 @@ http_interactions:
50
50
  encoding: UTF-8
51
51
  string: '{"message":"Validation Failed","errors":{"_links":{"topic":["blank"]}}}'
52
52
  http_version:
53
- recorded_at: Thu, 15 Aug 2013 21:20:33 GMT
53
+ recorded_at: Mon, 19 Aug 2013 23:51:35 GMT
54
54
  recorded_with: VCR 2.5.0
@@ -25,7 +25,7 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=utf-8
27
27
  Date:
28
- - Thu, 15 Aug 2013 21:20:34 GMT
28
+ - Mon, 19 Aug 2013 23:51:35 GMT
29
29
  Status:
30
30
  - 422 Unprocessable Entity
31
31
  Vary:
@@ -37,11 +37,11 @@ http_interactions:
37
37
  X-Rate-Limit-Limit:
38
38
  - '60'
39
39
  X-Rate-Limit-Remaining:
40
- - '40'
40
+ - '34'
41
41
  X-Rate-Limit-Reset:
42
- - '26'
42
+ - '25'
43
43
  X-Request-Id:
44
- - 9329fb9e911477d8a2527a0fc833461a
44
+ - 6cc0437c55b08577a71d1791c92732d1
45
45
  Content-Length:
46
46
  - '71'
47
47
  Connection:
@@ -50,5 +50,5 @@ http_interactions:
50
50
  encoding: UTF-8
51
51
  string: '{"message":"Validation Failed","errors":{"_links":{"topic":["blank"]}}}'
52
52
  http_version:
53
- recorded_at: Thu, 15 Aug 2013 21:20:34 GMT
53
+ recorded_at: Mon, 19 Aug 2013 23:51:35 GMT
54
54
  recorded_with: VCR 2.5.0
@@ -23,9 +23,9 @@ http_interactions:
23
23
  Content-Type:
24
24
  - application/json; charset=utf-8
25
25
  Date:
26
- - Thu, 15 Aug 2013 21:20:32 GMT
26
+ - Mon, 19 Aug 2013 23:51:34 GMT
27
27
  ETag:
28
- - '"13b3639ad423f0298f52f6782b69c3d1"'
28
+ - '"9c195d070361a74830027d6597f70068"'
29
29
  Status:
30
30
  - 200 OK
31
31
  Vary:
@@ -37,11 +37,11 @@ http_interactions:
37
37
  X-Rate-Limit-Limit:
38
38
  - '60'
39
39
  X-Rate-Limit-Remaining:
40
- - '48'
40
+ - '41'
41
41
  X-Rate-Limit-Reset:
42
- - '28'
42
+ - '26'
43
43
  X-Request-Id:
44
- - ae8df696c5ba322cc0780cf21f677630
44
+ - 873b3d92ff9101126801b0ad2e6576dc
45
45
  Content-Length:
46
46
  - '20825'
47
47
  Connection:
@@ -307,7 +307,7 @@ http_interactions:
307
307
  Latin words, combined with a handful of model sentence structures, to generate
308
308
  Lorem Ipsum which looks reasonable. The generated Lorem Ipsum is therefore
309
309
  always free from repetition, injected humour, or non-characteristic words
310
- etc.","body_facebook_auto":true,"keywords":"","position":1,"quickcode":null,"in_support_center":true,"internal_notes":"","publish_at":"2013-08-05T01:13:36Z","created_at":"2013-07-05T15:45:25Z","updated_at":"2013-08-15T21:20:32Z","_links":{"self":{"href":"/api/v2/articles/1213277","class":"article"},"topic":{"href":"/api/v2/topics/498301","class":"topic"},"translations":{"href":"/api/v2/articles/1213277/translations","class":"article_translation"}}}'
310
+ etc.","body_facebook_auto":true,"keywords":"","position":1,"quickcode":null,"in_support_center":true,"internal_notes":"","publish_at":"2013-08-05T01:13:36Z","created_at":"2013-07-05T15:45:25Z","updated_at":"2013-08-19T23:51:33Z","_links":{"self":{"href":"/api/v2/articles/1213277","class":"article"},"topic":{"href":"/api/v2/topics/498301","class":"topic"},"translations":{"href":"/api/v2/articles/1213277/translations","class":"article_translation"}}}'
311
311
  http_version:
312
- recorded_at: Thu, 15 Aug 2013 21:20:32 GMT
312
+ recorded_at: Mon, 19 Aug 2013 23:51:34 GMT
313
313
  recorded_with: VCR 2.5.0
@@ -25,11 +25,11 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=utf-8
27
27
  Date:
28
- - Thu, 15 Aug 2013 21:20:32 GMT
28
+ - Mon, 19 Aug 2013 23:51:34 GMT
29
29
  ETag:
30
- - '"c0bf83a9a262a8d228d6fe2561304ffa"'
30
+ - '"bab2dddbec638f47dbb9481cc01e4659"'
31
31
  Location:
32
- - https://devel.desk.com/api/v2/topics/556908
32
+ - https://devel.desk.com/api/v2/topics/558244
33
33
  Status:
34
34
  - 201 Created
35
35
  Vary:
@@ -41,18 +41,18 @@ http_interactions:
41
41
  X-Rate-Limit-Limit:
42
42
  - '60'
43
43
  X-Rate-Limit-Remaining:
44
- - '49'
44
+ - '42'
45
45
  X-Rate-Limit-Reset:
46
- - '28'
46
+ - '26'
47
47
  X-Request-Id:
48
- - 66ac5d2b40d3acf6a840deea8cfe1da0
48
+ - 0b7a3ccc86a35ef7a27b131fd03aab84
49
49
  Content-Length:
50
50
  - '402'
51
51
  Connection:
52
52
  - keep-alive
53
53
  body:
54
54
  encoding: UTF-8
55
- string: '{"name":"My new topic","description":null,"position":5,"allow_questions":true,"in_support_center":null,"created_at":"2013-08-15T21:20:32Z","updated_at":"2013-08-15T21:20:32Z","_links":{"self":{"href":"/api/v2/topics/556908","class":"topic"},"articles":{"href":"/api/v2/topics/556908/articles","class":"article"},"translations":{"href":"/api/v2/topics/556908/translations","class":"topic_translation"}}}'
55
+ string: '{"name":"My new topic","description":null,"position":4,"allow_questions":true,"in_support_center":null,"created_at":"2013-08-19T23:51:34Z","updated_at":"2013-08-19T23:51:34Z","_links":{"self":{"href":"/api/v2/topics/558244","class":"topic"},"articles":{"href":"/api/v2/topics/558244/articles","class":"article"},"translations":{"href":"/api/v2/topics/558244/translations","class":"topic_translation"}}}'
56
56
  http_version:
57
- recorded_at: Thu, 15 Aug 2013 21:20:32 GMT
57
+ recorded_at: Mon, 19 Aug 2013 23:51:34 GMT
58
58
  recorded_with: VCR 2.5.0