README.md in zendesk2-0.0.15 vs README.md in zendesk2-0.0.16
- old
+ new
@@ -28,33 +28,38 @@
```
### Creating the client
Either the absolute url or the subdomain is required. Username and password is always required.
+
```ruby
Zendesk2::Client.new(subdomain: "engineyard", username: "orchestra", password: "gwoo")
=> #<Zendesk2::Client::Real:0x007f99da1f9430 @url="https://engineyard.zendesk.com/api/v2", @username="orchestra", @password="gwoo", …>
```
+
or
+
```ruby
Zendesk2::Client.new(url: "http://support.cloud.engineyard.com", username: "mate", password: "bambilla")
=> #<Zendesk2::Client::Real:0x007fd1bae486b0 @url="http://support.cloud.engineyard.com", @username="mate", @password="bambilla", …>
```
+
### Resources
#### Collections
Currently support resources
* Categories
-* User
-* Ticket
-* Organization
* Forums
+* Organization
+* Ticket
* Topics
+* User
All collection are accessed like so:
+
```ruby
client.users.all
=> <Zendesk2::Client::Users
count=1779,
next_page_link="https://dev.zendesk.com/api/v2/users.json?page=2",
@@ -65,11 +70,13 @@
url="https://dev.zendesk.com/api/v2/users/125394183.json",
...
>
]
```
+
Collections also respond to `create` and `new`
+
```ruby
client.users.create(email: "ohhai@example.org", name: "lulz")
=> <Zendesk2::Client::User
id=234020811,
...
@@ -88,13 +95,15 @@
...
email="ohhai@example.org",
...
>
```
+
#### Paging
Paged collections respond to `next_page` and `previous_page` when appropriate. `page_size` and `page` can be passed directly to the collection to control size and index.
+
```ruby
page = client.users.all("per_page" => 1, "page" => 4)
=> <Zendesk2::Client::Users
count=1780,
next_page_link="https://dev.zendesk.com/api/v2/users.json?page=5&per_page=1",
@@ -107,10 +116,11 @@
name="Guy Dude",
...
>
]
```
+
```ruby
page.next_page
=> <Zendesk2::Client::Users
count=1780,
next_page_link="https://dev.zendesk.com/api/v2/users.json?page=6&per_page=1",
@@ -123,10 +133,11 @@
name="epitaphical osteofibrous",
...
>
]
```
+
```ruby
page.previous_page
=> <Zendesk2::Client::Users
count=1780,
next_page_link="https://dev.zendesk.com/api/v2/users.json?page=5&per_page=1",
@@ -139,16 +150,19 @@
name="Guy Dude",
...
>
]
```
+
#### Models
All models respond to `destroy` and `save` if applicable. `save` performs a 'create' operation if there is no identity provided or an 'update' if there is an identity.
+
```ruby
Zendesk2::Client::Ticket.new.save # performs a create
Zendesk2::Client::Ticket.new(id: 1).save # performs an update
```
+
Attributes can be enumerated by the `attributes` method.
## Releasing
$ gem install gem-release