klaviyo-api-sdk 8.0.0 → 9.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +260 -0
- data/README.md +269 -3
- data/klaviyo-api-sdk.gemspec +1 -1
- data/lib/klaviyo-api-sdk/api/catalogs_api.rb +174 -0
- data/lib/klaviyo-api-sdk/api/coupons_api.rb +20 -2
- data/lib/klaviyo-api-sdk/api/data_privacy_api.rb +6 -0
- data/lib/klaviyo-api-sdk/api/events_api.rb +7 -1
- data/lib/klaviyo-api-sdk/api/forms_api.rb +24 -0
- data/lib/klaviyo-api-sdk/api/images_api.rb +12 -0
- data/lib/klaviyo-api-sdk/api/lists_api.rb +13 -1
- data/lib/klaviyo-api-sdk/api/metrics_api.rb +8 -2
- data/lib/klaviyo-api-sdk/api/profiles_api.rb +87 -3
- data/lib/klaviyo-api-sdk/api/reporting_api.rb +18 -0
- data/lib/klaviyo-api-sdk/api/segments_api.rb +1 -1
- data/lib/klaviyo-api-sdk/api/tags_api.rb +24 -0
- data/lib/klaviyo-api-sdk/api_client.rb +1 -1
- metadata +7 -7
@@ -29,6 +29,9 @@ module KlaviyoAPI
|
|
29
29
|
nil
|
30
30
|
end
|
31
31
|
|
32
|
+
# alias of `bulk_create_events`
|
33
|
+
alias create_event_bulk_create_job bulk_create_events
|
34
|
+
|
32
35
|
# Bulk Create Events
|
33
36
|
# Create a batch of events for one or more profiles. Note that this endpoint allows you to create new profiles or update existing profile properties. At a minimum, profile and metric objects should include at least one profile identifier (e.g., `id`, `email`, or `phone_number`) and the metric `name`, respectively. Accepts up to 1,000 events per request. The maximum allowed payload size is 5MB.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `events:write`
|
34
37
|
# @param events_bulk_create_job [EventsBulkCreateJob]
|
@@ -89,6 +92,9 @@ module KlaviyoAPI
|
|
89
92
|
return data, status_code, headers
|
90
93
|
end
|
91
94
|
|
95
|
+
# alias of `bulk_create_events_with_http_info`
|
96
|
+
alias create_event_bulk_create_job_with_http_info bulk_create_events_with_http_info
|
97
|
+
|
92
98
|
# Create Event
|
93
99
|
# Create a new event to track a profile's activity. Note that this endpoint allows you to create a new profile or update an existing profile's properties. At a minimum, profile and metric objects should include at least one profile identifier (e.g., `id`, `email`, or `phone_number`) and the metric `name`, respectively. Successful response indicates that the event was validated and submitted for processing, but does not guarantee that processing is complete.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `events:write`
|
94
100
|
# @param event_create_query_v2 [EventCreateQueryV2]
|
@@ -355,7 +361,7 @@ module KlaviyoAPI
|
|
355
361
|
if @api_client.config.client_side_validation && opts[:'additional_fields_profile'] && !opts[:'additional_fields_profile'].all? { |item| allowable_values.include?(item) }
|
356
362
|
fail ArgumentError, "invalid value for \"additional_fields_profile\", must include one of #{allowable_values}"
|
357
363
|
end
|
358
|
-
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
364
|
+
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "subscriptions.mobile_push", "subscriptions.mobile_push.marketing", "subscriptions.mobile_push.marketing.can_receive_push_marketing", "subscriptions.mobile_push.marketing.consent", "subscriptions.mobile_push.marketing.consent_timestamp", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
359
365
|
if @api_client.config.client_side_validation && opts[:'fields_profile'] && !opts[:'fields_profile'].all? { |item| allowable_values.include?(item) }
|
360
366
|
fail ArgumentError, "invalid value for \"fields_profile\", must include one of #{allowable_values}"
|
361
367
|
end
|
@@ -116,6 +116,9 @@ module KlaviyoAPI
|
|
116
116
|
data
|
117
117
|
end
|
118
118
|
|
119
|
+
# alias of `get_form_for_form_version`
|
120
|
+
alias get_form_version_form get_form_for_form_version
|
121
|
+
|
119
122
|
# Get Form for Form Version
|
120
123
|
# Get the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
121
124
|
# @param id [String]
|
@@ -177,6 +180,9 @@ module KlaviyoAPI
|
|
177
180
|
return data, status_code, headers
|
178
181
|
end
|
179
182
|
|
183
|
+
# alias of `get_form_for_form_version_with_http_info`
|
184
|
+
alias get_form_version_form_with_http_info get_form_for_form_version_with_http_info
|
185
|
+
|
180
186
|
# Get Form ID for Form Version
|
181
187
|
# Get the ID of the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
182
188
|
# @param id [String]
|
@@ -187,6 +193,9 @@ module KlaviyoAPI
|
|
187
193
|
data
|
188
194
|
end
|
189
195
|
|
196
|
+
# alias of `get_form_id_for_form_version`
|
197
|
+
alias get_form_version_relationships_form get_form_id_for_form_version
|
198
|
+
|
190
199
|
# Get Form ID for Form Version
|
191
200
|
# Get the ID of the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
192
201
|
# @param id [String]
|
@@ -242,6 +251,9 @@ module KlaviyoAPI
|
|
242
251
|
return data, status_code, headers
|
243
252
|
end
|
244
253
|
|
254
|
+
# alias of `get_form_id_for_form_version_with_http_info`
|
255
|
+
alias get_form_version_relationships_form_with_http_info get_form_id_for_form_version_with_http_info
|
256
|
+
|
245
257
|
# Get Form Version
|
246
258
|
# Get the form version with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
247
259
|
# @param id [String] The ID of the form version
|
@@ -414,6 +426,9 @@ module KlaviyoAPI
|
|
414
426
|
data
|
415
427
|
end
|
416
428
|
|
429
|
+
# alias of `get_version_ids_for_form`
|
430
|
+
alias get_form_relationships_form_versions get_version_ids_for_form
|
431
|
+
|
417
432
|
# Get Version IDs for Form
|
418
433
|
# Get the IDs of the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
419
434
|
# @param id [String]
|
@@ -469,6 +484,9 @@ module KlaviyoAPI
|
|
469
484
|
return data, status_code, headers
|
470
485
|
end
|
471
486
|
|
487
|
+
# alias of `get_version_ids_for_form_with_http_info`
|
488
|
+
alias get_form_relationships_form_versions_with_http_info get_version_ids_for_form_with_http_info
|
489
|
+
|
472
490
|
# Get Versions for Form
|
473
491
|
# Get the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
474
492
|
# @param id [String]
|
@@ -484,6 +502,9 @@ module KlaviyoAPI
|
|
484
502
|
data
|
485
503
|
end
|
486
504
|
|
505
|
+
# alias of `get_versions_for_form`
|
506
|
+
alias get_form_form_versions get_versions_for_form
|
507
|
+
|
487
508
|
# Get Versions for Form
|
488
509
|
# Get the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
|
489
510
|
# @param id [String]
|
@@ -564,5 +585,8 @@ module KlaviyoAPI
|
|
564
585
|
end
|
565
586
|
return data, status_code, headers
|
566
587
|
end
|
588
|
+
|
589
|
+
# alias of `get_versions_for_form_with_http_info`
|
590
|
+
alias get_form_form_versions_with_http_info get_versions_for_form_with_http_info
|
567
591
|
end
|
568
592
|
end
|
@@ -269,6 +269,9 @@ module KlaviyoAPI
|
|
269
269
|
data
|
270
270
|
end
|
271
271
|
|
272
|
+
# alias of `upload_image_from_file`
|
273
|
+
alias create_image_upload upload_image_from_file
|
274
|
+
|
272
275
|
# Upload Image From File
|
273
276
|
# Upload an image from a file. If you want to import an image from an existing url or a data uri, use the Upload Image From URL endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d` **Scopes:** `images:write`
|
274
277
|
# @param file [File] The image file to upload. Supported image formats: jpeg,png,gif. Maximum image size: 5MB.
|
@@ -334,6 +337,9 @@ module KlaviyoAPI
|
|
334
337
|
return data, status_code, headers
|
335
338
|
end
|
336
339
|
|
340
|
+
# alias of `upload_image_from_file_with_http_info`
|
341
|
+
alias create_image_upload_with_http_info upload_image_from_file_with_http_info
|
342
|
+
|
337
343
|
# Upload Image From URL
|
338
344
|
# Import an image from a url or data uri. If you want to upload an image from a file, use the Upload Image From File endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d` **Scopes:** `images:write`
|
339
345
|
# @param image_create_query [ImageCreateQuery]
|
@@ -344,6 +350,9 @@ module KlaviyoAPI
|
|
344
350
|
data
|
345
351
|
end
|
346
352
|
|
353
|
+
# alias of `upload_image_from_url`
|
354
|
+
alias create_image upload_image_from_url
|
355
|
+
|
347
356
|
# Upload Image From URL
|
348
357
|
# Import an image from a url or data uri. If you want to upload an image from a file, use the Upload Image From File endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d` **Scopes:** `images:write`
|
349
358
|
# @param image_create_query [ImageCreateQuery]
|
@@ -403,5 +412,8 @@ module KlaviyoAPI
|
|
403
412
|
end
|
404
413
|
return data, status_code, headers
|
405
414
|
end
|
415
|
+
|
416
|
+
# alias of `upload_image_from_url_with_http_info`
|
417
|
+
alias create_image_with_http_info upload_image_from_url_with_http_info
|
406
418
|
end
|
407
419
|
end
|
@@ -100,6 +100,9 @@ module KlaviyoAPI
|
|
100
100
|
nil
|
101
101
|
end
|
102
102
|
|
103
|
+
# alias of `create_list_relationships`
|
104
|
+
alias create_list_relationships_profile create_list_relationships
|
105
|
+
|
103
106
|
# Add Profile To List
|
104
107
|
# Add a profile to a list with the given list ID. It is recommended that you use the [Subscribe Profiles endpoint](https://developers.klaviyo.com/en/reference/subscribe_profiles) if you're trying to give a profile [consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api) to receive email marketing, SMS marketing, or both. This endpoint accepts a maximum of 1000 profiles per call.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write` `profiles:write`
|
105
108
|
# @param id [String]
|
@@ -165,6 +168,9 @@ module KlaviyoAPI
|
|
165
168
|
return data, status_code, headers
|
166
169
|
end
|
167
170
|
|
171
|
+
# alias of `create_list_relationships_with_http_info`
|
172
|
+
alias create_list_relationships_profile_with_http_info create_list_relationships_with_http_info
|
173
|
+
|
168
174
|
# Delete List
|
169
175
|
# Delete a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write`
|
170
176
|
# @param id [String] Primary key that uniquely identifies this list. Generated by Klaviyo.
|
@@ -241,6 +247,9 @@ module KlaviyoAPI
|
|
241
247
|
nil
|
242
248
|
end
|
243
249
|
|
250
|
+
# alias of `delete_list_relationships`
|
251
|
+
alias delete_list_relationships_profiles delete_list_relationships
|
252
|
+
|
244
253
|
# Remove Profile From List
|
245
254
|
# Remove a profile from a list with the given list ID. The provided profile will no longer receive marketing from this particular list once removed. Removing a profile from a list will not impact the profile's [consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api) status or subscription status in general. To update a profile's subscription status, please use the [Unsubscribe Profiles endpoint](https://developers.klaviyo.com/en/reference/unsubscribe_profiles). This endpoint accepts a maximum of 1000 profiles per call.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write` `profiles:write`
|
246
255
|
# @param id [String]
|
@@ -306,6 +315,9 @@ module KlaviyoAPI
|
|
306
315
|
return data, status_code, headers
|
307
316
|
end
|
308
317
|
|
318
|
+
# alias of `delete_list_relationships_with_http_info`
|
319
|
+
alias delete_list_relationships_profiles_with_http_info delete_list_relationships_with_http_info
|
320
|
+
|
309
321
|
# Get List
|
310
322
|
# Get a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[list]=profile_count` parameter in your API request:<br>Burst: `1/s`<br>Steady: `15/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2024-07-15/docs/rate_limits_and_error_handling) guide. **Scopes:** `lists:read`
|
311
323
|
# @param id [String] Primary key that uniquely identifies this list. Generated by Klaviyo.
|
@@ -438,7 +450,7 @@ module KlaviyoAPI
|
|
438
450
|
if @api_client.config.client_side_validation && opts[:'additional_fields_profile'] && !opts[:'additional_fields_profile'].all? { |item| allowable_values.include?(item) }
|
439
451
|
fail ArgumentError, "invalid value for \"additional_fields_profile\", must include one of #{allowable_values}"
|
440
452
|
end
|
441
|
-
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "joined_group_at", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
453
|
+
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "joined_group_at", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "subscriptions.mobile_push", "subscriptions.mobile_push.marketing", "subscriptions.mobile_push.marketing.can_receive_push_marketing", "subscriptions.mobile_push.marketing.consent", "subscriptions.mobile_push.marketing.consent_timestamp", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
442
454
|
if @api_client.config.client_side_validation && opts[:'fields_profile'] && !opts[:'fields_profile'].all? { |item| allowable_values.include?(item) }
|
443
455
|
fail ArgumentError, "invalid value for \"fields_profile\", must include one of #{allowable_values}"
|
444
456
|
end
|
@@ -164,7 +164,7 @@ module KlaviyoAPI
|
|
164
164
|
end
|
165
165
|
|
166
166
|
# Query Metric Aggregates
|
167
|
-
# Query and aggregate event data associated with a metric, including native Klaviyo metrics, integration-specific metrics, and custom events. Queries must be passed in the JSON body of your `POST` request. Results can be filtered and grouped by time, event, or profile dimensions. To learn more about how to use this endpoint, check out our new [Using the Query Metric Aggregates Endpoint guide](https://developers.klaviyo.com/en/docs/using-the-query-metric-aggregates-endpoint).
|
167
|
+
# Query and aggregate event data associated with a metric, including native Klaviyo metrics, integration-specific metrics, and custom events. Queries must be passed in the JSON body of your `POST` request. To request campaign and flow performance data that matches the data shown in Klaviyo's UI, we recommend the [Reporting API](https://developers.klaviyo.com/en/reference/reporting_api_overview). Results can be filtered and grouped by time, event, or profile dimensions. To learn more about how to use this endpoint, check out our new [Using the Query Metric Aggregates Endpoint guide](https://developers.klaviyo.com/en/docs/using-the-query-metric-aggregates-endpoint). For a comprehensive list of request body parameters, native Klaviyo metrics, and their associated attributes for grouping and filtering, please refer to the [metrics attributes guide](https://developers.klaviyo.com/en/docs/supported_metrics_and_attributes).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `metrics:read`
|
168
168
|
# @param metric_aggregate_query [MetricAggregateQuery] Retrieve Metric Aggregations
|
169
169
|
# @param [Hash] opts the optional parameters
|
170
170
|
# @return [Hash<String, Object>]
|
@@ -173,8 +173,11 @@ module KlaviyoAPI
|
|
173
173
|
data
|
174
174
|
end
|
175
175
|
|
176
|
+
# alias of `query_metric_aggregates`
|
177
|
+
alias create_metric_aggregate query_metric_aggregates
|
178
|
+
|
176
179
|
# Query Metric Aggregates
|
177
|
-
# Query and aggregate event data associated with a metric, including native Klaviyo metrics, integration-specific metrics, and custom events. Queries must be passed in the JSON body of your `POST` request. Results can be filtered and grouped by time, event, or profile dimensions. To learn more about how to use this endpoint, check out our new [Using the Query Metric Aggregates Endpoint guide](https://developers.klaviyo.com/en/docs/using-the-query-metric-aggregates-endpoint).
|
180
|
+
# Query and aggregate event data associated with a metric, including native Klaviyo metrics, integration-specific metrics, and custom events. Queries must be passed in the JSON body of your `POST` request. To request campaign and flow performance data that matches the data shown in Klaviyo's UI, we recommend the [Reporting API](https://developers.klaviyo.com/en/reference/reporting_api_overview). Results can be filtered and grouped by time, event, or profile dimensions. To learn more about how to use this endpoint, check out our new [Using the Query Metric Aggregates Endpoint guide](https://developers.klaviyo.com/en/docs/using-the-query-metric-aggregates-endpoint). For a comprehensive list of request body parameters, native Klaviyo metrics, and their associated attributes for grouping and filtering, please refer to the [metrics attributes guide](https://developers.klaviyo.com/en/docs/supported_metrics_and_attributes).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `metrics:read`
|
178
181
|
# @param metric_aggregate_query [MetricAggregateQuery] Retrieve Metric Aggregations
|
179
182
|
# @param [Hash] opts the optional parameters
|
180
183
|
# @return [Array<(Hash<String, Object>, Integer, Hash)>] Hash<String, Object> data, response status code and response headers
|
@@ -232,5 +235,8 @@ module KlaviyoAPI
|
|
232
235
|
end
|
233
236
|
return data, status_code, headers
|
234
237
|
end
|
238
|
+
|
239
|
+
# alias of `query_metric_aggregates_with_http_info`
|
240
|
+
alias create_metric_aggregate_with_http_info query_metric_aggregates_with_http_info
|
235
241
|
end
|
236
242
|
end
|
@@ -29,6 +29,9 @@ module KlaviyoAPI
|
|
29
29
|
data
|
30
30
|
end
|
31
31
|
|
32
|
+
# alias of `create_or_update_profile`
|
33
|
+
alias create_profile_import create_or_update_profile
|
34
|
+
|
32
35
|
# Create or Update Profile
|
33
36
|
# Given a set of profile attributes and optionally an ID, create or update a profile. Returns 201 if a new profile was created, 200 if an existing profile was updated. Note that setting a field to `null` will clear out the field, whereas not including a field in your request will leave it unchanged.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write`
|
34
37
|
# @param profile_upsert_query [ProfileUpsertQuery]
|
@@ -89,6 +92,9 @@ module KlaviyoAPI
|
|
89
92
|
return data, status_code, headers
|
90
93
|
end
|
91
94
|
|
95
|
+
# alias of `create_or_update_profile_with_http_info`
|
96
|
+
alias create_profile_import_with_http_info create_or_update_profile_with_http_info
|
97
|
+
|
92
98
|
# Create Profile
|
93
99
|
# Create a new profile.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write`
|
94
100
|
# @param profile_create_query [ProfileCreateQuery]
|
@@ -242,6 +248,9 @@ module KlaviyoAPI
|
|
242
248
|
data
|
243
249
|
end
|
244
250
|
|
251
|
+
# alias of `get_bulk_profile_import_job`
|
252
|
+
alias get_profile_bulk_import_job get_bulk_profile_import_job
|
253
|
+
|
245
254
|
# Get Bulk Profile Import Job
|
246
255
|
# Get a bulk profile import job with the given job ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read` `profiles:read`
|
247
256
|
# @param job_id [String] ID of the job to retrieve.
|
@@ -315,6 +324,9 @@ module KlaviyoAPI
|
|
315
324
|
return data, status_code, headers
|
316
325
|
end
|
317
326
|
|
327
|
+
# alias of `get_bulk_profile_import_job_with_http_info`
|
328
|
+
alias get_profile_bulk_import_job_with_http_info get_bulk_profile_import_job_with_http_info
|
329
|
+
|
318
330
|
# Get Bulk Profile Import Job Errors
|
319
331
|
# Get import errors for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
320
332
|
# @param id [String]
|
@@ -328,6 +340,9 @@ module KlaviyoAPI
|
|
328
340
|
data
|
329
341
|
end
|
330
342
|
|
343
|
+
# alias of `get_bulk_profile_import_job_import_errors`
|
344
|
+
alias get_profile_bulk_import_job_import_errors get_bulk_profile_import_job_import_errors
|
345
|
+
|
331
346
|
# Get Bulk Profile Import Job Errors
|
332
347
|
# Get import errors for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
333
348
|
# @param id [String]
|
@@ -401,6 +416,9 @@ module KlaviyoAPI
|
|
401
416
|
return data, status_code, headers
|
402
417
|
end
|
403
418
|
|
419
|
+
# alias of `get_bulk_profile_import_job_import_errors_with_http_info`
|
420
|
+
alias get_profile_bulk_import_job_import_errors_with_http_info get_bulk_profile_import_job_import_errors_with_http_info
|
421
|
+
|
404
422
|
# Get Bulk Profile Import Job Lists
|
405
423
|
# Get list for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`
|
406
424
|
# @param id [String]
|
@@ -412,6 +430,9 @@ module KlaviyoAPI
|
|
412
430
|
data
|
413
431
|
end
|
414
432
|
|
433
|
+
# alias of `get_bulk_profile_import_job_lists`
|
434
|
+
alias get_profile_bulk_import_job_lists get_bulk_profile_import_job_lists
|
435
|
+
|
415
436
|
# Get Bulk Profile Import Job Lists
|
416
437
|
# Get list for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`
|
417
438
|
# @param id [String]
|
@@ -473,6 +494,9 @@ module KlaviyoAPI
|
|
473
494
|
return data, status_code, headers
|
474
495
|
end
|
475
496
|
|
497
|
+
# alias of `get_bulk_profile_import_job_lists_with_http_info`
|
498
|
+
alias get_profile_bulk_import_job_lists_with_http_info get_bulk_profile_import_job_lists_with_http_info
|
499
|
+
|
476
500
|
# Get Bulk Profile Import Job Profiles
|
477
501
|
# Get profiles for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
478
502
|
# @param id [String]
|
@@ -487,6 +511,9 @@ module KlaviyoAPI
|
|
487
511
|
data
|
488
512
|
end
|
489
513
|
|
514
|
+
# alias of `get_bulk_profile_import_job_profiles`
|
515
|
+
alias get_profile_bulk_import_job_profiles get_bulk_profile_import_job_profiles
|
516
|
+
|
490
517
|
# Get Bulk Profile Import Job Profiles
|
491
518
|
# Get profiles for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
492
519
|
# @param id [String]
|
@@ -508,7 +535,7 @@ module KlaviyoAPI
|
|
508
535
|
if @api_client.config.client_side_validation && opts[:'additional_fields_profile'] && !opts[:'additional_fields_profile'].all? { |item| allowable_values.include?(item) }
|
509
536
|
fail ArgumentError, "invalid value for \"additional_fields_profile\", must include one of #{allowable_values}"
|
510
537
|
end
|
511
|
-
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
538
|
+
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "subscriptions.mobile_push", "subscriptions.mobile_push.marketing", "subscriptions.mobile_push.marketing.can_receive_push_marketing", "subscriptions.mobile_push.marketing.consent", "subscriptions.mobile_push.marketing.consent_timestamp", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
512
539
|
if @api_client.config.client_side_validation && opts[:'fields_profile'] && !opts[:'fields_profile'].all? { |item| allowable_values.include?(item) }
|
513
540
|
fail ArgumentError, "invalid value for \"fields_profile\", must include one of #{allowable_values}"
|
514
541
|
end
|
@@ -566,6 +593,9 @@ module KlaviyoAPI
|
|
566
593
|
return data, status_code, headers
|
567
594
|
end
|
568
595
|
|
596
|
+
# alias of `get_bulk_profile_import_job_profiles_with_http_info`
|
597
|
+
alias get_profile_bulk_import_job_profiles_with_http_info get_bulk_profile_import_job_profiles_with_http_info
|
598
|
+
|
569
599
|
# Get Bulk Profile Import Job Relationships Lists
|
570
600
|
# Get list relationship for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`
|
571
601
|
# @param id [String]
|
@@ -576,6 +606,9 @@ module KlaviyoAPI
|
|
576
606
|
data
|
577
607
|
end
|
578
608
|
|
609
|
+
# alias of `get_bulk_profile_import_job_relationships_lists`
|
610
|
+
alias get_profile_bulk_import_job_relationships_lists get_bulk_profile_import_job_relationships_lists
|
611
|
+
|
579
612
|
# Get Bulk Profile Import Job Relationships Lists
|
580
613
|
# Get list relationship for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`
|
581
614
|
# @param id [String]
|
@@ -631,6 +664,9 @@ module KlaviyoAPI
|
|
631
664
|
return data, status_code, headers
|
632
665
|
end
|
633
666
|
|
667
|
+
# alias of `get_bulk_profile_import_job_relationships_lists_with_http_info`
|
668
|
+
alias get_profile_bulk_import_job_relationships_lists_with_http_info get_bulk_profile_import_job_relationships_lists_with_http_info
|
669
|
+
|
634
670
|
# Get Bulk Profile Import Job Relationships Profiles
|
635
671
|
# Get profile relationships for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
636
672
|
# @param id [String]
|
@@ -643,6 +679,9 @@ module KlaviyoAPI
|
|
643
679
|
data
|
644
680
|
end
|
645
681
|
|
682
|
+
# alias of `get_bulk_profile_import_job_relationships_profiles`
|
683
|
+
alias get_profile_bulk_import_job_relationships_profiles get_bulk_profile_import_job_relationships_profiles
|
684
|
+
|
646
685
|
# Get Bulk Profile Import Job Relationships Profiles
|
647
686
|
# Get profile relationships for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`
|
648
687
|
# @param id [String]
|
@@ -710,6 +749,9 @@ module KlaviyoAPI
|
|
710
749
|
return data, status_code, headers
|
711
750
|
end
|
712
751
|
|
752
|
+
# alias of `get_bulk_profile_import_job_relationships_profiles_with_http_info`
|
753
|
+
alias get_profile_bulk_import_job_relationships_profiles_with_http_info get_bulk_profile_import_job_relationships_profiles_with_http_info
|
754
|
+
|
713
755
|
# Get Bulk Profile Import Jobs
|
714
756
|
# Get all bulk profile import jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read` `profiles:read`
|
715
757
|
# @param [Hash] opts the optional parameters
|
@@ -724,6 +766,9 @@ module KlaviyoAPI
|
|
724
766
|
data
|
725
767
|
end
|
726
768
|
|
769
|
+
# alias of `get_bulk_profile_import_jobs`
|
770
|
+
alias get_profile_bulk_import_jobs get_bulk_profile_import_jobs
|
771
|
+
|
727
772
|
# Get Bulk Profile Import Jobs
|
728
773
|
# Get all bulk profile import jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read` `profiles:read`
|
729
774
|
# @param [Hash] opts the optional parameters
|
@@ -800,6 +845,9 @@ module KlaviyoAPI
|
|
800
845
|
return data, status_code, headers
|
801
846
|
end
|
802
847
|
|
848
|
+
# alias of `get_bulk_profile_import_jobs_with_http_info`
|
849
|
+
alias get_profile_bulk_import_jobs_with_http_info get_bulk_profile_import_jobs_with_http_info
|
850
|
+
|
803
851
|
# Get Profile
|
804
852
|
# Get the profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:read`
|
805
853
|
# @param id [String]
|
@@ -841,7 +889,7 @@ module KlaviyoAPI
|
|
841
889
|
if @api_client.config.client_side_validation && opts[:'fields_list'] && !opts[:'fields_list'].all? { |item| allowable_values.include?(item) }
|
842
890
|
fail ArgumentError, "invalid value for \"fields_list\", must include one of #{allowable_values}"
|
843
891
|
end
|
844
|
-
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
892
|
+
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "subscriptions.mobile_push", "subscriptions.mobile_push.marketing", "subscriptions.mobile_push.marketing.can_receive_push_marketing", "subscriptions.mobile_push.marketing.consent", "subscriptions.mobile_push.marketing.consent_timestamp", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
845
893
|
if @api_client.config.client_side_validation && opts[:'fields_profile'] && !opts[:'fields_profile'].all? { |item| allowable_values.include?(item) }
|
846
894
|
fail ArgumentError, "invalid value for \"fields_profile\", must include one of #{allowable_values}"
|
847
895
|
end
|
@@ -1207,7 +1255,7 @@ module KlaviyoAPI
|
|
1207
1255
|
if @api_client.config.client_side_validation && opts[:'additional_fields_profile'] && !opts[:'additional_fields_profile'].all? { |item| allowable_values.include?(item) }
|
1208
1256
|
fail ArgumentError, "invalid value for \"additional_fields_profile\", must include one of #{allowable_values}"
|
1209
1257
|
end
|
1210
|
-
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
1258
|
+
allowable_values = ["email", "phone_number", "external_id", "first_name", "last_name", "organization", "locale", "title", "image", "created", "updated", "last_event_date", "location", "location.address1", "location.address2", "location.city", "location.country", "location.latitude", "location.longitude", "location.region", "location.zip", "location.timezone", "location.ip", "properties", "subscriptions", "subscriptions.email", "subscriptions.email.marketing", "subscriptions.email.marketing.can_receive_email_marketing", "subscriptions.email.marketing.consent", "subscriptions.email.marketing.consent_timestamp", "subscriptions.email.marketing.last_updated", "subscriptions.email.marketing.method", "subscriptions.email.marketing.method_detail", "subscriptions.email.marketing.custom_method_detail", "subscriptions.email.marketing.double_optin", "subscriptions.email.marketing.suppression", "subscriptions.email.marketing.list_suppressions", "subscriptions.sms", "subscriptions.sms.marketing", "subscriptions.sms.marketing.can_receive_sms_marketing", "subscriptions.sms.marketing.consent", "subscriptions.sms.marketing.consent_timestamp", "subscriptions.sms.marketing.method", "subscriptions.sms.marketing.method_detail", "subscriptions.sms.marketing.last_updated", "subscriptions.mobile_push", "subscriptions.mobile_push.marketing", "subscriptions.mobile_push.marketing.can_receive_push_marketing", "subscriptions.mobile_push.marketing.consent", "subscriptions.mobile_push.marketing.consent_timestamp", "predictive_analytics", "predictive_analytics.historic_clv", "predictive_analytics.predicted_clv", "predictive_analytics.total_clv", "predictive_analytics.historic_number_of_orders", "predictive_analytics.predicted_number_of_orders", "predictive_analytics.average_days_between_orders", "predictive_analytics.average_order_value", "predictive_analytics.churn_probability", "predictive_analytics.expected_date_of_next_order"]
|
1211
1259
|
if @api_client.config.client_side_validation && opts[:'fields_profile'] && !opts[:'fields_profile'].all? { |item| allowable_values.include?(item) }
|
1212
1260
|
fail ArgumentError, "invalid value for \"fields_profile\", must include one of #{allowable_values}"
|
1213
1261
|
end
|
@@ -1281,6 +1329,9 @@ module KlaviyoAPI
|
|
1281
1329
|
data
|
1282
1330
|
end
|
1283
1331
|
|
1332
|
+
# alias of `merge_profiles`
|
1333
|
+
alias create_profile_merge merge_profiles
|
1334
|
+
|
1284
1335
|
# Merge Profiles
|
1285
1336
|
# Merge a given related profile into a profile with the given profile ID. The profile provided under `relationships` (the \"source\" profile) will be merged into the profile provided by the ID in the base data object (the \"destination\" profile). This endpoint queues an asynchronous task which will merge data from the source profile into the destination profile, deleting the source profile in the process. This endpoint accepts only one source profile. To learn more about how profile data is preserved or overwritten during a merge, please [visit our Help Center](https://help.klaviyo.com/hc/en-us/articles/115005073847#merge-2-profiles3).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:write`
|
1286
1337
|
# @param profile_merge_query [ProfileMergeQuery]
|
@@ -1341,6 +1392,9 @@ module KlaviyoAPI
|
|
1341
1392
|
return data, status_code, headers
|
1342
1393
|
end
|
1343
1394
|
|
1395
|
+
# alias of `merge_profiles_with_http_info`
|
1396
|
+
alias create_profile_merge_with_http_info merge_profiles_with_http_info
|
1397
|
+
|
1344
1398
|
# Spawn Bulk Profile Import Job
|
1345
1399
|
# Create a bulk profile import job to create or update a batch of profiles. Accepts up to 10,000 profiles per request. The maximum allowed payload size is 5MB. To learn more, see our [Bulk Profile Import API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_bulk_profile_import_api).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write` `profiles:write`
|
1346
1400
|
# @param profile_import_job_create_query [ProfileImportJobCreateQuery]
|
@@ -1351,6 +1405,9 @@ module KlaviyoAPI
|
|
1351
1405
|
data
|
1352
1406
|
end
|
1353
1407
|
|
1408
|
+
# alias of `spawn_bulk_profile_import_job`
|
1409
|
+
alias create_profile_bulk_import_job spawn_bulk_profile_import_job
|
1410
|
+
|
1354
1411
|
# Spawn Bulk Profile Import Job
|
1355
1412
|
# Create a bulk profile import job to create or update a batch of profiles. Accepts up to 10,000 profiles per request. The maximum allowed payload size is 5MB. To learn more, see our [Bulk Profile Import API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_bulk_profile_import_api).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write` `profiles:write`
|
1356
1413
|
# @param profile_import_job_create_query [ProfileImportJobCreateQuery]
|
@@ -1411,6 +1468,9 @@ module KlaviyoAPI
|
|
1411
1468
|
return data, status_code, headers
|
1412
1469
|
end
|
1413
1470
|
|
1471
|
+
# alias of `spawn_bulk_profile_import_job_with_http_info`
|
1472
|
+
alias create_profile_bulk_import_job_with_http_info spawn_bulk_profile_import_job_with_http_info
|
1473
|
+
|
1414
1474
|
# Subscribe Profiles
|
1415
1475
|
# Subscribe one or more profiles to email marketing, SMS marketing, or both. If the provided list has double opt-in enabled, profiles will receive a message requiring their confirmation before subscribing. Otherwise, profiles will be immediately subscribed without receiving a confirmation message. Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). If a list is not provided, the opt-in process used will be determined by the [account-level default opt-in setting](https://www.klaviyo.com/settings/account/api-keys). To add someone to a list without changing their subscription status, use [Add Profile to List](https://developers.klaviyo.com/en/reference/create_list_relationships). This API will remove any `UNSUBSCRIBE`, `SPAM_REPORT` or `USER_SUPPRESSED` suppressions from the provided profiles. Learn more about [suppressed profiles](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1). Maximum number of profiles can be submitted for subscription: 1000 This endpoint now supports a `historical_import` flag. If this flag is set `true`, profiles being subscribed will bypass double opt-in emails and be subscribed immediately. They will also bypass any associated \"Added to list\" flows. This is useful for importing historical data where you have already collected consent. If `historical_import` is set to true, the `consented_at` field is required and must be in the past.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `lists:write` `profiles:write` `subscriptions:write`
|
1416
1476
|
# @param subscription_create_job_create_query [SubscriptionCreateJobCreateQuery] Subscribes one or more profiles to marketing. Currently, supports email and SMS only. All profiles will be added to the provided list. Either email or phone number is required. Both may be specified to subscribe to both channels. If a profile cannot be found matching the given identifier(s), a new profile will be created and then subscribed.
|
@@ -1421,6 +1481,9 @@ module KlaviyoAPI
|
|
1421
1481
|
nil
|
1422
1482
|
end
|
1423
1483
|
|
1484
|
+
# alias of `subscribe_profiles`
|
1485
|
+
alias create_profile_subscription_bulk_create_job subscribe_profiles
|
1486
|
+
|
1424
1487
|
# Subscribe Profiles
|
1425
1488
|
# Subscribe one or more profiles to email marketing, SMS marketing, or both. If the provided list has double opt-in enabled, profiles will receive a message requiring their confirmation before subscribing. Otherwise, profiles will be immediately subscribed without receiving a confirmation message. Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). If a list is not provided, the opt-in process used will be determined by the [account-level default opt-in setting](https://www.klaviyo.com/settings/account/api-keys). To add someone to a list without changing their subscription status, use [Add Profile to List](https://developers.klaviyo.com/en/reference/create_list_relationships). This API will remove any `UNSUBSCRIBE`, `SPAM_REPORT` or `USER_SUPPRESSED` suppressions from the provided profiles. Learn more about [suppressed profiles](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1). Maximum number of profiles can be submitted for subscription: 1000 This endpoint now supports a `historical_import` flag. If this flag is set `true`, profiles being subscribed will bypass double opt-in emails and be subscribed immediately. They will also bypass any associated \"Added to list\" flows. This is useful for importing historical data where you have already collected consent. If `historical_import` is set to true, the `consented_at` field is required and must be in the past.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `lists:write` `profiles:write` `subscriptions:write`
|
1426
1489
|
# @param subscription_create_job_create_query [SubscriptionCreateJobCreateQuery] Subscribes one or more profiles to marketing. Currently, supports email and SMS only. All profiles will be added to the provided list. Either email or phone number is required. Both may be specified to subscribe to both channels. If a profile cannot be found matching the given identifier(s), a new profile will be created and then subscribed.
|
@@ -1481,6 +1544,9 @@ module KlaviyoAPI
|
|
1481
1544
|
return data, status_code, headers
|
1482
1545
|
end
|
1483
1546
|
|
1547
|
+
# alias of `subscribe_profiles_with_http_info`
|
1548
|
+
alias create_profile_subscription_bulk_create_job_with_http_info subscribe_profiles_with_http_info
|
1549
|
+
|
1484
1550
|
# Suppress Profiles
|
1485
1551
|
# Manually suppress profiles using their email address, or by specifying a segment or list ID to suppress all current members. Suppressed profiles cannot receive email marketing, independent of their consent status. To learn more, see our [email suppressions guide](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1) and our [collecting consent guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). Email addresses per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write` `subscriptions:write`
|
1486
1552
|
# @param suppression_create_job_create_query [SuppressionCreateJobCreateQuery] Suppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not found with the given email, one will be created and immediately suppressed.
|
@@ -1491,6 +1557,9 @@ module KlaviyoAPI
|
|
1491
1557
|
nil
|
1492
1558
|
end
|
1493
1559
|
|
1560
|
+
# alias of `suppress_profiles`
|
1561
|
+
alias create_profile_suppression_bulk_create_job suppress_profiles
|
1562
|
+
|
1494
1563
|
# Suppress Profiles
|
1495
1564
|
# Manually suppress profiles using their email address, or by specifying a segment or list ID to suppress all current members. Suppressed profiles cannot receive email marketing, independent of their consent status. To learn more, see our [email suppressions guide](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1) and our [collecting consent guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). Email addresses per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write` `subscriptions:write`
|
1496
1565
|
# @param suppression_create_job_create_query [SuppressionCreateJobCreateQuery] Suppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not found with the given email, one will be created and immediately suppressed.
|
@@ -1551,6 +1620,9 @@ module KlaviyoAPI
|
|
1551
1620
|
return data, status_code, headers
|
1552
1621
|
end
|
1553
1622
|
|
1623
|
+
# alias of `suppress_profiles_with_http_info`
|
1624
|
+
alias create_profile_suppression_bulk_create_job_with_http_info suppress_profiles_with_http_info
|
1625
|
+
|
1554
1626
|
# Unsubscribe Profiles
|
1555
1627
|
# Unsubscribe one or more profiles to email marketing, SMS marketing, or both. Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). To remove someone from a list without changing their subscription status, use [Remove Profile from List](https://developers.klaviyo.com/en/reference/delete_list_relationships). Maximum number of profile can be submitted for unsubscription: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `lists:write` `profiles:write` `subscriptions:write`
|
1556
1628
|
# @param subscription_delete_job_create_query [SubscriptionDeleteJobCreateQuery] Unsubscribes one or more profiles from marketing. Currently, supports email and SMS only. All profiles will be removed from the provided list. Either email or phone number is required. If a profile cannot be found matching the given identifier(s), a new profile will be created and then unsubscribed.
|
@@ -1561,6 +1633,9 @@ module KlaviyoAPI
|
|
1561
1633
|
nil
|
1562
1634
|
end
|
1563
1635
|
|
1636
|
+
# alias of `unsubscribe_profiles`
|
1637
|
+
alias create_profile_subscription_bulk_delete_job unsubscribe_profiles
|
1638
|
+
|
1564
1639
|
# Unsubscribe Profiles
|
1565
1640
|
# Unsubscribe one or more profiles to email marketing, SMS marketing, or both. Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). To remove someone from a list without changing their subscription status, use [Remove Profile from List](https://developers.klaviyo.com/en/reference/delete_list_relationships). Maximum number of profile can be submitted for unsubscription: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `lists:write` `profiles:write` `subscriptions:write`
|
1566
1641
|
# @param subscription_delete_job_create_query [SubscriptionDeleteJobCreateQuery] Unsubscribes one or more profiles from marketing. Currently, supports email and SMS only. All profiles will be removed from the provided list. Either email or phone number is required. If a profile cannot be found matching the given identifier(s), a new profile will be created and then unsubscribed.
|
@@ -1621,6 +1696,9 @@ module KlaviyoAPI
|
|
1621
1696
|
return data, status_code, headers
|
1622
1697
|
end
|
1623
1698
|
|
1699
|
+
# alias of `unsubscribe_profiles_with_http_info`
|
1700
|
+
alias create_profile_subscription_bulk_delete_job_with_http_info unsubscribe_profiles_with_http_info
|
1701
|
+
|
1624
1702
|
# Unsuppress Profiles
|
1625
1703
|
# Manually unsuppress profiles using their email address, or by specifying a segment or list ID to unsuppress all current members. This only removes suppressions with reason `USER_SUPPRESSED`, leaving unsubscribed profiles and profiles suppressed with reason `INVALID_EMAIL` or `HARD_BOUNCE` unchanged. To learn more, see our [email suppressions guide](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1) and our [collecting consent guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). Email addresses per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `subscriptions:write`
|
1626
1704
|
# @param suppression_delete_job_create_query [SuppressionDeleteJobCreateQuery] Unsuppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not found with the given email, no action will be taken.
|
@@ -1631,6 +1709,9 @@ module KlaviyoAPI
|
|
1631
1709
|
nil
|
1632
1710
|
end
|
1633
1711
|
|
1712
|
+
# alias of `unsuppress_profiles`
|
1713
|
+
alias create_profile_suppression_bulk_delete_job unsuppress_profiles
|
1714
|
+
|
1634
1715
|
# Unsuppress Profiles
|
1635
1716
|
# Manually unsuppress profiles using their email address, or by specifying a segment or list ID to unsuppress all current members. This only removes suppressions with reason `USER_SUPPRESSED`, leaving unsubscribed profiles and profiles suppressed with reason `INVALID_EMAIL` or `HARD_BOUNCE` unchanged. To learn more, see our [email suppressions guide](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1) and our [collecting consent guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api). Email addresses per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `subscriptions:write`
|
1636
1717
|
# @param suppression_delete_job_create_query [SuppressionDeleteJobCreateQuery] Unsuppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not found with the given email, no action will be taken.
|
@@ -1691,6 +1772,9 @@ module KlaviyoAPI
|
|
1691
1772
|
return data, status_code, headers
|
1692
1773
|
end
|
1693
1774
|
|
1775
|
+
# alias of `unsuppress_profiles_with_http_info`
|
1776
|
+
alias create_profile_suppression_bulk_delete_job_with_http_info unsuppress_profiles_with_http_info
|
1777
|
+
|
1694
1778
|
# Update Profile
|
1695
1779
|
# Update the profile with the given profile ID. Note that setting a field to `null` will clear out the field, whereas not including a field in your request will leave it unchanged.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write`
|
1696
1780
|
# @param id [String] Primary key that uniquely identifies this profile. Generated by Klaviyo.
|