You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::Pinpoint::Types::WriteCampaignRequest

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing WriteCampaignRequest as input to an Aws::Client method, you can use a vanilla Hash:

{
  additional_treatments: [
    {
      custom_delivery_configuration: {
        delivery_uri: "__string", # required
        endpoint_types: ["PUSH"], # accepts PUSH, GCM, APNS, APNS_SANDBOX, APNS_VOIP, APNS_VOIP_SANDBOX, ADM, SMS, VOICE, EMAIL, BAIDU, CUSTOM
      },
      message_configuration: {
        adm_message: {
          action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
          body: "__string",
          image_icon_url: "__string",
          image_small_icon_url: "__string",
          image_url: "__string",
          json_body: "__string",
          media_url: "__string",
          raw_content: "__string",
          silent_push: false,
          time_to_live: 1,
          title: "__string",
          url: "__string",
        },
        apns_message: {
          action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
          body: "__string",
          image_icon_url: "__string",
          image_small_icon_url: "__string",
          image_url: "__string",
          json_body: "__string",
          media_url: "__string",
          raw_content: "__string",
          silent_push: false,
          time_to_live: 1,
          title: "__string",
          url: "__string",
        },
        baidu_message: {
          action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
          body: "__string",
          image_icon_url: "__string",
          image_small_icon_url: "__string",
          image_url: "__string",
          json_body: "__string",
          media_url: "__string",
          raw_content: "__string",
          silent_push: false,
          time_to_live: 1,
          title: "__string",
          url: "__string",
        },
        custom_message: {
          data: "__string",
        },
        default_message: {
          action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
          body: "__string",
          image_icon_url: "__string",
          image_small_icon_url: "__string",
          image_url: "__string",
          json_body: "__string",
          media_url: "__string",
          raw_content: "__string",
          silent_push: false,
          time_to_live: 1,
          title: "__string",
          url: "__string",
        },
        email_message: {
          body: "__string",
          from_address: "__string",
          html_body: "__string",
          title: "__string",
        },
        gcm_message: {
          action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
          body: "__string",
          image_icon_url: "__string",
          image_small_icon_url: "__string",
          image_url: "__string",
          json_body: "__string",
          media_url: "__string",
          raw_content: "__string",
          silent_push: false,
          time_to_live: 1,
          title: "__string",
          url: "__string",
        },
        sms_message: {
          body: "__string",
          message_type: "TRANSACTIONAL", # accepts TRANSACTIONAL, PROMOTIONAL
          sender_id: "__string",
        },
      },
      schedule: {
        end_time: "__string",
        event_filter: {
          dimensions: { # required
            attributes: {
              "__string" => {
                attribute_type: "INCLUSIVE", # accepts INCLUSIVE, EXCLUSIVE
                values: ["__string"], # required
              },
            },
            event_type: {
              dimension_type: "INCLUSIVE", # accepts INCLUSIVE, EXCLUSIVE
              values: ["__string"], # required
            },
            metrics: {
              "__string" => {
                comparison_operator: "__string", # required
                value: 1.0, # required
              },
            },
          },
          filter_type: "SYSTEM", # required, accepts SYSTEM, ENDPOINT
        },
        frequency: "ONCE", # accepts ONCE, HOURLY, DAILY, WEEKLY, MONTHLY, EVENT
        is_local_time: false,
        quiet_time: {
          end: "__string",
          start: "__string",
        },
        start_time: "__string", # required
        timezone: "__string",
      },
      size_percent: 1, # required
      template_configuration: {
        email_template: {
          name: "__string",
          version: "__string",
        },
        push_template: {
          name: "__string",
          version: "__string",
        },
        sms_template: {
          name: "__string",
          version: "__string",
        },
        voice_template: {
          name: "__string",
          version: "__string",
        },
      },
      treatment_description: "__string",
      treatment_name: "__string",
    },
  ],
  custom_delivery_configuration: {
    delivery_uri: "__string", # required
    endpoint_types: ["PUSH"], # accepts PUSH, GCM, APNS, APNS_SANDBOX, APNS_VOIP, APNS_VOIP_SANDBOX, ADM, SMS, VOICE, EMAIL, BAIDU, CUSTOM
  },
  description: "__string",
  holdout_percent: 1,
  hook: {
    lambda_function_name: "__string",
    mode: "DELIVERY", # accepts DELIVERY, FILTER
    web_url: "__string",
  },
  is_paused: false,
  limits: {
    daily: 1,
    maximum_duration: 1,
    messages_per_second: 1,
    total: 1,
  },
  message_configuration: {
    adm_message: {
      action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
      body: "__string",
      image_icon_url: "__string",
      image_small_icon_url: "__string",
      image_url: "__string",
      json_body: "__string",
      media_url: "__string",
      raw_content: "__string",
      silent_push: false,
      time_to_live: 1,
      title: "__string",
      url: "__string",
    },
    apns_message: {
      action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
      body: "__string",
      image_icon_url: "__string",
      image_small_icon_url: "__string",
      image_url: "__string",
      json_body: "__string",
      media_url: "__string",
      raw_content: "__string",
      silent_push: false,
      time_to_live: 1,
      title: "__string",
      url: "__string",
    },
    baidu_message: {
      action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
      body: "__string",
      image_icon_url: "__string",
      image_small_icon_url: "__string",
      image_url: "__string",
      json_body: "__string",
      media_url: "__string",
      raw_content: "__string",
      silent_push: false,
      time_to_live: 1,
      title: "__string",
      url: "__string",
    },
    custom_message: {
      data: "__string",
    },
    default_message: {
      action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
      body: "__string",
      image_icon_url: "__string",
      image_small_icon_url: "__string",
      image_url: "__string",
      json_body: "__string",
      media_url: "__string",
      raw_content: "__string",
      silent_push: false,
      time_to_live: 1,
      title: "__string",
      url: "__string",
    },
    email_message: {
      body: "__string",
      from_address: "__string",
      html_body: "__string",
      title: "__string",
    },
    gcm_message: {
      action: "OPEN_APP", # accepts OPEN_APP, DEEP_LINK, URL
      body: "__string",
      image_icon_url: "__string",
      image_small_icon_url: "__string",
      image_url: "__string",
      json_body: "__string",
      media_url: "__string",
      raw_content: "__string",
      silent_push: false,
      time_to_live: 1,
      title: "__string",
      url: "__string",
    },
    sms_message: {
      body: "__string",
      message_type: "TRANSACTIONAL", # accepts TRANSACTIONAL, PROMOTIONAL
      sender_id: "__string",
    },
  },
  name: "__string",
  schedule: {
    end_time: "__string",
    event_filter: {
      dimensions: { # required
        attributes: {
          "__string" => {
            attribute_type: "INCLUSIVE", # accepts INCLUSIVE, EXCLUSIVE
            values: ["__string"], # required
          },
        },
        event_type: {
          dimension_type: "INCLUSIVE", # accepts INCLUSIVE, EXCLUSIVE
          values: ["__string"], # required
        },
        metrics: {
          "__string" => {
            comparison_operator: "__string", # required
            value: 1.0, # required
          },
        },
      },
      filter_type: "SYSTEM", # required, accepts SYSTEM, ENDPOINT
    },
    frequency: "ONCE", # accepts ONCE, HOURLY, DAILY, WEEKLY, MONTHLY, EVENT
    is_local_time: false,
    quiet_time: {
      end: "__string",
      start: "__string",
    },
    start_time: "__string", # required
    timezone: "__string",
  },
  segment_id: "__string",
  segment_version: 1,
  tags: {
    "__string" => "__string",
  },
  template_configuration: {
    email_template: {
      name: "__string",
      version: "__string",
    },
    push_template: {
      name: "__string",
      version: "__string",
    },
    sms_template: {
      name: "__string",
      version: "__string",
    },
    voice_template: {
      name: "__string",
      version: "__string",
    },
  },
  treatment_description: "__string",
  treatment_name: "__string",
}

Specifies the configuration and other settings for a campaign.

Returned by:

Instance Attribute Summary collapse

Instance Attribute Details

#additional_treatmentsArray<Types::WriteTreatmentResource>

An array of requests that defines additional treatments for the campaign, in addition to the default treatment for the campaign.

Returns:

  • (Array<Types::WriteTreatmentResource>)

    An array of requests that defines additional treatments for the campaign, in addition to the default treatment for the campaign.

#custom_delivery_configurationTypes::CustomDeliveryConfiguration

The delivery configuration settings for sending the campaign through a custom channel. This object is required if the MessageConfiguration object for the campaign specifies a CustomMessage object.

Returns:

#descriptionString

A custom description of the campaign.

Returns:

  • (String)

    A custom description of the campaign.

#holdout_percentInteger

The allocated percentage of users (segment members) who shouldn\'t receive messages from the campaign.

Returns:

  • (Integer)

    The allocated percentage of users (segment members) who shouldn\'t receive messages from the campaign.

#hookTypes::CampaignHook

The settings for the AWS Lambda function to invoke as a code hook for the campaign. You can use this hook to customize the segment that\'s used by the campaign.

Returns:

  • (Types::CampaignHook)

    The settings for the AWS Lambda function to invoke as a code hook for the campaign.

#is_pausedBoolean

Specifies whether to pause the campaign. A paused campaign doesn\'t run unless you resume it by changing this value to false.

Returns:

  • (Boolean)

    Specifies whether to pause the campaign.

#limitsTypes::CampaignLimits

The messaging limits for the campaign.

Returns:

#message_configurationTypes::MessageConfiguration

The message configuration settings for the campaign.

Returns:

#nameString

A custom name for the campaign.

Returns:

  • (String)

    A custom name for the campaign.

#scheduleTypes::Schedule

The schedule settings for the campaign.

Returns:

#segment_idString

The unique identifier for the segment to associate with the campaign.

Returns:

  • (String)

    The unique identifier for the segment to associate with the campaign.

#segment_versionInteger

The version of the segment to associate with the campaign.

Returns:

  • (Integer)

    The version of the segment to associate with the campaign.

#tagsHash<String,String>

A string-to-string map of key-value pairs that defines the tags to associate with the campaign. Each tag consists of a required tag key and an associated tag value.

Returns:

  • (Hash<String,String>)

    A string-to-string map of key-value pairs that defines the tags to associate with the campaign.

#template_configurationTypes::TemplateConfiguration

The message template to use for the campaign.

Returns:

#treatment_descriptionString

A custom description of the default treatment for the campaign.

Returns:

  • (String)

    A custom description of the default treatment for the campaign.

#treatment_nameString

A custom name of the default treatment for the campaign, if the campaign has multiple treatments. A treatment is a variation of a campaign that\'s used for A/B testing.

Returns:

  • (String)

    A custom name of the default treatment for the campaign, if the campaign has multiple treatments.