Skip to content

Commit efc7af6

Browse files
Merge pull request #72 from ProZsolt/create-usage
Add USAGE.md
2 parents 5869025 + b62ce25 commit efc7af6

File tree

1 file changed

+108
-0
lines changed

1 file changed

+108
-0
lines changed

USAGE.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# Usage
2+
3+
Usage examples for SendGrid ruby-http-client
4+
5+
## Initialization
6+
7+
```ruby
8+
require_relative '../lib/ruby_http_client'
9+
10+
# This uses the SendGrid API as an example
11+
headers = JSON.parse('
12+
{
13+
"Authorization": "Bearer ' + ENV['SENDGRID_API_KEY'] + '"
14+
}
15+
')
16+
host = 'https://api.sendgrid.com'
17+
client = SendGrid::Client.new(host: host, request_headers: headers)
18+
```
19+
20+
## Table of Contents
21+
22+
- [GET](#get)
23+
- [DELETE](#delete)
24+
- [POST](#post)
25+
- [PUT](#put)
26+
- [PATCH](#patch)
27+
28+
## GET
29+
30+
#### GET Collection
31+
32+
```ruby
33+
query_params = { 'limit' => 100, 'offset' => 0 }
34+
response = client.version('v3').api_keys.get(query_params: query_params)
35+
puts response.status_code
36+
puts response.body
37+
puts response.headers
38+
```
39+
40+
#### GET Single
41+
42+
```ruby
43+
response = client.version('v3').api_keys._(api_key_id).get
44+
puts response.status_code
45+
puts response.body
46+
puts response.headers
47+
```
48+
49+
## DELETE
50+
51+
```ruby
52+
response = client.api_keys._(api_key_id).delete
53+
puts response.status_code
54+
puts response.headers
55+
```
56+
57+
## POST
58+
59+
```ruby
60+
request_body = JSON.parse('
61+
{
62+
"name": "My API Key Ruby Test",
63+
"scopes": [
64+
"mail.send",
65+
"alerts.create",
66+
"alerts.read"
67+
]
68+
}
69+
')
70+
response = client.version('v3').api_keys.post(request_body: request_body)
71+
puts response.status_code
72+
puts response.body
73+
puts response.headers
74+
api_key_id = JSON.parse(response.body)['api_key_id']
75+
```
76+
77+
## PUT
78+
79+
```ruby
80+
request_body = JSON.parse('
81+
{
82+
"name": "A New Hope",
83+
"scopes": [
84+
"user.profile.read",
85+
"user.profile.update"
86+
]
87+
}
88+
')
89+
90+
response = client.api_keys._(api_key_id).put(request_body: request_body)
91+
puts response.status_code
92+
puts response.body
93+
puts response.headers
94+
```
95+
96+
## PATCH
97+
98+
```ruby
99+
request_body = JSON.parse('
100+
{
101+
"name": "A New Hope"
102+
}
103+
')
104+
response = client.api_keys._(api_key_id).patch(request_body: request_body)
105+
puts response.status_code
106+
puts response.body
107+
puts response.headers
108+
```

0 commit comments

Comments
 (0)