zendesk_api 0.2.6 → 0.3.0

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 (121) hide show
  1. data/.gitignore +2 -1
  2. data/Gemfile +7 -0
  3. data/Gemfile.lock +10 -2
  4. data/LICENSE +176 -19
  5. data/Readme.md +13 -5
  6. data/config/newrelic.yml +255 -0
  7. data/lib/zendesk_api/association.rb +1 -1
  8. data/lib/zendesk_api/associations.rb +129 -100
  9. data/lib/zendesk_api/client.rb +44 -25
  10. data/lib/zendesk_api/collection.rb +83 -58
  11. data/lib/zendesk_api/console/extensions.rb +47 -28
  12. data/lib/zendesk_api/server/base.rb +4 -0
  13. data/lib/zendesk_api/server/docs/account_settings.md +8 -0
  14. data/lib/zendesk_api/server/docs/automations.md +6 -0
  15. data/lib/zendesk_api/server/docs/changes_roadmap.md +76 -1
  16. data/lib/zendesk_api/server/docs/forum_subscriptions.md +2 -2
  17. data/lib/zendesk_api/server/docs/introduction.md +4 -2
  18. data/lib/zendesk_api/server/docs/macros.md +2 -0
  19. data/lib/zendesk_api/server/docs/organizations.md +3 -4
  20. data/lib/zendesk_api/server/docs/requests.md +21 -7
  21. data/lib/zendesk_api/server/docs/tickets.md +64 -8
  22. data/lib/zendesk_api/server/docs/topic_subscriptions.md +3 -3
  23. data/lib/zendesk_api/server/docs/topic_votes.md +0 -1
  24. data/lib/zendesk_api/server/docs/triggers.md +7 -0
  25. data/lib/zendesk_api/server/docs/users.md +4 -4
  26. data/lib/zendesk_api/server/docs/views.md +57 -8
  27. data/lib/zendesk_api/server/public/doc/ZendeskAPI.html +131 -0
  28. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Ability.html +190 -0
  29. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Activity.html +616 -0
  30. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Attachment.html +362 -0
  31. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Automation.html +438 -0
  32. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Bookmark.html +243 -0
  33. data/lib/zendesk_api/server/public/doc/ZendeskAPI/CRMData.html +190 -0
  34. data/lib/zendesk_api/server/public/doc/ZendeskAPI/CRMDataStatus.html +190 -0
  35. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Category.html +462 -0
  36. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Client.html +1490 -0
  37. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Collection.html +2825 -0
  38. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Configuration.html +1212 -0
  39. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Console.html +860 -0
  40. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Console/Eval.html +190 -0
  41. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Create.html +134 -0
  42. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Create/ClassMethods.html +322 -0
  43. data/lib/zendesk_api/server/public/doc/ZendeskAPI/CreateResource.html +222 -0
  44. data/lib/zendesk_api/server/public/doc/ZendeskAPI/CustomRole.html +190 -0
  45. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Data.html +1432 -0
  46. data/lib/zendesk_api/server/public/doc/ZendeskAPI/DataResource.html +348 -0
  47. data/lib/zendesk_api/server/public/doc/ZendeskAPI/DeleteResource.html +216 -0
  48. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Destroy.html +307 -0
  49. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Destroy/ClassMethod.html +245 -0
  50. data/lib/zendesk_api/server/public/doc/ZendeskAPI/FormatError.html +123 -0
  51. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Forum.html +1196 -0
  52. data/lib/zendesk_api/server/public/doc/ZendeskAPI/ForumSubscription.html +616 -0
  53. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Group.html +243 -0
  54. data/lib/zendesk_api/server/public/doc/ZendeskAPI/GroupMembership.html +616 -0
  55. data/lib/zendesk_api/server/public/doc/ZendeskAPI/JobStatus.html +209 -0
  56. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Locale.html +209 -0
  57. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Macro.html +438 -0
  58. data/lib/zendesk_api/server/public/doc/ZendeskAPI/MobileDevice.html +361 -0
  59. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Organization.html +1016 -0
  60. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Read.html +278 -0
  61. data/lib/zendesk_api/server/public/doc/ZendeskAPI/ReadResource.html +220 -0
  62. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Request.html +826 -0
  63. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Request/Comment.html +604 -0
  64. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Resource.html +258 -0
  65. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Role.html +190 -0
  66. data/lib/zendesk_api/server/public/doc/ZendeskAPI/RuleExecution.html +383 -0
  67. data/lib/zendesk_api/server/public/doc/ZendeskAPI/SatisfactionRating.html +938 -0
  68. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Save.html +510 -0
  69. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Search.html +403 -0
  70. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Search/Result.html +166 -0
  71. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server.html +131 -0
  72. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/App.html +523 -0
  73. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/Helper.html +684 -0
  74. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/HtmlRenderer.html +303 -0
  75. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/HtmlRenderer/RedcarpetRenderer.html +508 -0
  76. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/UserRequest.html +125 -0
  77. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Server/ZlibJSON.html +244 -0
  78. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Setting.html +350 -0
  79. data/lib/zendesk_api/server/public/doc/ZendeskAPI/SharingAgreement.html +209 -0
  80. data/lib/zendesk_api/server/public/doc/ZendeskAPI/SingularResource.html +247 -0
  81. data/lib/zendesk_api/server/public/doc/ZendeskAPI/SuspendedTicket.html +342 -0
  82. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Ticket.html +2731 -0
  83. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Ticket/Audit.html +385 -0
  84. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Ticket/Comment.html +636 -0
  85. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Ticket/Tag.html +243 -0
  86. data/lib/zendesk_api/server/public/doc/ZendeskAPI/TicketField.html +243 -0
  87. data/lib/zendesk_api/server/public/doc/ZendeskAPI/TicketMetric.html +205 -0
  88. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Topic.html +1086 -0
  89. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Topic/TopicComment.html +232 -0
  90. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Topic/TopicVote.html +624 -0
  91. data/lib/zendesk_api/server/public/doc/ZendeskAPI/TopicComment.html +743 -0
  92. data/lib/zendesk_api/server/public/doc/ZendeskAPI/TopicSubscription.html +616 -0
  93. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Trigger.html +438 -0
  94. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Update.html +140 -0
  95. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Update/ClassMethod.html +237 -0
  96. data/lib/zendesk_api/server/public/doc/ZendeskAPI/UpdateResource.html +222 -0
  97. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Upload.html +404 -0
  98. data/lib/zendesk_api/server/public/doc/ZendeskAPI/User.html +3611 -0
  99. data/lib/zendesk_api/server/public/doc/ZendeskAPI/User/Identity.html +563 -0
  100. data/lib/zendesk_api/server/public/doc/ZendeskAPI/User/TopicComment.html +194 -0
  101. data/lib/zendesk_api/server/public/doc/ZendeskAPI/Verbs.html +338 -0
  102. data/lib/zendesk_api/server/public/doc/ZendeskAPI/View.html +1283 -0
  103. data/lib/zendesk_api/server/public/doc/ZendeskAPI/ViewCount.html +190 -0
  104. data/lib/zendesk_api/server/public/doc/ZendeskAPI/ViewRow.html +1342 -0
  105. data/lib/zendesk_api/server/public/doc/_index.html +799 -0
  106. data/lib/zendesk_api/server/public/doc/class_list.html +53 -0
  107. data/lib/zendesk_api/server/public/doc/css/common.css +1 -0
  108. data/lib/zendesk_api/server/public/doc/css/full_list.css +57 -0
  109. data/lib/zendesk_api/server/public/doc/css/style.css +328 -0
  110. data/lib/zendesk_api/server/public/doc/file.Readme.html +377 -0
  111. data/lib/zendesk_api/server/public/doc/file_list.html +55 -0
  112. data/lib/zendesk_api/server/public/doc/frames.html +28 -0
  113. data/lib/zendesk_api/server/public/doc/index.html +377 -0
  114. data/lib/zendesk_api/server/public/doc/js/app.js +214 -0
  115. data/lib/zendesk_api/server/public/doc/js/full_list.js +173 -0
  116. data/lib/zendesk_api/server/public/doc/js/jquery.js +4 -0
  117. data/lib/zendesk_api/server/public/doc/method_list.html +2540 -0
  118. data/lib/zendesk_api/server/public/doc/top-level-namespace.html +144 -0
  119. data/lib/zendesk_api/version.rb +1 -1
  120. data/zendesk_api.gemspec +1 -1
  121. metadata +96 -3
@@ -0,0 +1,53 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html>
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+
7
+ <link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
8
+
9
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
10
+
11
+
12
+
13
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
14
+
15
+ <script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
16
+
17
+
18
+ <base id="base_target" target="_parent" />
19
+ </head>
20
+ <body>
21
+ <script type="text/javascript" charset="utf-8">
22
+ if (window.top.frames.main) {
23
+ document.getElementById('base_target').target = 'main';
24
+ document.body.className = 'frames';
25
+ }
26
+ </script>
27
+ <div id="content">
28
+ <h1 id="full_list_header">Class List</h1>
29
+ <div id="nav">
30
+
31
+ <span><a target="_self" href="class_list.html">
32
+ Classes
33
+ </a></span>
34
+
35
+ <span><a target="_self" href="method_list.html">
36
+ Methods
37
+ </a></span>
38
+
39
+ <span><a target="_self" href="file_list.html">
40
+ Files
41
+ </a></span>
42
+
43
+ </div>
44
+ <div id="search">Search: <input type="text" /></div>
45
+
46
+ <ul id="full_list" class="class">
47
+ <li><span class='object_link'><a href="top-level-namespace.html" title=" (root)">Top Level Namespace</a></span></li>
48
+ <li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI.html" title="ZendeskAPI (module)">ZendeskAPI</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Ability.html" title="ZendeskAPI::Ability (class)">Ability</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Activity.html" title="ZendeskAPI::Activity (class)">Activity</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Attachment.html" title="ZendeskAPI::Attachment (class)">Attachment</a></span> &lt; Data<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Automation.html" title="ZendeskAPI::Automation (class)">Automation</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Bookmark.html" title="ZendeskAPI::Bookmark (class)">Bookmark</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/CRMData.html" title="ZendeskAPI::CRMData (class)">CRMData</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/CRMDataStatus.html" title="ZendeskAPI::CRMDataStatus (class)">CRMDataStatus</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Category.html" title="ZendeskAPI::Category (class)">Category</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Client.html" title="ZendeskAPI::Client (class)">Client</a></span> &lt; Object<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Collection.html" title="ZendeskAPI::Collection (class)">Collection</a></span> &lt; Object<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Configuration.html" title="ZendeskAPI::Configuration (class)">Configuration</a></span> &lt; Object<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Console.html" title="ZendeskAPI::Console (module)">Console</a></span><small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Console/Eval.html" title="ZendeskAPI::Console::Eval (module)">Eval</a></span><small class='search_info'>ZendeskAPI::Console</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Create.html" title="ZendeskAPI::Create (module)">Create</a></span><small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Create/ClassMethods.html" title="ZendeskAPI::Create::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>ZendeskAPI::Create</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/CreateResource.html" title="ZendeskAPI::CreateResource (class)">CreateResource</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/CustomRole.html" title="ZendeskAPI::CustomRole (class)">CustomRole</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Data.html" title="ZendeskAPI::Data (class)">Data</a></span> &lt; Object<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/DataResource.html" title="ZendeskAPI::DataResource (class)">DataResource</a></span> &lt; Data<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/DeleteResource.html" title="ZendeskAPI::DeleteResource (class)">DeleteResource</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Destroy.html" title="ZendeskAPI::Destroy (module)">Destroy</a></span><small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Destroy/ClassMethod.html" title="ZendeskAPI::Destroy::ClassMethod (module)">ClassMethod</a></span><small class='search_info'>ZendeskAPI::Destroy</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/FormatError.html" title="ZendeskAPI::FormatError (class)">FormatError</a></span> &lt; ArgumentError<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Forum.html" title="ZendeskAPI::Forum (class)">Forum</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/ForumSubscription.html" title="ZendeskAPI::ForumSubscription (class)">ForumSubscription</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Group.html" title="ZendeskAPI::Group (class)">Group</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/GroupMembership.html" title="ZendeskAPI::GroupMembership (class)">GroupMembership</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/JobStatus.html" title="ZendeskAPI::JobStatus (class)">JobStatus</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Locale.html" title="ZendeskAPI::Locale (class)">Locale</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Macro.html" title="ZendeskAPI::Macro (class)">Macro</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/MobileDevice.html" title="ZendeskAPI::MobileDevice (class)">MobileDevice</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Organization.html" title="ZendeskAPI::Organization (class)">Organization</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Read.html" title="ZendeskAPI::Read (module)">Read</a></span><small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/ReadResource.html" title="ZendeskAPI::ReadResource (class)">ReadResource</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Request.html" title="ZendeskAPI::Request (class)">Request</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Request/Comment.html" title="ZendeskAPI::Request::Comment (class)">Comment</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI::Request</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/Resource.html" title="ZendeskAPI::Resource (class)">Resource</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Role.html" title="ZendeskAPI::Role (class)">Role</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/RuleExecution.html" title="ZendeskAPI::RuleExecution (class)">RuleExecution</a></span> &lt; Data<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/SatisfactionRating.html" title="ZendeskAPI::SatisfactionRating (class)">SatisfactionRating</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Save.html" title="ZendeskAPI::Save (module)">Save</a></span><small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Search.html" title="ZendeskAPI::Search (class)">Search</a></span> &lt; Object<small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Search/Result.html" title="ZendeskAPI::Search::Result (class)">Result</a></span> &lt; Data<small class='search_info'>ZendeskAPI::Search</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Server.html" title="ZendeskAPI::Server (module)">Server</a></span><small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Server/App.html" title="ZendeskAPI::Server::App (class)">App</a></span> &lt; Base<small class='search_info'>ZendeskAPI::Server</small></li><li><span class='object_link'><a href="ZendeskAPI/Server/Helper.html" title="ZendeskAPI::Server::Helper (module)">Helper</a></span><small class='search_info'>ZendeskAPI::Server</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Server/HtmlRenderer.html" title="ZendeskAPI::Server::HtmlRenderer (class)">HtmlRenderer</a></span> &lt; Object<small class='search_info'>ZendeskAPI::Server</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Server/HtmlRenderer/RedcarpetRenderer.html" title="ZendeskAPI::Server::HtmlRenderer::RedcarpetRenderer (class)">RedcarpetRenderer</a></span> &lt; HTML<small class='search_info'>ZendeskAPI::Server::HtmlRenderer</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/Server/UserRequest.html" title="ZendeskAPI::Server::UserRequest (class)">UserRequest</a></span> &lt; Object<small class='search_info'>ZendeskAPI::Server</small></li><li><span class='object_link'><a href="ZendeskAPI/Server/ZlibJSON.html" title="ZendeskAPI::Server::ZlibJSON (class)">ZlibJSON</a></span> &lt; Hash<small class='search_info'>ZendeskAPI::Server</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/Setting.html" title="ZendeskAPI::Setting (class)">Setting</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/SharingAgreement.html" title="ZendeskAPI::SharingAgreement (class)">SharingAgreement</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/SingularResource.html" title="ZendeskAPI::SingularResource (class)">SingularResource</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/SuspendedTicket.html" title="ZendeskAPI::SuspendedTicket (class)">SuspendedTicket</a></span> &lt; ReadResource<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Ticket.html" title="ZendeskAPI::Ticket (class)">Ticket</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Ticket/Audit.html" title="ZendeskAPI::Ticket::Audit (class)">Audit</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI::Ticket</small></li><li><span class='object_link'><a href="ZendeskAPI/Ticket/Comment.html" title="ZendeskAPI::Ticket::Comment (class)">Comment</a></span> &lt; Data<small class='search_info'>ZendeskAPI::Ticket</small></li><li><span class='object_link'><a href="ZendeskAPI/Ticket/Tag.html" title="ZendeskAPI::Ticket::Tag (class)">Tag</a></span> &lt; Resource<small class='search_info'>ZendeskAPI::Ticket</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/TicketField.html" title="ZendeskAPI::TicketField (class)">TicketField</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/TicketMetric.html" title="ZendeskAPI::TicketMetric (class)">TicketMetric</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Topic.html" title="ZendeskAPI::Topic (class)">Topic</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Topic/TopicComment.html" title="ZendeskAPI::Topic::TopicComment (class)">TopicComment</a></span> &lt; TopicComment<small class='search_info'>ZendeskAPI::Topic</small></li><li><span class='object_link'><a href="ZendeskAPI/Topic/TopicVote.html" title="ZendeskAPI::Topic::TopicVote (class)">TopicVote</a></span> &lt; SingularResource<small class='search_info'>ZendeskAPI::Topic</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/TopicComment.html" title="ZendeskAPI::TopicComment (class)">TopicComment</a></span> &lt; Data<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/TopicSubscription.html" title="ZendeskAPI::TopicSubscription (class)">TopicSubscription</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Trigger.html" title="ZendeskAPI::Trigger (class)">Trigger</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/Update.html" title="ZendeskAPI::Update (module)">Update</a></span><small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/Update/ClassMethod.html" title="ZendeskAPI::Update::ClassMethod (module)">ClassMethod</a></span><small class='search_info'>ZendeskAPI::Update</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/UpdateResource.html" title="ZendeskAPI::UpdateResource (class)">UpdateResource</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/Upload.html" title="ZendeskAPI::Upload (class)">Upload</a></span> &lt; Data<small class='search_info'>ZendeskAPI</small></li><li><a class='toggle'></a> <span class='object_link'><a href="ZendeskAPI/User.html" title="ZendeskAPI::User (class)">User</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><ul><li><span class='object_link'><a href="ZendeskAPI/User/Identity.html" title="ZendeskAPI::User::Identity (class)">Identity</a></span> &lt; Resource<small class='search_info'>ZendeskAPI::User</small></li><li><span class='object_link'><a href="ZendeskAPI/User/TopicComment.html" title="ZendeskAPI::User::TopicComment (class)">TopicComment</a></span> &lt; TopicComment<small class='search_info'>ZendeskAPI::User</small></li></ul><li><span class='object_link'><a href="ZendeskAPI/Verbs.html" title="ZendeskAPI::Verbs (module)">Verbs</a></span><small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/View.html" title="ZendeskAPI::View (class)">View</a></span> &lt; Resource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/ViewCount.html" title="ZendeskAPI::ViewCount (class)">ViewCount</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li><li><span class='object_link'><a href="ZendeskAPI/ViewRow.html" title="ZendeskAPI::ViewRow (class)">ViewRow</a></span> &lt; DataResource<small class='search_info'>ZendeskAPI</small></li></ul>
49
+
50
+ </ul>
51
+ </div>
52
+ </body>
53
+ </html>
@@ -0,0 +1 @@
1
+ /* Override this file with custom rules */
@@ -0,0 +1,57 @@
1
+ body {
2
+ margin: 0;
3
+ font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
+ font-size: 13px;
5
+ height: 101%;
6
+ overflow-x: hidden;
7
+ }
8
+
9
+ h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; }
10
+ .clear { clear: both; }
11
+ #search { position: absolute; right: 5px; top: 9px; padding-left: 24px; }
12
+ #content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; }
13
+ #full_list { padding: 0; list-style: none; margin-left: 0; }
14
+ #full_list ul { padding: 0; }
15
+ #full_list li { padding: 5px; padding-left: 12px; margin: 0; font-size: 1.1em; list-style: none; }
16
+ #noresults { padding: 7px 12px; }
17
+ #content.insearch #noresults { margin-left: 7px; }
18
+ ul.collapsed ul, ul.collapsed li { display: none; }
19
+ ul.collapsed.search_uncollapsed { display: block; }
20
+ ul.collapsed.search_uncollapsed li { display: list-item; }
21
+ li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; }
22
+ li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; }
23
+ li { color: #888; cursor: pointer; }
24
+ li.deprecated { text-decoration: line-through; font-style: italic; }
25
+ li.r1 { background: #f0f0f0; }
26
+ li.r2 { background: #fafafa; }
27
+ li:hover { background: #ddd; }
28
+ li small:before { content: "("; }
29
+ li small:after { content: ")"; }
30
+ li small.search_info { display: none; }
31
+ a:link, a:visited { text-decoration: none; color: #05a; }
32
+ li.clicked { background: #05a; color: #ccc; }
33
+ li.clicked a:link, li.clicked a:visited { color: #eee; }
34
+ li.clicked a.toggle { opacity: 0.5; background-position: bottom right; }
35
+ li.collapsed.clicked a.toggle { background-position: top right; }
36
+ #search input { border: 1px solid #bbb; -moz-border-radius: 3px; -webkit-border-radius: 3px; }
37
+ #nav { margin-left: 10px; font-size: 0.9em; display: none; color: #aaa; }
38
+ #nav a:link, #nav a:visited { color: #358; }
39
+ #nav a:hover { background: transparent; color: #5af; }
40
+ .frames #nav span:after { content: ' | '; }
41
+ .frames #nav span:last-child:after { content: ''; }
42
+
43
+ .frames #content h1 { margin-top: 0; }
44
+ .frames li { white-space: nowrap; cursor: normal; }
45
+ .frames li small { display: block; font-size: 0.8em; }
46
+ .frames li small:before { content: ""; }
47
+ .frames li small:after { content: ""; }
48
+ .frames li small.search_info { display: none; }
49
+ .frames #search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; }
50
+ .frames #content.insearch #search { background-position: center right; }
51
+ .frames #search input { width: 110px; }
52
+ .frames #nav { display: block; }
53
+
54
+ #full_list.insearch li { display: none; }
55
+ #full_list.insearch li.found { display: list-item; padding-left: 10px; }
56
+ #full_list.insearch li a.toggle { display: none; }
57
+ #full_list.insearch li small.search_info { display: block; }
@@ -0,0 +1,328 @@
1
+ body {
2
+ padding: 0 20px;
3
+ font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
+ font-size: 13px;
5
+ }
6
+ body.frames { padding: 0 5px; }
7
+ h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
8
+ h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
9
+ h1.title { margin-bottom: 10px; }
10
+ h1.alphaindex { margin-top: 0; font-size: 22px; }
11
+ h2 {
12
+ padding: 0;
13
+ padding-bottom: 3px;
14
+ border-bottom: 1px #aaa solid;
15
+ font-size: 1.4em;
16
+ margin: 1.8em 0 0.5em;
17
+ }
18
+ h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right; }
19
+ .clear { clear: both; }
20
+ .inline { display: inline; }
21
+ .inline p:first-child { display: inline; }
22
+ .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
23
+ .docstring h1 { font-size: 1.2em; }
24
+ .docstring h2 { font-size: 1.1em; }
25
+ .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
26
+ .summary_desc .object_link, .docstring .object_link { font-family: monospace; }
27
+ .rdoc-term { padding-right: 25px; font-weight: bold; }
28
+ .rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
29
+
30
+ /* style for <ul> */
31
+ #filecontents li > p, .docstring li > p { margin: 0px; }
32
+ #filecontents ul, .docstring ul { padding-left: 20px; }
33
+ /* style for <dl> */
34
+ #filecontents dl, .docstring dl { border: 1px solid #ccc; }
35
+ #filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
36
+ #filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
37
+ #filecontents dd > p, .docstring dd > p { margin: 0px; }
38
+
39
+ .note {
40
+ color: #222;
41
+ -moz-border-radius: 3px; -webkit-border-radius: 3px;
42
+ background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
43
+ display: block;
44
+ }
45
+ .note.todo { background: #ffffc5; border-color: #ececaa; }
46
+ .note.returns_void { background: #efefef; }
47
+ .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
48
+ .note.private { background: #ffffc5; border-color: #ececaa; }
49
+ .note.title { padding: 1px 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
50
+ .summary_signature + .note.title { margin-left: 7px; }
51
+ h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
52
+ .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
53
+ .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
54
+ .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
55
+ .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
56
+ .note.title.not_defined_here { background: transparent; border: none; font-style: italic; }
57
+ .discussion .note { margin-top: 6px; }
58
+ .discussion .note:first-child { margin-top: 0; }
59
+
60
+ h3.inherited {
61
+ font-style: italic;
62
+ font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
63
+ font-weight: normal;
64
+ padding: 0;
65
+ margin: 0;
66
+ margin-top: 12px;
67
+ margin-bottom: 3px;
68
+ font-size: 13px;
69
+ }
70
+ p.inherited {
71
+ padding: 0;
72
+ margin: 0;
73
+ margin-left: 25px;
74
+ }
75
+
76
+ #filecontents dl.box, dl.box {
77
+ border: 0;
78
+ width: 520px;
79
+ font-size: 1em;
80
+ }
81
+ #filecontents dl.box dt, dl.box dt {
82
+ float: left;
83
+ display: block;
84
+ width: 100px;
85
+ margin: 0;
86
+ text-align: right;
87
+ font-weight: bold;
88
+ background: transparent;
89
+ border: 1px solid #aaa;
90
+ border-width: 1px 0px 0px 1px;
91
+ padding: 6px 0;
92
+ padding-right: 10px;
93
+ }
94
+ #filecontents dl.box dd, dl.box dd {
95
+ float: left;
96
+ display: block;
97
+ width: 380px;
98
+ margin: 0;
99
+ padding: 6px 0;
100
+ padding-right: 20px;
101
+ border: 1px solid #aaa;
102
+ border-width: 1px 1px 0 0;
103
+ }
104
+ #filecontents dl.box .last, dl.box .last {
105
+ border-bottom: 1px solid #aaa;
106
+ }
107
+ #filecontents dl.box .r1, dl.box .r1 { background: #eee; }
108
+
109
+ ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
110
+ .index_inline_list { padding-left: 0; font-size: 1.1em; }
111
+ .index_inline_list li { list-style: none; display: inline; padding: 7px 12px; line-height: 35px; }
112
+
113
+ dl.constants { margin-left: 40px; }
114
+ dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
115
+ dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
116
+
117
+ .summary_desc { margin-left: 32px; display: block; font-family: sans-serif; }
118
+ .summary_desc tt { font-size: 0.9em; }
119
+ dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
120
+ dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
121
+ dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
122
+ dl.constants .discussion *:first-child { margin-top: 0; }
123
+ dl.constants .discussion *:last-child { margin-bottom: 0; }
124
+
125
+ .method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
126
+ .method_details.first { border: 0; }
127
+ p.signature, h3.signature {
128
+ font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
129
+ padding: 6px 10px; margin-top: 18px;
130
+ background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
131
+ }
132
+ p.signature tt,
133
+ h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
134
+ p.signature .overload,
135
+ h3.signature .overload { display: block; }
136
+ p.signature .extras,
137
+ h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
138
+ p.signature .not_defined_here,
139
+ h3.signature .not_defined_here,
140
+ p.signature .aliases,
141
+ h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
142
+ p.signature .aliases .names,
143
+ h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
144
+
145
+ .tags .tag_title { font-size: 1em; margin-bottom: 0; font-weight: bold; }
146
+ .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
147
+ .tags ul li { margin-bottom: 3px; }
148
+ .tags ul .name { font-family: monospace; font-weight: bold; }
149
+ .tags ul .note { padding: 3px 6px; }
150
+ .tags { margin-bottom: 12px; }
151
+
152
+ .tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; }
153
+ .tags .examples .inline p { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
154
+
155
+ .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
156
+ .tags .overload .overload_item .signature {
157
+ padding: 2px 8px;
158
+ background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
159
+ }
160
+ .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
161
+ .tags .overload .docstring { margin-top: 15px; }
162
+
163
+ .defines { display: none; }
164
+
165
+ #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
166
+
167
+ .showSource { font-size: 0.9em; }
168
+ .showSource a:link, .showSource a:visited { text-decoration: none; color: #666; }
169
+
170
+ #content a:link, #content a:visited { text-decoration: none; color: #05a; }
171
+ #content a:hover { background: #ffffa5; }
172
+ div.docstring, p.docstring { margin-right: 6em; }
173
+
174
+ ul.summary {
175
+ list-style: none;
176
+ font-family: monospace;
177
+ font-size: 1em;
178
+ line-height: 1.5em;
179
+ }
180
+ ul.summary a:link, ul.summary a:visited {
181
+ text-decoration: none; font-size: 1.1em;
182
+ }
183
+ ul.summary li { margin-bottom: 5px; }
184
+ .summary .summary_signature {
185
+ padding: 1px 10px;
186
+ background: #eaeaff; border: 1px solid #dfdfe5;
187
+ -moz-border-radius: 3px; -webkit-border-radius: 3px;
188
+ }
189
+ .summary_signature:hover { background: #eeeeff; cursor: pointer; }
190
+ ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
191
+ ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
192
+ #content .summary_signature:hover a:link,
193
+ #content .summary_signature:hover a:visited {
194
+ background: transparent;
195
+ color: #48f;
196
+ }
197
+
198
+ p.inherited a { font-family: monospace; font-size: 0.9em; }
199
+ p.inherited { word-spacing: 5px; font-size: 1.2em; }
200
+
201
+ p.children { font-size: 1.2em; }
202
+ p.children a { font-size: 0.9em; }
203
+ p.children strong { font-size: 0.8em; }
204
+ p.children strong.modules { padding-left: 5px; }
205
+
206
+ ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
207
+ ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
208
+ ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
209
+ ul.fullTree li:first-child { padding-top: 0; background: transparent; }
210
+ ul.fullTree li:last-child { padding-bottom: 0; }
211
+ .showAll ul.fullTree { display: block; }
212
+ .showAll .inheritName { display: none; }
213
+
214
+ #search { position: absolute; right: 14px; top: 0px; }
215
+ #search a:link, #search a:visited {
216
+ display: block; float: left; margin-right: 4px;
217
+ padding: 8px 10px; text-decoration: none; color: #05a;
218
+ border: 1px solid #d8d8e5;
219
+ -moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
220
+ -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
221
+ background: #eaf0ff;
222
+ -webkit-box-shadow: -1px 1px 3px #ddd;
223
+ }
224
+ #search a:hover { background: #f5faff; color: #06b; }
225
+ #search a.active {
226
+ background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
227
+ -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
228
+ -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
229
+ }
230
+ #search a.inactive { color: #999; }
231
+ .frames #search { display: none; }
232
+ .inheritanceTree, .toggleDefines { float: right; }
233
+
234
+ #menu { font-size: 1.3em; color: #bbb; top: -5px; position: relative; }
235
+ #menu .title, #menu a { font-size: 0.7em; }
236
+ #menu .title a { font-size: 1em; }
237
+ #menu .title { color: #555; }
238
+ #menu a:link, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
239
+ #menu a:hover { color: #05a; }
240
+ #menu .noframes { display: inline; }
241
+ .frames #menu .noframes { display: inline; float: right; }
242
+
243
+ #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
244
+ #footer a:link, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
245
+ #footer a:hover { color: #05a; }
246
+
247
+ #listing ul.alpha { font-size: 1.1em; }
248
+ #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
249
+ #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
250
+ #listing ul.alpha ul { margin: 0; padding-left: 15px; }
251
+ #listing ul small { color: #666; font-size: 0.7em; }
252
+
253
+ li.r1 { background: #f0f0f0; }
254
+ li.r2 { background: #fafafa; }
255
+
256
+ #search_frame {
257
+ z-index: 9999;
258
+ background: #fff;
259
+ display: none;
260
+ position: absolute;
261
+ top: 36px;
262
+ right: 18px;
263
+ width: 500px;
264
+ height: 80%;
265
+ overflow-y: scroll;
266
+ border: 1px solid #999;
267
+ border-collapse: collapse;
268
+ -webkit-box-shadow: -7px 5px 25px #aaa;
269
+ -moz-box-shadow: -7px 5px 25px #aaa;
270
+ -moz-border-radius: 2px;
271
+ -webkit-border-radius: 2px;
272
+ }
273
+
274
+ #content ul.summary li.deprecated .summary_signature a:link,
275
+ #content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
276
+
277
+ #toc {
278
+ padding: 20px; padding-right: 30px; border: 1px solid #ddd; float: right; background: #fff; margin-left: 20px; margin-bottom: 20px;
279
+ max-width: 300px;
280
+ -webkit-box-shadow: -2px 2px 6px #bbb;
281
+ -moz-box-shadow: -2px 2px 6px #bbb;
282
+ z-index: 5000;
283
+ position: relative;
284
+ }
285
+ #toc.nofloat { float: none; max-width: none; border: none; padding: 0; margin: 20px 0; -webkit-box-shadow: none; -moz-box-shadow: none; }
286
+ #toc.nofloat.hidden { padding: 0; background: 0; margin-bottom: 5px; }
287
+ #toc .title { margin: 0; }
288
+ #toc ol { padding-left: 1.8em; }
289
+ #toc li { font-size: 1.1em; line-height: 1.7em; }
290
+ #toc > ol > li { font-size: 1.1em; font-weight: bold; }
291
+ #toc ol > ol { font-size: 0.9em; }
292
+ #toc ol ol > ol { padding-left: 2.3em; }
293
+ #toc ol + li { margin-top: 0.3em; }
294
+ #toc.hidden { padding: 10px; background: #f6f6f6; -webkit-box-shadow: none; -moz-box-shadow: none; }
295
+ #filecontents h1 + #toc.nofloat { margin-top: 0; }
296
+
297
+ /* syntax highlighting */
298
+ .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
299
+ #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
300
+ #filecontents pre.code, .docstring pre.code { display: block; }
301
+ .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
302
+ #filecontents pre.code, .docstring pre.code,
303
+ .tags pre.example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
304
+ pre.code { color: #000; }
305
+ pre.code .info.file { color: #555; }
306
+ pre.code .val { color: #036A07; }
307
+ pre.code .tstring_content,
308
+ pre.code .heredoc_beg, pre.code .heredoc_end,
309
+ pre.code .qwords_beg, pre.code .qwords_end,
310
+ pre.code .tstring, pre.code .dstring { color: #036A07; }
311
+ pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
312
+ pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
313
+ pre.code .dot + pre.code .id,
314
+ pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
315
+ pre.code .comment { color: #0066FF; }
316
+ pre.code .const, pre.code .constant { color: #585CF6; }
317
+ pre.code .symbol { color: #C5060B; }
318
+ pre.code .kw,
319
+ pre.code .label,
320
+ pre.code .rubyid_require,
321
+ pre.code .rubyid_extend,
322
+ pre.code .rubyid_include { color: #0000FF; }
323
+ pre.code .ivar { color: #318495; }
324
+ pre.code .gvar,
325
+ pre.code .rubyid_backref,
326
+ pre.code .rubyid_nth_ref { color: #6D79DE; }
327
+ pre.code .regexp, .dregexp { color: #036A07; }
328
+ pre.code a { border-bottom: 1px dotted #bbf; }
@@ -0,0 +1,377 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII" />
6
+ <title>
7
+ File: Readme
8
+
9
+ &mdash; Documentation by YARD 0.8.4.1
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ hasFrames = window.top.frames.main ? true : false;
19
+ relpath = '';
20
+ framesUrl = "frames.html#!" + escape(window.location.href);
21
+ </script>
22
+
23
+
24
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
+
26
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
+
28
+
29
+ </head>
30
+ <body>
31
+ <div id="header">
32
+ <div id="menu">
33
+
34
+ <a href="_index.html">Index</a> &raquo;
35
+ <span class="title">File: Readme</span>
36
+
37
+
38
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
39
+ </div>
40
+
41
+ <div id="search">
42
+
43
+ <a class="full_list_link" id="class_list_link"
44
+ href="class_list.html">
45
+ Class List
46
+ </a>
47
+
48
+ <a class="full_list_link" id="method_list_link"
49
+ href="method_list.html">
50
+ Method List
51
+ </a>
52
+
53
+ <a class="full_list_link" id="file_list_link"
54
+ href="file_list.html">
55
+ File List
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <iframe id="search_frame"></iframe>
63
+
64
+ <div id="content"><div id='filecontents'><h1>Zendesk API Client</h1>
65
+
66
+ <h2>API version support</h2>
67
+
68
+ <p>This client <strong>only</strong> supports Zendesk&#39;s v2 API. Please see our <a href="http://developer.zendesk.com">API documentation</a> for more information.</p>
69
+
70
+ <h2>Additional Documentation</h2>
71
+
72
+ <p>Additional documentation can be found on <a href="http://rubydoc.info/gems/zendesk_api/frames">rubydoc.info</a></p>
73
+
74
+ <h2>Important Notice</h2>
75
+
76
+ <p>Version 0.0.5 brings with it a change to the top-level namespace. All references to Zendesk should now use ZendeskAPI.</p>
77
+
78
+ <h2>Installation</h2>
79
+
80
+ <p>The Zendesk API client can be installed using Rubygems or Bundler.</p>
81
+
82
+ <h3>Rubygems</h3>
83
+
84
+ <pre class="code sh"><code class="sh">gem install zendesk_api
85
+ </code></pre>
86
+
87
+ <h3>Bundler</h3>
88
+
89
+ <p>Add it to your Gemfile</p>
90
+
91
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_gem'>gem</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>zendesk_api</span><span class='tstring_end'>&quot;</span></span>
92
+ </code></pre>
93
+
94
+ <p>and follow normal <a href="http://gembundler.com/">Bundler</a> installation and execution procedures.</p>
95
+
96
+ <h2>Configuration</h2>
97
+
98
+ <p>Configuration is done through a block returning an instance of ZendeskAPI::Client.
99
+ The block is mandatory and if not passed, an ArgumentError will be thrown.</p>
100
+
101
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>zendesk_api</span><span class='tstring_end'>'</span></span>
102
+
103
+ <span class='id identifier rubyid_client'>client</span> <span class='op'>=</span> <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Client</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_config'>config</span><span class='op'>|</span>
104
+ <span class='comment'># Mandatory:
105
+ </span>
106
+ <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;- your-zendesk-url -&gt;</span><span class='tstring_end'>&quot;</span></span> <span class='comment'># e.g. https://mydesk.zendesk.com/api/v2
107
+ </span>
108
+ <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_username'>username</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>login.email@zendesk.com</span><span class='tstring_end'>&quot;</span></span>
109
+
110
+ <span class='comment'># Choose one of the following depending on your authentication choice
111
+ </span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_token'>token</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>your zendesk token</span><span class='tstring_end'>&quot;</span></span>
112
+ <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_password'>password</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>your zendesk password</span><span class='tstring_end'>&quot;</span></span>
113
+
114
+ <span class='comment'># Optional:
115
+ </span>
116
+ <span class='comment'># Retry uses middleware to notify the user
117
+ </span> <span class='comment'># when hitting the rate limit, sleep automatically,
118
+ </span> <span class='comment'># then retry the request.
119
+ </span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_retry'>retry</span> <span class='op'>=</span> <span class='kw'>true</span>
120
+
121
+ <span class='comment'># Logger prints to STDERR by default, to e.g. print to stdout:
122
+ </span> <span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>logger</span><span class='tstring_end'>'</span></span>
123
+ <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_logger'>logger</span> <span class='op'>=</span> <span class='const'>Logger</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>STDOUT</span><span class='rparen'>)</span>
124
+
125
+ <span class='comment'># Changes Faraday adapter
126
+ </span> <span class='comment'># config.adapter = :patron
127
+ </span>
128
+ <span class='comment'># Merged with the default client options hash
129
+ </span> <span class='comment'># config.client_options = { :ssl =&gt; false }
130
+ </span>
131
+ <span class='comment'># When getting the error 'hostname does not match the server certificate'
132
+ </span> <span class='comment'># use the API at https://yoursubdomain.zendesk.com/api/v2
133
+ </span><span class='kw'>end</span>
134
+ </code></pre>
135
+
136
+ <p>Note: This ZendeskAPI API client only supports basic authentication at the moment.</p>
137
+
138
+ <h2>Usage</h2>
139
+
140
+ <p>The result of configuration is an instance of ZendeskAPI::Client which can then be used in two different methods.</p>
141
+
142
+ <p>One way to use the client is to pass it in as an argument to individual classes.</p>
143
+
144
+ <pre class="code ruby"><code class="ruby"><span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='comma'>,</span> <span class='symbol'>:priority</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>urgent</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='comment'># doesn't actually send a request, must explicitly call #save
145
+ </span><span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:subject</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Test Ticket</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:comment</span> <span class='op'>=&gt;</span> <span class='lbrace'>{</span> <span class='symbol'>:value</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>This is a test</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='symbol'>:submitter_id</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_current_user'>current_user</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='symbol'>:priority</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>urgent</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
146
+ <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='rparen'>)</span>
147
+ <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='rparen'>)</span>
148
+ </code></pre>
149
+
150
+ <p>Another way is to use the instance methods under client.</p>
151
+
152
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
153
+ <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span><span class='lparen'>(</span><span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='rparen'>)</span>
154
+ <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='symbol'>:subject</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Test Ticket</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:comment</span> <span class='op'>=&gt;</span> <span class='lbrace'>{</span> <span class='symbol'>:value</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>This is a test</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='symbol'>:submitter_id</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_current_user'>current_user</span><span class='period'>.</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='symbol'>:priority</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>urgent</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
155
+ <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='rparen'>)</span>
156
+ </code></pre>
157
+
158
+ <p>The methods under ZendeskAPI::Client (such as .tickets) return an instance of ZendeskAPI::Collection a lazy-loaded list of that resource.
159
+ Actual requests may not be sent until an explicit ZendeskAPI::Collection#fetch, ZendeskAPI::Collection#to_a, or an applicable methods such
160
+ as #each.</p>
161
+
162
+ <h3>Caveats</h3>
163
+
164
+ <p>Resource updating is implemented by sending only the <code>changed?</code> attributes to the server (see <code>ZendeskAPI::TrackChanges</code>).
165
+ Unfortunately, this module only hooks into <code>Hash</code> meaning any changes to an <code>Array</code>not resulting in a new instance will not be tracked and sent.</p>
166
+
167
+ <pre class="code ruby"><code class="ruby">zendesk_api_client_rb $ bundle console
168
+ &gt; a = ZendeskAPI::Trackie.new(:tags =&gt; []).tap(&amp;:clear_changes)
169
+ &gt; a.changed?(:tags)
170
+ =&gt; false
171
+ &gt; a.tags &lt;&lt; &quot;my_new_tag&quot;
172
+ =&gt; [&quot;my_new_tag&quot;]
173
+ &gt; a.changed?(:tags)
174
+ =&gt; false
175
+ &gt; a.tags += %w{my_other_tag}
176
+ =&gt; [&quot;my_new_tag&quot;, &quot;my_other_tag&quot;]
177
+ &gt; a.changed?(:tags)
178
+ =&gt; true
179
+ </code></pre>
180
+
181
+ <h3>Pagination</h3>
182
+
183
+ <p>ZendeskAPI::Collections can be paginated:</p>
184
+
185
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_tickets'>tickets</span> <span class='op'>=</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_page'>page</span><span class='lparen'>(</span><span class='int'>2</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_per_page'>per_page</span><span class='lparen'>(</span><span class='int'>3</span><span class='rparen'>)</span>
186
+ <span class='id identifier rubyid_next_page'>next_page</span> <span class='op'>=</span> <span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
187
+ <span class='id identifier rubyid_previous_page'>previous_page</span> <span class='op'>=</span> <span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span>
188
+ </code></pre>
189
+
190
+ <p>Iteration over all resources and pages is handled by Collection#page_page</p>
191
+
192
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_each_page'>each_page</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_resource'>resource</span><span class='op'>|</span>
193
+ <span class='comment'># all resources will be yielded
194
+ </span><span class='kw'>end</span>
195
+ </code></pre>
196
+
197
+ <p>If given a block with two arguments, the page is also passed in.</p>
198
+
199
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_each_page'>each_page</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_resource'>resource</span><span class='comma'>,</span> <span class='id identifier rubyid_page'>page</span><span class='op'>|</span>
200
+ <span class='comment'># all resources will be yielded along with the page
201
+ </span><span class='kw'>end</span>
202
+ </code></pre>
203
+
204
+ <h3>Callbacks</h3>
205
+
206
+ <p>Callbacks can be added to the ZendeskAPI::Client instance and will be called (with the response env) after all response middleware on a successful request.</p>
207
+
208
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_insert_callback'>insert_callback</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_env'>env</span><span class='op'>|</span>
209
+ <span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_env'>env</span><span class='lbracket'>[</span><span class='symbol'>:response_headers</span><span class='rbracket'>]</span>
210
+ <span class='kw'>end</span>
211
+ </code></pre>
212
+
213
+ <h3>Resource management</h3>
214
+
215
+ <p>Individual resources can be created, modified, saved, and destroyed.</p>
216
+
217
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_ticket'>ticket</span> <span class='op'>=</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='comment'># ZendeskAPI::Ticket.find(client, :id =&gt; 1)
218
+ </span><span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_priority'>priority</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>urgent</span><span class='tstring_end'>&quot;</span></span>
219
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_attributes'>attributes</span> <span class='comment'># =&gt; { &quot;priority&quot; =&gt; &quot;urgent&quot; }
220
+ </span><span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_save'>save</span> <span class='comment'># Will PUT =&gt; true
221
+ </span><span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_destroy'>destroy</span> <span class='comment'># =&gt; true
222
+ </span>
223
+ <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='lbrace'>{</span> <span class='symbol'>:priority</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>urgent</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='rparen'>)</span>
224
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_new_record?'>new_record?</span> <span class='comment'># =&gt; true
225
+ </span><span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_save'>save</span> <span class='comment'># Will POST
226
+ </span></code></pre>
227
+
228
+ <h3>Side-loading</h3>
229
+
230
+ <p><strong>Warning: this is an experimental feature. Abuse it and lose it.</strong></p>
231
+
232
+ <p>To facilitate a smaller number of requests and easier manipulation of associated data we allow &quot;side-loading&quot;, or inclusion, of selected resources.</p>
233
+
234
+ <p>For example:
235
+ A ZendeskAPI::Ticket is associated with ZendeskAPI::User through the requester_id field.
236
+ API requests for that ticket return a structure similar to this:
237
+ <code>json
238
+ &quot;ticket&quot;: {
239
+ &quot;id&quot;: 1,
240
+ &quot;url&quot;: &quot;http.....&quot;,
241
+ &quot;requester_id&quot;: 7,
242
+ ...
243
+ }
244
+ </code></p>
245
+
246
+ <p>Calling ZendeskAPI::Ticket#requester automatically fetches and loads the user referenced above (<code>/api/v2/users/7</code>).
247
+ Using side-loading, however, the user can be partially loaded in the same request as the ticket.</p>
248
+
249
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_tickets'>tickets</span> <span class='op'>=</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_include'>include</span><span class='lparen'>(</span><span class='symbol'>:users</span><span class='rparen'>)</span>
250
+ <span class='comment'># Or client.tickets(include: :users)
251
+ </span><span class='comment'># Does *NOT* make a request to the server since it is already loaded
252
+ </span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='period'>.</span><span class='id identifier rubyid_requester'>requester</span> <span class='comment'># =&gt; #&lt;ZendeskAPI::User id=...&gt;
253
+ </span></code></pre>
254
+
255
+ <p>OR</p>
256
+
257
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_ticket'>ticket</span> <span class='op'>=</span> <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span><span class='lparen'>(</span><span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='int'>1</span><span class='comma'>,</span> <span class='symbol'>:include</span> <span class='op'>=&gt;</span> <span class='symbol'>:users</span><span class='rparen'>)</span>
258
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_requester'>requester</span> <span class='comment'># =&gt; #&lt;ZendeskAPI::User id=...&gt;
259
+ </span></code></pre>
260
+
261
+ <p>Currently, this feature is limited to only a few resources and their associations.
262
+ They are documented on <a href="http://developer.zendesk.com/documentation/rest_api/introduction.html#side-loading-(beta)">developer.zendesk.com</a>.</p>
263
+
264
+ <h3>Search</h3>
265
+
266
+ <p>Searching is done through the client. Returned is an instance of ZendeskAPI::Collection:</p>
267
+
268
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_search'>search</span><span class='lparen'>(</span><span class='symbol'>:query</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>my search query</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='comment'># /api/v2/search.json?query=...
269
+ </span><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_users'>users</span><span class='period'>.</span><span class='id identifier rubyid_search'>search</span><span class='lparen'>(</span><span class='symbol'>:query</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>my new query</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='comment'># /api/v2/users/search.json?query=...
270
+ </span></code></pre>
271
+
272
+ <h3>Special case: Custom resources paths</h3>
273
+
274
+ <p>API endpoints such as tickets/recent or topics/show_many can be accessed through chaining.
275
+ They will too return an instance of ZendeskAPI::Collection.</p>
276
+
277
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_tickets'>tickets</span><span class='period'>.</span><span class='id identifier rubyid_recent'>recent</span>
278
+ <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_topics'>topics</span><span class='period'>.</span><span class='id identifier rubyid_show_many'>show_many</span><span class='lparen'>(</span><span class='symbol'>:verb</span> <span class='op'>=&gt;</span> <span class='symbol'>:post</span><span class='comma'>,</span> <span class='symbol'>:ids</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='int'>1</span><span class='comma'>,</span> <span class='int'>2</span><span class='comma'>,</span> <span class='int'>3</span><span class='rbracket'>]</span><span class='rparen'>)</span>
279
+ </code></pre>
280
+
281
+ <h3>Special Case: Current user</h3>
282
+
283
+ <p>Use either of the following to obtain the current user instance:</p>
284
+
285
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_users'>users</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span><span class='lparen'>(</span><span class='symbol'>:id</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>me</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
286
+ <span class='id identifier rubyid_client'>client</span><span class='period'>.</span><span class='id identifier rubyid_current_user'>current_user</span>
287
+ </code></pre>
288
+
289
+ <h3>Special Case: Importing a ticket</h3>
290
+
291
+ <p>Bulk importing tickets allows you to move large amounts of data into Zendesk.</p>
292
+
293
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_ticket'>ticket</span> <span class='op'>=</span> <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_import'>import</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:subject</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Help</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:comments</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='lbrace'>{</span> <span class='symbol'>:author_id</span> <span class='op'>=&gt;</span> <span class='int'>19</span><span class='comma'>,</span> <span class='symbol'>:value</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>This is a comment</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='rbracket'>]</span><span class='rparen'>)</span>
294
+ </code></pre>
295
+
296
+ <p><a href="http://developer.zendesk.com/documentation/rest_api/ticket_import.html">http://developer.zendesk.com/documentation/rest_api/ticket_import.html</a></p>
297
+
298
+ <h3>Attaching files</h3>
299
+
300
+ <p>Files can be attached to ticket comments using either a path or the File class and will
301
+ be automatically uploaded and attached.</p>
302
+
303
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_ticket'>ticket</span> <span class='op'>=</span> <span class='const'>ZendeskAPI</span><span class='op'>::</span><span class='const'>Ticket</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='symbol'>:comment</span> <span class='op'>=&gt;</span> <span class='lbrace'>{</span> <span class='symbol'>:value</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>attachments</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='rparen'>)</span>
304
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_comment'>comment</span><span class='period'>.</span><span class='id identifier rubyid_uploads'>uploads</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>img.jpg</span><span class='tstring_end'>&quot;</span></span>
305
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_comment'>comment</span><span class='period'>.</span><span class='id identifier rubyid_uploads'>uploads</span> <span class='op'>&lt;&lt;</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>img.jpg</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
306
+ <span class='id identifier rubyid_ticket'>ticket</span><span class='period'>.</span><span class='id identifier rubyid_save'>save</span>
307
+ </code></pre>
308
+
309
+ <h2>Extras</h2>
310
+
311
+ <p>The following projects are still works in progress and require checking out the repository,
312
+ using ruby 1.9.3, and running <code>bundle install</code>.</p>
313
+
314
+ <h3>Zendesk API Test Server</h3>
315
+
316
+ <p>Included in this repository is the code for the <a href="https://zendesk-api.herokuapp.com/">Zendesk API Tester</a> website.</p>
317
+
318
+ <pre class="code sh"><code class="sh">bin/zendesk server --help
319
+ </code></pre>
320
+
321
+ <p>Additional Dependencies:</p>
322
+
323
+ <ul>
324
+ <li>sinatra</li>
325
+ <li>sinatra-contrib</li>
326
+ <li>haml</li>
327
+ <li>compass</li>
328
+ <li>coderay</li>
329
+ <li>coderay_bash</li>
330
+ <li>redcarpet</li>
331
+ <li>mongoid (and a working MongoDB instance)</li>
332
+ </ul>
333
+
334
+ <h3>Zendesk Console</h3>
335
+
336
+ <p>WIP</p>
337
+
338
+ <pre class="code sh"><code class="sh">bin/zendesk console --help
339
+ </code></pre>
340
+
341
+ <p>Additional Dependencies:</p>
342
+
343
+ <ul>
344
+ <li>ripl</li>
345
+ </ul>
346
+
347
+ <h2>Note on Patches/Pull Requests</h2>
348
+
349
+ <ol>
350
+ <li>Fork the project.</li>
351
+ <li>Make your feature addition or bug fix.</li>
352
+ <li>Add tests for it. This is important so I don&#39;t break it in a future version
353
+ unintentionally.</li>
354
+ <li>Commit, do not mess with rakefile, version, or history. (if you want to have
355
+ your own version, that is fine but bump version in a commit by itself I can
356
+ ignore when I pull)</li>
357
+ <li>Send me a pull request. Bonus points for topic branches.</li>
358
+ </ol>
359
+
360
+ <h2>Supported Ruby Versions</h2>
361
+
362
+ <p>Tested with Ruby 1.8.7 and 1.9.3
363
+ <a href="http://travis-ci.org/zendesk/zendesk_api_client_rb"><img src="https://secure.travis-ci.org/zendesk/zendesk_api_client_rb.png?branch=master" alt="Build Status"></a></p>
364
+
365
+ <h2>Copyright</h2>
366
+
367
+ <p>See <a href="https://github.com/zendesk/zendesk_api_client_rb/blob/master/LICENSE">LICENSE</a></p>
368
+ </div></div>
369
+
370
+ <div id="footer">
371
+ Generated on Mon Feb 11 17:45:36 2013 by
372
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
373
+ 0.8.4.1 (ruby-1.9.3).
374
+ </div>
375
+
376
+ </body>
377
+ </html>