Class: Courier::Resources::Bulk
- Inherits:
-
Object
- Object
- Courier::Resources::Bulk
- Defined in:
- lib/courier/resources/bulk.rb
Instance Method Summary collapse
-
#add_users(job_id, users:, request_options: {}) ⇒ nil
Ingest user data into a Bulk Job.
-
#create_job(message:, request_options: {}) ⇒ Courier::Models::BulkCreateJobResponse
Some parameter documentations has been truncated, see Models::BulkCreateJobParams for more details.
-
#initialize(client:) ⇒ Bulk
constructor
private
A new instance of Bulk.
-
#list_users(job_id, cursor: nil, request_options: {}) ⇒ Courier::Models::BulkListUsersResponse
Some parameter documentations has been truncated, see Models::BulkListUsersParams for more details.
-
#retrieve_job(job_id, request_options: {}) ⇒ Courier::Models::BulkRetrieveJobResponse
Get a bulk job.
-
#run_job(job_id, request_options: {}) ⇒ nil
Run a bulk job.
Constructor Details
#initialize(client:) ⇒ Bulk
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Bulk.
136 137 138 |
# File 'lib/courier/resources/bulk.rb', line 136 def initialize(client:) @client = client end |
Instance Method Details
#add_users(job_id, users:, request_options: {}) ⇒ nil
Ingest user data into a Bulk Job.
Important: For email-based bulk jobs, each user must include ‘profile.email` for provider routing to work correctly. The `to.email` field is not sufficient for email provider routing.
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/courier/resources/bulk.rb', line 23 def add_users(job_id, params) parsed, = Courier::BulkAddUsersParams.dump_request(params) @client.request( method: :post, path: ["bulk/%1$s", job_id], body: parsed, model: NilClass, options: ) end |
#create_job(message:, request_options: {}) ⇒ Courier::Models::BulkCreateJobResponse
Some parameter documentations has been truncated, see Models::BulkCreateJobParams for more details.
Creates a new bulk job for sending messages to multiple recipients.
Required: ‘message.event` (event ID or notification ID)
**Optional (V2 format)**: ‘message.template` (notification ID) or `message.content` (Elemental content) can be provided to override the notification associated with the event.
54 55 56 57 58 59 60 61 62 63 |
# File 'lib/courier/resources/bulk.rb', line 54 def create_job(params) parsed, = Courier::BulkCreateJobParams.dump_request(params) @client.request( method: :post, path: "bulk", body: parsed, model: Courier::Models::BulkCreateJobResponse, options: ) end |
#list_users(job_id, cursor: nil, request_options: {}) ⇒ Courier::Models::BulkListUsersResponse
Some parameter documentations has been truncated, see Models::BulkListUsersParams for more details.
Get Bulk Job Users
81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/courier/resources/bulk.rb', line 81 def list_users(job_id, params = {}) parsed, = Courier::BulkListUsersParams.dump_request(params) query = Courier::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: ["bulk/%1$s/users", job_id], query: query, model: Courier::Models::BulkListUsersResponse, options: ) end |
#retrieve_job(job_id, request_options: {}) ⇒ Courier::Models::BulkRetrieveJobResponse
Get a bulk job
104 105 106 107 108 109 110 111 |
# File 'lib/courier/resources/bulk.rb', line 104 def retrieve_job(job_id, params = {}) @client.request( method: :get, path: ["bulk/%1$s", job_id], model: Courier::Models::BulkRetrieveJobResponse, options: params[:request_options] ) end |
#run_job(job_id, request_options: {}) ⇒ nil
Run a bulk job
124 125 126 127 128 129 130 131 |
# File 'lib/courier/resources/bulk.rb', line 124 def run_job(job_id, params = {}) @client.request( method: :post, path: ["bulk/%1$s/run", job_id], model: NilClass, options: params[:request_options] ) end |