Class: Cloudflare::EmailService::Response
- Inherits:
-
Object
- Object
- Cloudflare::EmailService::Response
- Defined in:
- lib/cloudflare/email_service/response.rb
Overview
Wraps the JSON body returned by the Cloudflare send endpoint.
Instance Attribute Summary collapse
-
#body ⇒ Hash
readonly
The parsed JSON body.
-
#status ⇒ Integer
readonly
The HTTP status code.
Instance Method Summary collapse
-
#delivered ⇒ Array<String>
Addresses Cloudflare accepted for delivery.
-
#errors ⇒ Array
Cloudflare error objects, e.g.
-
#initialize(status:, body:) ⇒ Response
constructor
A new instance of Response.
-
#messages ⇒ Array
Informational messages from the API.
-
#permanent_bounces ⇒ Array<String>
Addresses that permanently bounced.
-
#queued ⇒ Array<String>
Addresses queued for later delivery.
-
#result ⇒ Hash
The “result” object.
-
#success? ⇒ Boolean
Whether Cloudflare reported success.
Constructor Details
#initialize(status:, body:) ⇒ Response
Returns a new instance of Response.
12 13 14 15 |
# File 'lib/cloudflare/email_service/response.rb', line 12 def initialize(status:, body:) @status = status @body = body || {} end |
Instance Attribute Details
#body ⇒ Hash (readonly)
Returns the parsed JSON body.
10 11 12 |
# File 'lib/cloudflare/email_service/response.rb', line 10 def body @body end |
#status ⇒ Integer (readonly)
Returns the HTTP status code.
8 9 10 |
# File 'lib/cloudflare/email_service/response.rb', line 8 def status @status end |
Instance Method Details
#delivered ⇒ Array<String>
Returns addresses Cloudflare accepted for delivery.
39 40 41 |
# File 'lib/cloudflare/email_service/response.rb', line 39 def delivered result["delivered"] || [] end |
#errors ⇒ Array
Returns Cloudflare error objects, e.g. [{ “code” => 1001, “message” => “…” }].
24 25 26 |
# File 'lib/cloudflare/email_service/response.rb', line 24 def errors body["errors"] || [] end |
#messages ⇒ Array
Returns informational messages from the API.
29 30 31 |
# File 'lib/cloudflare/email_service/response.rb', line 29 def body["messages"] || [] end |
#permanent_bounces ⇒ Array<String>
Returns addresses that permanently bounced.
49 50 51 |
# File 'lib/cloudflare/email_service/response.rb', line 49 def permanent_bounces result["permanent_bounces"] || [] end |
#queued ⇒ Array<String>
Returns addresses queued for later delivery.
44 45 46 |
# File 'lib/cloudflare/email_service/response.rb', line 44 def queued result["queued"] || [] end |
#result ⇒ Hash
Returns the “result” object.
34 35 36 |
# File 'lib/cloudflare/email_service/response.rb', line 34 def result body["result"] || {} end |
#success? ⇒ Boolean
Returns whether Cloudflare reported success.
18 19 20 |
# File 'lib/cloudflare/email_service/response.rb', line 18 def success? body["success"] == true end |