Module: KlaviyoAPI

Defined in:
lib/klaviyo-api-sdk/version.rb,
lib/klaviyo-api-sdk.rb,
lib/klaviyo-api-sdk/api_error.rb,
lib/klaviyo-api-sdk/api_client.rb,
lib/klaviyo-api-sdk/api/flows_api.rb,
lib/klaviyo-api-sdk/api/lists_api.rb,
lib/klaviyo-api-sdk/configuration.rb,
lib/klaviyo-api-sdk/api/client_api.rb,
lib/klaviyo-api-sdk/api/events_api.rb,
lib/klaviyo-api-sdk/api/metrics_api.rb,
lib/klaviyo-api-sdk/api/catalogs_api.rb,
lib/klaviyo-api-sdk/api/profiles_api.rb,
lib/klaviyo-api-sdk/api/segments_api.rb,
lib/klaviyo-api-sdk/api/templates_api.rb,
lib/klaviyo-api-sdk/models/suppression.rb,
lib/klaviyo-api-sdk/models/error_source.rb,
lib/klaviyo-api-sdk/models/send_options.rb,
lib/klaviyo-api-sdk/models/subscription.rb,
lib/klaviyo-api-sdk/models/included_flows.rb,
lib/klaviyo-api-sdk/models/included_items.rb,
lib/klaviyo-api-sdk/models/included_lists.rb,
lib/klaviyo-api-sdk/models/utm_param_info.rb,
lib/klaviyo-api-sdk/models/included_metrics.rb,
lib/klaviyo-api-sdk/models/included_profile.rb,
lib/klaviyo-api-sdk/models/profile_location.rb,
lib/klaviyo-api-sdk/models/flow_update_query.rb,
lib/klaviyo-api-sdk/models/included_profiles.rb,
lib/klaviyo-api-sdk/models/included_segments.rb,
lib/klaviyo-api-sdk/models/included_variants.rb,
lib/klaviyo-api-sdk/models/list_create_query.rb,
lib/klaviyo-api-sdk/models/event_create_query.rb,
lib/klaviyo-api-sdk/models/sms_render_options.rb,
lib/klaviyo-api-sdk/models/included_categories.rb,
lib/klaviyo-api-sdk/models/metric_create_query.rb,
lib/klaviyo-api-sdk/models/onsite_profile_meta.rb,
lib/klaviyo-api-sdk/models/sms_message_content.rb,
lib/klaviyo-api-sdk/models/included_flow_action.rb,
lib/klaviyo-api-sdk/models/profile_create_query.rb,
lib/klaviyo-api-sdk/models/sms_tracking_options.rb,
lib/klaviyo-api-sdk/models/template_clone_query.rb,
lib/klaviyo-api-sdk/models/email_message_content.rb,
lib/klaviyo-api-sdk/models/included_flow_actions.rb,
lib/klaviyo-api-sdk/models/template_create_query.rb,
lib/klaviyo-api-sdk/models/template_update_query.rb,
lib/klaviyo-api-sdk/models/email_tracking_options.rb,
lib/klaviyo-api-sdk/models/included_flow_messages.rb,
lib/klaviyo-api-sdk/models/list_members_add_query.rb,
lib/klaviyo-api-sdk/models/metric_aggregate_query.rb,
lib/klaviyo-api-sdk/models/included_variants_links.rb,
lib/klaviyo-api-sdk/models/catalog_category_item_op.rb,
lib/klaviyo-api-sdk/models/catalog_item_category_op.rb,
lib/klaviyo-api-sdk/models/metric_aggregate_row_dto.rb,
lib/klaviyo-api-sdk/models/v2_template_render_query.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_query.rb,
lib/klaviyo-api-sdk/models/catalog_job_error_payload.rb,
lib/klaviyo-api-sdk/models/included_flows_attributes.rb,
lib/klaviyo-api-sdk/models/included_items_attributes.rb,
lib/klaviyo-api-sdk/models/included_lists_attributes.rb,
lib/klaviyo-api-sdk/models/list_members_delete_query.rb,
lib/klaviyo-api-sdk/models/list_partial_update_query.rb,
lib/klaviyo-api-sdk/models/profile_location_latitude.rb,
lib/klaviyo-api-sdk/models/included_metrics_attributes.rb,
lib/klaviyo-api-sdk/models/onsite_profile_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_query.rb,
lib/klaviyo-api-sdk/models/included_profiles_attributes.rb,
lib/klaviyo-api-sdk/models/included_variants_attributes.rb,
lib/klaviyo-api-sdk/models/profile_partial_update_query.rb,
lib/klaviyo-api-sdk/models/segment_partial_update_query.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_query.rb,
lib/klaviyo-api-sdk/models/get_catalog_items4_xx_response.rb,
lib/klaviyo-api-sdk/models/included_categories_attributes.rb,
lib/klaviyo-api-sdk/models/onsite_profile_meta_identifiers.rb,
lib/klaviyo-api-sdk/models/included_flow_actions_attributes.rb,
lib/klaviyo-api-sdk/models/onsite_subscription_create_query.rb,
lib/klaviyo-api-sdk/models/flow_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/included_flow_messages_attributes.rb,
lib/klaviyo-api-sdk/models/list_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/list_delete_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/list_members_add_query_data_inner.rb,
lib/klaviyo-api-sdk/models/event_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/suppression_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query.rb,
lib/klaviyo-api-sdk/models/profile_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/subscription_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/template_clone_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/template_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/template_delete_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/template_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/unsuppression_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/metric_aggregate_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/unsubscription_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query.rb,
lib/klaviyo-api-sdk/models/v2_template_render_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_delete_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/included_flow_messages_attributes_content.rb,
lib/klaviyo-api-sdk/models/list_partial_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/get_catalog_items4_xx_response_errors_inner.rb,
lib/klaviyo-api-sdk/models/onsite_profile_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_delete_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/flow_update_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/list_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/profile_partial_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/segment_partial_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_delete_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/event_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/profile_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/template_clone_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/onsite_subscription_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/template_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/template_update_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/included_flow_actions_attributes_tracking_options.rb,
lib/klaviyo-api-sdk/models/metric_aggregate_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/get_catalog_items4_xx_response_errors_inner_source.rb,
lib/klaviyo-api-sdk/models/suppression_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/v2_template_render_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/subscription_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/unsuppression_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/unsubscription_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query_as_sub_resource_relationships.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query_as_sub_resource.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query_as_sub_resource_relationships.rb,
lib/klaviyo-api-sdk/models/onsite_subscription_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/suppression_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_delete_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_update_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/subscription_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query_as_sub_resource_relationships_items.rb,
lib/klaviyo-api-sdk/models/unsubscription_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query_as_sub_resource_relationships_categories.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_delete_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_update_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_category_create_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_category_delete_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_category_update_job_create_query_as_sub_resource_attributes.rb,
lib/klaviyo-api-sdk/models/catalog_variant_create_query_as_sub_resource_relationships_items_data_inner.rb,
lib/klaviyo-api-sdk/models/catalog_item_create_query_as_sub_resource_relationships_categories_data_inner.rb

Overview

#Klaviyo API

#The Klaviyo REST API. Please visit developers.klaviyo.com for more details.

The version of the OpenAPI document: 2022-10-17 Contact: [email protected] Generated by: openapi-generator.tech OpenAPI Generator version: 6.0.1

Defined Under Namespace

Modules: IncludedFlowActionsAttributesTrackingOptions, IncludedFlowMessagesAttributesContent, ProfileLocationLatitude Classes: ApiClient, ApiError, CatalogCategoryCreateJobCreateQuery, CatalogCategoryCreateJobCreateQueryAsSubResource, CatalogCategoryCreateJobCreateQueryAsSubResourceAttributes, CatalogCategoryCreateQuery, CatalogCategoryCreateQueryAsSubResource, CatalogCategoryCreateQueryAsSubResourceAttributes, CatalogCategoryDeleteJobCreateQuery, CatalogCategoryDeleteJobCreateQueryAsSubResource, CatalogCategoryDeleteJobCreateQueryAsSubResourceAttributes, CatalogCategoryDeleteQueryAsSubResource, CatalogCategoryItemOp, CatalogCategoryUpdateJobCreateQuery, CatalogCategoryUpdateJobCreateQueryAsSubResource, CatalogCategoryUpdateJobCreateQueryAsSubResourceAttributes, CatalogCategoryUpdateQuery, CatalogCategoryUpdateQueryAsSubResource, CatalogCategoryUpdateQueryAsSubResourceAttributes, CatalogItemCategoryOp, CatalogItemCreateJobCreateQuery, CatalogItemCreateJobCreateQueryAsSubResource, CatalogItemCreateJobCreateQueryAsSubResourceAttributes, CatalogItemCreateQuery, CatalogItemCreateQueryAsSubResource, CatalogItemCreateQueryAsSubResourceAttributes, CatalogItemCreateQueryAsSubResourceRelationships, CatalogItemCreateQueryAsSubResourceRelationshipsCategories, CatalogItemCreateQueryAsSubResourceRelationshipsCategoriesDataInner, CatalogItemDeleteJobCreateQuery, CatalogItemDeleteJobCreateQueryAsSubResource, CatalogItemDeleteJobCreateQueryAsSubResourceAttributes, CatalogItemDeleteQueryAsSubResource, CatalogItemUpdateJobCreateQuery, CatalogItemUpdateJobCreateQueryAsSubResource, CatalogItemUpdateJobCreateQueryAsSubResourceAttributes, CatalogItemUpdateQuery, CatalogItemUpdateQueryAsSubResource, CatalogItemUpdateQueryAsSubResourceAttributes, CatalogJobErrorPayload, CatalogVariantCreateJobCreateQuery, CatalogVariantCreateJobCreateQueryAsSubResource, CatalogVariantCreateJobCreateQueryAsSubResourceAttributes, CatalogVariantCreateQuery, CatalogVariantCreateQueryAsSubResource, CatalogVariantCreateQueryAsSubResourceAttributes, CatalogVariantCreateQueryAsSubResourceRelationships, CatalogVariantCreateQueryAsSubResourceRelationshipsItems, CatalogVariantCreateQueryAsSubResourceRelationshipsItemsDataInner, CatalogVariantDeleteJobCreateQuery, CatalogVariantDeleteJobCreateQueryAsSubResource, CatalogVariantDeleteJobCreateQueryAsSubResourceAttributes, CatalogVariantDeleteQueryAsSubResource, CatalogVariantUpdateJobCreateQuery, CatalogVariantUpdateJobCreateQueryAsSubResource, CatalogVariantUpdateJobCreateQueryAsSubResourceAttributes, CatalogVariantUpdateQuery, CatalogVariantUpdateQueryAsSubResource, CatalogVariantUpdateQueryAsSubResourceAttributes, CatalogsApi, ClientApi, Configuration, EmailMessageContent, EmailTrackingOptions, ErrorSource, EventCreateQuery, EventCreateQueryAsSubResource, EventCreateQueryAsSubResourceAttributes, EventsApi, FlowUpdateQuery, FlowUpdateQueryAsSubResource, FlowUpdateQueryAsSubResourceAttributes, FlowsApi, GetCatalogItems4XXResponse, GetCatalogItems4XXResponseErrorsInner, GetCatalogItems4XXResponseErrorsInnerSource, IncludedCategories, IncludedCategoriesAttributes, IncludedFlowAction, IncludedFlowActions, IncludedFlowActionsAttributes, IncludedFlowMessages, IncludedFlowMessagesAttributes, IncludedFlows, IncludedFlowsAttributes, IncludedItems, IncludedItemsAttributes, IncludedLists, IncludedListsAttributes, IncludedMetrics, IncludedMetricsAttributes, IncludedProfile, IncludedProfiles, IncludedProfilesAttributes, IncludedSegments, IncludedVariants, IncludedVariantsAttributes, IncludedVariantsLinks, ListCreateQuery, ListCreateQueryAsSubResource, ListCreateQueryAsSubResourceAttributes, ListDeleteQueryAsSubResource, ListMembersAddQuery, ListMembersAddQueryDataInner, ListMembersDeleteQuery, ListPartialUpdateQuery, ListPartialUpdateQueryAsSubResource, ListsApi, MetricAggregateQuery, MetricAggregateQueryAsSubResource, MetricAggregateQueryAsSubResourceAttributes, MetricAggregateRowDTO, MetricCreateQuery, MetricsApi, OnsiteProfileCreateQuery, OnsiteProfileCreateQueryAsSubResource, OnsiteProfileMeta, OnsiteProfileMetaIdentifiers, OnsiteSubscriptionCreateQuery, OnsiteSubscriptionCreateQueryAsSubResource, OnsiteSubscriptionCreateQueryAsSubResourceAttributes, ProfileCreateQuery, ProfileCreateQueryAsSubResource, ProfileCreateQueryAsSubResourceAttributes, ProfileLocation, ProfilePartialUpdateQuery, ProfilePartialUpdateQueryAsSubResource, ProfilesApi, SMSMessageContent, SMSRenderOptions, SMSTrackingOptions, SegmentPartialUpdateQuery, SegmentPartialUpdateQueryAsSubResource, SegmentsApi, SendOptions, Subscription, SubscriptionCreateJobCreateQuery, SubscriptionCreateJobCreateQueryAsSubResource, SubscriptionCreateJobCreateQueryAsSubResourceAttributes, Suppression, SuppressionCreateJobCreateQuery, SuppressionCreateJobCreateQueryAsSubResource, SuppressionCreateJobCreateQueryAsSubResourceAttributes, TemplateCloneQuery, TemplateCloneQueryAsSubResource, TemplateCloneQueryAsSubResourceAttributes, TemplateCreateQuery, TemplateCreateQueryAsSubResource, TemplateCreateQueryAsSubResourceAttributes, TemplateDeleteQueryAsSubResource, TemplateUpdateQuery, TemplateUpdateQueryAsSubResource, TemplateUpdateQueryAsSubResourceAttributes, TemplatesApi, UnsubscriptionCreateJobCreateQuery, UnsubscriptionCreateJobCreateQueryAsSubResource, UnsubscriptionCreateJobCreateQueryAsSubResourceAttributes, UnsuppressionCreateJobCreateQuery, UnsuppressionCreateJobCreateQueryAsSubResource, UtmParamInfo, V2TemplateRenderQuery, V2TemplateRenderQueryAsSubResource, V2TemplateRenderQueryAsSubResourceAttributes

Constant Summary collapse

VERSION =
'1.0.0'

Class Method Summary collapse

Class Method Details

.configureObject



205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
# File 'lib/klaviyo-api-sdk.rb', line 205

def configure
  if block_given?
    yield(Configuration.default)
  else
    Configuration.default
  end

  # create wrapper classes
  if !@is_initialized # run this only once
    self.constants.each do |c|
      if c[-3..-1] == "Api"
        attributes = [:attr1]
        wrapper_class = KlaviyoAPI.const_set(c[0..-4], Struct.new(*attributes))
        original_class = KlaviyoAPI.const_get(c)
        
        # recreate methods
        original_class.public_instance_methods(false).each do |m|
          wrapper_class.class_eval { 
            define_singleton_method m do |*arg| 
              # max_delay=60, max_retries=3
              # retry_codes = [429,503,504]
              # only add retriable if both of these are not set
              max_retries = Configuration.default.max_retries
              max_delay = Configuration.default.max_delay

              if (max_retries != nil && max_delay != nil)
                Retriable.configure do |c|
                  c.tries = max_retries
                  c.max_elapsed_time = max_delay
                  c.on = {
                    KlaviyoAPI::ApiError => [/429/, /503/, /504/]
                  }
                end
                Retriable.retriable do
                  KlaviyoAPI.const_get(c).new.send(m, *arg)
                end
              else
                KlaviyoAPI.const_get(c).new.send(m, *arg)
              end
            end
          }
        end
      end
    end
    @is_initialized = true
  end
end